`
三里小龙
  • 浏览: 86301 次
  • 性别: Icon_minigender_1
  • 来自: 孝感
社区版块
存档分类
最新评论

自定义标签

    博客分类:
  • Web
阅读更多

例子:使用random标签产生1个10至200之间的随机数

1.继承TagSupport,实现doStartTag()方法

 

package org.fanzone.tag;

 

import java.io.IOException;

import java.util.Random;

 

import javax.servlet.jsp.JspException;

import javax.servlet.jsp.tagext.TagSupport;

 

@SuppressWarnings("serial")

public class RandomTag extends TagSupport {

 

private int min = 0;

private int max = Integer.MAX_VALUE;

 

public int getMin() {

return min;

}

 

public void setMin(int min) {

this.min = min;

}

 

public int getMax() {

return max;

}

 

public void setMax(int max) {

this.max = max;

}

 

@Override

public int doStartTag() throws JspException {

Random random = new Random();

int result = random.nextInt(max-min);

try {

this.pageContext.getOut().write(String.valueOf(result));

} catch (IOException e) {

e.printStackTrace();

}

return super.doStartTag();

}

}


 

2.编写TLD(Tag Library Descriptor--标签库描述符)

<?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"

>

<description>Userdefined TagLib</description>

<tlib-version>1.0</tlib-version>

<short-name>ct</short-name>

<uri>http://org.mars.com/tag</uri>

<tag>

<description>Random Number</description>

<name>random</name>

<tag-class>org.mars.tag.RandomTag</tag-class>

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

<attribute>

<name>min</name>

<required>false</required>

<rtexprvalue>false</rtexprvalue>

</attribute>

<attribute>

<name>max</name>

<required>false</required>

<rtexprvalue>false</rtexprvalue>

</attribute>

</tag>

</taglib>

 -------------------------------------------------------------------

要想使一个自定义标签正常工作,必须在TLD文件中对该标签进行配置。在TLD文件中主要配置如下两部分内容: 标签库的配置信息 标签库中具体标签的配置信息 标签库的配置信息主要包括如下的内容: 标签库的版本:使用<tlib-version>标签设置。 正常使用标签库中的标签所需要的最低JSP版本:使用<jsp-version>标签设置。 标签库的默认前缀:使用<short-name>标签设置。 标签库的URI:使用<uri>标签设置。 标签库的描述信息:使用<description>标签设置。 标签的配置信息主要包括如下的内容: 标签名:使用<name>标签设置。 标签对应的Java类:使用<tag-class>标签设置。 标签体的类型:使用<body-content>标签设置。 标签的描述信息:使用<description>标签设置。 标签属性的信息:每一个标签属性对应一个<attribute>标签。在<attribute>标签中可以指定标签名(使用<name>标签设置)、该属性是否必须指定(使用<required>标签设置)、该属性是否支持动态属性值(使用<rtexprvalue>标签指定)等配置信息。

---------------------------------------------------------------------

3.测试标签

<%@ page language="java" contentType="text/html; charset=UTF-8"%>

<%@ taglib  uri="http://org.mars.com/tag" prefix="ct"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<ct:random min="1" max="200"/>

</body>

</html>

 

0
1
分享到:
评论

相关推荐

    mybatis自定义标签.zip

    在实际开发中,有时我们需要根据项目需求实现特定的功能,比如动态生成SQL或者进行复杂的业务逻辑处理,这时MyBatis的自定义标签功能就显得尤为重要。 自定义标签是MyBatis框架的一大特色,它允许我们扩展XML映射...

    struts2 自定义标签

    在Struts2中,自定义标签是提高代码可读性和可维护性的重要工具。本文将深入探讨Struts2自定义标签的实现机制、优点以及如何在实际项目中进行应用。 一、Struts2自定义标签的概念 自定义标签是JSP的一种扩展,允许...

    jsp 自定义标签实例

    在JavaServer Pages (JSP) 技术中,自定义标签是扩展JSP功能的关键手段,它允许开发者创建可重用的组件,提高代码的可维护性和可读性。本实例将深入探讨如何实现一个简单的JSP自定义标签。 首先,自定义标签的实现...

    java自定义标签java自定义标签java自定义标签

    Java自定义标签是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者扩展JSP的标准库,创建自己的标签库,以实现特定的功能或者简化代码。这种机制使得开发者能够将业务逻辑封装在标签中,提高代码的可读性...

    一个用于分页的自定义标签

    一个“自定义标签”是开发者为了扩展JSP(JavaServer Pages)功能而创建的,它允许我们封装复杂逻辑并将其作为可重用的组件。本项目提供了一个用于分页的自定义标签,适用于那些需要在网页上进行数据分页展示的应用...

    tp自定义标签

    在ThinkPHP中,自定义标签(Tag Lib)是一种强大的特性,允许开发者扩展模板引擎的功能,使其更符合项目需求。下面将详细解释如何在ThinkPHP 3.0版本中实现自定义标签及其使用方法。 1. **自定义标签的作用** ...

    ckeditor4.0自定义标签操作详细步骤及修改后编辑器jar包下载

    本篇文章将详细阐述如何在CKEditor 4.0中进行自定义标签操作,并提供经过修改的编辑器JAR包供下载。 CKEditor 4.0是一款开源的JavaScript富文本编辑器,它支持多种浏览器环境,提供丰富的功能和高度可定制性。...

    jsp2.0 自定义标签和自定标签函数

    在Java Server Pages (JSP) 2.0版本中,自定义标签和自定义标签函数极大地扩展了JSP开发的灵活性和可重用性。这些特性允许开发者创建可复用的组件,使代码更加清晰,易于维护。本文将深入探讨JSP 2.0中的自定义标签...

    JSP自定义标签学习笔记

    本人自行研究JSP自定义标签的学习笔记 目录如下: 目录 一、概述 1 1.1 使用简单标签机制 2 1.2 使用标签文件 3 二 、自定义标签简介 3 2.1 自定义标签概念 3 2.2 标签相关概念 3 2.3 如何创建自定义标签 3 三、自...

    spring自定义标签例子

    在Spring框架中,自定义标签是一项非常实用的功能,它允许我们创建符合XML语法的自定义元素,以便在配置文件中更方便地表达业务逻辑。在"spring自定义标签例子"这个项目中,我们可以深入理解这一特性,特别是通过...

    jsp 自定义标签的使用

    在JavaServer Pages (JSP) 技术中,自定义标签是提高代码可重用性和模块化的重要手段。自定义标签允许开发者创建自己的组件,这些组件可以像HTML标签一样在页面上使用,使得代码更加清晰易读。本教程将深入探讨JSP...

    struts实现自定义标签

    在 Struts 中,自定义标签是提供一种灵活的方式,使得视图层(通常为 JSP 页面)能够更好地与业务逻辑交互,从而提高代码的可读性和可维护性。本文将深入探讨如何在 Struts 中实现自定义标签。 一、自定义标签概述 ...

    html自定义标签的使用

    首先,创建自定义标签的目的是为了增加语义化,使网页内容更易于机器理解,同时提高人类阅读的清晰度。例如,可以定义`&lt;article&gt;`、`&lt;sidebar&gt;`等标签来明确内容区块的类型。自定义标签遵循驼峰式命名规则,如`...

    自定义标签,标签实例,ppt

    在Java Web开发中,自定义标签(Custom Tags)是一个强大的工具,它允许开发者创建可重用的组件,提高代码的可读性和维护性。自定义标签是JSP标准标签库(JSTL)的一种扩展,它能将复杂的业务逻辑封装起来,使JSP...

    java自定义标签.......java自定义标签

    Java自定义标签是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者扩展JSP的标准标签库,创建自己的定制化标签,以提高代码的可读性和可维护性。自定义标签可以封装复杂的业务逻辑或者视图呈现,使得页面...

    jsp权限控制,jsp自定义标签实现

    使用jsp自定义标签的功能实现权限的控制。(如果用户没有某个模块的删除权限,就不现实这个删除按钮) 在整个项目中所有的页面都可以引入自定义的标签去做到权限的控制。 自定义标签文件 删除 可以控制页面中的每...

    Freemarker 自定义标签 简单案例

    在这个"Freemarker自定义标签简单案例"中,我们将深入探讨如何利用Freemarker进行模板设计,并结合自定义标签来增强模板的功能。 首先,让我们理解Freemarker的基础知识。Freemarker是一个与语言无关的模板引擎,它...

    用户自定义标签.

    JSP自定义标签是用户定义的JSP语言元素,可以看成是一种通过标签处理器生成基于XML脚本的方法。自定义标签在功能上和逻辑上都与JavaBean类似,都是一组可重用的组件代码。相较于JavaBean,自定义标签可以使Web开发者...

    freemark 自定义标签 总结

    自定义标签是Freemarker的一个重要特性,它允许开发者扩展模板语言的功能,以满足特定项目的需求。本篇文章将对Freemarker自定义标签进行深入的总结。 1. **自定义标签基础** 自定义标签在Freemarker中被称为`...

    JSP自定义标签之日期显示

    在Java服务器页面(JSP)开发中,自定义标签是一种扩展JSP功能的强大方式,它允许我们封装复杂的逻辑或重复使用的代码片段,提高代码的可读性和可维护性。本篇将深入探讨“JSP自定义标签之日期显示”,以及如何通过...

Global site tag (gtag.js) - Google Analytics