zoukankan      html  css  js  c++  java
  • JavaWeb的国际化(17/4/8)

     

     

    国际化的缺点:

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

    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>  
  • 相关阅读:
    移动终端app测试点总结
    Android测试环境搭建(win7)
    Jenkins知识地图
    Jenkins快速上手
    接口测试总结
    性能测试总结(三)--工具选型篇
    性能测试总结(二)---测试流程篇
    性能测试总结(一)---基础理论篇
    网友评论诺基亚和Android
    手撕伪鸡汤,人事部门经理给你的八个职场忠告
  • 原文地址:https://www.cnblogs.com/yuwenhui/p/6684237.html
Copyright © 2011-2022 走看看