struts2的国际化
程序员文章站
2022-05-24 11:28:55
...
Internationalization:国际化(简写:I18n)
意思:将页面可以中英文切换
第一步:先新建两个配置文件
xx_en_CN.properties 切换中文的配置
xx_zh_US.properties 切换英文的配置
_en_US.properties,_zh_US.properties是规范,必须这样写,xx自定义的写
xx_en_CN.properties 里面的写法(只要页面上有的中文或者英文都要写)
##左边是键 右边是值 (写中文所对应的英文)
name=Name
password=PassWord
login=Login
phone=Phone
xx_en_US.properties 里面的写法(只要页面上有的中文或者英文都要写)
##左边是键 右边是值 (写英文所对应的中文)
name=用户名
password=密码
login=登录
phone=电话
两个配置文件的键要一模一样
第二步:struts.xml里面
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 允许框架查找语音的配置 value:就是xx位置的名称-->
<constant name="struts.custom.i18n.resources" value="xx"></constant>
<package name="default" namespace="/" extends="struts-default">
<action name="testAction_*" class="com.ystruts.action.TestAction" method="{1}">
<result name="I18n">Login.jsp</result>
</action>
</package>
</struts>
第三步 方法中
public String fy() {
//直接返回I18n
return "I18n";
}
使用时:jsp页面
<!-- 把之前的值替换成从配置文件中取出来的 name:是配置文件的键 -->
<s:text name="uame"></s:text><input type="text" name="name"/>
<s:text name="password"></s:text><input type="password" name="pws"/>
<s:text name="phone"/><input type="text" name="phone"/>
<input type="submit" value="<s:text name="login"/>"/>
<!-- request_locale=zh_CN 规范就是这样写的-->
<a href="testAction_fy?request_locale=zh_CN">中文</a>/
<a href="testAction_fy?request_locale=en_US">English</a>