[spring] @PropertySource

Posted maplesnow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[spring] @PropertySource相关的知识,希望对你有一定的参考价值。

配置文件

@PropertySources注解用于加载配置文件到Spring的环境中。

配置文件如下。

demo.msg=this is a message.

如何引用到配置文件

在app项目中,我们通过@PropertySource注解到JavaConfig类上,设置.properties配置文件的路径。

在gradle项目中,配置文件放在src/main/resources/路径下,还可以放在这个目录下的文件夹。如:src/main/resources/demo/app.properties的设置@PropertySource("demo/app.properties")

在web项目中,spring web已经将配置文件设置好了,不需要@PropertySource配置。

如何使用配置的值

spring里的许多配置可以在.properties文件中直接配置到。

我们在xml配置,注解等地方需要使用到配置文件的值时,可以使用spring EL语言设置,格式如$x.y.z

@PropertySource + @Value

通过在类上设置@PropertySource设置配置文件。

通过在成员变量上设置@Value指定所设置在配置文件中的值。

package com.yww;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;

@Component
@PropertySource(value = "application.properties")
public class Message 

    @Value("$demo.msg")
    private String msg;

@PropertySource + @ConfigurationProperties

通过在类上设置@PropertySource设置配置文件。

在类上设置@ConfigurationProperties自动将配置文件中名称满足的配置值设置。

package com.yww;

import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
import org.springframework.boot.context.properties.ConfigurationProperties;

@Component
@PropertySource(value = "application.properties")
@ConfigurationProperties(prefix = "demo")
public class Message 

    private String msg;

@ConfigurationPropertiesspring boot中的类,需要导入相应的库。

参考

https://www.cnblogs.com/517cn/p/10946213.html

以上是关于[spring] @PropertySource的主要内容,如果未能解决你的问题,请参考以下文章

Spring全家桶笔记:Spring+Spring Boot+Spring Cloud+Spring MVC

学习笔记——Spring简介;Spring搭建步骤;Spring的特性;Spring中getBean三种方式;Spring中的标签

Spring--Spring入门

Spring框架--Spring事务管理和Spring事务传播行为

Spring框架--Spring事务管理和Spring事务传播行为

Spring框架--Spring JDBC