具体实现很简单 就两步走:引用<%@ taglib prefix='fmt' uri='http://java.sun.com/jsp/jstl/fmt' %发布时间:
方法/步骤
1一、定义:HTTP 协议通过 Accept-Language 请求头将本地化信息从浏览器传递至服务器。许多 Web 浏览器允许用户定制他们的语言首选项, 那些没有为一种或多种首选语言环境提供显式设置的浏览器会询问操作系统以确定在 Accept-Language 头中发送哪个值(或哪些值)。 servlet 规范通过 javax.servlet.ServletRequest 类的 getLocale() 和 getLocales() 方法自动地利用 HTTP 协议的这一功能。 JSTL fmt 库中的定制标记又会利用这些方法来自动地确定用户的语言环境,从而相应地调整它们的输出。 但不存在将用户的时区从浏览器传输到服务器的标准 HTTP 请求头。总结:jstl fmt库 就是将本地化信息从浏览器传递至服务器。 内部利用servlet 规范通过 javax.servlet.ServletRequest 类的 getLocale() 和 getLocales() 方法自动地利用 HTTP 协议的这一功能的。
2二、组成: ①本地化上下文标记: 设置本地化上下文,其它标记将在其中进行操作。包括: ②日期标记: 标记分别支持对日期和数字进行格式化和解析。 包括: ③数字标记: 对数字格式化进行解析。 包括: ④消息标记: 侧重于对文本消息进行本地化。 包括:
3三、例子程序: 程序 ㈠ <%@ page language='java' contentType='text/html; charset=gb2312' import='java.util.*'%><%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %><%@ taglib prefix='fmt' uri='http://java.sun.com/jsp/jstl/fmt' %>
Insert title here中文-大陆:
中文-台湾
中文-新加坡
英文:
页面输出:中文-大陆: 2007-12-25中文-台湾 2007/12/25中文-新加坡 25-十二月-07英文: Dec 25, 2007
4程序㈠解释:覆盖用户语言环境,JSP 容器处理完该 JSP 代码段之后,将忽略用户浏览器设置中所指定的语言首选项。 属性:value 属性―――命名属性环境。Scope(可选)――― 用来指定语言环境的作用域。 Page,request, session,application variant 属性(也是可选的)允许您进一步针对特定的 Web 浏览器平台或供应商定制语言环境。例如, MAC 和 WIN 用来格式化和显示日期和时间(数据 输出) 属性:value―――指定要进行格式化和显示的日期和/或时间数据。 timeZone――(可选)属性指出将要显示哪个时区的日期和/或时间。 type ―――-属性指出要显示指定的 Date 实例的哪些字段,应当是 time 、 date 或 both 。该属性的缺省值是 date 。 dateStyle 和 timeStyle 属性分别指出应当如何格式化日期和时间信息。有效的样式有 default 、 short 、 medium 、 long 和 full 。 pattern ―――指定定制样式,而不必依赖于内置样式。 var ―――――属性,那就把包含格式化日期的 String 值指派给指定的变量。
5程序(二)<%@ page language='java' contentType='text/html; charset=gb2312' import='java.util.*'%><%@ taglib prefix='fmt' uri='http://java.sun.com/jsp/jstl/fmt' %><%@ taglib prefix='c' uri='http://java.sun.com/jsp/jstl/core' %>
bundle test 注释:标签用于绑定数据源.properties文件;数据库驱动程序名:
注释:标签用于从指定的资源文件中把指定的键值取出来;连接字符串:
用户名:
密码:
名字:
动态提示信息:
注释:标签用于设置默认的数据来源;动态提示信息: 邓子云 注释:用于传递参数 其对应的读取文件为dbconn.properties(当然是放在web-inf/classes下了),内容为:#SQL ServerdriverName=com.microsoft.jdbc.sqlserver.SQLServerDriverconnString=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testDatabaseuserName=sapassword=123456name=邓佳容messageTemp=myname is {0},today is {1,date}其页面输出为:数据库驱动程序名:com.microsoft.jdbc.sqlserver.SQLServerDriver连接字串:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testDatabase用户名:sa密码: 123456名字:邓佳容 动态提示信息:myname is {0},today is {1,date}动态提示信息: myname is 邓子云,today is 2007-12-25 6程序(三)<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %><%@ taglib prefix='fmt' uri='http://java.sun.com/jstl/fmt' %>Input parameters:Date: 2004/04/01:13:30:00 Java format: Thu Apr 01 13:30:00 CST 2004isoDate: 20040531T235959 Java format: Mon May 31 23:59:59 CDT 200DatesTag Output Attribute: value; required. Tag has no body. 注释:value属性 日期对象2004-5-31 04-5-31 2004-5-31 2004年5月31日 2004年5月31日 星期一 Attribute: timeStyle; optional. Varies the time format. 注释:timeStyle属性(可选)控制时间的格式 default,short,medium,long,full23:59:59 下午11:59 23:59:59 下午11时59分59秒 下午11时59分59秒 CDT Attribute: pattern; optional. Inidcates date/time custom patterns. 注释:pattern属性(可)控制显示日期时间的模板星期四, 四月 1, 2004 13:30:00 -0600