博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
45.国际化-选择使用资源文件
阅读量:7257 次
发布时间:2019-06-29

本文共 1549 字,大约阅读时间需要 5 分钟。

转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html

其实在我们成功访问到login.jsp页面后,只要在地址栏中增加参数request_locale=en_US便可以正确切换到登录页面为英文。当然我们可以再链接根据此参数写这个资源文件的链接。当然我们也可借助一个新Action来实现,操作步骤如下:在login.jsp中增加如下代码:

<a href="change.action?request_locale=zh_CN">

              <s:text name="chinese"></s:text>

</a>

<a href="change.action?request_locale=en_US">

              <s:text name="english"></s:text>

</a>

change.action对应的配置为:
<action name="change" class="com.asm.ChangeLangAction">

                     <result>/login.jsp</result>

</action>

ChangeLangAction的主要代码如下:
package com.asm;

public class ChangeLangAction extends ActionSupport {

       public String execute() throws Exception {

              return SUCCESS;

       }

}

以上是第一种方法,特别要注意,由于使用了不同Action,所以要资源文件这时只有pack级别和app级别的才起作用,所以这时还应把action级别的资源文件内容增加到app级别的资源文件中去。下面使用第二种方法,原理基本和上面一样,只需在此ChangeLangAction中增加一个新的字段String lang及相应的get/set方法,再增加一个新的方法changeLang,代码如下:

public String changeLang() throws Exception {

              Locale locale = null;

              System.out.println(lang);

              if (lang.equals("zh")) {

                     // 显示中文

                     locale = Locale.CHINA;

                     System.out.println("======" + lang+locale);

              } else {

                     // 显示英文

                     locale = Locale.US;

              }

              ActionContext.getContext().setLocale(locale);                                                  ServletActionContext.getRequest().getSession().setAttribute("WW_TRANS_I18N_LOCALE", locale);

              return SUCCESS;

       }

配置内容为:

       <action name="cl" class="com.asm.ChangeLangAction" method="changeLang">

                     <result>/login.jsp</result>

       </action>

在login.jsp中对应的链接为:

<a href="cl.action?lang=zh">

              <s:text name="chinese"></s:text>

</a>

<a href="cl.action?lang=en">

              <s:text name="english"></s:text>

</a>

这样操作后,当我们成功访问到login.jsp后,便可以点击链接来随意切换访问英文或中文页面。

转载地址:http://qrpdm.baihongyu.com/

你可能感兴趣的文章
PIE SDK去相关拉伸
查看>>
最新云服务厂商产品列表---截至20141016
查看>>
今天开始学习
查看>>
MySQL数据库学习笔记(三)----基本的SQL语句
查看>>
Hadoop源代码分析(MapTask)
查看>>
SQL 2008新实例基础安装
查看>>
关于Google Sitelink
查看>>
zabbix企业应用之监控磁盘读写状态
查看>>
我的友情链接
查看>>
DOS命令行操作计划任务详解
查看>>
找出两个单链表里交叉的第一个元素
查看>>
Loop Guard - CCIE之Switching篇
查看>>
Android中使用javah生成jni头文件的正确方法
查看>>
svn 增加忽略和删除忽略文件
查看>>
JavaWeb获取请求参数的两种方式
查看>>
(九)2005年我的第一次软件行业创业,烧掉30万、2年时间打水漂的惨痛教训
查看>>
第7章 内部通讯录
查看>>
(三)闭包和高阶函数
查看>>
Serverless初探
查看>>
Apache - AH00558
查看>>