自定义EL函数(以将字母转为大写为例)

Posted dssjustdoit

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义EL函数(以将字母转为大写为例)相关的知识,希望对你有一定的参考价值。

Step1

定义一个类:StringFunction.java

  主要作用是来提供转大写的方法;

public class StringFunction {

    public static String toUpper(String str) {
        return str.toUpperCase();
    }
}

Step2

 

定义一个tld文件:dssfn.tdl

<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>
    <!-- 指定函数库的名称,一个函数库对应一个名称,通常与文件名形同,该名称会在jsp文件中使用的到 -->
    <short-name>dssfn</short-name>
    <!-- 指定该函数库所对应的url,一个库对应一个url,也是会在jsp中用到 -->
    <uri>http://www.monkey1024.com/jsp/monkeyTLD</uri>
    
    <function>
        <!-- 指定将来在jsp el中使用该函数的名称,一般与类中的静态方法一致 -->
        <name>toUpper</name>
        <!-- 指定该函数定义在哪个类中 -->
        <function-class>com.dss.function.StringFunction</function-class>
        <!-- 指定类中的方法 -->
        <function-signature>java.lang.String toUpper(java.lang.String)</function-signature>
    </function>
   
</taglib>

Step3

 

在jsp中调用其方法:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://www.monkey1024.com/jsp/monkeyTLD" prefix="dssfn"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
  ${dssfn:toUpper("dss") } </body> </html>

 

在浏览器中的打印结果为:

技术分享图片

 


以上是关于自定义EL函数(以将字母转为大写为例)的主要内容,如果未能解决你的问题,请参考以下文章

[单选题]将字符串中所有英文字母转为大写:

JS的自定义函数有啥命名的规则,大小写、数字、特殊符号、开头等

hive自定义函数实现组织机构代码统一社会信用代码校验

vue定义全局指令和局部指令

Scss中的自定义函数

在python中,如何将一个字符串中的小写字母全部转换为大写?