zoukankan      html  css  js  c++  java
  • Struts国际化

    我们项目用Struts1做的MVC模块,国际化的方式是在
    1 struts-config.xml文件里添加


    <message-resources  parameter="com.huawei.it.support.resources.application"></message-resources>

    2 在com.huawei.it.support.resources路径文件夹下加入文件
    application.properties application_en.properties
    application_zh.properties

    3 在jsp页面需要国际化的字符用
    '<bean:message key="xxx"/>' xxx是properties文件里的key

    就完成了
    -----------------------------
    原理是struts会根据浏览器的语言改变session里的org.apache.struts.Globals.LOCALE_KEY属性。
    该属性是一个Locale对象。在执行jsp的时候<bean:message>标签就会根据这个对象里的值按照18DN规则来编译出相应的语言。

    ----------------------------
    这个项目可手动改变语言,发送一个请求,改变session里一个nls属性的值,这是项目自定义的语言属性。
    然后再加入一个cookie,设置这个cookie为全华为域,设置路径为全部路径。然后重定向到index页面。
    单点登录拦截器发现这个cookie之后会去改变session里的org.apache.struts.Globals.LOCALE_KEY属性。这样就完成了。
    ----------------------------
    js里的国际化,也准备了两个js文件,根据项目自定义的语言属性session.getAttribute(nls),在jsp页面加载js的时候选择关联相应的js文件就ok了。
    这个主要用于js里的各种alert提示。改变之后不需要重启动服务器,热部署,便于开发。


  • 相关阅读:
    ora-01034 ora-27101解决方法(亲测)
    windows C++内存检测
    oracle求特定字符的个数
    ORACLE查看并修改最大连接数
    你必须用角色管理工具安装Microsoft .NET Framework 3.5
    让VC编译的Release版本程序在其他机器上顺利运行
    创建数据库连接
    C++ 判断进程是否存在
    excel
    毕设学习笔记
  • 原文地址:https://www.cnblogs.com/onlywujun/p/2804493.html
Copyright © 2011-2022 走看看