Jstl函数库

Jstl函数库是用在el表达式中

fn:length取出字符串长度

$(fn:length(hello))

自定义函数库

1,  定义类和方法(方法必须是public static)

public class MyFunctions {

      

       /**

        * 方法必须是public static

        * @param name

        * @return

        */

       public static String sayHello(String name) {

              return "Hello " + name;

       }

}

2,  编写自定义tld文件,并且将此文件放到WEB-INF或WEB-INF的子目录下

3,  将标准函数库中的tld复制,然后修改,首先修改display-name,然后修改short-name,在修改uri,最后修改function中的函数配置

<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>my functions library</description>

  <display-name>my functions</display-name>

  <tlib-version>1.0</tlib-version>

  <short-name>my</short-name>

  <uri>http://www.bjsxt.com/functions</uri>

 

  <function>

    <name>sayHello</name>

    <function-class>com.bjsxt.struts.MyFunctions</function-class>

    <function-signature>java.lang.String sayHello(java.lang.String)</function-signature>

  </function>

 

</taglib>

原文地址:https://www.cnblogs.com/jinzhengquan/p/1953208.html