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 表示,例如< 字符应该转为<
${fn:escapeXml(param:info)}
indexOf
子字符串在母字符串中出现的位置
${fn:indexOf(name, "-")}
join
将数组中的数据联合成一个新字符串,并使用指定字符格开
${fn:join(array, ";")}
length
获取字符串的长度,或者数组的大小
${fn:length(shoppingCart.products)}
replace
替换字符串中指定的字符
${fn:replace(text, "-", "•")}
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标签库详解 #### 一、引言 在Java Server Pages (JSP) 开发过程中,为了简化代码编写与维护,提高开发效率,`jstl_fn` 标签库作为一种强大的工具被广泛应用于处理字符串操作。本文将详细介绍`jstl_fn`...
### JSTL_fn函数标签库的使用详解 #### 一、引言 JSTL (JavaServer Pages Standard Tag Library) 是一种专为简化JavaServer Pages(JSP)开发过程而设计的标准标签库。其中,`fn`函数标签库是JSTL的一部分,提供了...
### JSTL标签库中的FN函数详解 在Java Web开发中,JSTL(JavaServer Pages Standard Tag Library)被广泛应用于简化JSP页面的开发工作。JSTL提供了一系列标准标签,帮助开发者处理循环、条件判断等逻辑操作,并且...
在这些标签中,函数标签(Function Tags)是JSTL的重要组成部分,它们提供了对字符串操作、集合操作等常见功能的支持。下面将详细介绍这些函数标签的使用和功能。 1. `fn:contains(string, substring)` 这个函数...
在JSTL中,`functions`标签库是其中一个重要的组成部分,主要用来处理字符串操作。这个库包含了丰富的字符串处理函数,可以方便地在JSP页面中进行字符串的检查、分割、转换等操作。 `<%@ taglib prefix="fn" uri=...
以下是对`fn`标签库中部分核心函数的详细说明: 1. `fn:contains(string, substring)` 这个函数用于检查`string`是否包含`substring`。如果找到`substring`在`string`中,返回`true`,否则返回`false`。这对于在...
其中,`<fn:substring>`是JSTL中的一个非常实用的标签,用于截取字符串的指定部分。该标签通过指定起始位置和结束位置来截取字符串,从而实现对字符串长度的控制。 #### ${fn:substring(名称,0,23)} 此表达式表示...
JSTL(JavaServer Pages Standard Tag Library)是Java Web开发中的一种标准标签库,它提供了一系列的标签来简化页面逻辑,提高代码可读性和可维护性。其中,JSTL表达式是JSTL库中用于处理字符串和数组等数据的重要...
在JSTL中,Functions标签库提供了一系列强大的字符串处理功能,它们都是通过EL表达式直接调用的,这大大提高了开发效率。 #### 二、引入Functions标签库 要在JSP文件中使用Functions标签库,首先需要通过`...
- **描述**:此函数与`fn:contains`类似,不同之处在于该函数在进行字符串比较时忽略大小写差异。 - **示例**: ```jsp ${fn:containsIgnoreCase(name, 'ADMIN')}"> 用户名包含"ADMIN"(不区分大小写)。 ``` ...
fn:length函数解决了在JSTL 1.0中无法直接通过EL表达式获取集合长度的问题。它接受一个参数`input`,这个参数可以是集合或者字符串。例如,如果有一个ArrayList对象`arrayList1`,我们可以通过`${fn:length...
JSTL的1.1版引入了fn标签库,提供了一些实用的字符串操作函数,如`fn:length()`、`fn:substring()`等。但请注意,不是所有容器都完全支持JSTL的所有版本,比如在Websphere 6.0早期版本中,可能存在对某些功能的bug,...
在JavaServer Pages (JSP)开发中,Expression Language (EL)是用于...在JSP页面中,正确地引入`<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>`标签库后,就可以使用这些功能强大的函数了。
JSTL(JavaServer Pages Standard Tag Library)是一套用于Java EE Web应用程序的标签库,它允许开发者在JSP页面中使用自定义标签和表达式语言(EL)简化页面的开发。JSTL主要用于替代传统的JSP脚本元素,以一种更...
`fmt`是JSTL中的国际化和格式化标签库的一部分,主要用于处理日期、数字和消息资源等的格式化输出。 ##### 1. `fmt:requestEncoding` 用于设置请求的字符编码。例如: ```jsp ``` ##### 2. `fmt:setLocale` ...
EL支持函数库,如JSTL的fmt、fn等标签库,这些库提供了丰富的函数供开发者使用。例如,fn:escapeXml()可以用于转义XML或HTML特殊字符,避免XSS攻击。 5. EL与JSTL集成: JSTL(JavaServer Pages Standard Tag ...
要在JSP页面中使用这些函数,需要首先引入相应的标签库声明,如 `<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>`,这行代码指定了 `fn` 前缀对应的URI,使得我们可以在EL表达式中直接使用 ...
##### 1.1.3 JSTL (`<c:/> 和 <fn:/>`) 标签集合 - ****:输出表达式的值。 - ****:设置变量。 - ****:捕获异常。 - ****:条件判断。 - ****:多路条件分支。 - ****:循环遍历集合。 - ****:按分隔符遍历字符...
JSTL是JavaWeb开发中的一个重要工具,它提供了一组预定义的标签库,帮助开发者在JSP页面上进行数据处理、控制流程、XML操作等,减少了硬编码,提高了代码的可读性和可维护性。 在JavaWeb开发中,JSTL的使用通常涉及...