Struts2国际化:实现中英文切换

I18N 实际就是 Internationalization,因为以 I 开头,以 N 结尾,共18个字母,也就是国际化的意思

环境要求:Struts2框架搭建完成

要实现程序的国际化,就要提供程序所需要的资源文件
资源文件的内容基本是key-value对

message_zh_CN.properties
在这里插入图片描述

login.username=\u767B\u5F55\u7528\u6237\u540D
login.password=\u767B\u5F55\u5BC6\u7801
login.btn=\u767B\u5F55
check=\u8BF7\u9009\u62E9\u8BED\u8A00
chinese=\u4E2D\u6587
english=\u82F1\u6587

message_en_US.properties
在这里插入图片描述

login.username=username
login.password=password
login.btn=login
check=Please check your language
chinese=Chinese
english=English

编写jsp页面
要注意这里用到了s标签
在这里插入图片描述

login.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"  
    pageEncoding="utf-8"%> 
<%@ taglib prefix="s" uri="/struts-tags"%> 
<html>  
<head>  
<meta http-equiv="Content-Type" content="text/html; utf-8">  
<title></title>  
</head> 
<body>
	<s:i18n name="messages">
	<a href="changeLanguage.action?request_locale=zh_CN"><s:text name="chinese"></s:text></a>  
	<a href="changeLanguage.action?request_locale=en_US"><s:text name="english"></s:text></a> 
<br/>
   <form action="login" method="post">
   	<table>
               <tr>
                 <td><s:text name="login.username"/></td>
                 <td><input type="text" name="user.userName"/></td>
               </tr>
               <tr>
                 <td><s:text name="login.password"/></td>
                 <td><input type="text" name="user.password"/></td>
               </tr>
               <tr>
                <td colspan="2"><input type="button" value="<s:text name="login.btn"/>"/></td>
              </tr>              
             </table>                  
    </form>
   </s:i18n> 
  </body>
</html>

编写action
ChangeLanguageAction.java

package com.international.action;

	public class ChangeLanguageAction {
		public String execute(){
			return "success";
		}

	}


配置struts.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
    "http://struts.apache.org/dtds/struts-2.1.7.dtd">  
    <struts>
     <constant name="struts.custom.i18n.resources" value="globalMessage"/>
     <package name="default" namespace = "/" extends="struts-default"> 
        <action name="changeLanguage" class="com.international.action.ChangeLanguageAction">
        	<result>/login.jsp</result>
        </action>
     </package>
    </struts>

项目结构
在这里插入图片描述

效果图:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值