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>
- 复习
JSTL_Format标记库的更多相关文章
- JSTL_XML标记库
JSTL_XML 一:说明 如有转载请标明出处 必须包含的属性->有默认值的属性->其余属性,中间用回车隔开 二:XML标记库 Xml标记库主要功能就是为在jsp页面中操作xml提供便利支 ...
- JSTL_Core标记库
一. 说明 如有转载,请标明出处 本博讲解JSTL中的core库 对标记属性进行介绍时,首先介绍必写的属性,然后带有默认值的属性,其次是其余属性,这三类属性中间用空行隔开 二:core标记库库 C ...
- JSTL教程 [JSP 标准标记库]
JSTL教程- - JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管理格式 ...
- 分布式人工智能标记语言(DAIML)示例
DAIML(Distributed Artificial Intelligence Markup Language)是用于分布式人工智能系统中智能语言的标记库.DAIML主要分为Patte ...
- JSTL 核心标签库
SP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这些,它还提供了 ...
- JSTL标准标签库
有时使用EL和标准动作达不到目的,于是就引入定制标记. 对于JSP页面创作人员来说,定制标记使用起来比脚本要容易一些.不过对于JAVA程序员来说,简历定制标记处理器反而更困难.幸运的是,已经有了一个标 ...
- JSP标记
JSP标记是JSP页面中很重要的组成部分,JSP标记包括指令标记.动作标记和自定义标记.其中自定义标记主要讲述与Tag文件有关的Tag标记. 一 指令标记page Page指令标记,简称page指令, ...
- 使用Spring标签库
A.Spring标签库 Web项目若使用Spring Web MVC并使用JSP作为表现的话.从Spring2.0版本开始提供一套标签库可供使用. 使用标签库无非是易于开发,维护之类云云.这里就不阐述 ...
- JSTL(JSP Standard Tag Library ,JSP标准标签库)
JSTL标签之核心标签 JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个实现 Web应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管 ...
随机推荐
- Android学习笔记(1):常用按钮点击事件处理方式
1.从布局文件获取对应的控件然后对其添加点击监听器. Button loginBtn; @Override protected void onCreate(Bundle savedInstanceSt ...
- Android-Could not download kotlin-reflect.jar
在AndroidStudio中报以下错误: 错误详情: Could not download kotlin-reflect.jar (org.jetbrains.kotlin:kotlin-refle ...
- Android JNI 学习(五):References Api
1. NewGlobalRef(创建全局引用) jobjectNewGlobalRef(JNIEnv *env, jobject obj); 创建 obj 参数所引用对象的新全局引用.obj 参数既可 ...
- JSON库的使用研究(三)
怎么选择JSON库? 从整体测试结果来看,总结如下: 用于序列化.反序列的功能,数量量小,吞吐量不大于10000每秒的,选择gson: 用于解析JSON的,还是用Fastjson吧,虽然听说坑很多. ...
- pycharm安装plugins
1 . 启动 PyCharm 软件 2 . 打开 设置(Setting) 窗口.(操作:File -> Setting 或者 按快捷键 Ctrl + Alt + S) 3 . 在搜索框里面搜索: ...
- Express框架之Jade模板引擎使用
日期:2018-7-8 十月梦想 node.js 浏览:2952次 评论:0条 前段时间讲说了ejs模板引擎,提到了jade的效率等等问题!今天在这里简单提一下jade的使用方式!结合expr ...
- mysql 架构篇系列 3 复制运行状态监控与选项参数说明
一. 概述 在上一篇中,搭建了一主一从的复制架构,这篇通过一些诊断方法来了解复制的运行状态和一些选项参数说明.上次mysql主从服务关机,今天在打开mysql服务,出现了错误信息. 1.首先 启动主从 ...
- Lua IUP 环境搭建
1.从sourceforge.net下载Luabinaries.IUP.CD.IM.LuaGL的源码 2.编译CD 2.1.用cd\mak.vc12中的lua_version53.props替换lua ...
- mysql 获取昨天日期、今天日期、明天日期以及前一个小时和后一个小时的时间
1.当前日期 select DATE_SUB(curdate(),INTERVAL 0 DAY) ; 2.明天日期select DATE_SUB(curdate(),INTERVAL -1 DAY) ...
- 纸上谈兵: 堆 (heap)
纸上谈兵: 堆 (heap) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 堆(heap)又被为优先队列(priority ...