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提示。改变之后不需要重启动服务器,热部署,便于开发。


  • 相关阅读:
    Java Arrays 的基础知识
    Java 基础知识
    C
    165. 小猫爬山 (dfs)
    164. 可达性统计
    数码 美团资格赛(整数分块)
    1079 中国剩余定理(模板)
    5814: 余数之和(整数分块)
    Greedy Sequence(主席树-区间小于每个数的最大值)
    XKC's basketball team(单调栈+二分)
  • 原文地址:https://www.cnblogs.com/onlywujun/p/2804493.html
Copyright © 2011-2022 走看看