Spring学习总结

说是原创其实也算是摘抄,Spring的学习是从《Spring解密》那本书中的提取出来的一些自认为能用的到的内容,该书是以Spring2.5为基础讲解的,内容讲的很扎实,假如你对Java语言的编写能够灵活运用,那么理解此书应该不成问题,要不然会有种看不下去的感觉,接下来我会陆续更新该篇文章的内容,把一些书中的讲解的重要内容,和自己的应用感受都写一下。目的一个学会应用Spring。

 No1.关于国际化资源的问题。

      首先关于资源文件的就是一个普通的.properties文件,该文件的路径需要自己来定,例如我把资源文件放进了包名为com.app.resources下面。而且资源文件名称是以messages开头的。那么我们在给MessageResource实现类(一般应用的就是ResourceBundleMessageResource)给其属性值basename设定为com.app.resources.messages,这些配置均在配置文件之中

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:task="http://www.springframework.org/schema/task"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
			http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
			http://www.springframework.org/schema/context 
			http://www.springframework.org/schema/context/spring-context-3.0.xsd
			http://www.springframework.org/schema/aop 
			http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
			http://www.springframework.org/schema/tx 
			http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
			http://www.springframework.org/schema/mvc 
			http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
			http://www.springframework.org/schema/context 
			http://www.springframework.org/schema/context/spring-context-3.0.xsd
			http://www.springframework.org/schema/task
			http://www.springframework.org/schema/task/spring-task-3.0.xsd"
			>
    <!--文件资源加载-->
    <bean id="test1" class="com.app.bussiness.TestResource" p:source="file:src/content/test.txt"></bean>
<!--国家化资源加载-->
    <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource" p:basename="i18Resources.messages"></bean>
    </beans>
三种MessageResource实现类的应用,StaticMessageResource,ResoruceBundleMessageResoruce,ReloadableResourceBundleMessageSource

照书上的说法是 第一个类是对MessageSource的简单实现,可以通过编程的方式添加多个条目,多用于测试,不用于生产

                            第二个类是对AbstractMessageSource的行为进行了扩展。在实际应用之中应用的最多的就是该类,

                            第三个类该类用用cacheSeconds属性,该属性可以根据制定时间段加载并刷新指定的属性文件。

StaticMessageResource resource=new StaticMessageResource()

resoruce.addMessage("name",Locale.US,"nameValue");

resoruces.getMessage("name",null,Locale.US);

ResourceBundleMessageResource resoruce=new ResourceBundleMessageResource();

resource.setBasename(new String[]{"conf/messages"});//从Classpath路径下加载

ReloadableMessageBundleMessageResource reloadMsg=new ReloadableMessageBundleMessageResource();

reloadMsg.setBasename("conf/msg");//从文件系统之中加载

Spring最基础的家在资源是普通的文件加载,Resources就是实现该功能的接口

但是在实际应用的时候我们会采用ResourceLoader resource(PS:当然这个是最基础的,我们实际也会采用ResourceLoaderAware);实际的应用和上面的代码差不多。当然这里面有一些问题,就是你要查找的路径下的文件路径一定要存在,文件的存在与否决定你在调用getFile()或者getInputStream()是否成功。还有想新建文件可以通过上述类getFile方法成功之后在调用getpath(),该类本身也有getpath()和getUri()方法。这样可以用来在同一目录下创建新的文件。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值