`

自定义EL表达式方法

阅读更多

    大家在编写jsp 的时候相信大家都会使用到EL 表达式语言, 可是我们还是会遇到不方便的时候, 比如连接两个字符串,java 中我们可以这样写  [ String str = str1 + str2 ;  ] 这绝对没有问题, 可是如果使用EL 表达式语言, 那就麻烦了, 你如果写成这样[   ${ str1 + str2 }   ] EL 会认为你是想进行加法运算 . 那么页面就抛出了异常, 可是有这种需求( 连接字符串) 该怎么办呢?

      我们必须先要建立一个java 类文件, 然后建立一个公有的静态的方法方法

 

public class ELFuncUtil {
/**
     *
     * <pre>
     * 创建人: 王涛
     * 创建于: Aug 27, 2007
     * 描 述:
     *    EL方法用于连接两个字符串
     * </pre>
     *
     * @param str1
     * @param str2
     * @return
     */
    public static String append(String str1, String str2) {
       return str1 + str2;
    }
 
这个方法很简单就是将两个参数str1 str2 进行连接 , 然后返回.
我们还要写一个tld 文件 如: elfunc.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.0</tlib-version>
<short-name>elf</short-name>
<function>
       <description>用于连接两个字符串</description>
       <name>append</name>
       <function-class>com.tianjin.canic.tjeg.utils.ELFuncUtil</function-class>
       <function-signature>
                java.lang.String append(java.lang.String,java.lang.String)
       </function-signature>
       <example>${elf:append(str1, str2)}</example>
    </function>
</taglib>

    注:int型直接写成int就行

然后在jsp 页面中要这么写
<%@ taglib prefix = "elf" uri = "/WEB-INF/elfunc.tld" %>
使用的时候这样写   ${elf:append(str1, str2)} 自动就会返回一个连接好的字符串
 

如: <c:out value="${elf:append(param.str1, param.str2)} "/>

分享到:
评论

相关推荐

    JSTL自定义EL表达式

    自定义EL表达式是指开发人员根据自己的需求扩展EL的功能,创建自己的函数库。这通常通过实现` javax.el.FunctionMapper`接口来完成。`FunctionMapper`接口定义了一个`resolveFunction`方法,该方法会在解析EL表达式...

    EL表达式的使用详解

    本文将详细介绍 EL 表达式的使用方法和应用场景。 一、EL 表达式的基本概念 EL 表达式是一种基于 XML 的表达式语言,用于访问和操作 Java 对象的属性。它提供了一种简单的方式来访问 Java 对象的属性,例如访问...

    自定义EL表达式

    自定义EL表达式是Java Web开发中的一个高级技巧,它允许开发者扩展标准的JSP Expression Language(EL)功能,以满足特定项目需求。EL是一种简洁的语法,用于在JSP页面中获取JavaBean属性或者调用Java方法。通过...

    EL表达式的语法介绍

    EL 表达式可以被解析成数值表达式和方法表达式,其中取值表达式用于引用一个值,而方法表达式则是关联一个方法。 1.1 EL 表达式语法 EL 表达式可以分为三种类型:eval-expression、literal-expression 和 ...

    jstl自定义标签,自定义EL表达式

    这次整理自定义标签主要是项目的需要,要将一些写死的url信息配置于配置文件中,这样发版的时候改动起来相当方便

    jsp页面中EL表达式被当成字符串处理不显示值问题的解决方法

    通过上述方法,可以有效解决EL表达式被错误地作为字符串处理的问题。但同时,了解EL表达式的另一个新特性也很重要,那就是它作为JSP 2.0中的一个主要新特性,为JSP页面提供了表达语言支持,让访问JSP隐含对象和...

    EL表达式(很全很强大)

    EL还支持调用自定义函数,可以在EL表达式中使用这些函数来执行更复杂的逻辑操作。函数调用的基本语法为`{fn: functionName(args)}`。 - **函数调用格式**:`{fn: functionName(arg1, arg2, ...)}` 这里`fn:`是...

    JSTL,EL表达式语法简介

    EL表达式通常在`${}`中书写,比如`${user.name}`用来获取名为`user`的对象的`name`属性。 **JSTL中的核心标签库(Core Tags)**包括用于控制流程、输出、URL处理、条件判断和迭代的标签。例如: - `&lt;c:if&gt;`用于条件...

    EL表达式语言 非常详细

    ### EL表达式语言详解 #### 9.1 概述 在JSP页面开发中,为了提高代码的可读性和可维护性,开发者们逐渐转向使用标签库来替代传统的Java片段语言来实现页面的显示逻辑。然而,自定义标签虽然灵活,但也容易导致重复...

    EL表达式详解+实例教程

    ### EL表达式详解及实例教程 #### 一、EL表达式概述 EL(Expression Language)表达式是一种简单且功能强大的表达式语言,它被设计用于在JavaServer Pages (JSP)中方便地访问JavaBean属性以及执行基本运算。通过学习...

    在JSP页面用EL表达式调用一些函数

    自定义标签可以包装Java方法,EL表达式则调用这些标签,这样既保持了页面的清晰,又实现了业务需求。 总的来说,EL表达式在JSP页面中的使用极大地提升了开发效率和代码质量,减少了不必要的脚本代码,使JSP页面更加...

    EL表达式使用详解

    EL表达式(Expression Language),是一种用于Java Web开发中方便数据存取的表达式语言,最初作为JSP标准标签库(JSTL)的一部分,是JSTL 1.0为了方便存取数据而自定义的语言。EL允许开发者在JSP页面中通过简洁的...

    EL表达式(转)

    ### EL表达式详解 #### 一、EL表达式概述 EL (Expression Language) 是 JavaServer Pages (JSP) 技术中的一个重要组成部分,用于简化页面上动态内容的处理。EL 表达式允许开发者直接在 JSP 页面中访问 JavaBean ...

    EL表达式完整介绍,很好的一份学习资料

    本教程将深入介绍EL表达式的各个方面,帮助你成为一名熟练的JSF开发者。 一、EL基础 1. EL的语法:EL表达式通常以`#{}`包围,例如`#{bean.property}`,其中`bean`是对象实例,`property`是该对象的属性。EL会自动...

    JAVA JSP页面技术之EL表达式整理归纳总结

    EL表达式允许用户创建自定义函数,这些函数可以作为EL表达式的一部分被调用。开发人员可以编写Java方法,并将其注册为EL函数,之后在JSP页面中通过EL表达式调用这些方法。 EL表达式的启用与禁用: EL表达式默认是...

    在自定义spring aop中使用el获取拦截方法的变量值。

    标题中的“在自定义Spring AOP中使用EL获取拦截方法的变量值”指的是在Spring的面向切面编程(AOP)中,通过Expression Language(EL,表达式语言)来访问被拦截方法的局部变量值。这通常涉及到Spring的代理机制、...

    EL表达式详解

    - **适用范围**:EL表达式不仅可以在元素属性的值中使用,也可以在自定义或者标准动作元素的内容中使用,但在脚本元素中不可使用。 ##### 2. 运算符 EL提供了两种运算符用于存取数据:`.`(点运算符)和`[]`(方括号...

    Fel Javael表达式引擎

    1. 算术表达式:通过eval方法求解表达式的值,例如"5000*12+7500",并输出结果67500。 2. 变量的使用:可以在上下文环境中设置变量,并在表达式中使用这些变量。例如,设置单价、数量和运费,然后计算它们的和,输出...

Global site tag (gtag.js) - Google Analytics