欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

详解利用Spring加载Properties配置文件

时间:2021-01-08 12:22:06|栏目:JAVA代码|点击:

记得之前写Web项目的时候配置文件的读取都是用Properties这个类完成的,当时为了项目的代码的统一也就没做什么改动。但事后一直在琢磨SpringMVC会不会都配置的注解功能了?经过最近的研究返现SpringMVC确实带有这一项功能,Spring确实很强大。

因为代码很简单,我就贴上我测试的代码,按照步骤做就可以实现了。

新建配置文件jdbc.properties

username=root
password=root

新建并配置文件spring-properties

<?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.xsd">

 <bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
   <property name="locations">
     <list>
       <value>classpath:jdbc.properties</value>
     </list>
   </property>
   <property name="fileEncoding" value="UTF-8"/>
 </bean>
 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
   <property name="properties" ref="configProperties"/>
 </bean>
</beans>

新建单元测试

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:spring/spring-properties.xml")
public class TestTrans {
 @Value("#{configProperties['username']}")
 private String username;
 @Value("#{configProperties['password']}")
 private String password;
 @Test
 public void testProperties(){
   System.out.println("---");
   System.out.println(username);
   System.out.println(password);
 }
}

使用上面这种方式注解Properties的话Intelij IDEA会有提示的,按住Ctrl然后将鼠标点击属性'username'会调入到对应的配置文件中,这样也可以验证我们的配置是否生效。

现在虽然知道如何使用注解加载配置文件了,但是PropertiesFactoryBean和PreferencesPlaceholderConfigurer的区别和作用还没有弄清楚,另外Spring的单元测试框架也没有怎么研究,如果知道的读者可以再下方留言告述我,如果没人回答的话只能以后有时间慢慢研究了。

上一篇:spring boot加载第三方jar包的配置文件的方法

栏    目:JAVA代码

下一篇:SpringBoot 实现定时任务的方法详解

本文标题:详解利用Spring加载Properties配置文件

本文地址:http://www.codeinn.net/misctech/42434.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有