七、jsp基础(七)-- 总结

一、

自定义标签&编码实战
			1)自定义标签步骤:
					1.1 编写标签处理器类,继承SimpleTagSupport类,覆盖doTag方法
					1.2 在WEB-INF目录下建立tld文件,在tld配置标签
					1.3 在jsp页面导入标签库,使用taglib指令
					1.4 在jsp页面中使用标签库中的标签
			2)自定义标签生命周期:
					SimpleTag接口:
							setJspContext(JspContext context)  --传入pagContext对象
							setParent(JspTag tag)   --传入父标签对象
							setXXX(参数)     --给属性赋值
							setJspBody(JspFrament jspBody)  --传入标签体内容
							doTag()      --执行标签
		    3)自定义标签的作用:
					3.1 控制是否输出标签体内容
						输出: this.getJspBody().invoke(null)  
					  不输出:  不调用invoke(null)方法
				    3.2 控制标签余下内容是否输出
						输出: 什么不都做!
					    不输出: 抛出SkipPageException异常
					3.3 重复输出标签体内容
						重复调用: this.getJspBody().invoke(null)
					3.4 修改标签体内容
							StringWriter sw = new StringWriter();
							this.getJspBody().invoke(sw);
							String content = sw.toString();
							//修改内容
							//手动输出到浏览器
							this.getJspContext().getOut().writer(修改过的内容);
					3.5 带属性的标签
							a)在标签处理器类中声明成员变量和setter方法,用于给属性变量赋值。
							b)在tld文件中声明属性
							c) 使用属性
			4)JavaBean规范
					   4.1 必须要有无参的构造方法
					   4.2 所有成员属性必须私有化 (private)
					   4.3 必须提供公开的getter和setter方法 
			5)MVC开发模式
					  MVC就是servlet+jsp+javabean的开发模式
						M,Model,javabean实现,封装业务数据
						V,View,jsp实现,显示数据
						C,Controller,servlet实现,接收参数,调用业务逻辑,跳转视图
			6)三层结构开发
					 dao层: 数据访问对象。实现对数据的操作相关的方法
					service层: 业务逻辑对象。实现对项目的业逻辑处理相关的方法
					 web层: 表现层。处理和用户直接相关的,接收参数,处理参数,跳转视图,展示数据。

二、jsp和servlet的区别

Servlet:
		Servlet 是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。
		它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。
		 Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,
		 Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
Jsp:
	JSP 全名为Java Server Pages,中文名叫java服务器页面,
	其根本是一个简化的Servlet设计。
	JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
相同点
	jsp经编译后就变成了servlet,jsp本质就是servlet,
	jvm只能识别java的类,不能识别jsp代码,
	web容器将jsp的代码编译成jvm能够识别的java类。
不同点
	JSP侧重视图,Sevlet主要用于控制逻辑。
	Servlet中没有内置对象 。jsp中有内置对象
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值