网络编程 
首页 > 网络编程 > 浏览文章

ResourceBundle类在jsp中的国际化实现方法

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

今天第一次听说页面国际化这个词,所以查资料,顺便做了一个小页面,做做记录。

首先是两个资源文件,分别为msg_en_US.properties和msg_zh_CN.properties

ResourceBundle类在jsp中的国际化实现方法 

ResourceBundle类在jsp中的国际化实现方法

显然中文字符是需要转换过来的。

这是jsp页面的代码

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<%@page import="java.util.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>国际化</title>
  <style type="text/css">
  div{
   width: 300px;
   text-align: center;
   margin: 0 auto;
  }
  </style>
 </head>
 
 <body>
  <a href="/International/test.jsp" rel="external nofollow" >简体中文</a>|<a href="/International/test.jsp" rel="external nofollow" >English</a>
  <%
   ResourceBundle bund=ResourceBundle.getBundle("msg",request.getLocale());
   String str=request.getParameter("language");
   if(str!=null){
    if("zh".equals(str)){
     bund=ResourceBundle.getBundle("msg",Locale.CHINA);
    }
    else if("en".equals(str)){
     bund=ResourceBundle.getBundle("msg",Locale.US);
    } 
   }
  %>
  <div>
   <h1><%=bund.getString("inf") %></h1>
   <table>
    <tr>
     <td><%=bund.getString("name") %>:</td>
     <td><input type="text" name="name"/></td>
    </tr>
    <tr>
     <td><%=bund.getString("sex") %>:</td>
     <td><input type="text" name="sex"/></td>
    </tr>
    <tr>
     <td><%=bund.getString("age") %>:</td>
     <td><input type="text" name="age"/></td>
    </tr>
    <tr>
     <td><%=bund.getString("tel") %>:</td>
     <td><input type="text" name="tel"/></td>
    </tr>
   </table><br/>
   <input type="submit" value="<%=bund.getString("submit")%>" name="submit"/>
  </div>
 </body>
</html>
 

结果图

ResourceBundle类在jsp中的国际化实现方法

ResourceBundle类在jsp中的国际化实现方法 

以上这篇ResourceBundle类在jsp中的国际化实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:运用JSP+ajax实现分类查询功能的实例代码
下一篇:JSP页面间的传值方法总结
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。