jsp中自定义标签
来源:互联网 发布:淘宝澳洲运费 编辑:程序博客网 时间:2024/05/16 11:28
自定义标签小案例(输出自身ip地址)
以前经常看到把java代码写在jsp页面中,这样jsp页面看起来会特别凌乱,还不好维护,今天我们将java代码提取出来,定义成标签类
先来看下自定义标签的执行过程:
1:首先浏览器发起请求
2:请求到达web服务器
一:首先需要导入jar包:jsp-api.jar
在Tomcat的lib文件夹中有
二:编写自定义标签代码
在java中定义class类,并继承TagSupport类,重写其中的doStart方法
public class ViewIpTag extends TagSupport{@Overridepublic int doStartTag() throws JspException {// TODO Auto-generated method stubHttpServletRequest request = (HttpServletRequest)pageContext.getRequest();JspWriter out = pageContext.getOut();String remoteAddr = request.getRemoteAddr();try {out.print(remoteAddr);} catch (IOException e) {// TODO Auto-generated catch block//转成运行时异常抛出去throw new RuntimeException(e);}return super.doStartTag();}}因为在调动doStartTag方法之前已经调用了setPageContext方法,所以可以直接得到request对象
三:完事以后开始自定义标签
在WEB-INF下新建一个 *.tld文件
查看Tomcat中的标签文件, 在本地磁盘中打开tomcat文件夹下的 .tld文件:
D:\apache-tomcat-7.0.42\apache-tomcat-7.0.42\webapps\examples\WEB-INF\jsp2\jsp2-example-taglib.tld
打开它,复制头和尾
<?xml version="1.0" encoding="UTF-8" ?> <taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd" version="2.0"> <description>A tag library exercising SimpleTag handlers.</description> <tlib-version>1.0</tlib-version> <short-name>SimpleTagLibrary</short-name> <uri>http://www.xiaoxiao.com</uri> <tag> <!-- <name>viewIp</name> <tag-class>com.lzl.web.ViewIpTag</tag-class> <body-content>empty</body-content> --> </tag> </taglib>
四:在tag标签中定义我们需要的标签
<name>标签中起名viewIp,用以显示Ip地址
<tag-class>中写我们定义的java类的全限定名
<body-content>表示标签内容是否为空,例如<p> </p>标签,中间为空,默认为空
在<tag>标签上的<uri>标签中定义jsp页面中引入的uri地址
五:最终就可以调用了
至此自定义标签就完成了!
0 0
- JSP中自定义标签
- Jsp中自定义标签
- jsp中自定义标签
- (40)JSP中自定义标签
- jsp中tag自定义标签
- jsp中创建自定义标签
- jsp中自定义tag标签
- JSP中使用简单标签自定义标签
- 在 jsp 中使用自定义标签
- 在JSP页面中自定义标签
- jsp中自定义标签的使用
- JSP中自定义标签属性配置说明
- JSP 中自定义标签方法 小结
- JSP中自定义标签的简单应用
- jsp中自定义标签的学习
- jsp中自定义标签的执行过程
- JSP自定义标签写写在JSP文件(.tag)中
- JSP----自定义标签---简单标签
- WebDriver模拟输入方法
- 亲密数
- 微信公众号开发---生成带参二维码
- html css注释
- Jre, JVM 和 JDK
- jsp中自定义标签
- ftp上传网页文件
- 【Java每日一题】20161123
- Flexbox 伸缩盒模型
- Python 编码规范 PEP 8
- 递归算法
- 对象的克隆
- Android中通过实现线程更新ProgressDialog(对话进度条)
- 最顶级的心理学家是如何看待我们的人生的?