springboot2 使用配置映射@ConfigurationProperties

前言:

        大体思路是,建立一个对象,把配置文件的值都放到对象的属性里。

这样,有两步。先是制定映射规则,再新建对象填入属性。

(0)配置文件

(1)制定映射规则

新建一个类,加上@ConfigurationProperties() 注解。这样,就使用了boot的映射规则:按名称相等来映射。

图里加上了@Data来自动生成get、set方法,boot规定set方法必须有。

1.名称不用完全相等,驼峰式和下划线可以互相识别。

2.@ConfigurationProperties注解有几个值可以填:

@ConfigurationProperties(
        ignoreInvalidFields = false,   // 是否无视掉,解析出错的配置文件字段。不无视会怎么样?报错
        ignoreUnknownFields = true,    // 是否无视掉,class文件里少写的字段
        prefix = "my.conf"             // 变量前缀 或者说 命名空间
) 

prefix 是默认选项,图中虽然没写,但用的就是prefix

(2)生成类的实例对象,并填入属性值

spring里生成对象可以只加上@Component、@Configuration或@Service注解。

另外,由他生成对象的同时,也会自动填值。(因为打了@ConfigurationProperties这个注解)

这样就可以了,从spring拿到的,就是填好值的实例。

springboot2代码、maven项目

蓝奏云:https://wws.lanzous.com/ib3hnjvnjre

附:

从配置文件 引入另一个配置文件,可以这么写

也可以用@Value注解,来获取配置的值

https://www.cnblogs.com/javastack/archive/2020/10/23/13862164.html

代码 springboot2、maven项目

蓝奏云:https://wws.lanzous.com/i2Uzdjycj5e

另:

写了@ConfigurationProperties后,有时会有图上的通知

首先,不管他也没关系。这说明,这是一个可选配置。

具体的解决办法是,在pom文件中添加processor依赖

https://blog.csdn.net/qq_44173974/article/details/107729850?utm_medium=distribute.pc_relevant_t0.none-task-blog-OPENSEARCH-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-OPENSEARCH-1.control

那这个可选配置的作用是什么呢?

-- (1)希望在配置文件里,可以有“智能提示”,像图上这样

-- (2)不知道变量名有没有被改过,想知道写得对不对(这个ip2也被高亮了)

-- 如果是正确的,还可以看到些信息

猜你喜欢

转载自blog.csdn.net/u013595395/article/details/111999980
今日推荐