在开始前,需要解释几个重要的概念:

  国际化(i18n):表明一个页面根据访问者的语言或国家来呈现不同的翻译版本。

  本地化(l10n):向网站添加资源,以使它适应不同的地区和文化。比如网站的印度语版本。

  区域:这是一个特定的区域或文化,通常认为是一个语言标志和国家标志通过下划线连接起来。比如"en_US"代表美国英语地区。

  如果想要建立一个全球化的网站,就需要关心一系列项目。本章将会详细告诉您如何处理国际化问题,并给出了一些例子来加深理解。

  JSP容器能够根据request的locale属性来提供正确地页面版本。接下来给出了如何通过request对象来获得Locale对象的语法:

  java.util.Locale request.getLocale()

  检测Locale

  下表列举出了Locale对象中比较重要的方法,用于检测request对象的地区,语言,和区域。所有这些方法都会在浏览器中显示国家名称和语言名称:

  序号方法 & 描述

  1String getCountry()

  返回国家/地区码的英文大写,或 ISO 3166 2-letter 格式的区域

  2String getDisplayCountry()

  返回要显示给用户的国家名称

  3String getLanguage()

  返回语言码的英文小写,或ISO 639 格式的区域

  4String getDisplayLanguage()

  返回要给用户看的语言名称

  5String getISO3Country()

  返回国家名称的3字母缩写

  6String getISO3Language()

  返回语言名称的3字母缩写

  实例演示

  这个例子告诉我们如何在JSP中显示语言和国家:

  Detecting Locale

  语言设置

  JSP可以使用西欧语言来输出一个页面,比如英语,西班牙语,德语,法语,意大利语等等。由此可见,设置Content-Language信息头来正确显示所有字符是很重要的。

  第二点就是,需要使用HTML字符实体来显示特殊字符,比如"ñ" 代表的是"?","¡"代表的是 "?" :

  En Espa?ol

  ?Hola Mundo!

  区域特定日期

  可以使用java.text.DateFormat类和它的静态方法getDateTimeInstance()来格式化日期和时间。接下来的这个例子显示了如何根据指定的区域来格式化日期和时间:

  Local Date:

  区域特定货币

  可以使用java.text.NumberFormat类和它的静态方法getCurrencyInstance()来格式化数字。比如在区域特定货币中的long型和double型。接下来的例子显示了如何根据指定的区域来格式化货币:

  Formatted Currency:

  区域特定百分比

  可以使用java.text.NumberFormat类和它的静态方法getPercentInstance()来格式化百分比。接下来的例子告诉我们如何根据指定的区域来格式化百分比:

  Formatted Percentage:

  (编辑:雷林鹏 来源:网络)

JSP 国际化的更多相关文章

  1. JSP-Runoob:JSP 国际化

    ylbtech-JSP-Runoob:JSP 国际化 1.返回顶部 1. JSP 国际化 在开始前,需要解释几个重要的概念: 国际化(i18n):表明一个页面根据访问者的语言或国家来呈现不同的翻译版本 ...

  2. Jsp 国际化访问首页选择展示不同字体小例子

    要求:创建一个首页,默然显示英文信息,但可以让用户选择使用英文,繁体中文或简体中文. 1.编写hello_en_US.txt,内容如下: cc.openhome.welcome=welcomecc.o ...

  3. JSP国际化设置

    以下内容引用自http://wiki.jikexueyuan.com/project/jsp/internationalization.html: 国际化(i18n):这意味着可以使网站根据访问者的语 ...

  4. Spring Boot 系列教程15-页面国际化

    internationalization(i18n) 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式. 它要求从产品中抽离所有地域语言,国家/地区和 ...

  5. SpringMVC 之数据转换和国际化

    1. 数据绑定流程 SpringMVC 主框架将 ServletRequest 对象及目标方法的入参实例传递给 WebDataBinderFactory 实例,以创建 DataBinder 实例对象; ...

  6. JSP高级功能-java之JSP学习第三天(非原创)

    文章大纲 一.JSP 标准标签库(JSTL)二.JSP 连接数据库三.JSP XML 数据处理四.JSP JavaBean五.JSP 自定义标签六.JSP 表达式语言七.JSP 异常处理八.JSP 调 ...

  7. javaWEB国际化(jsp中使用)

    在jsp页面中使用国际化方法,首先将jstl开源架包:jstl.jar,standard.jar导进去 并在src目录下建立以test开头,.properties结尾的文件:test_en_US.pr ...

  8. Struts第八篇【资源国际化、对比JSP的资源国际化】

    资源国际化 我们在学JSTL标签的时候就涉及到了资源国际化,,,但是呢,在JSP的章节我并没有写博文来讲解怎么弄-.一方面感觉JSP的资源国际化好麻烦,另一方面是感觉用的地方很少-..因此就没有深入去 ...

  9. 使用JSP的fmt标签实现国际化支持

    使用JSP的fmt标签配置i18n国际化资源文件可以实现根据不同的地区和语言切换不同的显示. 具体做法如下: 1.在JSP页面中添加fmt标签的引用: <%@ taglib prefix=&qu ...

随机推荐

  1. Matlab GUI memo

    有一段时间没写博客,一周4篇文章都坚持不下来,不知道写哪个方面的内容,写研究相关就怕论文查重查到,其他方面也没太多时间去学.还是花时间多学点其他方面.废话到此,很早就做过matlab gui相关,现在 ...

  2. wordpress 主题开发

    https://yusi123.com/3205.html https://themeshaper.com/2012/10/22/the-themeshaper-wordpress-theme-tut ...

  3. Ubuntu 16.04 源码编译安装PHP7+swoole

    备注: Ubuntu 16.04 Server 版安装过程图文详解 Ubuntu16镜像地址: 链接:https://pan.baidu.com/s/1XTVS6BdwPPmSsF-cYF6B7Q 密 ...

  4. POJ2480:Longge's problem(欧拉函数的应用)

    题目链接:传送门 题目需求: Given an integer N(1 < N < 2^31),you are to calculate ∑gcd(i, N) 1<=i <=N ...

  5. Python(面向对象5——高级)

    面向对象进阶 一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 1 class Fo ...

  6. windows 2003 iis php

    我的环境 是   windows server200 ee   iis6.0  程序是php 1.一台安装好的 Windows 2003 服务器,并且已经安装了 IIS 6. 2.下载 windows ...

  7. 3-CMD

    诞生背景AMD其实已经算是解决了前端模块化开发的问题了,但是!!!但是,因为AMD管理依赖的时候,会把所有的依赖下载到本地,并且立即执行一次.依赖少了还好,多的话,那么多js均要被执行一次,这个内存消 ...

  8. 『NiFi 学习之路』使用 —— 主要组件的使用

    一.概述 大部分 NiFi 使用者都是通过 NiFi 的 Processor 来实现自己的业务的.因此,我也主要就 NiFi 官方提供的 Porcessor 进行介绍. 二.Processor 如果你 ...

  9. SpringBoot入门学习(二)

    第一讲我们已经讲解了入门Demo,这一讲我们主要讲解包含以下内容 项目内一些属性配置 自定义属性配置 ConfigurationProperties配置 (1)第一个工程创建的时候会自动在工程下创建a ...

  10. Uninstalling JIRA applications from Linux

     If you wish to re-install JIRA in 'unattended mode', do not uninstall your previous installation of ...