日期:2014-05-16  浏览次数:20406 次

JSTL常用标签之大聚集---下

JSTL国际化标签库:

?? 其主要标签如下:

NO 功能分类 标签名称 描述
1 国际化标签 <fmt:setLocal> 设置一个全局的地区代码
2 <fmt:requestEncoding> 设置统一的请求编码
3 信息显示标签
<fmt:bundle> 设置临时的要读取资源文件的名称
4 <fmt:message> 通过key取得Value,通过<fmt:param>向动态文本设置内容
5 <fmt:setBundle> 设置一个全局的要读取资源文件的名称
6 数字及日期格式化 <fmt:formatNumber> 格式化数字
7 <fmt:parseName> 反格式化数字
8 <fmt:formatDate> 格式化日期,将日期变为字符串
9 <fmt:parseDate> 反格式化日期,将字符串变为日期
10 <fmt:setTimeZone> 设置一个全局的时区
11 <fmt:timeZone> 设置一个临时的时区

<fmt:setLocal>:

? 设定用户所在的区域;

测试页面:

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





  <body>


	<%


	pageContext.setAttribute("date",new Date());


	 %>


	 


	 中文显示日期显示:


	 <fmt:setLocale value="zh_CN"/>


	 	<fmt:formatDate value="${date}"/><br />


	 英文显示日期显示:


	 <fmt:setLocale value="en_US"/>


	 	<fmt:formatDate value="${date}"/>


  </body>

?其属性:

?

No 属性名称 EL 描述
1 value 支持 设置地区的编码,表示一个java.util.Local类
2 variant 支持 如果要访问在同一个web容器下的其他资源时设置,必须要以"/"开头
3 scope 不支持 地区设置的范围

<fmt:requestEncoding>:

?? 设置主要功能是设置所有的请求编码,与setCharacterEncoding();

	<fmt:requestEncoding value="UTF-8"/>

?其属性:

No 名称 EL 描述
1 value 支持 设置字符编码

读取资源文件(国际化中最重要的组成部分是资源文件读取,以*.properties为后缀的资源文件,所有的内容按照“key=value”的格式,在Web中,资源文件要保存在WEB-INF/classes文件下):

<fmt:message>,<fmt:bundle>,<fmt:setBundle>;

  <body>


	<fmt:bundle basename="Message">


		<fmt:message key="name" var="nameref"></fmt:message>


	</fmt:bundle>


	


	姓名:${nameref }<br />


	<fmt:bundle basename="Message">


		<fmt:message key="info" var="inforef">


			<fmt:param value="GOOD" />


		</fmt:message>


	</fmt:bundle>


	信息:${inforef }


  </body>

?其资源文件:

name=keith


info=a good student

?在进行资源文件读取时,也可以通过<fmt:setBundl>标签设置一个默认的读取资源文件名称,这样每次在使用<fmt:message>标签进行信息读取时,直接通过bundle设置要读取资源的属性即可:

例子:

  <body>


  	<fmt:setBundle basename="Message" var="msg"/>


  	 <fmt:message key="name" var="nameref" bundle="${msg}" />


	姓名:${nameref }


	<fmt:message key="info" var="inforef" bundle="${msg}">


		<fmt:param value="GOOD" />


	</fmt:message>


	信息:${inforef }


  </body>

?在国际化中,需要建立不同的属性文件,例如:

中文的:Message_zh_CN.properties,英文的:Message_en_US.properties;此时可以通过<fmt:setLocal>标签来指定要读取的区域资源文件:

<fmt:setLocal value="zh_CN" />

<fmt:setBundle basename="Message" var="msg"/>

?

数字格式化标签

完成数字格式化的操作,可以使用:<fmt:formatNumber>和<fmt:parseNumber>完成。

测试页面:

	<fmt:formatNumber value="199906.600112" maxIntegerDigits="7"