16在bean中获取Resource
Posted 大扑棱蛾子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了16在bean中获取Resource相关的知识,希望对你有一定的参考价值。
本章我们讲如何在Bean中获取Resource,就是在Spring中如何向我们的Bean注入Resource。下面我们来实现这个功能。
编写Bean
这里我们实现一个工具类,用于读取Properties文件并提供一个方法用于根据key获取对应的值。
package com.codestd.springstudy.resource;
import java.util.Properties;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.core.io.Resource;
public class PropertiesUtils implements InitializingBean
private Properties properties;
private Resource resource;
public void setResource(Resource resource)
this.resource = resource;
@Override
public void afterPropertiesSet() throws Exception
properties = new Properties();
properties.load(this.resource.getInputStream());
public String get(String key)
return (String) this.properties.get(key);
Properties文件
spel/setup.properties
system.name=spel
配置Bean
<bean id="propertiesUtils" class="com.codestd.springstudy.resource.PropertiesUtils">
<property name="resource" value="classpath:spel/setup.properties"/>
</bean>
测试
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations="classpath:resource/applicationContext.xml")
public class PropertiesUtilsTest
@Autowired
private PropertiesUtils propertiesUtils;
@Test
public void testGet()
String value = this.propertiesUtils.get("system.name");
assertEquals("spel", value);
以上是关于16在bean中获取Resource的主要内容,如果未能解决你的问题,请参考以下文章
8 -- 深入使用Spring -- 3...3 使用Resouce作为属性