国际化的缺点:

  因为文字不同,所以带来的排版问题一样严重,通常都是重新在写一个网站反而更加清晰,快捷

1:需要从浏览器中获取到浏览器语言(Accept—Language)

2:利用locale获取

3:加载配置文件(配置文件写在src目录下,且命名需要规范化——res_zh_CN.properties)

4:Java类源码

 1 import java.util.Locale;
2 import java.util.ResourceBundle;
3
4
5 import org.junit.Test;
6
7
8 /**
9 * 我们现在写两个配置文件,一个文件中存放中文信息,另一个存放英文信息
10 * 我们使用一个类,来通过语言环境,最终识别加载哪一个文件的信息:ResourceBundle
11 * 什么语言环境:Locale
12 * > zh_CN
13 * > en_US
14 * new Locale("zh", "CN");
15 * Locale.getDefault();
16 * Locale.US
17 *
18 * 资源文件名称的格式:基本名称+Locale部份+.properties
19 * 例如:res_zh_CN.properties,其中基本名称为res,而zh_CN是Locale部份
20 * 必须所有的资源文件基石名称要相同!不同之处就是Locale部件
21 */
22 public class Demo1 {
23 @Test
24 public void fun1() {
25 Locale locale = Locale.US;
26 // 得到ResourceBundle
27 // 第一个参数是:基本名称
28 // 第二个参数是:Locale
29 ResourceBundle rb = ResourceBundle.getBundle("res", locale);
30 // 使用ResourceBundle来获取资源信息
31 System.out.println(rb.getString("username"));
32 System.out.println(rb.getString("password"));
33 System.out.println(rb.getString("login"));
34 }
35 }
36 5:jsp源码
37 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
38 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
39 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
40 <html>
41 <head>
42 <title>My JSP 'login.jsp' starting page</title>
43 <meta http-equiv="pragma" content="no-cache">
44 <meta http-equiv="cache-control" content="no-cache">
45 <meta http-equiv="expires" content="0">
46 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
47 <meta http-equiv="description" content="This is my page">
48 <!--
49 <link rel="stylesheet" type="text/css" href="styles.css">
50 -->
51 </head>
52 <body>
53 <%--
54 把与语言相关的所有字符串都写成变量!!!
55 --%>
56 <%
57 /*
58 1. 获取Locale,这是由客户端的浏览器提供的Locale
59 2. 创建ResourceBundle
60 3. 把所有的语言信息使用rb.getString("xxx")来替换!
61 */
62 Locale locale = request.getLocale();
63 ResourceBundle rb = ResourceBundle.getBundle("res"
, locale);
64 %>
65 <h1><%=rb.getString("login") %></h1>
66 <form action="" method="post">
67 <%=rb.getString("username") %>:<input type="text" name="username"/><br/>
68 <%=rb.getString("password") %>:<input type="password" name="password"/><br/>
69 <input type="submit" value="<%=rb.getString("login") %>"/>
70 </form>
71 </body>
72 </html>

JavaWeb的国际化(17/4/8)的更多相关文章

  1. Javaweb之国际化

    Javaweb之国际化 一.前言 软件的本地化:一个软件在某个国家或地区使用时,采用该国家或地区的语言,数字,货币,日期等习惯. 软件的国际化:软件开发时,让它能支持多个国家和地区的本地化应用.使得应 ...

  2. 深入分析JavaWeb Item22 -- 国际化(i18n)

    一.国际化开发概述 软件的国际化:软件开发时,要使它能同一时候应对世界不同地区和国家的訪问,并针对不同地区和国家的訪问.提供对应的.符合来訪者阅读习惯的页面或数据. 国际化(international ...

  3. JavaWeb的国际化

    国际化 1.国际化开发概述 1.1.软件的国际化 软件开发时,要使它能同时应对世界不同地区和国家的方法,并针对不同地区和国家的方法,提供相应的,符合来访者阅读习惯的页面或数据 国际化简称:i18n : ...

  4. JavaWEB开发国际化

    1.国际化开发概述 )软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. )国际化又称为 i18n:inter ...

  5. JavaSE之概述

    作此篇是鉴于个人Java学习之需要,也便于日后进一步归纳与复习.  规定:      1 Java全面概述[囊括 Java工作原理,JVM方面知识,关键字(final,static,public,pr ...

  6. Javaweb学习笔记——(二十)——————Javaweb监听器、国际化

    Javaweb监听器     三大组件         *Servlet         *Listener         *Filter Listener:监听器         1.初次相见:A ...

  7. javaweb(三十一)——国际化(i18n)

    一.国际化开发概述 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationaliz ...

  8. javaweb基础(31)_国际化(i18n)

    一.国际化开发概述 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationaliz ...

  9. javaweb学习总结(三十一)——国际化(i18n)

    一.国际化开发概述 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationaliz ...

随机推荐

  1. 1751: [Usaco2005 qua]Lake Counting

    1751: [Usaco2005 qua]Lake Counting Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 190  Solved: 150[Su ...

  2. virtual dom的实践

    最近基于virtual dom 写了一个小框架-aoy. aoy是一个轻量级的mvvm框架,基于Virtual DOM.虽然现在看起来很单薄,但我做了完善的单元测试,可以放心使用.aoy的原理可以说和 ...

  3. TCP/IP笔记(三)数据链路层

    数据链路的作用 数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范.通信媒介包括双绞线电缆.同轴电缆.光纤.电波以及红外线等介质.此外,各个设备之间有时也会通过交换机.网桥.中继器等中转数据. ...

  4. /bin/sh^M: bad interpreter:解决办法

    xcode编译时有时候遇到/bin/sh^M: bad interpreter:没有那个文件或目录这样的错误 可以用以下方式解决 先在控制台cd到报错的目录 vi xxx.sh(报错的那个文件):se ...

  5. WPF: 本地化(Localization) 实现

    本文将讨论一种较为方便的本地化方法. 由于在项目中要实现本地化,所以在网上查找相关的解决方案.通过一系列调研,发现实现本地化的方法主要有以下三种: 通过编译项目以设置 x:Uid 并使用 LocBam ...

  6. 从Properties得到数据到gson转换为json

    从上一篇得到properties里的数据 Map<String,String> map = new HashMap<String,String>(); Enumeration& ...

  7. SharePoint JavaScript 客户端对象使用视频教程

    本次视频教程是为大家介绍如何使用SharePoint JavaScript客户端对象,包括对于站点.列表.文档库.列表项.文件夹.文件和附件等基本对象的操作,同时,为大家举几个简单的应用的例子,让大家 ...

  8. require include php5中最新区别,百度上好多错的。

    二者报错机制不同,include是warning 继续执行程序,require会报致命错误,中断程序运行. 前者有返回值,后者则没有. 注意了,php5里有一个区别没了,之前说的是require是无条 ...

  9. dubbo的简单实现

    一 是什么 一般网站架构随着业务的发展,逻辑越来越复杂,数据量越来越大,交互越来越多,dubbo使前后端分离,完成负载均衡. dubbo架构图 节点角色说明: Provider: 暴露服务的服务提供方 ...

  10. java中的基本jdbc中mvc基本示例

    数据库: 包文件: Student.java 1 package com.model; 2 3 public class Student { 4 private int id; 5 private S ...