自定义tag怎么使用jstl的标签

自定义tag怎么使用jstl的标签,第1张

首先我们自定义标签类:ViewIpTag

[java] view plain copy

package com.weijia.traditionaltag

import java.io.IOException

import javax.servlet.http.HttpServletRequest

import javax.servlet.jsp.JspException

import javax.servlet.jsp.JspWriter

import javax.servlet.jsp.tagext.TagSupport

/**

* 自定义标签,然后将这个标签映射到这个类:mytag:viewIP

* 记得将自定义的标签绑定到一个url上面,这个url一般是公司的网址

*

*/

public class ViewIpTag extends TagSupport{

private static final long serialVersionUID = 1L

@Override

public int doStartTag() throws JspException {

//内置一个pageContext对象,我们之前说到pageContext对象,它里面是封装了9个隐式对象

HttpServletRequest request = (HttpServletRequest)this.pageContext.getRequest()

JspWriter out = this.pageContext.getOut()

String ip = request.getRemoteAddr()

try {

out.print(ip)

} catch (IOException e) {

throw new RuntimeException(e)

}

return super.doStartTag()

}

}

自定义tld文件,mytag.tld

[html] view plain copy

<?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 web-jsptaglibrary_2_0.xsd"

version="2.0">

<description>JSTL 1.1 core library</description>

<display-name>JSTL core</display-name>

<tlib-version>1.1<消则/tlib-version>

<short-name>weijia</short-name>

<拿敬棚uri>http://www.weijia.cn/mytag</uri>

<!-- 显示IP地址 -->

<tag>

<description>

Catches any Throwable that occurs in its body and optionally

exposes it.

</description>

<name>viewIP</name>

<tag-class>com.weijia.traditionaltag.ViewIpTag</tag-class>

<body-content>empty</body-content>

</tag>

</taglib>

这里我们将就自定义的标签类就注册稿腔好了,下面解释一下这些字段的含义:

首先看一下:

<short-name>这个标签是指定我们定义标签的简称,这个作用不大

<uri>这个标签是给这个标签文件指定一个访问路径,这个路径我们在Jsp页面中引入这个标签的时候需要用到

<tag-class>这个标签就是指定我们自定义的标签类的全称

<body-content>这个标签表明自定义标签是否有标签体内容(empty:没有,JSP:有)

你好,这样写既可: 希望采运敏纳!!!!

$(function(){

var title_text

$('#this_post_tags a').each(function(){

 title_text= "点击查看更多与【卜掘" + $(this).text() + "】相关的内容"

  $(this).attr('型悄核title',title_text)

})

})

p自定义标签需要引入两个jar 分别是

javax.servlet.jsp.jarjavax.servlet.jar

2

建立tld文件,建议目录为WEB-INF下,tld文件结构为下图,uri为整个标签库的名称,可以理解为java类,每一个tag分支,可以理解为java类中的每一个方法,我们在调用jsp自定义标签的时候就和调用java类一样,通过皮棚迟类找方法。tag分支重点要讲tag-class,该属性为该标签方法所指向和枝的java类。attribute为参数,相信属性看燃李步骤三附图。

3

关于tld文件属性的说明,可以参考下图

4

将tld文件引入web.xml中,建议名称与tld文件标签库名称一致

5

编写jsp自定义标签类,该类继承TagSupport类,我们需要做的就是重写doStartTag,我们可以通过JspWriter将后台处理的东西直接输出到jsp页面。当然了,输出的内容在实际 *** 作中肯定经过了非常复杂的逻辑。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11981964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存