EL函数库

****概述****:

EL函数库是由第三方对EL的扩展,下面学习的EL函数库是由JSTL添加的,JSTL下一篇再讲

EL函数库就是定义一些有返回值静态方法。然后通过EL语言来调用它们!当然,不只是JSTL可以定义EL函数库,我们也可以自定义EL函数库。

EL函数库中包含了很多对字符串的操作方法,以及对集合对象的操作。例如:${fn:length(“abc”)}会输出3,即字符串的长度

****导入函数库****:

因为是第三方的东西,所以需要导入,导入需要使用taglib指令!

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

****函数库常用方法****:

    String toUpperCase(String input):
    String toLowerCase(String input):
    int indexOf(String input, String substring):
    boolean contains(String input, String substring):
    boolean containsIgnoreCase(String input, String substring):
    boolean startsWith(String input, String substring):
    boolean endsWith(String input, String substring):
    String substring(String input, int beginIndex, int endIndex):
    String substringAfter(String input, String substring):hello-world, “-“
    substringBefore(String input, String substring):hello-world, “-“
    String escapeXml(String input):把字符串的“>”、“<”。。。转义了!
    String trim(String input):
    String replace(String input, String substringBefore, String substringAfter):
    String[] split(String input, String delimiters):
    int length(Object obj):可以获取字符串、数组、各种集合的长度!
    String join(String array[], String separator):

 

执行为,语句后面注释为执行结果

    ${fn:length(arr) }<br/><!--3-->
    ${fn:length(list) }<br/><!--1-->
    ${fn:toLowerCase("Hello") }<br/> <!-- hello -->
    ${fn:toUpperCase("Hello") }<br/> <!-- HELLO -->
    ${fn:contains("abc", "a")}<br/><!-- true -->
    ${fn:containsIgnoreCase("abc", "Ab")}<br/><!-- true -->
    ${fn:contains(arr, "a")}<br/><!-- true -->
    ${fn:containsIgnoreCase(list, "A")}<br/><!-- true -->
    ${fn:endsWith("Hello.java", ".java")}<br/><!-- true -->
    ${fn:startsWith("Hello.java", "Hell")}<br/><!-- true -->
    ${fn:indexOf("Hello-World", "-")}<br/><!-- 5 -->
    ${fn:join(arr, ";")}<br/><!-- a;b;c -->
    ${fn:replace("Hello-World", "-", "+")}<br/><!-- Hello+World -->
    ${fn:join(fn:split("a;b;c;", ";"), "-")}<br/><!-- a-b-c -->
    
    ${fn:substring("0123456789", 6, 9)}<br/><!-- 678 -->
    ${fn:substring("0123456789", 5, -1)}<br/><!-- 56789 -->
    ${fn:substringAfter("Hello-World", "-")}<br/><!-- World -->
    ${fn:substringBefore("Hello-World", "-")}<br/><!-- Hello -->
    ${fn:trim("     a b c     ")}<br/><!-- a b c -->
    ${fn:escapeXml("<html></html>")}<br/> <!-- <html></html> -->

 

****自定义函数库****:

4 自定义EL函数库

1),写一个类,写一个有返回值的静态方法;

2), 编写.tld文件,可以参考JSTL中的fn.tld文件来写,把.tld文件放到/WEB-INF目录下;

3),在页面中添加taglib指令,导入自定义标签库

 

转载于:https://www.cnblogs.com/QianYue111/p/9743636.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值