
jsp自定义标签库引用java属性值
发布日期:2021-05-14 12:39:25
浏览次数:29
分类:精选文章
本文共 2696 字,大约阅读时间需要 8 分钟。
自定义JSP标签实现
1. 引入依赖
在项目中引入以下JAR包:
servlet-api.jarjsp-api.jar
如果找不到,可以在Tomcat的lib
目录中查找。或者通过Maven依赖管理:
javax.servlet javax.servlet-api 3.0.1 javax.servlet.jsp jsp-api 2.1 provided javax.servlet.jsp jstl 1.2
2. 创建自定义标签库
在WEB-INF
目录下新建一个.tld
文件,命名为solid-tags.tld
,内容如下:
1.0 1.2 url com.xinpin.front.web.tag.xpo empty fileName true true
3. 定义常量接口
创建一个常量接口,定义如下:
package com.xinpin.front.web.constantsUrl;public interface Url { String LOGIN_URL = "login.view";}
4. 实现自定义标签
创建一个JSP标签类,实现如下:
package com.xinpin.front.web.tag;import java.io.IOException;import java.lang.reflect.Field;import java.util.Date;import javax.servlet.http.HttpServletRequest;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.tagext.TagSupport;import com.xinpin.front.web.constantsUrl.Url;public class xpo extends TagSupport { private static final long serialVersionUID = -8855151786721428161L; private String fileName; public String getFileName() { return fileName; } public void setFileName(String fileName) { this.fileName = fileName; } public int doStartTag() throws JspException { try { Class cls = Class.forName("com.xinpin.front.web.constantsUrl.Url"); Field urlField = cls.getField(fileName); HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); JspWriter out = pageContext.getOut(); out.println(urlField.get(Url.class)); } catch (IOException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } return SKIP_BODY; }}
5. 编写JSP页面
创建一个JSP页面,引入自定义标签库:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %> <%@taglib uri="/WEB-INF/solid-tags.tld" prefix="xpo" %>自定义JSP标签示例 文件名:
6. 页面运行结果
页面会输出对应的URL值。例如,运行后页面可能会显示图片或其他相关内容。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月15日 01时15分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
什么是5G?居然有人用漫画把它讲得如此接地气!
2019-03-12
Spring cloud --分布式配置中心组件Spring Cloud Config
2019-03-12
UE4接入Android第三方库2——通过JIN与GameActivity通信
2019-03-12
Unity Job System 2——并行处理数据
2019-03-12
spark概述
2019-03-12
JavaScript 知识梳理[一] 变量类型,浅拷贝,深拷贝
2019-03-12
pip命令 failed to create process.
2019-03-12
做SMTP客户端遇报错:535 Error
2019-03-12
Python3的修改
2019-03-12
SQL基础学习(六)- MySQL的insert语句
2019-03-12
Linux kernel pwn --- CSAW2015 StringIPC
2019-03-12
2020 05 02 记录思考
2019-03-12
2020-05-31 py执行时超时控制
2019-03-12
一段强大的shellcode
2019-03-12
双链表相加问题
2019-03-12
GB2312-80 汉字机内码
2019-03-12
n的a进制数
2019-03-12
配置jdk的环境变量
2019-03-12
echo命令的颜色及同行显示控制
2019-03-12