`

EL表达式-自定义函数

    博客分类:
  • java
 
阅读更多

表达式语言除了可以使用基本的运算符外,还可以使用自定义函数。通过使用自定义函数,加强了表达式语言的功能。

EL表达式函数,主要功能是完成对数据的修改,统一化格式;

开发步骤

1.开发函数处理类,处理类就是普通的类;每个函数对应类中的一个静态方法;
2. 建立TLD文件,定义表达式函数

3.在WEB.XML文件中配置;(可省略)

4.在JSP页面内导入并且使用

 

案例说明

1.开发函数处理类

package mytag;
/**
 * EL表达式函数处理类
 */
public class ElTag {
	
	public static String reverse(String name){
		return new StringBuffer(name).reverse().toString();
	}
	
	public static int countChar(String text){
		return text.trim().length();
	}
}

  2.创建TLD文件;

<?xml version="1.0" encoding="GBK"?>
<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.0</tlib-version>
	<!-- 定义函数名称 -->
	<short-name>el</short-name>
	<!-- 定义第一个函数 -->
	<function>
		<!-- 定义第一个函数:reverse -->
		<name>reverse</name>
		<!-- 定义函数处理类 -->
		<function-class>mytag.ElTag</function-class>
		<!-- 定义函数的对应方法 -->
		<function-signature>
			java.lang.String reverse(java.lang.String)
		</function-signature>
	</function>
	
	<function>
		<name>countChar</name>
		<function-class>mytag.ElTag</function-class>
		<function-signature>
			java.lang.Integer countChar(java.lang.String)
		</function-signature>
	</function>
	
</taglib>

 

3.在WEB中配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	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-app_2_5.xsd">
	<jsp-config>
		<taglib>
			<!-- 配置标签的引用地址 JSP页面中引用时使用-->
			<taglib-uri>/eltag</taglib-uri>
			<!-- 配置标签的TLD文件地址 -->
			<taglib-location>/WEB-INF/ElTag.tld</taglib-location>
		</taglib>
	</jsp-config>
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>

 

4.JSP页面引入 并且使用

<%@ taglib uri="/eltag" prefix="el" %> 

  <body>
	${el:reverse("ad") }
  </body>

 

分享到:
评论

相关推荐

    EL自定义函数引用

    EL自定义函数实现步骤: 1.开发函数处理类,即普通的Java类;每个函数对应类中的一个静态方法。 2. 建立TLD(Tag Library Descriptor),定义表达式函数。 3.在web.xml中配置TLD文件位置。 4.在JSP页面中使用自定义...

    EL表达式入门必看篇(推荐)

    它是一种简单的语言,基于可用的命名空间(PageContext 属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到 Java 类中静态方法的可扩展函数以及一组隐式对象。 EL 提供了在 JSP 脚本编制...

    正则表达式

    JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法. 在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp...

    dorado 5 用户指南 v1.1.doc

    10.6 实现自定义EL表达式 178 11 I18N (国际化) 181 11.1 设置系统默认Locale 181 11.2 设置Session Locale 182 11.3 创建I18N文件 182 11.4 访问I18N 183 11.5 系统国际化资源的修改 185 12 Mapping(控制器) 187 ...

    黑马程序员安卓Android52期培训课

    2014/12/24 星期三 jsp/EL表达式/EL函数 2014/12/25 星期四 2014/12/26 星期五 自定义标签/JSTL标签库/web国际化/java web之设计模式和案例 2014/12/27 星期六 编码实战演练(指导老师:) 2014/12/28 星期日 mysql...

    vue.js学习相关文件-测试代码

    el: 指令所绑定的元素,可以用来直接操作 DOM 。 binding: 一个对象,包含以下属性: name: 指令名,不包括 v- 前缀。 value: 指令的绑定值, 例如: v-my-directive="1 + 1", value 的值是 2。 oldValue: 指令绑定...

    java从入门到精通70个PPT

    2.变量、数据类型和运算符和表达式 3运算符和程序流程结构 4.数组 5.类和对象 6.字符串 7.封装,继承,多肽 8.接口与抽象类 9.java集合类 10.jdbc 11 html简介与js的基本语法 12 javascript内置对象和内置函数 13 ...

    新手学习C++入门资料

    这种情况多出现在用一个通用的函数指针调用多个函数的场合,其中有些函数不需要函数指针声明中的所有参数。看下面的例子: int fun(int x,int y) { return x*2; } 尽管这样的用法是正确的,但大多数C和C++的...

    DongTai-Doc:东台 IAST 文档

    EL表达式注入 Hql注入 NoSql注入 header头注入 XXE 不安全的readline 不安全的重定向 不安全的转发 路径穿越 弱加密算法 弱哈希算法 弱随机数算法 信任边界 Cookie未设置secure 反射注入 第三方组

    DongTaiDoc:灵芝IAST是一种独立的应用安全评估工具,覆盖了Java WEB相关安全风险的检测,具有近实时检测,准确率高,误报率低,突破清晰等特点|使用之前请阅读官方文档

    EL表达式注入 Hql注入 NoSql注入 头注入 XXE 不安全的readline 不安全的重新 不安全的转发 路径穿越 弱加密算法 弱哈希算法 弱随机数算法 信任边界 Cookie未设置安全 反射注入 第三方组件收集及防御检测 四,...

    史上最强JavaScript日历控件正式版(无偿的永久的提供给大家免费使用,含全部源代码)

    可以通过配置isShowWeek属性决定是否限制周,并且在返回日期的时候还可以通过自带的自定义事件和API函数返回选择的周 只读开关,高亮周末功能 设置readOnly属性 true 或 false 可指定日期框是否只读;设置...

    struts_jstl

    * 函数库的使用 * 自定义函数库 * 定义类和方法(必须定义为public static) * 编写tld文件,并且将tld文件放到WEB-INF下 * 在jsp中使用taglib指令引入自定义标签库 * 直接使用即可 &lt;br&gt; ...

    jpivot学习总结.doc

    memberReaderClass 设定一个成员读取器,默认情况下 Hierarchy 都是从关系型数据库里读取的,如果你的数据不在 RDBMS 里面的话,你可以通过自定义一个 member reader 来表现一个 Hierarchy 。 3.5. Level 级别 , ...

    达内java培训目录

    Servlet/JSP Servlet生命周期及Servlet服务器、Tomcat部署配置、JSP语法、自定义标记、JSTL和EL表达式、JSP 新特性、Java Web 设计模式。 透彻理解Servlet核心原理;熟练掌握Servlet API;透彻理解JSP引擎工作原理;...

    java开源包1

    parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG(解析表达式语法)分析设施。你定义的Java源代码的语法规则,直接,没有必要专门编写和维护,外部语法文件。同时保持蒸提供全面的支持,...

    JAVA上百实例源码以及开源项目

    Java生成自定义控件源代码 2个目标文件 Java实现HTTP连接与浏览,Java源码下载 1个目标文件 摘要:Java源码,网络相关,HTTP  Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件...

    JAVA上百实例源码以及开源项目源代码

    日历表格面板 [ConfigLine.java] 控制条类 [RoundBox.java] 限定选择控件 [MonthMaker.java] 月份表算法类 [Pallet.java] 调色板,统一配色类 Java扫雷源码 Java生成自定义控件源代码 2个目标文件 Java实现HTTP连接...

    java开源包10

    parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG(解析表达式语法)分析设施。你定义的Java源代码的语法规则,直接,没有必要专门编写和维护,外部语法文件。同时保持蒸提供全面的支持,...

Global site tag (gtag.js) - Google Analytics