jstl fmt中的关于国际化和取资源文件的文章
来源:互联网 发布:印度2017年经济数据 编辑:程序博客网 时间:2024/06/06 08:51
看到 I18N 就应该想到知识“国际化”,I18N formatting 标签库就是用于在 JSP页面中做国际化的动作。在该标签库中的标签一共有 12 个,被分为了两类,分别是:
q
q
下面只选择其中常见的一些标签和属性进行介绍。
9.5.1用于设置本地化环境的<fmt:setLocale> 标签
<fmt:setLocale> 标签用于设置 Locale环境。它的属性和描述如表 9.17 所示:
表 9.17 <fmt:setLocale>标签属性和说明
属性
描述
value
Locale 环境的指定,可以是 java.util.Locale或 String 类型的实例
scope
Locale 环境变量的作用范围(可选)
下面看一个示例:
<fmt:setLocale value="zh_TW"/>
表示设置本地环境为繁体中文。
9.5.2用于资源文件绑定的<fmt:bundle> 、 <fmt:setBundle>标签
这两组标签用于资源配置文件的绑定,唯一不同的是 <fmt:bundle> 标签将资源配置文件绑定于它标签体中的显示, <fmt:setBundle>标签则允许将资源配置文件保存为一个变量,在之后的工作可以根据该变量来进行。
根据 Locale 环境的不同将查找不同后缀的资源配置文件,这点在国际化的任何技术上都是一致的,通常来说,这两种标签单独使用是没有意义的,它们都会与I18N formatting 标签库中的其他标签配合使用。它们的属性和描述如表 9.18 所示:
表 9.18 <fmt:bundle>、 <fmt:setBundle> 标签属性和说明
属性
描述
basename
资源配置文件的指定,只需要指定文件名而无须扩展名,二组标签共有的属性
var
<fmt:setBundle> 独有的属性,用于保存资源配置文件为一个变量
scope
变量的作用范围
下面看一个示例
<fmt:setLocale value="zh_CN"/>
<fmt:setBundle basename="applicationMessage" var="applicationBundle"/>
该示例将会查找一个名为 applicationMessage_zh_CN.properties的资源配置文件,来作为显示的 Resource 绑定。
9.5.3用于显示资源配置文件信息的<fmt:message> 标签
用于信息显示的标签,将显示资源配置文件中定义的信息。它的属性和描述如表 9.19所示:
表 9.19 <fmt:message>标签属性和说明
属性
描述
key
资源配置文件的“键”指定
bundle
若使用 <fmt:setBundle> 保存了资源配置文件,该属性就可以从保存的资源配置文件中进行查找
var
将显示信息保存为一个变量
scope
变量的作用范围
下面看一个示例:
<fmt:setBundle basename="applicationMessage" var="applicationBundle"/>
<fmt:bundle basename="applicationAllMessage">
</fmt:bundle>
该示例使用了两种资源配置文件的绑定的做法,“ applicationMessage”资源配置文件利用 <fmt:setBundle> 标签被赋于了变量“applicationBundle ”,而作为 <fmt:bundle>标签定义的“ applicationAllMessage ”资源配置文件作用于其标签体内的显示。
q
q
9.5.4用于参数传递的<fmt:param> 标签
<fmt:param>标签应该位于 <fmt:message> 标签内,将为该消息标签提供参数值。它只有一个属性value 。
<fmt:param> 标签有两种使用版本,一种是直接将参数值写在 value 属性中,另一种是将参数值写在标签体内。
9.5.6用于为请求设置字符编码的<fmt:requestEncoding>标签
<fmt:requestEncoding> 标签用于为请求设置字符编码。它只有一个属性value ,在该属性中可以定义字符编码。
9.5.7用于设定时区的<fmt:timeZone> 、 <fmt:setTimeZone>标签
这两组标签都用于设定一个时区。唯一不同的是 <fmt:timeZone> 标签将使得在其标签体内的工作可以使用该时区设置, <fmt:setBundle> 标签则允许将时区设置保存为一个变量,在之后的工作可以根据该变量来进行。它们的属性和描述如表9.20 所示:
表 9.20 <fmt:timeZone>、 <fmt:setTimeZone> 标签 属性和说明
属性
描述
value
时区的设置
var
<fmt:setTimeZone> 独有的属性,用于保存时区为一个变量
scope
变量的作用范围
9.5.8用于格式化数字的<fmt:formatNumber>标签
<fmt: formatNumber > 标 签用于格式化数字。它的属性和描述如表 9.21 所示:
表 9.21 <fmt:formatNumber>标签属性和说明
属性
描述
value
格式化的数字,该数值可以是 String 类型或 java.lang.Number 类型的实例
type
格式化的类型
pattern
格式化模式
var
结果保存变量
scope
变量的作用范围
maxIntegerDigits
指定格式化结果的最大值
minIntegerDigits
指定格式化结果的最小值
maxFractionDigits
指定格式化结果的最大值,带小数
minFractionDigits
指定格式化结果的最小值,带小数
<fmt:formatNumber> 标签实际是对应 java.util.NumberFormat类, type 属性的可能值包括 currency(货币)、 number (数字)和 percent(百分比)。
下面看一个示例。
<fmt:formatNumber value="1000.888" type="currency" var="money"/>
- <fmt:formatNumber value="12"type="currency" pattern="$.00"/>//--$12.00
-
- <fmt:formatNumber value="12"type="currency" pattern="$.0#"/>//--$12.0
-
- <fmt:formatNumber value="1234567890"type="currency"/>//--$1,234,567,890.00(那个货币的符号和当前web服务器的 local 设定有关)
-
- <fmt:formatNumber value="123456.7891"pattern="#,#00.0#"/>// -- 123,456.79
-
- <fmt:formatNumber value="123456.7"pattern="#,#00.0#"/>//-- 123,456.7
-
- <fmt:formatNumber value="123456.7"pattern="#,#00.00#"/>// -- 123,456.70
-
- <fmt:formatNumber value="12"type="percent" />//-- 1,200% (type 可以是currency、 number、和percent)。
- jstl fmt中的关于国际化和取资源文件的文章
- jstl fmt标签的关于国际化和取资源文件的说明
- 关于JSTL标签库fmt的资源国际化
- JSTL的fmt国际化库
- 关于用<fmt:message>标签读取springmvc配置的国际化资源文件显示为???key???的错误原因
- 2.JSTL国际化:资源文件
- jstl中关于fmt:parseDate和fmt:formatDate的综合使用
- jstl中关于fmt:parseDate和fmt:formatDate
- JSTL利用fmt标签国际化的基础实现
- JSTL中的fmt
- 使用jstl fmt标签实现国际化
- java国际化语言----JSTL fmt 标签
- jstl的fmt详解
- jstl的fmt标签
- JSTL的fmt库
- jstl的 <fmt:formatDate>
- 关于Android应用的资源,国际化和资源自适应
- jstl中的<fmt:formatNumber>标签
- ubuntu12下unity侧栏添加新应用!
- 对于SQLSERVER中约束字段的默认值的注意事项
- dump命令3——dump数据文件
- Linux安装MediaWiki
- Intent的FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- jstl fmt中的关于国际化和取资源文件的文章
- Android实现访问Sqlserver
- TagSupport类的生命周期
- 数据结构 - 二叉树的遍历
- 笔试面试题
- 2012年7月2号----ListView中如果有Button时,点击Button得到当前点击的行号
- 在C语言中,int型数据的取值范围?
- 一个统计Word文档中行数的VBA例程
- 网页注册机运行成功了!!!那个激动啊!!(VC下纯C代码) 记下我编写注册机的全过程