使用PropertyPlaceholderConfigurer读取.properties文件(1)
2016-01-15 11:07
429 查看
对于读取.properties文件,平时都是使用<util:properties/>,如下:
<util:properties id="mysqlConnection" location="classpath:db.properties" />
<bean id="dbcp" class="org.apache.commons.dbcp.BasicDataSource">
<property name="username" value="#{mysqlConnection.user}" ></property>
<property name="password" value="#{mysqlConnection.password}" ></property>
<property name="driverClassName" value="#{mysqlConnection.driver}" ></property>
<property name="url" value="#{mysqlConnection.url}" ></property>
</bean>
但这种方法有一定的局限性,下面我们就用PropertyPlaceholderConfigurer类来实现,做一个简单的例子:
java bean
package org.demo.model;
public class EmpModel {
private String name;
private int age;
private char gender;
...set/get/toString
}
src下创建一个 emp.properties
emp.name=wang
emp.age=12
emp.gender=f在applicationContext.xml文件中添加
<!-- 读取数据库配置信息.properties,使用spring提供的PropertyPlaceholderConfigurer -->
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:emp.properties</value>
</list>
</property>
</bean>
写测试类:
public class GetBeanTest {
private static final Logger logger = Logger.getLogger(GetBeanTest.class);
ApplicationContext ac;
@Before
public void init() {
ac = new ClassPathXmlApplicationContext("applicationContext.xml");
}
@Test
public void getEmpModelBean(){
EmpModel emp = ac.getBean("empModel",EmpModel.class);
logger.info(emp);
}
}
成功可以输出EmpModel对象的信息
<util:properties id="mysqlConnection" location="classpath:db.properties" />
<bean id="dbcp" class="org.apache.commons.dbcp.BasicDataSource">
<property name="username" value="#{mysqlConnection.user}" ></property>
<property name="password" value="#{mysqlConnection.password}" ></property>
<property name="driverClassName" value="#{mysqlConnection.driver}" ></property>
<property name="url" value="#{mysqlConnection.url}" ></property>
</bean>
但这种方法有一定的局限性,下面我们就用PropertyPlaceholderConfigurer类来实现,做一个简单的例子:
java bean
package org.demo.model;
public class EmpModel {
private String name;
private int age;
private char gender;
...set/get/toString
}
src下创建一个 emp.properties
emp.name=wang
emp.age=12
emp.gender=f在applicationContext.xml文件中添加
<!-- 读取数据库配置信息.properties,使用spring提供的PropertyPlaceholderConfigurer -->
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:emp.properties</value>
</list>
</property>
</bean>
<bean id="empModel" class="org.demo.model.EmpModel"> <span style="white-space:pre"> </span><property name="name"><value>${emp.name}</value></property> <span style="white-space:pre"> </span><property name="age"><value>${emp.age}</value></property> <span style="white-space:pre"> </span><property name="gender"><value>${emp.gender}</value></property> </bean>
写测试类:
public class GetBeanTest {
private static final Logger logger = Logger.getLogger(GetBeanTest.class);
ApplicationContext ac;
@Before
public void init() {
ac = new ClassPathXmlApplicationContext("applicationContext.xml");
}
@Test
public void getEmpModelBean(){
EmpModel emp = ac.getBean("empModel",EmpModel.class);
logger.info(emp);
}
}
成功可以输出EmpModel对象的信息
相关文章推荐
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- 模拟Spring的简单实现
- spring+html5实现安全传输随机数字密码键盘
- Spring中属性注入详解
- SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
- struts2 spring整合fieldError问题
- spring的jdbctemplate的crud的基类dao
- 读取spring配置文件的方法(spring读取资源文件)
- Spring Bean基本管理实例详解
- java实现简单美女拼图游戏
- 详解Java的Spring框架中的事务管理方式
- 解析Java的Spring框架的BeanPostProcessor发布处理器
- Java开发框架spring实现自定义缓存标签
- java基本教程之线程休眠 java多线程教程
- JSP开发中在spring mvc项目中实现登录账号单浏览器登录
- spring boot实战之内嵌容器tomcat配置
- 浅析Java的Spring框架中IOC容器容器的应用
- 基于Spring框架的Shiro配置方法