spring这么强大,将资源文件中的配置文件xx.properties读入后台java代码Map中岂是难事?
1 搭建Spring环境
想必大家都会。。。
2 配置bean
在sping的配置文件中,需要声明bean,
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="properties"
class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="location" value="classpath:user.properties"/>
</bean>
</beans>
配置文件user.properties中的内容为:
user.id=1
user.name=cc
user.sex=m
3 使用
只需要在xml中简单声明,就能在代码中使用注解方式取得该配置文件的Map集合,是不是很方便?
package com.star.spring.service.impl;
import java.util.Map;
import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
* @author: wangchao.wang
* @date: 2015-08-06 15:38:00
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"/spring.xml"})
public class UserServiceImplTest {
@Resource
private Map<String, String> properties;
@Test
public void testSelectUser() throws Exception {
System.out.println(properties);
}
}
打印结果如下:
{user.name=cc, user.sex=m, user.id=1}