jsp中jstl标签库 function /i18n

原创 2016年07月31日 23:52:21

function标签库对el表达式的输出值进行了处理:

使用:在el表达式中使用:${ fn:函数名(参数...)}

function标签库函数使用:

  1:${fn:contains(name, searchString)}    name变量的字符串值是否包含searchString子串,返回boolean值

   2:${fn:containsIgnoreCase(name, searchString)}    与1相同+忽视大小写

  3:${fn:endsWith(filename, ".txt")}  判断filename是否以.txt子串结束 ,返回boolean值

  4:${fn:escapeXml(param:info)}   Escapes characters that could be interpreted as XML markup.返回string值

  5:${fn:indexOf(name, "-")}    name中第一次出现-字符的下标  返回int值

  6:${fn:join(array, ";")}   将array数组,用;连接成一个字符串,返回string值

  7:${fn:length(shoppingCart.products)} shoppingCart.products变量的长度,返回int值

  8:${fn:replace(text, "-", "•")}  将text中的-字符串用•字符串代替,返回行的字符串String值

  9:${fn:split(customerNames, ";")}  将customerNames用;分割,返回字符串数组

  10:${fn:startsWith(product.id, "100-")}  判断product.id是否以100-子串开头 ,返回boolean值

  11:${fn:substring(zip, 6, -1)}  截取zip的子串,从下标为6 到length-1(不包含)的子串,返回子串String值

  12:${fn:substringAfter(zip, "-")} 将zip中  从 第一次出现-字符串的下标 到最后 截取成子串,返回子串String值

  13:${fn:substringBefore(zip, "-")}  将zip中  从下标0  到  第一次出现-字符串的下标 (不包含) 截取成子串,返回子串String值

  14:${fn.toLowerCase(product.name)}  将product.name全部字母转换成小写,返回新的String值

  15:${fn.UpperCase(product.name)}  将product.name全部字母转换成大写,返回新的String值

   16:${fn.trim(name)}  name前后空格去掉,返回新的String值

i18n国际化标签库:

1:建立资源文件:文件名格式:资源名_语言_国家.格式名

文件内容:key=value格式


在java中使用:

public static void main(String[] args) {
		//参数是:baseName-- 本例指的是资源文件名是: msg**.properties
		//ResourceBundle rd = ResourceBundle.getBundle("msg");//读取的是:msg_zh_CN.properties
		//ResourceBundle rd = ResourceBundle.getBundle("msg",Locale.US); //读取的是:msg_en_US.properties
		ResourceBundle rd = ResourceBundle.getBundle("msg",Locale.CANADA); //本例读取的是:msg_zh_CN.properties ---因为是中文系统。按原理,如果没找到对应国家语种的资源文件(如果不存在时,还会根据系统的国家语种再找一次,如果还没有),则是读取的是默认的msg.properties
		String str1 = rd.getString("welcome");//get(key)获取value值
		String str2 = rd.getString("time");
		System.out.println(str1+"----"+str2);
	}
在jstl标签中使用:

 

<%@page import="cn.hncu.elWeb.domain.User"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
     <fmt:setLocale value="zh_CN"/>
     <fmt:setBundle basename="msg"/>
     <!-- 真正搞国际,应该要把设置Locale和Bundle的代码放在head标签中,页面只负责显示。 -->
  </head>
  
  <body>
             张三,<fmt:message key="welcome"/><br/>
     <fmt:message key="time"/>fddfdfdfdfdfdf
     
     
     <hr/>
     <!-- 相比上一版本,把国家语种用参数进行传递 -->
     <a href="?loc=en_US">English</a>
     <a href="?loc=zh_CN">中文</a>
     <fmt:setLocale value="${param.loc}"/>
     <fmt:setBundle basename="msg"/>
           张三,<fmt:message key="welcome"/><br/>
     <fmt:message key="time"/>fddfdfdfdfdfdf
     
     
     <hr/>
     <!-- 再演示一下多个资源的情况,第二个资源及以后都必须取别名(变量名)。前面(第一个)没取变量名的那个叫默认资源  -->
     <fmt:setBundle basename="a" var="aaa" scope="session"/>
     <!-- 如果多个页面都要使用,那么得把作用域设成session -->      
           
           张三,<fmt:message key="welcome"/><br/>
     <fmt:message key="time"/>fd8888dfdf
     <br/>
     <!-- 如果是从非默认资源中读取,那么得指定资源名称即aaa。如果没有指定名称,那么就是从默认的读取 -->
     <fmt:message key="address" bundle="${aaa}"></fmt:message>
     <br/>
     <a href="<c:url value='/jsps/c.jsp'/>">到网站的其它页面去看看</a>
  </body>
  
  
</html>
注意:1:setBundle前面必须加上setLocale否则默认系统语言(顺序不可调)

            2: setBundle不加var值,属于默认,多个setBundle要加var值,否则覆盖

          

版权声明:本文为博主原创文章,未经博主允许不得转载。

JSTL标签库____(2)I18N格式化标签库

I18N格式化标签库 JSTL标签提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。 实现这些功能需要I18N格式标签库(I1...

JSTL标签库学习笔记 六、I18N格式化标签库的数字日期格式化、读取消息资源、国际化

数字日期格式化 数字日期格式化标签共有6个,用来将数字或日期转换成设定的格式。 formatNumber标签、formatData标签、parseNumber标签、parseDate标签、tim...
  • lxhjh
  • lxhjh
  • 2013年09月02日 18:02
  • 1196

JSTL I18N格式标签库之----读取消息资源

读取消息资源主要有4个标签,在这里进行一下小总结: 四个标签之间的嵌套关系大概是这个样子: 第1~6...

JSTL I18N 格式标签库 使用之二_____读取消息资源

同样推荐一篇写的很详细的博客  http://blog.sina.com.cn/s/blog_4f925fc30101820u.html 读取消息资源主要有4个标签,在这里进行一下小总结: ...

JSTL I18N 格式标签库 使用之三_____国际化

JSTL I18N 格式标签库 使用之三_____国际化 国际化这个分类中共包含两个标签:用于设定语言地区和用于设定请求的字符编码的标签。 1.标签 标签用来设定...

JSTL I18N 格式标签库 使用之二_____读取消息资源

读取消息资源主要有4个标签,在这里进行一下小总结: 四个标签之间的嵌套关系大概是这个样子: 1 fmt:buddle basename="name"> 2 fmt:mess...

JSTL I18N格式标签库之----数字日期格式化

I18N格式标签库:I18N-capable formation tags library.它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据和日期的方法。引入该标签库的方法...

JSTL I18N 格式标签库 使用之三_____国际化

国际化这个分类中共包含两个标签:用于设定语言地区和用于设定请求的字符编码的标签。 1.标签 标签用来设定用户语言区域。 【语法】: [scope=”page|request|session|appl...

JSTL I18N 格式标签库 使用之一_____数字日期格式化

不过,我还是喜欢自己总结一下。 I18N格式标签库:I18N-capable formation tags library.它可以根据发出请求的客户端地域的不同来显示不同的语言。同时还提供了格式化数据...

JSTL I18N 格式标签库 使用之三_____国际化

国际化这个分类中共包含两个标签:用于设定语言地区和用于设定请求的字符编码的标签。 1.标签 标签用来设定用户语言区域。 【语法】:                            [...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jsp中jstl标签库 function /i18n
举报原因:
原因补充:

(最多只允许输入30个字)