jsp自定义标签 博客分类: jsp/servlet jsp自定义标签
程序员文章站
2024-03-20 18:59:34
...
1.定义处理类
import java.io.IOException; import java.util.Collections; import java.util.List; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.tagext.TagSupport; import org.apache.commons.lang.StringUtils; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; import com.etool.modules.curd.service.CurdService; public class OutputTag extends TagSupport{ //接收2个参数 private String target; private String fieldName; @Override public int doStartTag() throws JspException { String result=""; JspWriter out = this.pageContext.getOut(); ServletContext servletContext = pageContext.getServletContext(); //逻辑 try { out.print(result); }catch(IOException e) { e.printStackTrace(); } return super.doStartTag(); } public String getTarget() { return target; } public void setTarget(String target) { this.target = target; } public String getFieldName() { return fieldName; } public void setFieldName(String fieldName) { this.fieldName = fieldName; } }
2.编辑tld文件,在WEB-INF\my-tag.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>/</description> <display-name>My Tag Library</display-name> <tlib-version>1.0</tlib-version> <short-name>m</short-name> <uri>/my-tags</uri> <tag> <name>out</name> <tag-class>com.etool.commons.tag.OutputTag</tag-class> <body-content>JSP</body-content> <attribute> <name>target</name> <required>true</required> <rtexprvalue>true</rtexprvalue> <type>String</type> </attribute> <attribute> <name>fieldName</name> <required>true</required> <rtexprvalue>true</rtexprvalue> <type>String</type> </attribute> </tag> </taglib>
3.配置web.xml
<jsp-config> <taglib> <taglib-uri>/my-tags</taglib-uri> <taglib-location>/WEB-INF/my-tags.tld</taglib-location> </taglib> </jsp-config>
4.使用前
<%@ taglib uri="/my-tags" prefix="m" %>
这个uri和web.xml中的<taglib-uri>的值一样
5.使用
<m:out target="${target}" fieldName="${item.name}"></m:out>
在eclipse会有提示
推荐阅读
-
jsp自定义标签 博客分类: jsp/servlet jsp自定义标签
-
Servlet 的生命周期图 博客分类: JSP servletlifecycle
-
【转载】web.xml出现中
default 的作用 博客分类: jsp&servlet servlet -
servlet&jsp 第九章JDBC连接 博客分类: Servlet&jsp jdbcservlet
-
(转)jsp/servlet、浏览器、tomcat之间的编码知识汇总 博客分类: java常用知识 浏览器JSPServletTomcat应用服务器
-
jsp的base标签的重要性 博客分类: jsp详解 jspbasebasepath
-
[转]jsp页面中的pageEncoding和contentType以及html中的meta标签中字符集的设置 博客分类: WebTech jsppageEncodingcontenttype
-
grails学习之自定义标签 博客分类: java基础Groovy/Grails grails标签自定义groovy日期格式化
-
自定义struts日期显示格式 博客分类: struts标签 struts日期格式化
-
jQuery - ajax 博客分类: 互联网技术jsp servlet