Spring 配置解析之Properties

SpringBoot中的的配置简单属性类支持ConfigurationProperties方式,看一个简单的示例。

 1 @ConfigurationProperties(prefix = "org.dragonfei.demo")
 2 public class DemoProperties {
 3     private String name;
 4     private String password;
 5     private String test;
 6
 7     public String getName() {
 8         return name;
 9     }
10
11     public void setName(String name) {
12         this.name = name;
13     }
14
15     public String getPassword() {
16         return password;
17     }
18
19     public void setPassword(String password) {
20         this.password = password;
21     }
22
23     public String getTest() {
24         return test;
25     }
26
27     public void setTest(String test) {
28         this.test = test;
29     }
30
31     @Override
32     public String toString() {
33         return "DemoProperties{" +
34                 "name=‘" + name + ‘\‘‘ +
35                 ", password=‘" + password + ‘\‘‘ +
36                 ", test=‘" + test + ‘\‘‘ +
37                 ‘}‘;
38     }
39 }

定义Properties类

1 org.dragonfei.demo.name=dragonfei
2 org.dragonfei.demo.password=password
3 org.dragonfei.demo.test=test

添加配置

1 @Configuration
2 @EnableConfigurationProperties({DemoProperties.class})
3 public class DemoConfiguration {
4 }

注入Properties

 1 @RunWith(SpringJUnit4ClassRunner.class)
 2 @SpringApplicationConfiguration(classes = DemoConfiguration.class)
 3 @EnableAutoConfiguration
 4 public class DemoPropertiesTest {
 5
 6     @Autowired
 7     private DemoProperties properties;
 8     @Test
 9     public void testProperties(){
10         System.out.println(properties.toString());
11     }
12 }

简单单元测试

1 DemoProperties{name=‘dragonfei‘, password=‘password‘, test=‘test‘}

运行单元测试结果

DemoProperties神奇的注入到Spring容器中了。有没有跟我一样很兴奋,这样的 一大好处,将配置文件的属性以类的形式展现,在需要使用的时候只需要,autowire需要的类就可以了,避免大片重复的的${a.b.c}

时间: 2024-11-04 23:55:50

Spring 配置解析之Properties的相关文章

spring配置中,properties文件以及xml文件配置问题

spring方便我们的项目快速搭建,功能强大,自然也会是体系复杂! 这里说下配置文件properties管理的问题. 一些不涉及到代码逻辑,仅仅只是配置数据,可以放在xxxx.properties文件里面,项目功能复杂的时候,往往properties文件很多,这时,就比较容易让人困惑,有些properties的文件内容总是加载不起来,应用启动时,就不断爆出错误,说某某参数加载失败,这个是什么原因呢? 其实,这个是spring配置的时候,org.springframework.beans.fact

spring 配置多个properties

复制多份,保证有效的配置文件,属性时true就行 <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath*:redis.properties</value> </list> &l

Spring多资源文件properties的配置

Spring简化了加载资源文件的配置,可以通过<context:property-placeholder去加载,这个元素的写法如下: <context:property-placeholder location="classpath:jdbc.properties"/> 如果想要配置多个properties文件 <context:property-placeholder location="classpath:jdbc.properties"

log4j.properties详细配置解析

最近在学习Maven,顺便学习了下Spring MVC和Log4j作为后续的知识储备,下面详细记录Log4j的properties文件配置. log4j.properties是Log4j的启动配置文件,用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境. 配置模板 Log4J配置文件的基本格式如下: #配置根Loggerlog4j.rootLogger  = [ Level ] ,  appenderName1

spring 配置

SpringMVC配置 引入占位符<context:property-placeholder location="classpath:config.properties" /><util:properties id="properties" location="classpath:config.properties"/> <!-- 自动扫描controller包下的所有类,使其认为spring mvc的控制器 --&

Spring Boot 项目 application.properties配置说明

#======================================================================================# ★☆★☆★☆★☆★☆ spring boot 配置中心 ★☆★☆★☆★☆★☆#====================================================================================== springBoot application.properties 基

MyBatis:配置解析

配置解析 核心配置文件 mybatis-config.xml 系统核心配置文件 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息. 能配置的内容如下: configuration(配置) properties(属性) settings(设置) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境配置) environment(环境变量) trans

spring配置hibernate的sessionFactory的几种方法

分类: JAVA Spring Hibernate 2013-01-27 20:47  1851人阅读  评论(0)  收藏  举报 spring配置hibernate的sessionFactory 之前用spring2+hibernate3+struts2开发了一个彩信发布系统,由于第一次使用此架构,造成applicationContext.xml中的配置非常冗长,而且经常因为更改一个小配置项(例:数据库ip.用户名.密码等)将此文件作修改,这及不利于项目维护,万一粗心造成其他地方变动,会对本

菜鸟学SSH(十三)——Spring容器解析及简单实现

最近一段时间,"容器"两个字一直萦绕在我的耳边,甚至是吃饭.睡觉的时候都在我脑子里蹦来蹦去的.随着这些天一次次的交流.讨论,对于容器的理解也逐渐加深.理论上的东西终归要落实到实践,今天就借助Spring容器实现原理,简单说说吧. 简单的说,Spring就是通过工厂+反射将我们的bean放到它的容器中的,当我们想用某个bean的时候,只需要调用getBean("beanID")方法. 原理简单介绍: Spring容器的原理,其实就是通过解析xml文件,或取到用户配置的