`
wangking717
  • 浏览: 262569 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

JSTL自定义标签,小功能大用途

阅读更多

    近期做项目,使用JSTL对字符串进行编码,发现没有该函数来实现,无果情况下,只能自己DIY JSTL标签了,废话不多说,直接开始吧。

 

   首先编写一个类CommonUtil.java,里边放置了对字符串编码、解码的方法。保证方法必须是静态的public方法。 

 

package com.iteye.wangking717.util;

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;

public class CommonUtil {
	
	public static String encoder(String source,String charset){    
		try {
			return URLEncoder.encode(source,charset);
		} catch (UnsupportedEncodingException e) {
			return "";
		}
	}
	    
	public static String decoder(String source,String charset){    
	    try {
			return URLDecoder.decode(source,charset);
		} catch (UnsupportedEncodingException e) {
			return "";
		}
	}
	
}

 

   编写tld文件,建立一个文件,名称为lbs.tld,放在WEB-INF下面。 

 

<?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>Custom Functions</description>    
    <tlib-version>1.0</tlib-version>    
    <short-name>custom</short-name>    
    <uri>/customFunction</uri>    
         
      <function>    
        <name>encoder</name>    
        <function-class>com.iteye.wangking717.util.CommonUtil</function-class>    
        <function-signature>java.lang.String encoder(java.lang.String,java.lang.String)</function-signature>  
        <example>${custom.encoder('','')}</example>  
       </function>  
        
      <function>    
        <name>decoder</name>    
        <function-class>com.iteye.wangking717.util.CommonUtil</function-class>    
        <function-signature>java.lang.String decoder(java.lang.String,java.lang.String)</function-signature>  
        <example>${custom.decoder('','')}</example>  
      </function>  
</taglib>  
 

   编写jsp页面,需要在头部指明引用的tld标签。 

 

<%@ taglib prefix="custom" uri="/customFunction" %>  
${custom:encoder(username,'UTF-8')}  
 

 

wangking717 写道
通过以上的三步即可完成自定义标签的编写。当然这个比较简单。需要的同仁可以尝试下。顺便AD下本人的新站:礼品网,欢迎拍砖哈。
 

 

分享到:
评论

相关推荐

    jsp中自定义标签用法实例分析

    - **文档注释**:为自定义标签编写清晰的文档注释,这将帮助其他开发者理解标签的用途、输入参数和预期行为。 通过上述步骤和技巧,可以有效地创建和使用JSP自定义标签,提高开发效率,增强代码的可维护性。

    jstl标签帮助文档

    JSTL是JSP的一个扩展库,提供了一系列自定义标签,用于处理Java中的常见任务,例如迭代、条件判断、国际化和数据库访问等,而不必将Java代码嵌入到JSP页面中。 从部分内容中提到的JavaServer Pages™ Standard Tag ...

    JSTL详细标签库介绍

    因为一些程序员使用不支持异常处理语言编程时,往往拖延或忘记错误处理程序的编写,故,Java强制程序员从项目一开始就着手进行异常处理,程序员必须投入很大精力把异常处理的策略融合到软件产品中&lt;BR&gt;11、 ...

    JSTL1.0与JSTL1.1的tld文件包下载

    它们遵循Java EE规范,为开发人员提供了一种标准化的方式来声明和使用自定义标签。 JSTL 1.0 和 JSTL 1.1 都是早期的版本,它们之间的主要区别在于功能的完善和性能的优化。JSTL 1.1 添加了一些新特性,比如对XML...

    jstl1.1 tld文件

    TLD文件是JSP规范的一部分,它定义了自定义标签的行为和用途。当JSP容器解析一个JSP页面时,会查找页面中使用的标签对应的TLD文件,从而理解这些标签如何运作。在项目中包含JSTL 1.1的TLD文件,可以确保即使在没有...

    java jstl学习详解过程

    JSTL(JavaServer Pages Standard Tag Library,JavaServer Pages 标准标签库)是一组由 Sun Microsystems 提供的标准标签库,它允许开发者在 JSP 页面中使用预定义的行为而无需编写自定义标签。JSTL 的引入极大地...

    EL表达式和jsp JSTL标签库的总结

    ### EL表达式与JSP JSTL标签库的总结 #### 一、EL表达式的使用方法及示例 ...此外,还简要介绍了JSTL标签库的核心标签,如输出、条件判断和循环等功能。通过这些工具,开发者可以更高效地进行Web应用开发。

    JSTL详解

    JavaServer Pages Standard Tag Library (JSTL) 是一套用于简化JSP开发的标签库,它提供了许多预定义的标签,让开发者能够以更简洁、更易于理解和维护的方式编写JSP页面。JSTL的主要目标是减少在JSP页面中使用脚本...

    JSTL 1.1 TLD 文档

    总的来说,JSTL 1.1 TLD文档是开发者理解和使用JSTL的关键参考资料,它详尽地介绍了每个标签库的用途、标签的功能及其配置选项。通过仔细研究这些文档,开发者能够熟练地利用JSTL来构建高效、模块化的JSP应用。

    jstl标签详解

    JSTL 1.0版本发布于2002年6月,主要包含了四个自定义标记库:`core`、`format`、`xml`和`sql`,以及两个通用标记库验证器(ScriptFreeTLV 和 PermittedTaglibsTLV)。这些库提供了丰富的功能,帮助开发者更加高效地...

    standard.jar和jstl.jar

    JSTL的主要优点在于它的可扩展性,开发者可以自定义标签库来满足特定需求。此外,JSTL还支持国际化和本地化,使得网站可以轻松适应不同地区的用户。 在导入Web项目时,如果JSP页面报错,很可能是缺少了这些库文件的...

    JSTL in Action

    - 进一步探讨高级主题,如编写自定义标签、优化性能等。 #### 附录 - **附录A:JSTL标签概览** - 提供所有JSTL标签的简明参考。 - **附录B:JSTL API** - 详细列出JSTL API,并解释其中的一些高级特性。 - **...

    将定制标签库开发为标记文件

    然后就可以像使用JSTL标签一样使用自定义标签了: ```jsp ``` 这个过程涉及到的知识点包括: 1. JSP自定义标签库的概念和作用。 2. TLD文件的结构和用途,如何定义标签和属性。 3. 自定义标签的Java实现,包括...

    standard.jar和jstl.jar1.11.2两个版本

    - **提高开发效率**:预定义的标签使得开发者可以快速实现常见功能,无需编写大量的自定义脚本。 - **更好的分离关注点**:JSTL有助于实现MVC(Model-View-Controller)架构,使开发者能更专注于各自的角色。 总结...

    dom4j+jstl+beanUtils+log4j

    在Web开发领域,DOM4J、JSTL、BeanUtils和Log4j是四个非常重要的工具库,它们各自为开发者提供了强大的功能支持。下面将详细解释这些库的主要用途和使用方法。 1. DOM4J: DOM4J是一个Java库,用于处理XML文档。它...

    Struts2标签库详解

    Struts2的标签库是基于JSP标准标签库JSTL的扩展,提供了丰富的自定义标签,这些标签可以帮助开发者更好地处理表单、验证、国际化等任务。标签库分为多个部分,如核心标签库、显示标签库、表单标签库等,每个库都有...

    java web 标签大全

    3. 学习如何自定义标签库,以满足特定项目需求。 4. 探索各种框架的集成方式,如Spring与Hibernate的整合,以充分利用标签库的优势。 5. 关注最新的标签库和框架更新,保持技术的前沿性。 总的来说,"java web 标签...

    struts bean标签

    Struts Bean标签库是Apache Struts框架提供的一个JSP自定义标签集合,它基于JSP标准标签库JSTL,并且扩展了一些针对MVC模式中模型层对象的操作。这个库的主要目标是帮助开发者在JSP页面上更加方便地处理Bean对象,...

    jakarta-taglibs-standard-1.1.2.rar

    与自定义标签相比,JSTL 提供了一种更加结构化、可读性更强的方式来编写JSP页面,减少了对脚本元素的依赖,提高了代码的可维护性和可重用性。 **Jakarta Taglibs Standard 1.1.2 包含的组件** Jakarta Taglibs ...

Global site tag (gtag.js) - Google Analytics