springboot(2)——应用配置和热部署

《二》、应用配置和热部署

一、application应用配置

Idea新建的项目默认配置文件为application.properties

  • 1、我们修改它的后缀为application.yml,
    因为xx.yml格式文件级联写法比较省事等
# application.yml启用application-dev.yml开发配置
spring:
  profiles:
    active: dev

server:
  port: 8899
  • 2、新建application-dev.ymlapplication-prod.yml分别为开发和生产环境下的配置

二、资源文件属性配置

1、通过注解将配置文件的值注入到java代码中

  • 1、在application.yml中
name: eric
age: 18

# 配置中使用当前配置
content: "name: ${name}, age: ${age}"
  • 2、java代码中注解绑定
// org.springframework.beans.factory.annotation.Value
@Value("${age}")
private Integer age;

@Value("${name}")
private String name;

@Value("${content}")
private String content;

2、封装成一个属性对象

  • 1、在application.yml中配置一组对象属性
person:
  name: eric
  age: 18
  • 2、PersonProperties.java类绑定配置对象属性
@Data // lombok省略get和set
@Component // 使用时对应@Autowired注解
@ConfigurationProperties(prefix = "person")
public class PersonProperties {

    private String name;

    private Integer age;
}
  • 3、使用对象配置的值
@Autowired
private PersonProperties personProperties;
// 使用, personProperties.getName() + personProperties.getAge();

三、开发环境下热部署








<dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-devtoolsartifactId>
    
    <optional>trueoptional>
dependency>

yml配置环境下如下:

  • 1、关闭freemarker模板缓存

    spring.freemarker.cache = false

  • 2、热部署生效

    spring.devtools.restart.enabled = true

  • 3、additional-paths指定目录下更改文件会启动热部署restart
spring:
    freemarker:
        cache: false
    devtools:
        restart:
            enabled: true
            additional-paths: /src/main/java
  • 4、建议更改资源文件后手动重启

参考链接

springboot学习笔记:7.IDEA下5步完成热部署配置

你可能感兴趣的:(springboot学习笔记)