SpringBoot自定义文件配置

为了让 SpringBoot 更好的生成配置元数据文件,我们需要添加如下依赖,该依赖只会在编译时调用,所以不用担心会对生产造成影响

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

 

1. 定义一个名为 myApp.properties 的资源文件,自定义配置文件的命名不强制 application 开头

com.ma.name=hello
com.ma.title=shen fu shi

 

2. 定义ConfigBean2文件,用来映射我们在 myApp.properties 中的内容

@Component
@PropertySource("classpath:myApp.properties")
@ConfigurationProperties(prefix="com.ma")
public class ConfigBean2 {
    private String name;
    private String title;

    public String getName() {
        return name;
    }

    public String getTitle() {
        return title;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setTitle(String title) {
        this.title = title;
    }
}

 

3. 在 UserController用来注入 ConfigBean2测试我们编写的代码

@RestController
@RequestMapping("properties")
public class UserController {

    private static final Logger log = LoggerFactory.getLogger(UserController.class);
    private final ConfigBean config;
    private final ConfigBean2 config2;
    @Autowired
    public UserController(ConfigBean config,ConfigBean2 config2){
        this.config=config;
        this.config2=config2;
    }

    @GetMapping("/1")
    public String hello(){
        log.info("=============》隆庆来了");
        return config.getName()+config.getTitle();
    }

    @GetMapping("/2")
    public String hello2(){
        log.info("=============》宁缺来了");
        return config2.getName()+config2.getTitle();
    }
}

 

4. 打开浏览器,输入如下地址: http://localhost:8080/properties/2,观察控制台和界面,监听到如下内容则表示程序正确

总结

  • 掌握@ConfigurationProperties@PropertySource 注解的用法及作用
  • 掌握编写自定义配置

 

posted @ 2018-11-28 16:58  华格瑞沙  阅读(210)  评论(0编辑  收藏  举报