十四、Struts2的国际化

1、配置全局国际化消息资源包

  1. 配置全局消息资源包

    <!--配置全局消息资源包 -->

        <constant
    name="struts.custom.i18n.resources"
    value="msg"></constant>

     

    b、如何访问

  • 在动作类中:

前提,动作类继承ActionSupport

public
class
Demo1Action
extends ActionSupport{

    @Override

    public String execute() throws Exception {

        // 在动作类中获取消息包中的信息

        String str = getText("hello");

        System.out.println(str);

        return
NONE;

    }

}

 

  • 在页面中:

<!-- 从消息包中取不到对应的key值,自己直接上了 -->

    <s:textfield
name="username"
key="hello"></s:textfield>

 

或者

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

 

  • 自由指定消息资源包,借助struts2的有关国际化的标签:

<!-- 自由指定消息资源包:name 的值为资源包在类路径中的路径 -->

    <s:i18n
name="msg">

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

    </s:i18n>

 

如果消息资源包在com.itheima.resources.msg_zh_CN.properties

<s:i18n
name="com/itheima/resources/msg">

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

    </s:i18n>

 

  1. 配置局部消息资源包

    一定要经过Action才行:

    书写规范:在动作类所在包中,建立名字"动作类名-zh-CN.properties"的配置文件。动作类中访问,发现局部的比全局的优先级高。

    /*

    * 关于局部消息资源包内容的访问:

    * 1.必须经过Action才行

    * 2.Action继承了ActionSupport

    * 才会从局部消息资源包中取数据。

    *

    * 如果这样来访问:(原理:ValueStack和OGNL有关)

    * 1.直接访问jsp,没有经过动作类。从全局取

    * 2.如果Action没有基础ActionSupport。从全局中取

    */

    public
    class
    Demo1Action
    extends ActionSupport{

        @Override

        public String execute() throws Exception {

            return
    SUCCESS;

        }

    }

     

    3、包范围的消息资源包

    也得经过action访问

    书写有规范的,名称为package_zh_CN.properties,放在类的包中。可以被包中及子包的所有动作类来访问。

     

     

    总结:

     

十四、Struts2的国际化的更多相关文章

  1. (十四)struts2的国际化

    一.国际化的概念 国际化是指web程序在运行时,根据客户端请求的国家.语言的不同而显示不同的界面. 例如,如果请求来自中文客户端,则页面的显示,提示信息等都是中文,如果是英文客户端,则显示英文信息.  ...

  2. 二十四、Struts2中的UI标签

    二十四.Struts2中的UI标签 Struts2中UI标签的优势: 数据回显 页面布局和排版(Freemark),struts2提供了一些常用的排版(主题:xhtml默认 simple ajax) ...

  3. struts2官方 中文教程 系列十四:主题Theme

    介绍 当您使用一个Struts 2标签时,例如 <s:select ..../>  在您的web页面中,Struts 2框架会生成HTML,它会显示外观并控制select控件的布局.样式和 ...

  4. struts2使用拦截器完成登陆显示用户信息操作和Struts2的国际化

    其实学习框架,就是为了可以很好的很快的完成我们的需求,而学习struts2只是为了替代之前用的servlet这一层,框架使开发更加简单,所以作为一个小菜鸟,特别感谢那些超级无敌变态开发的框架供我们使用 ...

  5. 浅谈struts2的国际化----i18n

    可能大家在使用struts框架的时候,偶尔会看到这个词: i18n.也就是 Internationalization    i 开头,n 结尾. 总共18个字母,今天的主要内容就是环绕这 四个字母. ...

  6. Solon Web 开发,十四、与Spring、Jsr330的常用注解对比

    Solon Web 开发 一.开始 二.开发知识准备 三.打包与运行 四.请求上下文 五.数据访问.事务与缓存应用 六.过滤器.处理.拦截器 七.视图模板与Mvc注解 八.校验.及定制与扩展 九.跨域 ...

  7. 我的MYSQL学习心得(十四) 备份和恢复

    我的MYSQL学习心得(十四) 备份和恢复 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) ...

  8. 雅虎(yahoo)前端优化十四条军规

    第一条.尽可能的减少 HTTP 的请求数 (Make Fewer HTTP Requests ) http请求是要开销的,想办法减少请求数自然可以提高网页速度.常用的方法,合并css,js(将一个页面 ...

  9. Bootstrap<基础二十四> 缩略图

    Bootstrap 缩略图.大多数站点都需要在网格中布局图像.视频.文本等.Bootstrap 通过缩略图为此提供了一种简便的方式.使用 Bootstrap 创建缩略图的步骤如下: 在图像周围添加带有 ...

随机推荐

  1. Chrome每次打開都要打開123.sogou.com

    剛開始還以為中毒了,又是殺毒又是掃描的,最後發覺,原來就是chrome的一個設置被改了. Chrome->設置->啟動時 : 選打开特定网页或一组网页->設置網頁 , 將其中的123 ...

  2. 测试相关、sdk卡读取

    测试: monkey 猴子 测试整个系统 adb shell monkey -v 1000 (-v 指定模拟测试的事件数量) 测试某个程序 adb shell monkey -p <程序的包名& ...

  3. Tornado

    Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了能有效 ...

  4. 如何在XAMPP中设置多个网站

    xampp 是一个非常方便的本地 apache + php + mysql 的调试环境,在本地安装测试 WordPress 等各种博客.论坛程序非常方便.今天我们来给大家介绍一下,如何使用 XAMPP ...

  5. linux secureCRT utf-8编码显示

    secureCRT 会话选项-终端-外观-字符编码: 下拉选择UTF-8 关闭当前secureCRT,另开一个新的让设置生效,显示正常.

  6. (easy)LeetCode 202.Happy Number

    Write an algorithm to determine if a number is "happy". A happy number is a number defined ...

  7. (整理)C#实现UDP广播

    (一) IP地址解析 IP地址的类型:XXX.XXX.XXX.XXXA类: 1.0.0.1--126.255.255.254 最高位是0: 1个字节的网络地址和3个地址的主机地址 测试地址:127.X ...

  8. excel读取指定行

    任意单元格输入=OFFSET($A$1,(ROW(A1)-1)*20,0) 往下拉就出来了

  9. 03-position和anchorPoint

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  10. css+js+html基础知识总结

    css+js+html基础知识总结 一.CSS相关 1.css的盒子模型:IE盒子模型.标准W3C盒子模型: 2.CSS优先级机制: 选择器的优先权:!important>style(内联样式) ...