在JSTL中,国际化/格式化标签有;
国际化标签
格式化标签
1、
用于设置 Locale 环境。
属性:
value:Locale环境的指定,可以是java.util.Locale 或 String 类型的实例。
scope:Locale环境变量的作用范围(可选)
举例:
表示设置本地环境为简体中文。
表示设置本地环境为美国英语。
2、和
这两组标签用于资源配置文件的绑定,唯一不同的是 标签将资源配置文件绑定于它标签体中的显示,标签则允许将资源配置文件保存为一个变量,在之后的工作可以根据该变量来进行资源配置文件绑定。
属性:
basename:资源配置文件的指定,只需要指定文件名而无须扩展名,二组标签共有的属性。
var: 独有的属性,用于保存资源配置文件为一个变量。
scope:变量的作用范围。
举例:
该示例将会查找一个名为 message_en_US.properties 的资源配置文件,来作为显示的Resource 绑定。
3、
用于信息显示的标签,将显示资源配置文件中定义的信息。
属性:
key:资源配置文件的“键”指定
bundle:若使用 保存了资源配置文件,该属性就可以从保存的资源配置文件中进行查找
var:将显示信息保存为一个变量
scope:变量的作用范围
举例:
该示例使用了两种资源配置文件的绑定的做法,“message”资源配置文件利用 标签被赋于了变量“message”,而作为 标签定义的“allMessage”资源配置文件作用于其标签体内的显示。
第一个 标签将使用“allMessage”资源配置文件中“键”为“userName”的信息显示。
第二个 标签虽然被定义在 标签体内,但是它使用了 bundle 属性,因此将指定之前由 标签保存的“ message ”资源配置文件,该“键”为“ password ”的信息显示。
4、
5、
用于为请求设置字符编码。它只有一个属性 value ,在该属性中可以定义字符编码。
6、和
这两组标签都用于设定一个时区。唯一不同的是 标签将使得在其标签体内的工作可以使用该时区设置, 标签则允许将时区设置保存为一个变量,在之后的工作可以根据该变量来进行。
属性:
value:时区的设置
var: 独有的属性,用于保存时区为一个变量
scope:变量的作用范围
举例:
7、
用于格式化数字。
属性:
Value:格式化的数字,该数值可以是String类型或java.lang.Number类型的实例
Type:格式化的类型
Pattern:格式化模式
Var:结果保存变量
Scope:变量的作用范围
maxIntegerDigits:指定格式化结果的最大值
minIntegerDigits:指定格式化结果的最小值
maxFractionDigits:指定格式化结果的最大值,带小数
minFractionDigits:指定格式化结果的最小值,带小数
注明:
标签对应java.util.NumberFormat 类, type 属性的可能值包括 currency (货币)、 number (数字)和 percent (百分比)。
举例:
该结果将被保存在“ money ”变量中,将根据 Locale 环境显示当地的货币格式。
8、
用于解析一个数字,并将结果作为 java.lang.Number 类的实例返回。 标签看起来和 标签的作用正好相反。
属性:
Value:将被解析的字符串
Type:解析格式化的类型
Pattern:解析格式化模式
Var:结果保存变量,类型为java.lang.Number
Scope:变量的作用范围
parseLocale:以本地化的形式来解析字符串,该属性的内容应为 String 或 java.util.Locale 类型的实例
举例:
解析之后的结果为“ 0.15 ”。
9、
用于解析一个数字,并将结果作为 java.lang.Number 类的实例返回。 标签看起来和 标签的作用正好相反。
属性:
Value:将被解析的字符串
Type:解析格式化的类型
Pattern:解析格式化模式
Var:结果保存变量,类型为java.lang.Number
Scope:变量的作用范围
parseLocale:以本地化的形式来解析字符串,该属性的内容应为 String 或 java.util.Locale 类型的实例
举例:
解析之后的结果为“ 0.15 ”。
10、
用于解析一个日期,并将结果作为 java.lang.Date 类型的实例返回。 标签看起来和 标签的作用正好相反。
属性:
Value:将被解析的字符串
Type:解析格式化的类型
Pattern:解析格式化模式
Var:结果保存变量,类型为java.lang.Date
Scope:变量的作用范围
parseLocale:以本地化的形式来解析字符串,该属性的内容为String 或 java.util.Locale 类型的实例
timeZone: 指定解析格式化日期的时区
注明:
和 两组标签都实现解析字符串为一个具体对象实例的工作,因此,这两组解析标签对 var 属性的字符串参数要求非常严格。就 JSP 页面的表示层前段来说,处理这种解析本不属于份内之事,因此 和 两组标签应该尽量少用,替代工作的地方应该在服务器端表示层的后段,比如在 Servlet 中。
举例: