`
AngelAndAngel
  • 浏览: 234801 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

自定义jstl函数实现

阅读更多
  首先在项目中导入jstl和standard.jar的两个包,把standard包解压,里面会有标准的tld文件,可以直接copy出来。
  然后创建一个class,如下
 
   package org.test.function;
   import java.text.SimpleDateFormat;
   import java.util.Date;

   /**
    * 我的jstl函数
     * @author afei
    *
    */
     public class Function {

	public static String today(String pattern){
		SimpleDateFormat sdf=new SimpleDateFormat(pattern);
		return sdf.format(new Date()); 
	}
	
}

  



然后创建一个tld描述,如function.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">
    
  <description>JSTL 1.1 functions library by duyunfei</description>
  <display-name>JSTL functions</display-name>
  <tlib-version>1.1</tlib-version>
  <short-name>afei</short-name>
  <uri>http://duyunfei.iteye.com/</uri>

  <function>
    <description>
     get today by pattern
    </description>
    <name>today</name>
    <function-class>org.test.function.Function</function-class>
    <function-signature>java.lang.String today(java.lang.String)</function-signature>
    <example>
      Name: ${afei:today('yyyy-MM-dd')}
    </example>  
  </function>

</taglib>
并把它部署到WEB-INF下,最后创建一个测试jsp,如


 
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="afei" uri="http://duyunfei.iteye.com/"%>
<%
String path = request.getContextPath();
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <title>测试一下jstl自定义函数</title>
  </head>
  
  <body>
    ${afei:today('yyyy-MM-dd')}
    ${afei:today('yyyy-MM-dd HH:mm:ss')}
  </body>
</html>
ok,成功了,非常简单的,但是很管用。

分享到:
评论

相关推荐

    自定义标签和自定义jstl函数的具体项目实现

    下面将详细探讨如何实现自定义标签和自定义JSTL函数。 **自定义标签** 自定义标签通常由两个部分组成:标签库描述文件(TLD, Tag Library Descriptor)和标签处理类。TLD定义了标签的元数据,如标签名称、属性、...

    自定义JSTL

    **自定义JSTL详解** JavaServer Pages Standard Tag Library(JSTL)是Java Web开发中的一个标准标签库,它提供了用于处理常见任务的标签,如迭代、条件语句、XML处理等,使得开发者可以避免在JSP页面中编写过多的...

    自定义EL函数

    自定义EL函数的实现通常涉及以下步骤: 1. 创建函数库:你需要创建一个实现了`javax.el.FunctionMapper`接口的类。这个类的职责是映射自定义函数到实际的Java方法。 2. 注册函数:在你的`FunctionMapper`实现中,...

    JSTL 开发自定义标签使用的jar

    JSTL主要包含核心标签库(Core)、XML处理标签库(XML)、函数库(Functions)和JDBC标签库(JDBC)。在这个场景中,我们重点关注的是JSTL的核心标签库以及如何使用自定义标签。 `jstl.jar`是JSTL的核心库,包含了...

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

    - 创建FunctionProvider:实现javax.servlet.jsp.jstl.core.Functions接口,定义需要的函数。 - 创建函数库描述符:与自定义标签类似,也需要一个TLD文件来描述函数库,包括函数名称、参数和返回值等。 - 注册...

    从JSTL和STRUTS的TLD文件到自定义EL函数

    ### 从JSTL和STRUTS的TLD文件到自定义EL函数 #### TLD文件简介 在Java Web开发中,特别是在使用JSP技术时,我们经常需要使用到一些预定义好的标签库来简化页面的开发过程。JSTL(JavaServer Pages Standard Tag ...

    jstl自定义函数[文].pdf

    JSTL(JavaServer Pages Standard Tag Library)是Java Web开发中的一个标准标签库,它提供了一系列的标签来简化页面逻辑,...通过自定义函数,你可以进一步扩展JSTL的功能,满足特定项目需求,实现更复杂的业务逻辑。

    jstl自定义标签和函数思维导图

    jstl自定义标签和函数思维导图

    自定义EL函数解决JSTL标签不足之处——按字节长度截取字符串

    做过大型网站前台的Web开发程序员最头疼的事情就是前台首页的布局,这其中最最头疼的就是标题字符的截取的问题,虽然有fn:substring,但表现率...在我们老大的指点下,了解了如何自定义EL函数,哈哈,今天实现了它。

    java自定义标签、自定义函数、taglib

    它们是JSP(JavaServer Pages)标准标签库(JSTL)的一种扩展,允许开发者创建符合特定业务逻辑的自定义组件,从而将视图层与业务逻辑分离,实现MVC架构。本文将深入探讨这两个概念以及如何使用`taglib`进行定义和...

    JSTL自定义EL表达式

    3. 定义自定义函数:在`FunctionMapper`实现类中,定义Java方法来实现自定义功能。这些方法将作为EL表达式中的函数调用。 4. 在JSP页面中使用:在JSP页面中,你可以像使用内置EL函数一样,通过`my:myFunction`这种...

    JSTL.rar_JSTL_JSTL下载

    2. **可扩展性**:通过自定义TLD,开发者可以创建自己的标签库,扩展JSTL的功能。 3. **性能提升**:JSTL标签在服务器端被解析成Java代码执行,相比在JSP中使用脚本,性能通常会有所提升。 4. **遵循标准**:作为...

    jstl自定义标签

    4. `&lt;tag&gt;`:用于定义每个自定义标签,包含标签的名字、类(对应Java函数)、属性定义等。 5. `&lt;attribute&gt;`:定义标签的属性,包括属性名称、类型、是否必需、默认值等。 **自定义标签实现**: `MyFunctions.java`...

    jstl-jar包

    在JSTL中,`jstl.jar`包包含了所有核心的JSTL标签实现,包括控制流标签、函数标签、I/O标签等。这个库使得开发者能够在JSP页面上执行条件检查、循环、异常处理、XML处理、国际化等操作,极大地提高了代码的结构化...

    JSTL官方使用手册

    JSTL函数库(fmt)提供了处理日期、数字、字符串等类型的函数,如`&lt;fmt:formatDate&gt;`、`&lt;fmt:parseNumber&gt;`等,便于在JSP页面上进行格式化操作。 **4. JSTL SQL库** SQL库(sql)允许在JSP页面中执行SQL查询,如`...

    jstl的两个jar包

    在Java Web开发中,JSTL经常与EL(Expression Language)一起使用,为开发者提供了处理常见任务的能力,如迭代、条件语句、XML处理等,而无需编写自定义标签库。 这两个jar包——`jstl-1.2.jar`和`standard-1.1.2....

    jstl-1.2.rar_JSTL_jstl 1.2_jstl jar_jstl-1.1.2.jar _jstl.jar

    5. **Function**:提供了若干内置函数,可以扩展到自定义函数库。 描述中提到,`jstl.jar` 是用于Java Web开发的标准标签库,这意味着它可以与其他Java Web技术,如Servlet、JSP、JSF等协同工作,使得开发更加高效...

    jstl-api-1.2.jar和jstl-impl.jar

    JSTL有多个核心模块,包括Core(基础标签库)、Format(国际化和格式化)、XML(XML处理)和Function(自定义函数)。在描述中提到的"必须用到的两个标签库"可能是指Core库,这是JSTL最常用的部分,提供了基本的控制...

    这个压缩包里有JSTL自定义标签开发实例的源码及相关文件

    在这个压缩包中,包含的是关于JSTL自定义标签的开发实例源码,对于正在学习JavaWeb技术的开发者来说,这是一个非常有价值的参考资料。 首先,我们要理解JSTL的基本概念。JSTL主要由五个核心部分组成:Core、XML、...

Global site tag (gtag.js) - Google Analytics