Spring 中的国际化Message的简单例子(ApplicationContext) 不跟框架集成的版本
首先,建立一个描述message的XML文件,名为messages.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 资源国际化测试 -->
<bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <property name="basenames">
<list>
<value>org/rjstudio/spring/properties/messages</value>
</list>
</property>
</bean>
</beans>
这个Bean的id是定死的,只能为“messageSource”。这里的Class需要填入MessageSource接口的实现。其中,在我看的书中只提及了两个类,一个是:ResourceBundleMessageSource,另一个则是ReloadableResourceBundleMessageSource。其中,后者提供了无需重启就可重新加载新配置的特性。
list节点的value子节点中的body值“org/rjstudio/spring/properties/messages”,是指org.rjstudio.spring.proerties包下的以messages为主要名称的properties文件。比如说,以Locale为zh_CN为例,Spring会自动在类路径中在org.rjstudio.spring.properties包下按照如下顺序搜寻配置文件并进行加载:
接下来,让我们在org.rjstudio.spring.properties下,建立两个messages的属性文件。一个名为messages_zh_CN.properties,另一个为messages_en_US.properties,分别对应国际化中的中国和美国。
在这两个属性文件中分别建立一个userinfo属性。
中国为:userinfo=当前登陆用户[{0}] 登陆时间[{1}]
美国为:userinfo=current login user:[{0}] login time:[{1}]
好了,一切就绪,接下来可以写段代码来测试了。。建个类,写个测试Main方法。
public class MessageTest {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("messages.xml");
Object[] arg = new Object[] { "Erica", Calendar.getInstance().getTime() };
String msg = ctx.getMessage("userinfo", arg,Locale.CHINA);
System.out.println("Message is ===> " + msg);
}
}
最后输出的结果是:Message is ===> 当前登录用户:[Erica] 登录时间:[07-6-8 上午10:20]
ctx.getMessage("userinfo", arg,Locale.getDefault());这个方法,传入的三个参数,第一个是properties文件中对应的名。arg为一个对象数组,我们在properties里面放置了两个变量,[{0}]和[{1}],Spring会为我们给它们赋值。而最后则需要传入一个Local。这里用 Locale.CHINA代表中国。如果我们用Locale.US,则输出会变为:
Message is ===> current login user:[Erica] login time:[6/8/07 10:59 AM]
OK,到这里,就到这里。
转载于:https://www.cnblogs.com/toSeeMyDream/p/4108651.html
Spring 中的国际化Message的简单例子(ApplicationContext) 不跟框架集成的版本相关推荐
- Excel中的宏--VBA的简单例子
第一步:点击录制宏 第二步:填写宏的方法名 第三步:进行一系列的操作之后,关闭宏 第四步:根据自己的需要查看,修改宏 第六步:保存,一般是另存为,后缀名为.xlsm,否则宏语言不能保存. 到此为止恭喜 ...
- 使用VS2017编译sqlite和在VS2017中配置使用sqlite的简单例子演示
转自:http://blog.csdn.net/hyxiaohaiyang/article/details/7382551 知识补充: sqlite3.dll动态链接库,它允许程序共享执行特殊任务所必 ...
- android中实现GPS定位功能,Android中实现GPS定位的简单例子
今天弄了一个多小时,写了一个GPS获取地理位置代码的小例子,包括参考了网上的一些代码,并且对代码进行了一些修改,希望对大家的帮助.具体代码如下: 要实用Adnroid平台的GPS设备,首先需要添加上 ...
- java spring server_Java server框架之(1):spring中的IoC
为什么需要IoC? 一般的对象耦合是在编译时确定的,也就是说当我们写如下类: 1 public classStaticCoupling { 2 3 String s = new String(&quo ...
- python ioc框架_轻松理解 Spring 中的 IOC
Spring 简介 Spring 是一个开源的轻量级的企业级框架,其核心是反转控制 (IoC) 和面向切面 (AOP) 的容器框架.我们可以把 Spring 看成是对象的容器,容器中可以包含很多对象, ...
- Spring/SpringBoot系列之Spring中涉及的9种设计模式【七】
1. 总览 Spring中涉及的设计模式: 简单工厂(非23种设计模式中的一种) 工厂方法 单例模式 适配器模式 装饰器模式 代理模式 观察者模式 策略模式 模版方法模式 2. 详细介绍 2.1 简单 ...
- ppst——技术视频spring AOP 的原理讲解和简单实现
ppst 技术视频--spring AOP 的原理讲解和简单实现:请访问ppst 技术视频分享平台 , www.ppst.cc,上面有最新的技术视频,推荐大家把博客录制成视频吧,可以获取收益哦 1.s ...
- Spring中ApplicationContext和beanfactory区别
BeanFacotry是spring中比较原始的Factory.如XMLBeanFactory就是一种典型的BeanFactory.原始的BeanFactory无法支持spring的许多插件,如AOP ...
- spring中aop事务
文章目录 事务 为什要用到Spring中AOP事务 事物的特性 ACID 事务并发问题 事务的隔离级别 spring事务管理 事务操作 事务操作对象 spring管理事务的属性介绍 spring管理事 ...
最新文章
- 海思3536:osdrv编译过程中报错及解决方法
- What is ORM ?
- EL表达式和标准标签库
- 《编写高质量代码改善JavaScript程序的188个建议》读书笔记
- 恐龙快跑小程序对接流量主源码+前端 v5.0.4 全开源微擎框架
- 【华为云技术分享】KubeFlow-Pipeline及Argo实现原理速析
- UI设计配色专辑,设计师应用技巧
- 开机后系统时间被恶意修改
- su: Authentication failure 的解决方案
- ABB变频器通过labview和上位机modbus通讯
- win8-cmd请求的操作需要提升
- 05【实操篇-文件目录类命令】
- 排列与组合中的递归策略(as3.0)
- RabbitMQ入门及笔记
- 【论文阅读】Automatic Detection of Various Malicious Traffic Using Side Channel Features on TCP Packets
- 拿到阿里,网易游戏,腾讯,smartx的offer的过程
- Eclipse插件6
- Linux下的有名管道---使用两个管道实现两个进程之间的通信(手机模式)
- STM32F103系列驱动MH-Z14A 二氧化碳(CO2)传感器详解,使用串口输出读取(后附免费免积分程序下载链接)
- html中文手文档,HTML5 中文参考手册(打印版)
热门文章
- 机房合作(一):我怎样做组长(敢于承担责任)
- 关于支付宝即时到帐异步通知(notify_url)一点总结
- 使用SharePoint 2010新增的文档集内容类型来管理文档
- 经济危机拒绝穷潇洒 试水充电战危机
- matlab 大括号
- java 权限url权限_SpringBootSecurity学习(11)网页版登录之URL动态权限
- CSDN转载博客的方法
- i7怎么老是显示无服务器,i7处理器真有这么差?网友:懂电脑的人都不买!
- 16福师计算机应用基础在线作业,16春季福师《计算机应用基础》在线作业二.doc...
- php pdo mysql query_PHP+MYSQL中使用PDO的query方法