IDEA开发spring boot应用时 application.yml 或 application.propertie

时间:2020-12-26 18:15:36

在使用spring boot开发过程中,经常会定义一些应用自己的属性,直接写到application配置文件中使用@Value注解进行使用,这样使用也没有什么问题。不过我认为更优雅的方式是定义自己的属性类统一管理,这样在idea中,既能自动提示,又能对配置进行分类管理,显得有条不紊,下面是具体的配置步骤。

 

第一步:添加依赖(分为maven和gradle两种方式)

1.1 如果你使用的是maven

增加依赖

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-configuration-processor</artifactId>
</dependency>

 

1.2 如果你使用的是gradle

增加依赖并且配置annotationProcessor

compileOnly ‘org.springframework.boot:spring-boot-configuration-processor‘ annotationProcessor ‘org.springframework.boot:spring-boot-configuration-processor’

 

第二步:创建配置属性类

@Data @ConfigurationProperties(prefix = “myapp.prefix")
public class MyAppProperties { private String prop1; private int prop2; }

 

第三步:在配置类中增加注解

@Configuration @EnableConfigurationProperties(MyAppProperties.class) public class MyConfig { }

 

第四步:使用属性类

@Component public class MyComponent { private final MyAppProperties properties; public MyComponent(MyAppProperties properties) { this.properties = properties; } // 现在可以使用了
 }

对了,别忘记配置你的application.yml

myapp:
  prefix:
    prop1: 1111
    prop2: 2222

或 application.properties

myapp.prefix.prop1=1111
myapp.prefix.prop2=2222

另外需要注意:如果想要idea中自动提示生效,需要重新运行你的应用,有时候没那么快生效。