zoukankan      html  css  js  c++  java
  • jstl标签的用法 fn标签

    fn标签

    fn标签更确切的说应该叫做fn函数,主要用于el表达式中,使用时需要在页面中引入:

    <%@ taglib uri="/WEB-INF/tld/fn.tld" prefix="fn"%>

    JSP2.0规范下出现的Functions标签共有16个。

    1.fn:length 长度函数

    作用:计算集合的长度;返回值是集合的长度。

    例子:

    1. ${fn:length(userList)}  
    2. ${fn:length(array)}  

    2.fn:contains 判断包含函数

    作用:用于判断一个字符串是否包含子字符串;返回值是true或false。

    例子:

    1. ${fn:contains("ABC", "A")}  //返回true  
    2. ${fn:contains("ABCDDEF", "dd")}  //返回false  
    3.fn:containsIgnoreCase 忽略大小写的判断包含函数 

    作用:用于判断一个字符串是否包含忽略大小写的子字符串;与fn:contains类似,区别是忽略大小写。

    例子:

    1. ${fn:contains("ABC", "A")}  //返回true  
    2. ${fn:contains("ABCDDEF", "dd")}  //返回true  
    4.fn:startsWith 判断词头函数

    作用:用于判断一个字符串是否以一个特定的词头开始。

    例子:

    1. ${fn:startsWith ("ABCD", "AB")}  //返回true  
    2. ${fn:startsWith ("ABCD", "EF")}  //返回false  
    5.fn:endsWith 判断词尾函数

    作用:用于判断一个字符串是否以一个特定的词尾结束。

    例子:

    1. ${fn:startsWith ("ABCD", "CD")}  //返回true  
    2. ${fn:startsWith ("ABCD", "AB")}  //返回false  
    6.fn:escapeXml 字符实体转换函数

    作用:用于将所有特殊字符转化为字符实体码。

    例子:

    1. ${fn:escapeXml("<br>")}  //页面将显示<br>,假如不使用此函数,将返回一个换行  
    7.fn:indexOf 字符首次匹配函数

    作用:用于取得子字符串与源字符串匹配的开始位置,若子字符串与源字符串中的内容没有匹配成功将返回“-1”。

    例子:

    1. ${fn:indexOf("ABCD","ABC")}  //返回0  
    2. ${fn:indexOf("ABCD","BC")}  //返回1  
    3. ${fn:indexOf("ABCD","EF")}  //返回-1  
    8.fn:join 数组组合函数

    作用:用于将一个数组的成员以特定的字符连接起来。

    参数 描述
    array 字符串数组。其类型必须为  String[]  类型
    separator 分隔符。其类型必须为  String  类型
    返回结果 返回一个  String  类型的值

    例子:

    1. ${fn:join(userArray,";")}  //假如userArray的值为[xiaoming, xiaohong, ligang],返回值为xiaoming;xiaohong;ligang  
    2. ${fn:join(testArray,"#_#")}  //假如testArray的值为[I, like, internate],返回值为I#_#like#_#internate  
    9.fn:replace 替换函数

    作用:用于替换字符串中的字符。

    参数 描述
    inputString 源字符串。其类型必须为  String  类型
    beforeSubstring 指定被替换字符串。其类型必须为  String  类型
    afterSubstring 指定替换字符串。其类型必须为  String  类型
    返回结果 返回一个  String  类型的值

    例子:

    1. ${fn:replace("ABC","A","B")}  //返回BBC  
    2. ${fn:replace("ABCDEF","BC","M")}  //返回AMDEF   
    10.fn:split 字符分割函数

    作用:用于将一个字符串分割成数组。

    参数 描述
    string 源字符串。其类型必须为  String  类型
    delimiters 指定分隔符。其类型必须为  String  类型
    返回结果  返回一个  String[]  类型的值

    例子:

    1. ${fn:split("I#_#like#_#internate","#_#")}  //返回值为一个java数组:{"I","like","internate"}  
    11.fn:substring 字符串截取函数

    作用:用于截取字符串。

    参数 描述
    string 源字符串。其类型必须为  String  类型
    beginIndex 指定起始下标(值从  0  开始)。其类型必须为  int  类型
    endIndex 指定结束下标(值从  0  开始)。其类型必须为  int  类型
    返回结果 返回一个  String  类型的值

    例子:

    1. ${fn:substring("ABC","1","2")}  //返回值为B  
    2. ${fn:substring("ABCDEFG","3","5")}  //返回值为DE  
    12.fn:substringBefore 起始至目标字符截取函数

    作用:用于截取源字符从开始到某个特定字符串之间的字符。

    例子:

    1. ${fn:substringBefore("ABCD","BC")}  //返回值为A  
    2. ${fn:substringBefore("ABCDEFG","F")}  //返回值为ABCDE  


    13.fn:substringAfter 目标字符至结尾截取函数

    作用:用于截取源字符从某个特定字符串至结尾之间的字符。

    例子:

    1. ${fn:substringBefore("ABCD","BC")}  //返回值为D  
    2. ${fn:substringBefore("ABCDEFG","F")}  //返回值为F  

    14.fn:toLowerCase 小写转换函数

    作用:用于将源字符串中的字符全部转换成小写字符。

    例子:

    1. ${fn:toLowerCase("ABC")}  //返回值为abc  
    2. ${fn:toLowerCase("ABCDEF")}  //返回值为abcdef  

    15.fn:toUpperCase 大写转换函数

    作用:用于将源字符串中的字符全部转换成大写字符。

    例子:

    1. ${fn:toUpperCase("abc")}  //返回值为ABC  
    2. ${fn:toUpperCase("abcdef")}  //返回值为ABCDEF  

    16.fn:trim 空格删除函数

    作用:用于删除源字符串中开头与结尾部分的空格。

    例子:

    1. ${fn:trim("ABC ")}   //返回结果为ABC;  
    2. start${fn:trim("  ABC DEF  ")}end  //返回结果为startABC DEFend;  

     

    fmt标签

    formatting标签库主要用于在JSP页面中实现国际化与格式化,使用时在页面中引入:

    <%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt"%>

    JSP2.0规范下出现的formatting标签共有12个。

    1.<fmt:timeZone> <fmt:setTimeZone>

    作用:这两组标签都用于设定一个时区,唯一不同的是  <fmt:timeZone>  标签将使得在其标签体内的工作可以使用该时区设置,  <fmt:setTimeZone>  标签则允许将时区设置保存为一个变量,在之后的工作可以根据该变量来进行。

    属性 描述
    var <fmt:setTimeZone>  独有的属性,用于保存时区为一个变量
    value 时区的设置
    scope 变量的作用范围

    2.<fmt:formatNumber>

    作用:用于格式化数字。

    属性 描述
    value 格式化的数字,该数值可以是  String  类型或  java.lang.Number  类型的实例
    type 格式化的类型,可以是currency(货币)、number(数字)和percent(百分比)
    pattern 格式化模式
    var 结果保存变量
    scope 变量的作用范围
    maxIntegerDigits 指定格式化结果的最大值
    minIntegerDigits 指定格式化结果的最小值
    maxFractionDigits 指定格式化结果的最大值,带小数
    minFractionDigits 指定格式化结果的最小值,带小数

    例子:

    1. <fmt:formatNumber value="1000.888" type="currency" var="money"/>  //该结果将被保存在“money”变量中,将根据Locale环境显示当地的货币格式。  

    3.<fmt:parseNumber>

    作用:标签用于解析一个数字,并将结果作为  java.lang.Number  类的实例返回。<fmt:parseNumber>  标签看起来和  <fmt:formatNumber>  标签的作用正好相反。

    属性 描述
    value 将被解析的字符串
    type 解析格式化的类型
    pattern 解析格式化模式
    var 结果保存变量,类型为  java.lang.Number
    scope 变量的作用范围 
    parseLocale 以本地化的形式来解析字符串,该属性的内容应为  String  或  java.util.Locale  类型的实例

    例子:

    1. <fmt:parseNumber value="15%" type="percent" var="num"/>  //解析之后的结果为“0.15”  
    4.<fmt:formatDate>

    作用:用于格式化日期。

    属性 描述
    value 格式化的日期,该属性的内容应该是  java.util.Date  类型的实例
    type 格式化的类型
    pattern 格式化模式
    var 结果保存变量
    scope 变量的作用范围
    timeZone 指定格式化日期的时区

     5.<fmt:parseDate>

    作用:用于解析一个日期,并将结果作为  java.lang.Date  类型的实例返回。

    属性 描述
    value 将被解析的字符串 
    type 解析格式化的类型 
    pattern 解析格式化模式
    var 结果保存变量,类型为  java.lang.Date
    scope 变量的作用范围 
    parseLocale 以本地化的形式来解析字符串,该属性的内容为  String  或  java.util.Locale  类型的实例
    timeZone 指定解析格式化日期的时区

    说明:<fmt:parseNumber> 和 <fmt:parseDate> 两 组标签都实现解析字符串为一个具体对象实例的工作,因此,这两组解析标签对 var 属性的字符串参数要求非常严格。就 JSP 页面的表示层前段来说,处理这种解析本不属于份内之事,因此 <fmt:parseNumber> 和 <fmt:parseDate> 两组标签应该 尽量少用,替代工作的地方应该在服务器端表示层的后段,比如在 Servlet 中。

    6.<fmt:setLocale>

    作用:用于设置 Locale环境。

    属性 描述
    value Locale环境的指定可以是 java.util.Locale 或String 类型的实例
    scope Locale 环境变量的作用范围(可选)

    例子:

    1. <fmt:setLocale value="zh_TW"/>  //设置本地环境为繁体中文。  
    7.<fmt:bundle> <fmt:setBundle>

    作用:这两组标签用于资源配置文件的绑定,唯一不同的是  <fmt:bundle>  标签将资源配置文件绑定于它标签体中的显示,  <fmt:setBundle>  标签则允许将资源配置文件保存为一个变量,在之后的工作可以根据该变量来进行。

    属性 描述
    basename 资源配置文件的指定,只需要指定文件名而无须扩展名,二组标签共有的属性
    var <fmt:setBundle>  独有的属性,用于保存资源配置文件为一个变量
    scope 变量的作用范围

    例子:

    1. <fmt:setLocale value="zh_CN"/>  
    2. <fmt:setBundle basename="applicationMessage" var="applicationBundle"/>  
    该示例将会查找一个名为  applicationMessage_zh_CN.properties  的资源配置文件,来作为显示的  Resource  绑定。

    8.<fmt:message>

    作用:用于信息显示的标签,将显示资源配置文件中定义的信息。

    属性 描述
    key 资源配置文件的“键”指定
    bundle 若使用  <fmt:setBundle>  保存了资源配置文件,该属性就可以从保存的资源配置文件中进行查找
    var 将显示信息保存为一个变量
    scope 变量的作用范围

    例子:

    1. <fmt:setBundle basename="applicationMessage" var="applicationBundle"/>  
    2. <fmt:bundle basename="applicationAllMessage">  
    3.    <fmt:message key="userName" />  
    4.    <fmt:message key="passWord" bundle="${applicationBundle}" />  
    5. </fmt:bundle>  
    9.<fmt:param>

    作用:<fmt:param>  标签应该位于  <fmt:message>  标签内,将为该消息标签提供参数值。它只有一个属性  value。

    10.<fmt:requestEncoding>

    作用:<fmt:requestEncoding>  标签用于为请求设置字符编码。它只有一个属性  value  ,在该属性中可以定义字符编码。

  • 相关阅读:
    深度解析U-Boot网络实现(长篇好文)
    优化嵌入式Linux的启动时间之内核
    优化嵌入式Linux的启动时间之文件系统
    Java安全之 ClassLoader类加载器
    Java 审计之xss审计要点
    Java审计之命令执行篇
    Java审计之文件操作漏洞
    Java 审计 之过滤器防御xss
    Java 审计之SSRF篇(续)
    Java 审计之SSRF篇
  • 原文地址:https://www.cnblogs.com/xhk1228/p/3194873.html
Copyright © 2011-2022 走看看