JSTL_Format标记库
JSTL_Format
一:JSTL Format标记库
- 如有转载,请标明出处
- 介绍标记属性的时候,按照顺序必须写的->带有默认值的->其他的,中间用回车隔开
- 在jsp问价开头加上
<%@taglib uri=”http://java.sun.com/jsp/jstl/fmt” prefix=”fmt”%>
二:Format标记库
- 国际化(Internationalization),i开头,n结尾,中间包含18个字母,也叫I18N
- 国际化针对不同的语言与国家,提供特定的日期.数字格式与货币符号,随着全球经济一体化的发展,开发国际化的应用程序的需求越来越强,我们也需要开发支持国际化的Javaweb应用,
- Jstl的format标记库就是来完成国家化的.
三:Format标记
1.<fmt:setLocale>
示例代码: <fmt:setLocale value="zh_CN" scope="application" variant="WIN"/> 属性介绍: value:是使用的语言,前两个字母小写,代表语种,后两个字母大写,代表相应的国家或者是地区,中间用下划线连接, scope:代表这种语言使用的范围, variant是进一步指定语言环境,语言环境是WIN还是MAC,这行代码将忽略用户浏览器上所指定的语言首选项.fmt:setLocale
2.<fmt:setTimeZone>,设置时区,
示例代码: <fmt:setTimeZone value="GMT+8" var="time" scope="session"/> 属性介绍: value值是timezone对象的值, scope是作用范围,默认值page var是一个变量,用来储存出value中的值或者内容 , 这条标签的用法与setLocale的用法相似,fmt:setTimeZone
3.<fmt:timeZone>
timeZone的用法与setTimeZone标签的作用相同,唯一的区别是标记timeZone的作用只对它包含的内容有关 示例代码: <fmt:timeZone value="GMT+8" var="cc" > body content </fmt:timeZone> 属性介绍: value:时区值,类似于:GMT+8 var:存储value值的变量的名称fmt:timeZone
4.<fmt:formatDate>
Format库提供了两个可以格式化的标记,一个是,fmt_formatDate,另外一个是,fmt_formatNumber 示例代码: <fmt:formatDate value="<%new java.util.Date()%>" pattern="yy-MM_dd HH:mm:ss" var="time"/> <% pageContext.setAttribute("time", time); %> 转换完格式的时间:${time} 该标签的属性介绍: value 指定用来格式化的日期和时间, scope 设定该标签所指定的作用范围,默认值为page type 指定要显示的是时间,日期,还是都显示, 参数:date time both,默认值:date dateStyle 设定如何格式化日期信息,参数有:long,short,medium,full,default默认值:default timeStyle 设定如何格式化时间信息,参数有:long.short,medium,full,default,默认值:default pattern 定制用来格式化的格式, timeZone 指定要使用哪个时区的信息,如果没有显示指定,或者书优先级:显示指定的->定义的fmt:timeZone对象,JVM默认时区, var 用来存储,格式化之后的时间日期的值,如果没有显示声明var属性,则输出格式化之后的日期或者时间的结果fmt:formatDate
5.<fmt:parseDate>
示例代码: <fmt:parseDate value="2017-02-23 12:23:36" parseLocale="zh_CN" var="time1"/> 作为时间格式设计标签fmt_formatDate的反标签,对于一个给定日期或时间的字符串执行反操作,返回/生成一个java.util.Date类型的对象 属性介绍: value:给定的日期或时间字符串, parseLocale:是语言环境的名称或者是Locale类型的对象 var:保存最后生成的结果,如果没有显示声明,则输出结果fmt:parseDate
6.<fmt:formatNumber>
用来对数字数据,货币,百分数进行格式化, 示例代码: <fmt:formatNumber type="number" groupingUsed="false" maxIntegerDigits="8" minIntegerDigits="2" maxFractionDigits="5" minFractionDigits="0" var="number" scope="page"> 255552 </fmt:formatNumber> <fmt:formatNumber type="currency" groupingUsed="true" maxIntegerDigits="8" minIntegerDigits="2" maxFractionDigits="5" minFractionDigits="0" var="currency" scope="page" currencyCode="美元" currencySymbol="$"> 2555454 </fmt:formatNumber> 属性介绍: 以上还有一个属性定制属性pattern没有列出, value:标签包含的数值默认为value值,如果单标签,则需要显示指定value值,即需要进行格式化的数据,这个属性是必须有的 type:要格式化的结果类型,可以为number,currency或者percent,默认是number groupUsed:格式化后的数据是否分组,就像英文中的大数字中整数部分每三位中间用逗号隔开,默认是true currencyCode:当type类型为货币currency时,显式设置货币单位 currencySymbol:当type类型为货币currency时,显式地指定货币符号,currencyCode属性的设定先于currencySumbol属性 maxIntegerDigits:数据整数部分最大位数 minIntegerDigits:数据整数部分最小位数 maxFractionDigits:数据小数部分最大为数 minFractionDigits:数据小数部分最小位数 var:用来存储结果,如果没有显示声明,则输出结果 scope:用来指定作用范围fmt:formatNumber
7.<fmt:parseNumber>
该标记是用来解析数值,该数值是通过value属性,或者该标记所包含的内容获得的,将结果作为java.lang.Number类型的对象返回 示例代码: <c:set var=”num” value=”123456789.321654987”/> <fmt:parseNumber value=”${num}” type=”number” var=”num1”/> 属性介绍: value:将要进行解析的数值, type:解析的数据的类型,有date,number,currency,默认date var:存储value值的变量的名称fmt:parseNumber
8.<fmt:setBundle>
设置一个默认资源文件束,供<message>标记在特定作用域中使用, 示例代码: <fmt:setBundle basename=”com.vken.examples.resources”/> 属性介绍: basename:设置使用的资源文件束文件的路径与名称,不应该包含任何本地化后缀或文件拓展名 scope:默认值:page,指定默认资源束设置所应用的JSP作用域 var:把basename属性所标识的资源束赋给该属性值所命名的变量fmt:setBundle
9.<fmt:bundle>标记
标记在其标记所包含内容内设置当前使用的资源束的路径与名称 示例代码: <fmt:budle basename=”com.vken.examples” prefix=”guestbook.display.”> <fmt:message key=”greeting”> </fmt:bundle> 属性介绍: basename:设置使用的资源束文件的路径与名称,不应当包含任何本地化后缀或文件扩展名 prefix:为所嵌套的<fmt:message>标记的key值指定默认前缀,无默认值fmt:bundle
10.<fmt:message>
示例代码: <fmt:bundle basename=”com.vken,examples.resources” prefix=”guestbook.display.”> <fmt:message key=”greeting”> <fmt:param value=”liubei”/> <fmt:param value=www.vken.com/> </fmt:message> <fmt:bundle> resources.properties是默认的资源束文件 resources_zh_CN.properties是中文的资源束文件 属性介绍: key:用来定义在资源束中定义哪个文本消息进行输出显示 scope:用来指定var属性指定的变量的作用范围,,默认值:page bundle:用来指定一个显式资源束,用来查找由key属性标识的文本消息,该属性的值必须是资源束类型 var:该标记所生成的文本消息赋给指定的变量,而不是输出到jsp页面中,fmt:message
11.<fmt:param>标记
示例代码: 标记不包含内容: <fmt:param value=”messageParamter”/> 标记包含内容: <fmt:param> Body content </fmt:param> 属性: Value:用来提供文本消息的参数化值,fmt:param
12.<fmt:requestEncoding>标记
这个标记设定request对象封装的请求的信息所采用的字符编码,效果与request.setCharacterEncoding()代码的效果一样 示例代码: <fmt:requestEncoding value=”UTF-8”>fmt:requestEncoding
四:注意
- 解析数字或者日期时间数据的操作不适合在表现层完成,所以应尽量避免在jsp页面中使用,<fmt:parseNumber>,和<fmt:parseDate>
- 复习
相关推荐
登峰小蚁 2019-10-26
白净垃圾桶 2013-09-16
MicroBoy 2012-06-13
homesmile 2014-07-05
字符串过于长的时候需要通过仅仅展示前4个,用...表示省略,<c:if test="${fn:length<=5}">${word.type}</c:if>href触发JavaScript事件:。<a
cyjsky 2013-03-27
谢恩铭 2013-01-14
detianlangzi 2009-12-16
owhile 2012-09-10
dinux 2012-08-25
南鹏飞技术 2011-07-05
yixu0 2011-05-08
wuhuang 2011-11-15
Astray 2009-06-15
appteamvlctech 2013-11-06