自定义jsp标签

1.新建一个类继承自TagSupport、BodyTagSupport或实现Tag接口

//对应一个jsp标签public class MyTag extends TagSupport {
    private JspWriter writer = null;  //对应到jsp标签的属性
    private String showMsg;   //遇到<调用   //合法返回值EVAL_BODY_INCLUDE(显示标签体内容)与SKIP_BODY(不显示标签体内容)
    @Override
    public int doStartTag() throws JspException {
        return super.doStartTag();
    }  //遇到>调用
  //合法返回值EVAL_PAGE(继续处理后续标签)与SKIP_PAGE(不处理后续表情)
    @Override
    public int doEndTag() throws JspException {    //获得PageContext对象
        writer = this.pageContext.getOut();
        try{
            writer.write(showMeg);
        }catch (IOException ie){
            ie.printStackTrace();
        }
        return super.doEndTag();
    }  //必须提供setter方法
    public void setShowMsg(String showMeg) {
        this.showMeg = showMeg;
    }
}
 

2.新建一个myxxx.tld文件,放于WEB-INF目录/其子目录下,用于映射关系

<?xml version="1.0" encoding="ISO-8859-1"?>

<taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">

    <tlib-version>1.0</tlib-version>
    <short-name>myshortname</short-name>
    <uri>http://mycompany.com</uri>    <!--加入自定义标签的定义-->
    <tag>
        <name>my1</name>
        <tag-class>tag.MyTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>showMsg</name>       <!--配置是否必须-->
            <required>true</required>
        </attribute>
    </tag>

</taglib>

3.在web.xml文件中配置标签库uri

<jsp-config>
        <taglib>
            <taglib-uri>http://mycompany.com</taglib-uri>
            <taglib-location>/WEB-INF/mytag.tld</taglib-location>
        </taglib></jsp-config>

4.使用:引入taglib,然后中<pre:my showMsg="xxx" />,pre为标签库,showMsg对应到自定义类,value为自定义类的实例域。

时间: 2024-10-15 10:02:50

自定义jsp标签的相关文章

自定义JSP标签示例

我们以一个例子来讲解如何自定义JSP标签,假如我们需要在页面中输出当前的时间,按照最简单的JSP脚本,需要在JSP里面写很多Java代码,那么如何来使用自定义标签实现这个功能呢? 首先,我们要先创建一个类,继承TagSupport类: 1 import java.io.IOException; 2 import java.text.SimpleDateFormat; 3 import java.util.Date; 4 import javax.servlet.jsp.JspException;

自定义jsp标签的一般步骤

自定义jsp标签的一般步骤: (1)编写标签处理类: public class Echo extends TagSupport{ //标签开始时调用的处理方法 public init doStartTag()throws JspException{ try{ //将信息内容输出到jsp页面 pageContext.getOut().print(msg); }catch(Exception e){ e.printStackTrace(); } //跳过标签体的执行 return SKIP_BODY

JSP系列:(5)JSP进阶-自定义JSP标签

3.自定义标签 3.1.开发自定义标签的步骤 1)编写一个普通的java类,继承SimpleTagSupport类,叫标签处理器类 2)在web项目的WEB-INF目录下建立rk.tld文件,这个.tld文件叫标签库的声明文件.(参考核心标签库的tld文件) 3) 在jsp页面的头部导入自定义标签库:<%@taglib uri="http://www.lsieun.com/rk" prefix="rk"%> 4) 在jsp中使用自定义标签:<rk:

自定义JSP标签入门

1.编写一个实现Tag接口的java类 package TagDemo; import javax.servlet.http.HttpServletRequest; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; import javax.servlet.jsp.PageContext; import javax.servlet.jsp.tagext.Tag; import java.io.IO

自定义JSP标签查询数据报错问题

酌cdX栏厍9簿Z返掀http://shequ.docin.com/ibyrd96376 o5EQR拾8C棵自暮3杀http://www.docin.com/app/user/userinfo?userid=178894813 鼗6寥1YOE哺噬汾Qhttp://www.docin.com/sina_6270769833 3掠亲7瓶QGW9交http://www.facebolw.com/space/2103368/following f端VHI蹿hT崖居51鞍Dhttp://shufang.d

Jsp标签字典开发_基于Spring+Hibernate

目录 1. Jsp标签字典开发_基于Spring+Hibernate 1.1. 简述 1.2. 定义DictItem实体 1.3. 定义字典的@interface 1.4. 定义字典缓存类 1.5. 定义tld标签 1.6. 持久层实体使用注解 1.7. 页面调用jsp标签 2. 补充点 2.1. Hibernate设置属性成功后扫描字典 2.2. Annotation注解 2.2.1. 简述 2.2.2. 元注解 2.2.3. 自定义注解 1. Jsp标签字典开发_基于Spring+Hiber

JSP自定义分页标签TAG

首先我们需要在WEB-INF/tld/目录下创建page.tld文件 <?xml version="1.0" encoding="ISO-8859-1"?> <taglib> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>page</short-name> <u

使用自定义tld标签简化jsp的繁琐操作

最近做一个树形结构的展示,请求目标页面后,后台只返回简单的List,虽然有想过在jsp页面内做一些操作简化,但是太繁琐了,其他的标签又不能满足需求,所以只能自己做一个.使用tld标签可以简化jsp代码,以后也可以重用代码,所以出于这两个优点,用自定义的tld标签是一个不错的选择.这里只做一个简单例子,将字符串全部变成大写. 1.定义tld的类 定义的方法应该是static方法. public class TestFunction { public static String stringUppe

自定义标签(客户化jsp标签)

客户化jsp标签技术是在jsp1.1版本中才出现的,他支持用户在jsp文件中自定义标签,这样可以使jsp代码更加简单,这些可重用的标签能够处理复杂的逻辑运算和事物或定义jsp网页的输出内容和格式. 创建客户化jsp标签的步骤: (1)创建标签的处理类 (2)创建标签的描述文件 (3)在jsp文件中引入标签库,然后插入标签.例如:<mm:hello />其中 mm叫做标签前缀,hello叫做标签名 jsp tag API Servlet容器编译jsp网页时,如果遇到自定义标签,就会调用这个标签的