第一步需要建立配置文件 格式为      文件名_zh_CN.properties    为中文配置文件   文件名_en_US.properties为美式英语配置文件

配置文件里面的值以键值对的形式保存 例如  name=张三     name=ZhangSan

然后在Struts中把配置和文件设置为全局的

<constant name="struts.custom.i18n.resources" value="文件名" />   <!--这里的文件名就是上面的文件名-->

然后在页面引用

<%@taglib uri="/struts-tags" prefix="s"%>

<s:text name="name"></s:text> <!--这样就可以在页面显示 如果浏览器的语言是中文的就显示 张三  是英文的就显示 ZhangSan-->

也可以在action中显示但是Action必须继承ActionSupport 在action中以 this.getText("name");来获得

例如

package com.day07;

import com.opensymphony.xwork2.ActionSupport;

public class demo extends ActionSupport{

private String message;

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}

public String execute(){
this.message = this.getText("name");
return "success";
}
}

在页面中就可以 以 ${message}来显示 同上

输出带有占位符的国际化信息 在properties文件中有占位符

例如 name = ZhangSan,{0}  name=张三,{0}

在jsp中注入值

<s:text name="name">
<s:param>在吃饭</s:param><!--为占位符注入信息-->
</s:text>

在action中通过 this.getText("name",new String[]{"在吃饭"});

这样就为占位符注入信息了

配置包范围的国际化信息

直接在包下新建配置文件 package_zh_CN.properties package_en_US.properties

系统会优先查找包范围的配置文件再查看全局范围的配置文件

配置action范围的国际化信息

在包下面建立 文件名为   action类名_zh_CN.properties action类名_en_US.properties

这样就配置了action范围的国际化信息

Struts国际化的更多相关文章

  1. 在IDEA中编辑struts国际化properties文件

    在IDEA中编辑struts国际化properties文件 如果手工创建的web工程,struts的i18n属性文件,可以使用native2ascii工具转换(记得命令行的第二个文件名是要保存的文件名 ...

  2. struts 国际化

    国际化 1. 国际化与本地化 国际化 (Internationalization: I18N): 是程序在不做任何修改的情况下,就可以再不同的国家或地区和不同的语言环境下,按照当地的语言和格式习惯显示 ...

  3. 【JavaEE企业应用实战学习记录】struts国际化

    <%-- Created by IntelliJ IDEA. User: Administrator Date: 2016/10/6 Time: 16:26 To change this tem ...

  4. 菜鸟学习Struts——国际化

    一.概念 国际化:界面上的语言可以根据用户所在的地区改变显示语言. 如图: 二.实例 下面就一步一步的教大家利用Struts实现国际化. 1.编写资源文件 这个资源文件就是界面上显示的字符,资源文件里 ...

  5. 菜鸟学习SSH(二)——Struts国际化

    国际化(internationalization,i18n)和本地化(localization,l10n)指让产品(出版物,软件,硬件等)能够适应非本地环境,特别是其他的语言和文化.程序在不修改内部代 ...

  6. struts实现国际化

    上篇博客学习了Java国际化的一些基础知识,了解了这些知识之后,我们可以更好的过度到struts国际化. 本篇博客主要学习struts国际化的实现: 1.配置环境设置baseName. 在struts ...

  7. Struts的拦截器

    Struts的拦截器 1.什么是拦截器 Struts的拦截器和Servlet过滤器类似,在执行Action的execute方法之前,Struts会首先执行Struts.xml中引用的拦截器,在执行完所 ...

  8. I18n问题 国际化

    http://www.cnblogs.com/guaniu/archive/2012/01/18/2325556.html java国际化 1.了解缺省Locale是由操作系统决定的,Locale是由 ...

  9. struts2 I18n问题 国际化

    java国际化 1.了解缺省Locale是由操作系统决定的,Locale是由语言和国家代码组成 2.国际化资源文件是由baseName+locale组成,如:MessageBundle_en_US.p ...

随机推荐

  1. 文档在线预览开源实现方案三:OpenOffice + PDFRenderer + js

    之前的方案无法很好地解决异构平台及不同浏览器的兼容性问题,如方案一需要客户端浏览器支持flash而移动端浏览器无法支持这点,虽然移动端浏览器支持方案二,但是一些老版本的IE浏览器无法支持,例如IE8就 ...

  2. jquery 图片遮罩 坠落遮挡效果

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  3. ORM了解

    1.hibernate通过读取Hibernate.cfg.xml文件创建SessionFactory,并通过SessionFactory创建Session(开始使用要打开,使用结束要关闭);通过Ses ...

  4. java程序基础

  5. java生成图片

    在一张图片上绘制别的图片以及文字. public String GenerateImage(WebCast_baseinfo base,String code,String customName,St ...

  6. 【转】python删除文件里包含关键词的行

    import shutil with open('/path/to/file', 'r') as f: with open('/path/to/file.new', 'w') as g: for li ...

  7. XTU 1252 Defense Tower

    $2016$长城信息杯中国大学生程序设计竞赛中南邀请赛$J$题 贪心. 优先删除$power$大的点. #pragma comment(linker, "/STACK:1024000000, ...

  8. css基础和心得(三)

    OK!接下来我们分别说这些元素的意义.首先,什么是块级元素?在html中<div>,<p>,<h1>,<form>,<ul>和<li& ...

  9. vim - 自动补齐

    OmniComplete是基于ctags的,所以要先安装ctags 到http://www.vim.org/scripts/script.php?script_id=2358下载cpp_src.tar ...

  10. 梅特卡夫法则(Metcalfe's law)

    如果一个网络中有n个人,那么网络对于每个人的价值与网络中其他人的数量成正比,于是网络对于所有人的总价值与n*(n-1)成正比.