`

(收藏)jstl中容易忽略的fn标签

阅读更多
jstl中容易忽略的fn标签,这个平时少用到,但用处还是很广的,特别是字符串处理时,
今天偶然看到,转载之
http://hi.baidu.com/wolf_childer/item/c1a5ed4c2c8502eaa5c066af

/***********截取一定长度字符串*****************/
在应用程序开发中,如果内容过长,想截取一定长度字符,然后补充"....."
jstl1.1引入了一个fn.tld的标签,用于处理字符,如获得字符length,substring,indexof,endWith,lowcase
实现截取字符串
如:
<c:set var="log.logTitle" value="做一个截取字符串长度的测试"
<c:choose>
    <c:when test="${fn:length(log.logTitle) > 10}">
     <c:out value="${fn:substring(log.logTitle, 0, 10)}......" />
    </c:when>
    <c:otherwise>
     <c:out value="${log.logTitle}" />
    </c:otherwise>
   </c:choose>


/*****************截取一定长度字符串***************/

JSTL使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需要在页面调用对象的某些方法,例如我需要调用字符串的length方法来获取字符串的长度时,在以往的开发过程中我们必须把对象先转为String类,然后在调用其length方法,这样的代码繁琐而且容易出错。

因此JSTL内置了几个用于字符串操作的方法,可以直接在表达式中使用,大大的简化了代码,提供代码的可读性。在JSTL的表达是中要使用一个函数,其格式如下

${ns:methodName(args....)}

在使用这些函数之前必须在JSP中引入标准函数的声明

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

下面是JSTL中自带的方法列表以及其描述

   

函数名
函数说明
使用举例

contains
判断字符串是否包含另外一个字符串
<c:if test="${fn:contains(name, searchString)}">

containsIgnoreCase
判断字符串是否包含另外一个字符串( 大小写无关)
<c:if test="${fn:containsIgnoreCase(name, searchString)}">

endsWith
判断字符串是否以另外字符串结束
<c:if test="${fn:endsWith(filename, ".txt")}">

escapeXml
把一些字符转成XML 表示,例如< 字符应该转为&lt;
${fn:escapeXml(param:info)}

indexOf
子字符串在母字符串中出现的位置
${fn:indexOf(name, "-")}

join
将数组中的数据联合成一个新字符串,并使用指定字符格开
${fn:join(array, ";")}

length
获取字符串的长度,或者数组的大小
${fn:length(shoppingCart.products)}

replace
替换字符串中指定的字符
${fn:replace(text, "-", "&#149;")}

split
把字符串按照指定字符切分
${fn:split(customerNames, ";")}

startsWith
判断字符串是否以某个子串开始
<c:if test="${fn:startsWith(product.id, "100-")}">

substring
获取子串
${fn:substring(zip, 6, -1)}

substringAfter
获取从某个字符所在位置开始的子串
${fn:substringAfter(zip, "-")}

substringBefore
获取从开始到某个字符所在位置的子串
${fn:substringBefore(zip, "-")}

toLowerCase
转为小写
${fn.toLowerCase(product.name)}

toUpperCase
转为大写字符
${fn.UpperCase(product.name)}

trim
去除字符串前后的空格
${fn.trim(name)}
分享到:
评论

相关推荐

    jstl_fn标签库

    ### jstl_fn标签库详解 #### 一、引言 在Java Server Pages (JSP) 开发过程中,为了简化代码编写与维护,提高开发效率,`jstl_fn` 标签库作为一种强大的工具被广泛应用于处理字符串操作。本文将详细介绍`jstl_fn`...

    jstl_fn函数标签库的使用

    ### JSTL_fn函数标签库的使用详解 #### 一、引言 JSTL (JavaServer Pages Standard Tag Library) 是一种专为简化JavaServer Pages(JSP)开发过程而设计的标准标签库。其中,`fn`函数标签库是JSTL的一部分,提供了...

    jstl标签 fn函数注解

    ### JSTL标签库中的FN函数详解 在Java Web开发中,JSTL(JavaServer Pages Standard Tag Library)被广泛应用于简化JSP页面的开发工作。JSTL提供了一系列标准标签,帮助开发者处理循环、条件判断等逻辑操作,并且...

    jstl 函数标签 资料

    在这些标签中,函数标签(Function Tags)是JSTL的重要组成部分,它们提供了对字符串操作、集合操作等常见功能的支持。下面将详细介绍这些函数标签的使用和功能。 1. `fn:contains(string, substring)` 这个函数...

    JSTL之functions标签.doc

    在JSTL中,`functions`标签库是其中一个重要的组成部分,主要用来处理字符串操作。这个库包含了丰富的字符串处理函数,可以方便地在JSP页面中进行字符串的检查、分割、转换等操作。 `&lt;%@ taglib prefix="fn" uri=...

    JSTL函数JSTL函数

    以下是对`fn`标签库中部分核心函数的详细说明: 1. `fn:contains(string, substring)` 这个函数用于检查`string`是否包含`substring`。如果找到`substring`在`string`中,返回`true`,否则返回`false`。这对于在...

    直接截取jstl长度控制字符串长短

    其中,`&lt;fn:substring&gt;`是JSTL中的一个非常实用的标签,用于截取字符串的指定部分。该标签通过指定起始位置和结束位置来截取字符串,从而实现对字符串长度的控制。 #### ${fn:substring(名称,0,23)} 此表达式表示...

    JSTL表达式详解(JAVA)

    JSTL(JavaServer Pages Standard Tag Library)是Java Web开发中的一种标准标签库,它提供了一系列的标签来简化页面逻辑,提高代码可读性和可维护性。其中,JSTL表达式是JSTL库中用于处理字符串和数组等数据的重要...

    jstl标签库

    在JSTL中,Functions标签库提供了一系列强大的字符串处理功能,它们都是通过EL表达式直接调用的,这大大提高了开发效率。 #### 二、引入Functions标签库 要在JSP文件中使用Functions标签库,首先需要通过`...

    Jstl常用函数

    - **描述**:此函数与`fn:contains`类似,不同之处在于该函数在进行字符串比较时忽略大小写差异。 - **示例**: ```jsp ${fn:containsIgnoreCase(name, 'ADMIN')}"&gt; 用户名包含"ADMIN"(不区分大小写)。 ``` ...

    JSTL - Function标记库详解

    fn:length函数解决了在JSTL 1.0中无法直接通过EL表达式获取集合长度的问题。它接受一个参数`input`,这个参数可以是集合或者字符串。例如,如果有一个ArrayList对象`arrayList1`,我们可以通过`${fn:length...

    JSTL使用及配置手册

    JSTL的1.1版引入了fn标签库,提供了一些实用的字符串操作函数,如`fn:length()`、`fn:substring()`等。但请注意,不是所有容器都完全支持JSTL的所有版本,比如在Websphere 6.0早期版本中,可能存在对某些功能的bug,...

    EL表达式里fn函数的用法

    在JavaServer Pages (JSP)开发中,Expression Language (EL)是用于...在JSP页面中,正确地引入`&lt;%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %&gt;`标签库后,就可以使用这些功能强大的函数了。

    jstl 字符串处理函数

    JSTL(JavaServer Pages Standard Tag Library)是一套用于Java EE Web应用程序的标签库,它允许开发者在JSP页面中使用自定义标签和表达式语言(EL)简化页面的开发。JSTL主要用于替代传统的JSP脚本元素,以一种更...

    EL表达式--标签

    `fmt`是JSTL中的国际化和格式化标签库的一部分,主要用于处理日期、数字和消息资源等的格式化输出。 ##### 1. `fmt:requestEncoding` 用于设置请求的字符编码。例如: ```jsp ``` ##### 2. `fmt:setLocale` ...

    el使用注意事项

    EL支持函数库,如JSTL的fmt、fn等标签库,这些库提供了丰富的函数供开发者使用。例如,fn:escapeXml()可以用于转义XML或HTML特殊字符,避免XSS攻击。 5. EL与JSTL集成: JSTL(JavaServer Pages Standard Tag ...

    EL表达式函数

    要在JSP页面中使用这些函数,需要首先引入相应的标签库声明,如 `&lt;%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%&gt;`,这行代码指定了 `fn` 前缀对应的URI,使得我们可以在EL表达式中直接使用 ...

    JSF控件详细参考手册

    ##### 1.1.3 JSTL (`&lt;c:/&gt; 和 &lt;fn:/&gt;`) 标签集合 - ****:输出表达式的值。 - ****:设置变量。 - ****:捕获异常。 - ****:条件判断。 - ****:多路条件分支。 - ****:循环遍历集合。 - ****:按分隔符遍历字符...

    AutotJSTL

    JSTL是JavaWeb开发中的一个重要工具,它提供了一组预定义的标签库,帮助开发者在JSP页面上进行数据处理、控制流程、XML操作等,减少了硬编码,提高了代码的可读性和可维护性。 在JavaWeb开发中,JSTL的使用通常涉及...

Global site tag (gtag.js) - Google Analytics