Posted on 2009-06-25 16:18
landor 阅读(2532)
评论(1) 编辑 收藏 所属分类:
struts1
struts的配置配置文件默认是根据浏览器的语言来设置locale的,通过locale来读取相应名称的资源文件,完成国际化显示的
比如,资源文件名称如下
htmlMessages.properties
htmlMessages_en.properties
htmlMessages_zh_CN.properties
htmlMessages_fr.properties
htmlMessages是默认寻找的资源文件,当locale为Engish的时候,struts去寻找htmlMessages_en文件,没找到就寻找htmlMessages文件
在session建立的时候,struts会把浏览器发送的locale信息放入session,而且仅仅在刚刚建立session的时候放入一次,以后的操作便不再执行了,所以我们只需要修改session的这个locale,代码如下:
request.getSession().setAttribute(Globals.LOCALE_KEY, Locale.CHINA); //设置中文
动态修改语言如下:
Locale locale = new Locale(request.getParameter("language"));
request.getSession().setAttribute(Globals.LOCALE_KEY, locale);