EL函数库
EL函数库由JSTL提供
我们导入一下函数库
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
我们现在可以开始使用函数库内的函数
${fn:length(arr)}
${fn:toLowerCase("Hello")}
${fn:contains("abc","a")}
等等
我们可以自定义函数库
写一个java类,类中可以定义N个方法
但是必须是static静态的
而且是有返回值的
我们可以到tomcat目录下的webapps目录
找到examples目录的WEB-INF目录
然后找到jsp目录或者jsp2目录
随便找一个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">
<description>A tag library exercising SimpleTag handlers.</description>
<tlib-version>1.0</tlib-version>
<short-name>SimpleTagLibrary</short-name>
<uri>http://tomcat.apache.org/jsp2-example-taglib</uri>
<tag>
<description>Outputs Hello, World</description>
<name>helloWorld</name>
<tag-class>jsp2.examples.simpletag.HelloWorldSimpleTag</tag-class>
<body-content>empty</body-content>
</tag>
</taglib>
然后我们就修改一下
<?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>baidu</description>
<display-name>baidu</display-name>
<tlib-version>1.0</tlib-version>
<short-name>bd</short-name>
<uri>http://baidu.com</uri>
</taglib>
然后我们再复制一个function函数过来
修改一下
<?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">
<display-name>abc</display-name>
<tlib-version>1.0</tlib-version>
<short-name>abc</short-name>
<uri>http://abc.com/functions</uri>
<function>
<name>fun</name>
<function-class>function.MyFunction</function-class>
<function-signature>java.lang.String fun()</function-signature>
</function>
</taglib>
public class MyFunction {
public static String fun() {
return "aaabbbccc";
}
}
<%@ taglib prefix="abc" uri="/WEB-INF/tlds/test.tld" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h1>${abc:fun()}</h1>
</body>
</html>