JSTL标签和EL表达式使用笔记

一般在jsp页面的头部都会应用一些标签库,一般就用下面这几个:

<%@ page contentType="text/html; charset=UTF-8" language="java"    pageEncoding="UTF-8"%>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>

²  为了避免每个页面都写一次,可以把这些写在一个jsp文件里面,然后每个要用到这些标签的页面应用下就可以了。

²  <%@include file="../common/head.jsp"%>

EL表达式截取字符串(使用JSTL)  fn标签

<%@ tagliburi="http://java.sun.com/jsp/jstl/functions"prefix="fn"%>上面的 uri 根据你的实际情况定。       
${fn:substring("你要截取的字符串"),beginIndex,endIndex}    
<%@ taglibprefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>

 

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

  

函数名 函数说明 使用举例  

fn:contains 判定字符串是否包含另外一个字符串 <c:if test="${fn:contains(name,searchString)}">    
fn:containsIgnoreCase 判定字符串是否包含另外一个 字符串(大小写无关) <c:iftest="${fn:containsIgnoreCase(name, searchString)}">    
fn:endsWith 判定字符串是否以另外字符串结束 <c:iftest="${fn:endsWith(filename, ".txt")}">    
fn:escapeXml 把一些字符转成XML表示,例如 <字符 应该转为< ${fn:escapeXml(param:info)}    
fn:indexOf 子字符串在母字符串中出现的位 置 ${fn:indexOf(name, "-")}   
fn:join 将数组中的数据联合成一个新字符串,并使用指定字符格 开 ${fn:join(array,";")}    
fn:length 获取字符串的长度,或者数组的大 小 ${fn:length(shoppingCart.products)}   
fn:replace 替换字符串中指定的字 符 ${fn:replace(text, "-", "•")}    
fn:split 把字符串按照指定字符切 分 ${fn:split(customerNames, ";")}   
fn:startsWith 判定字符串是否以某个子串开始 <c:iftest="${fn:startsWith(product.id, "100-")}">   
fn:substring 获取子 串 ${fn:substring(zip, 6, -1)}    
fn:substringAfter 获取从某个字符所在位置开始的子串    
${fn:substringAfter(zip,"-")}    
fn:substringBefore 获取从开始到某个字符所在位置的子 串 ${fn:substringBefore(zip,"-")}    
fn:toLowerCase 转为小 写 ${fn.toLowerCase(product.name)}    
fn:toUpperCase 转为大写字 符 ${fn.UpperCase(product.name)}    
fn:trim 去除字符串前后的空格 ${fn.trim(name)}

     

函数描述   

包含

fn:contains(string, substring)    
假如参数string中包含参数substring,返回true   
   
fn:containsIgnoreCase(string, substring)    
假如参数string中包含参数substring(忽略大小写),返回true   
 
fn:startsWith(string, prefix)    
假如参数string以参数prefix开头,返回true  
 
fn:endsWith(string, suffix)    
假如参数 string 以参数suffix结尾,返回true

 

组装/拆分

fn:join(array, separator)    
将一个给定的数组array用给定的间隔符separator串在一起,组 成一个新的字符串并返回。  
 
fn:split(string, separator)    
返回一个数组,以参数separator 为分割符分割参数string, 分割后的每一部分就是数组的一个元素

  

  字符串截取

fn:substring(string, begin, end)    
返回参数string部分字符串, 从参数begin开始到参数end位 置,包括end位置的字符    
   
fn:substringAfter(string, substring)    
返回参数substring在参数string中后面的那一部分字符串    
   
fn:substringBefore(string, substring)    
返回参数substring在参数string中前面的那一部分字符串

  

大小写转换

fn:toLowerCase(string)    
将参数string所有的字符变为小写,并将其返回    
   
fn:toUpperCase(string)    
将参数string所有的字符变为大写,并将其返回

  

fn:indexOf(string, substring)    
返回参数substring在参数string中第一次出现的位置

 

fn:trim(string)   

去除参数string 首尾的空格,并将其返回

 

fn:escapeXml(string)  

将有非凡意义的XML (和HTML)转换为对应的 XML character entity code,并返回   

 

fn:length(item)   

返回参数item中包含元素的数量。参数Item类型是数组、 collection或者String。假如是String类型,返回值是String中的字符数。   

  

fn:replace(string, before,after)   

返回一个String对象。用参数after字符串替换参数string中 所有出现参数before字符串的地方,并返回替换后的结果