Struts2的国际化(即实现网站整体中英文切换)
Struts2的国际化(即实现网站整体中英文切换)
1.搭建Struts2框架(ps:不会的参照第一篇博客)
2.在src下创建两个资源文件(file)
message_en_US (ps:英文 点击ADD新建 对照图片写出来)
message_zh_CN(ps:中文 点击ADD新建 对照图片写出来)
3.新建我们的jsp页面
index.jsp 代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户登录</title>
</head>
<body>
<s:i18n name="message">
<s:text name="check"></s:text>:
<a href="check.action?request_locale=zh_CN"><s:text name="chinese"></s:text></a>
<a href="check.action?request_locale=en_US"><s:text name="english"></s:text></a>
<br/>
<form action="<%=basePath%>hello.action" method="post">
<table>
<tr>
<td><s:text name="login.username" /></td>
<td><input type="text" name="user.userName" /></td>
</tr>
<tr>
<td><br/><s:text name="login.pwd" /></td>
<td><input type="text" name="user.password" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="<s:text name="login.btn"/>"/></td>
</tr>
</table>
</form>
</s:i18n>
</body>
</html>
show.jsp 代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>登陆成功</title>
</head>
<body>
恭喜登陆成功
</body>
</html>
4.新建一个类
ChangeLanguageAction.java 代码如下
package com.hnpi.action;
public class ChangeLanguageAction {
public String execute(){
return "success";
}
}
5.配置我们的拦截器(struts.xml)
代码如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.custom.i18n.resources" value="message" />
<package name="test" namespace="/" extends="struts-default">
<action name="check"
class="com.hnpi.action.ChangeLanguageAction">
<result name="success">/index.jsp</result>
</action>
<action name="hello"
class="com.hnpi.action.RegisterAction"
method="t1">
<result name="success">/show.jsp</result>
</action>
</package>
</struts>
这样就可以了.