自定义jsp标签:
step1,写一个java类,继承SimpleTagSupport类。
step2,在doTag方法里面,编写处理逻辑。
step3,在.tld文件里面,描述标签。
<body-content>empty</body-content>:
empty: jsp标签没有标签体。
<body-content>scriptless</body-content>
scriptless:jsp标签可以有标签体,但是,标签体
的内容不能够出现java代码。即不能够使用
<% %>,<%= %>,<%! %>
<body-content>JSP</body-content>
JSP:jsp标签有标签体,并且标签体的内容可以是
java代码。只有复杂标签技术才支持这个值,简
单标签技术不支持。
自定义JSP标签的例子:
1.新建一个java类:
package jspTagTest;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.SimpleTagSupport;
/**
* @author Leinuoa
* 自定义JSP标签
*/
public class CustomJspTag extends SimpleTagSupport {
private String pattern;
public void setPattern(String pattern) {
this.pattern = pattern;
}
@Override
public void doTag() throws JspException, IOException {
PageContext ctx = (PageContext) getJspContext();
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
JspWriter out = ctx.getOut();
out.println(sdf.format(date));
}
}
2.在WEB-INF目录下新建一个 xx.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">
<tlib-version>1.1</tlib-version>
<short-name>c1</short-name>
<uri>http://webTest7/mytag</uri>
<tag>
<name>date</name>
<tag-class>jspTagTest.CustomJspTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>pattern</name>
<required>true</required>
<rtexprvalue>false</rtexprvalue>
</attribute>
</tag>
</taglib>
3.应用到JSP中:
<%@page pageEncoding="utf-8" contentType="text/html;charset=utf-8" %>
<%@taglib uri="http://webTest7/mytag" prefix="c1" %>
... ...
<c1:date pattern="yyyy年MM月dd日" /><!-- date为tld文件中的<name>date</name> 名字必 须一致 -->
... ...
相关推荐
本篇学习笔记将深入探讨JSP自定义标签的相关概念、创建方法以及实际应用。 一、概述 1.1 使用简单标签机制 JSP自定义标签提供了类似HTML标签的语法结构,通过自定义标签,开发者可以封装复杂的Java代码,使得页面...
### 自定义标签学习笔记 #### 一、什么是自定义标签? 自定义标签是JSP(Java Server Pages)中的一种功能,允许开发者创建可重用的组件。这些组件封装了特定的功能,可以在不同的JSP页面中复用,从而提高开发效率...
本文将基于一篇技术笔记——《自定义标签库制作(二)》,详细阐述如何创建并应用带有参数的自定义标签。 **一、自定义标签的概念与意义** 自定义标签允许开发者封装复杂的业务逻辑和UI组件,以标签的形式在JSP...
8. **自定义标签**:通过创建Tag Library Descriptor (TLD)文件和实现自定义标签类,可以创建自己的JSP标签,提高代码复用性。 9. **MVC模式与JSP**:在Web开发中,JSP常作为MVC(Model-View-Controller)架构的...
7.JSP的自定义标签:JSP的自定义标签的使用和实现 8.Servlet的过滤器:Servlet的过滤器的使用和实现 9.JSP和Servlet的安全机制:JSP和Servlet的安全机制和实现 通过学习本资源,您将掌握JSP和Servlet的基本概念和...
3. 标签库指令(taglib directive):引入自定义标签库,使页面更加简洁、模块化。 三、JSP脚本元素 1. 脚本声明(Scriptlet):用于编写Java代码,通常用来处理服务器端的逻辑。 2. 表达式(Expression):将...
3. taglib指令:引入自定义标签库。 三、JSP脚本元素 1. Scriptlet:在中编写Java代码,通常用于处理逻辑。 2. Expression Language (EL):一种简化访问JavaBean属性和集合数据的语言,如${expression}。 3. ...
- **自定义标签开发**:创建自定义标签涉及编写标签处理类、定义TLD文件,并在JSP页面中使用。 - **异常处理**:JSP 2.0支持使用`<error-page>`标签进行错误页面的指定,以及使用`<error-page>`和`<error-code>`...
Struts是一个基于MVC设计模式的Java Web框架,"struts框架.doc"和"struts标签.doc"可能详细阐述了Struts的架构、Action类、ActionForm对象以及自定义标签的使用,这些都是提高开发效率的关键。 **八、BS与CS模式** ...
- **taglib指令**:引入自定义标签库。例如,`<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>` 3. **动作(Actions)** - **<jsp:include>**:在运行时动态地包含一个页面。例如,`<jsp:...
第五篇为“标签语言和表达式语言”,主要讲述JSP的标签技术,JSP提供的标准标签库JSTL的用法及用户如何自定义自己的标签库;第六篇为“Web应用高级专题”,主要讲述Servlet过滤器、JSP异常处理、JSP日志、认证和安全...
- **taglib**:指定要使用的自定义标签库的位置。 ### JSP标签库 JSP标签库提供了一系列预定义的标签,这些标签可以帮助开发者更简洁地编写代码。常用的标签库包括: - **JSTL (JavaServer Pages Standard Tag ...
- **JSTL(JavaServer Pages Standard Tag Library)**:一套标准标签库,提供诸如循环、条件判断等功能,替代自定义标签和脚本片段,使代码更易读。 - **Page指令的default ContentType**:JSP 2.0默认的...
2. **可扩展性**:通过Java插件和自定义标签库,可以轻松扩展功能。 3. **MVC模式支持**:适合于模型-视图-控制器架构,提高代码组织和复用。 **学习JSP与Servlet的建议:** - 熟悉Java基础,因为它们是JSP和...
**自定义标签库(Tag Libraries)**允许开发者创建自己的JSP标签,增强代码的可读性和复用性。TLD(Tag Library Descriptor)文件定义了标签的行为,而标签处理器类实现这些行为。 在本学习资料中,"JSP.txt"和...
4. **JSP动作指令**:如jsp:include、jsp:forward、jsp:params等,以及自定义标签的使用。 5. **JSTL(JSP Standard Tag Library)**:一套标准标签库,可以替代一些JSP脚本,提高代码可读性和维护性。 6. **会话...
- **taglib指令**:引入自定义标签库,简化代码编写。 ### 3. JSP脚本元素 - **声明(! %>)**:声明变量或方法,它们在Servlet类中作为成员存在。 - **脚本片段()**:在这段代码中可以直接编写Java语句,执行...
- `taglib`指令:引入自定义标签库。 例如,导入日期和SQL相关的包: ```jsp *"%> ``` ### 6. JSP和Servlet的分工合作 在MVC架构中,Servlet通常作为控制器,处理请求,调用业务逻辑,并将结果传递给JSP进行展示...
2. **PPT** 文件可能包含教学演示,详细讲解了JSP和Servlet的原理及其实现细节,比如JSP指令、动作、EL表达式和JSTL标签库的使用,以及Servlet生命周期、初始化参数和会话管理等。 3. **DOC** 文件可能包含文档资料...