140-EL自定义函数库

20 篇文章 0 订阅
3 篇文章 0 订阅



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>



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值