ConfigurationProperties注解详解

编程入门 行业动态 更新时间:2024-10-09 15:19:47

ConfigurationProperties<a href=https://www.elefans.com/category/jswz/34/1768912.html style=注解详解"/>

ConfigurationProperties注解详解

@ConfigurationProperties和@Value注解用于获取配置文件中的属性定义并绑定到Java Bean或属性中

一个简单的例子
@ConfigurationProperties需要和@Configuration配合使用,我们通常在一个POJO里面进行配置:

@Data
@Configuration
@ConfigurationProperties(prefix = "mail")
public class ConfigProperties {private String hostName;private int port;private String from;
}

@Data
@Configuration
@ConfigurationProperties(prefix = “mail”)
public class ConfigProperties {

private String hostName;
private int port;
private String from;

}

#Simple properties
mail.hostname=host@mail
mail.port=9000
mail.from=mailer@mail

Spring的属性名字匹配支持很多格式,如下所示所有的格式都可以和hostName进行匹配:

mail.hostName
mail.hostname
mail.host_name
mail.host-name
mail.HOST_NAME

如果你不想使用@Configuration,,可以有以下选择

//指定单个类,其中绑定bean注入到spring容器
//启用ConfigurationProperties.属性是类的名字
//@EnableAutoConfiguration({NestAppBean.class})//直接扫描多个包 ,其中绑定bean注入到spring容器
//也是启用ConfigurationProperties.属性是类的 名字

==========================================================
如果你不想使用@Configuration, 那么需要在@EnableConfigurationProperties注解中手动导入配置文件如下:

@SpringBootApplication
@EnableConfigurationProperties(ConfigProperties.class)
public class ConfigPropApp {public static void main(String[] args) {SpringApplication.run(ConfigPropApp.class,args);}
}

我们也可以在@ConfigurationPropertiesScan中指定Config文件的路径:

@SpringBootApplication
@ConfigurationPropertiesScan("com.flydean.config")
public class ConfigPropApp {public static void main(String[] args) {SpringApplication.run(ConfigPropApp.class,args);}
}

这样的话程序只会在com.flydean.config包中查找config文件。

更多推荐

ConfigurationProperties注解详解

本文发布于:2023-12-06 04:55:22,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1666505.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:注解   详解   ConfigurationProperties

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!