JSP自定义不带属性和标签体的简单标签
1. 新建HelloTag类
2. 添加额外的Jar包
(1). 右键项目 -> Build Path -> Configure Build Path -> Libraries -> Add External JARs
(2). 定位到tomcat安装目录的lib文件夹下(我的是:C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib)选择jsp-api.jar,确定
3. HelloTag类的详细代码
package bid.zhazhapan.fims.tag;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.Tag;
public class HelloTag implements Tag {
private PageContext pageContext;// 定义页面隐式对象
private Tag parent;// 定义上一级标签
// 将页面隐式对象传入到标签中
public void setPageContext(PageContext pageContext) {
this.pageContext = pageContext;
}
// 设置上一级标签
public void setParent(Tag parent) {
this.parent = parent;
}
// 标签开始时调用
public int doStartTag() throws JspException {
return this.SKIP_BODY;
}
// 标签结束时调用
public int doEndTag() throws JspException {
// 通过隐式对象pageContext获得隐式对象out
JspWriter out = pageContext.getOut();
try {
// 向客户端输出
out.write("Hello World<br />");
} catch (IOException e) {
throw new JspException("IO Error " + e.getMessage());
}
// 计算页面其他部分
return this.EVAL_PAGE;
}
// 销毁前调用,用于释放资源
public void release() {
}
public Tag getParent() {
return null;
}
}
4. 新建xml配置文件
(1). 在WEB-INF下新建文件夹tlds
(2). 新建xml文件
Step 1
Step 2
Step 3
Step 4
(3). 配置xml文件<?xml version="1.0" encoding="UTF-8"?>
<javaee:taglib version="2.1" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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 ">
<javaee:tlib-version>1.0</javaee:tlib-version>
<javaee:short-name>demo</javaee:short-name>
<javaee:uri>/demo</javaee:uri>
<javaee:tag>
<javaee:name>hello</javaee:name>
<javaee:tag-class>bid.zhazhapan.fims.tag.HelloTag</javaee:tag-class><!-- 类所在的路径 -->
<javaee:body-content>empty</javaee:body-content><!-- 表示无标签体内容 -->
</javaee:tag>
</javaee:taglib>
5. 新建一个test.jsp来测试标签
详细代码
```
Insert title here
```
输出内容: Hello World
JSP自定义不带属性和标签体的简单标签的更多相关文章
- JSP自定义标签就是如此简单
tags: JSP 为什么要用到简单标签? 上一篇博客中我已经讲解了传统标签,想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并 ...
- JSP第七篇【简单标签、应用、DynamicAttribute接口】
为什么要用到简单标签? 上一篇博客中我已经讲解了传统标签,想要开发自定义标签,大多数情况下都要重写doStartTag(),doAfterBody()和doEndTag()方法,并且还要知道SKIP_ ...
- JAVAWEB开发之JSTL标签库的使用、 自己定义EL函数、自己定义标签(带属性的、带标签体的)
JSTL JSTL简单介绍: JSTL的全称:JSP Standard Tag Library,JSP标准标签库 JSTL的作用: 提供给Java Web开发者一个标准通用的标签函数库 和E ...
- javaweb中带标签体的自定义标签
1.完整的示例代码: 标签体的处理器类,JspFragmentTest.java package com.javaweb.tag; import java.io.IOException; import ...
- JSP自定义标签——简单标签(2)
在前一篇博客中,我们已经学习了自定义的简单标签的基本使用方法,这一篇我们来学习如何在简单标签中添加标签属性.对自定义标签添加一些属性,可以使我们的标签功能更加灵活和复用.例如前一篇博客使用简单标签来对 ...
- Java jsp 自定义标签
1 自定义标签 1.1 引入 需求: 向浏览器输出当前客户的IP地址 (只能使用jsp标签) 1.2 第一个自定义标签开发步骤 1)编写一个普通的java类,继承SimpleTagSupport类,叫 ...
- JSP 自定义标签
0 标签技术的API继承体系 1 作用 jsp自定义标签用于移除页面中的java代码 2 实现 2.1 标签处理类ViewIPTag.java package com.zsm.util; import ...
- JSP自定义标签(标签处理器 tld文件)
标签的形式如下,标签处理器就是处理JSP页面中的标签的属性和内容,定义好之后就跟使用JSTL一样 <标签名 属性名="属性值" 属性名="属性值"> ...
- 1.4(学习笔记)JSP自定义标签
一.JSP自定义标签 JSP自定义标签,可以通过实现Tag接口.继承TagSupport类来设置标签功能. 后续通过配置文件将标签和具体的实现类关联. 二.自定义第一个标签(实现Tag接口) 自定义标 ...
随机推荐
- 从CMOS到触发器(一)
作为一个学微电子专业的IC learner,这个学期也有一门课:<微电子器件>,今天我就来聊聊基本的器件:CMOS器件及其电路.在后面会聊聊锁存器和触发器. 今天的主要内容如下所示: ·M ...
- Java Web(十) JDBC的增删改查,C3P0等连接池,dbutils框架的使用
前面做了一个非常垃圾的小demo,真的无法直面它,菜的抠脚啊,真的菜,好好努力把.菜鸡. --WH 一.JDBC是什么? Java Data Base Connectivity,java数据库连接,在 ...
- ASP.NET Web API 基本操作(CRUD)
上一篇介绍了ASP.NET Web API的基本知识和原理,这一篇我们通过一个更直观的实例,对产品进行CRUD操作(Create/Read/Update/Delete)来继续了解一下它的基本应用. 创 ...
- linux 下maven安装
版本要求maven3.2.3 软件下载 wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.2.3/binaries/apache-maven-3 ...
- js方法提纲
Math.random() 日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b ...
- spring事务源码解析
前言 在spring jdbcTemplate 事务,各种诡异,包你醍醐灌顶!最后遗留了一个问题:spring是怎么样保证事务一致性的? 当然,spring事务内容挺多的,如果都要讲的话要花很长时间, ...
- Ansible 入门 (1) - 安装和配置
本文参考 <Ansible 自动化运维和最佳实践>,这两天刚读这本书,写写总结.主控机环境是 centos 7,被控机均是 centos 6.8 . 确保 python 版本大于 2.6 ...
- Vue开源项目库汇总
最近做了一个Vue开源项目库汇总,里面集合了OpenDigg 上的优质的Vue开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. UI组件 elem ...
- 用C#代码实现类似QQ窗体的“上、左、右”停靠功能
大家都知道QQ有一个自动停靠功能,即“上.左.右”,当你把窗体拖到屏幕边缘,然后移开鼠标它会自动缩放,然后只显示一小小点出来,我们仔细观察会发现其实它只露3像素左右的边缘,当你鼠标移上去它又会伸出来, ...
- JS获取网站StatusCode,若存在写入文件
JS获取网站状态码,若网站存在,写入TXT文件,适用于IE. <script> //写文件 function writeFile(filename,filecontent){ ...