#笔记#圣思园 JavaWeb 第44讲——自定义标签库
2015-06-24 16:32
344 查看
1.创建客户化JSP标签的步骤
(1)创建标签处理类(2)创建标签库描述文件
(3)在JSP文件中引入标签库,然后插入标签,例如:<mm:hello/> (<标签前缀:标签名>)
2.JSP Tag API
Servlet容器编译JSP网页时,如果遇到自定义标签,就会调用这个标签的处理类标签处理类必须继承以下两个类之一:
javax.servlet.jsp.tagext.TagSupport类:doEndTag()方法和doStartTag()方法
javax.servlet.jsp.tagext.BodyTagSupport类:它是上面那个类的子类
doStartTag:Servlet容器遇到自定义标签的起始标识时,调用该方法
doStartTag:Servlet容器遇到自定义标签的结束标识时,调用该方法
setPageContext(PageContext pc):设置PageContext对象,该方法由Servlet容器在调用doStartTag
3.示例1:创建hello标签。
定义一个名字为mytaglib的标签库,包含一个hello标签,这个标签能将JSP页面中所有的<mm:hello/>解析为字符串“hello”(1)创建标签处理类,继承TagSupport或BodyTagSupport
MyTag.java
(2)创建标签库描述文件 .tld 存放在与web.xml在同一个目录
mytag.tld
(3)在JSP中引入标签库,然后插入标签
执行结果:
4.示例2:创建message标签
创建一个能替换test应用中JSP网页的静态文本的标签,标签名为message,他放在mytaglib标签库中标签处理类:MyTag2.java
message.properties(属性文件)
(初始化时加载properties文件,把信息加载到内存)InitServlet2.java
tld文件
tag2.jsp
首先,有一个初始化的Servlet,服务器启动时,将message.properties文件的内容加载到Properties对象里,然后将Properties对象放置到application范围内
当访问tag2.jsp时,遇到标签结束,调用doEndTag方法。这个方法执行时,从application范围内将Properties对象拿出来,自动调用setKey,得到页面上的key,调用getProperty(key),返回对应的value值
相关文章推荐
- Eclipse NDK 程序开发
- Spring MVC "The request sent by the client was syntactically incorrect ()"解决办法
- Spring定时器(使用注解)
- aix下java程序运行问题
- 我的Java开发学习之旅------>Java经典排序算法之快速排序
- Java作业整理
- Java作业整理
- Struts2+Hibernate4+Spring3 整合登录例子
- Java屏幕截图
- java作业整理
- 没有main的hello world 程序——Java
- 【Java设计模式】三种单例模式
- java作业整理
- 项目搭建系列之三:SpringMVC框架下使用Ehcache对象、数据缓存
- java web中的多条件查询
- svn插件如何关联项目到VisualSVN
- House Robber II LeetCode Java
- spring mvc/ RESTful
- Ehcache 整合Spring 使用页面、对象缓存
- java join用法