文档章节

springframework【4】

ruyees
 ruyees
发布于 2014/10/05 11:47
字数 563
阅读 14
收藏 0

这里说的国际化不是简单的web层面的,也有纯后台层面的。因为spring不只是处理web的,也可以处理纯java的后台程序。这里也就是说aop、ioc、DI的使用是在整个java层面的而不是只局限于web项目中。

 

1、资源取得

资源的取得主要应用于国际化处理。在写程序的时候可以以不同的方式获取资源

例如:

       //直接从classpath中将文件信息取出,具体化称为一个资源文件对象

       Resource resource = ctx.getResource("classpath:admin.properties");

       //从指定的硬盘路径中取得文件,具体实例化称为一个资源文件。

       Resource resource1 = ctx.getResource("file:c:/admin.properties");

 上边的“classpath:”是spring自制的URL虚拟协定,这会取得一个org.springframework.core.io.ClasspathResource 实例,代表一个具体的资源文件。上边程序中,该资源文件是位于Classpath的根目录中,文件名称为admin.properties,你也可以指定标准的URL,像“file:”或“http:”

 

2、获取国际化资源的信息的方法:

 A、在classpath中定义国际化文件 messages_zh_CN.properties,messages_en_US.properties

  例如:

hello=用户{0}于{1}登陆系统

hello=user {0} login in system when {1}

 B、在配置文件list.xml中声明实现一个ResourceBundleMessageSource来取得国际化消息

 例如:

 

  <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">

  <property name="basename" value="messages"></property>

  </bean>

 

 此处bean的id必须是messageSource

 C、编写测试程序

 

import java.util.Locale;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.Resource;
//资源的取得和国际化
public class TestRes {
	public static void main(String[] args){
		ApplicationContext ctx = new ClassPathXmlApplicationContext("list.xml");
		Object[] arguments = new Object[]{"管理员",java.util.Calendar.getInstance().getTime()};
		System.out.println(ctx.getMessage("hello",arguments ,Locale.US));
		System.out.println(ctx.getMessage("hello",arguments ,Locale.CHINA));
	}
}

 执行结果:

user 管理员 login in system when 3/15/09 10:10 AM
用户管理员于09-3-15 上午10:10登陆系统

 

总结下:

 1、获取资源的方式有多样的

 2、我们可以直接通过在spring的配置文件中声明国际化文件的名字,这里声明为messages,但是也要同时建立相对应的国际化文件messages_en_US.properties、messages_zh_US.properties

 3、只要传送指定参数,指明要处理的语言,spring自动为我们将国际化文件中的内容取得,并且你还可以给国际化文件中的“占位符”传送参数

 

 

 

本文转载自:http://zuoqiang.iteye.com/blog/671133

共有 人打赏支持
ruyees
粉丝 3
博文 71
码字总数 0
作品 0
深圳
产品经理
springmvc+spring+hibernate 框架

2015-4-4 12:55:41 org.apache.catalina.core.StandardContext listenerStart 严重: Exception sending context initialized event to listener instance of class org.springframework.web......

小坏蛋
2015/04/04
712
3
【求】SSH整合部署出现的错误

错误代码以下 十月 20, 2016 4:08:39 下午 org.apache.catalina.core.AprLifecycleListener init 信息: The APR based Apache Tomcat Native library which allows optimal performance in ......

asirt_
2016/10/20
168
2
求大神帮助!3Q!!!

八月 08, 2016 4:17:57 下午 org.apache.catalina.core.AprLifecycleListener init 信息: The APR based Apache Tomcat Native library which allows optimal performance in production env......

123师
2016/08/08
127
1
SSM+maven项目,tomcat启动报错,求解

log4j:WARN No appenders could be found for logger (com.alibaba.druid.pool.DruidDataSource).16:02:31.322 [localhost-startStop-1] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Retu......

雅尔格里斯
2017/06/13
267
3
关于Spring配置文件xml文档的schema约束

最开始使用spring框架的时候,对于其配置文件xml,只是网上得知其使用方法,而不明其意。最近想着寻根问底的探究一下。以下是本文主要内容: 1、配置文件示例。 [html] view plain copy pri...

gool_hard
2017/12/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Shell编程(expect同步文件、指定host和同步文件、构建文件分发系统、批量执行命令)

expect脚本同步文件 需求:自动同步文件 实验准备: A机器:192.168.248.130 B机器:192.168.248.129 实现: 1.A机器编写4.expect脚本文件,内容如下所示: #!/usr/bin/expectset passwd "...

蛋黄_Yolks
36分钟前
2
0
ppwjs之bootstrap颜色:背景颜色

<!DOCTYPT html><html><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title>ppwjs欢迎您</title><link rel="icon" href="/favicon.ico" ......

ppwjs
36分钟前
1
0
Ubuntu与 Fedora之对比

大家好。今天我将重点介绍两个流行的Linux发行版之间的一些特性和差异; Ubuntu 18.04和Fedora 28。它们都有自己的包管理; Ubuntu使用DEB,而Fedora使用RPM,但它们都具有相同的桌面环境(GNO...

linuxprobe16
40分钟前
2
0
线性代数入门

线性代数的概念对于理解机器学习背后的原理非常重要,尤其是在深度学习领域中。它可以帮助我们更好地理解算法内部到底是怎么运行的,借此,我们就能够更好的做出决策。所以,如果你真的希望了...

牛奋Debug
昨天
3
0
开发5分钟,调试2小时 - 该如何debug?

几年来我在答疑群、论坛、公众号、知乎回答的各种问题,没有一万也有八千。其中有三分之二以上都是在帮人看报错,帮人 debug(调试代码)。 可以说,会不会 debug,有没有 debug 的意识,懂不...

crossin
昨天
4
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部