第一步需要建立配置文件 格式为      文件名_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. html5的navigator调用手机震动

    navigator.vibrate(s) 或 navigator.webkitVibrate(s),不过该属性只在安卓系统有效.

  2. Front-End(一)

    前端初识 现在网站开发的市场越来越大,个人和企业都有了主页.网络办公的需求,并且随着网站开发前端和后台的工作细分,前端开发的需求也越来越大. 前端的任务是将美工的网页设计使用前端技术尽可能无差别地实现 ...

  3. Markdown引用本地图片语法

    Markdown引用本地图片语法 markdown引用图片标准方式如下: ![Alt text](/path/to/img.jpg) 测试markdown文本如下: # 测试相对路径图片 ![Alt ...

  4. 转:KVC/KVO原理详解及编程指南

      作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/9674431 转载请注明出处 如果觉得文章对你有所帮助,请通过留言或 ...

  5. node.js---package.json文件

    描述包的文件是package.json文件. 一个这样的文件,里面的信息还是挺大的.我们可以放弃手动建立.为了练手我们有命令行来建一个这样的包; 完成name,varsion....license项的 ...

  6. Python学习笔记——基础篇【第六周】——shutil模块

    常用模块之shutil 高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length]) 将文件内容拷贝到另一个文件中,可以部分内容 def c ...

  7. android 给layout布局添加点击事件

    <方法一> 1,在代码中加入如下红色代码,不然会被包含在其中的控件把焦点抢占,此时子控件无需设置clickable和focuseable <RelativeLayout        ...

  8. Aa3.0 事件机制

    说明:本文由多处网络文章整理而成,在此未一一注明原文链接,敬请谅解! AS3:事件流机制  事件流 只要发生事件,Flash Player就会调度该事件对象. 如果事件目标不在显示列表中,则Flash ...

  9. C#发送邮件类

    一.定义邮件发送类 /// <summary> /// 发送邮件 /// </summary> public class MailHelper { #region 私有变量 p ...

  10. JavaScript-Curry

    Currying allows you to easily create custom functions by partially invoking an existing function. He ...