码迷,mamicode.com
首页 > 编程语言 > 详细

SpringBoot#自定义配置的封装

时间:2019-07-30 15:45:23      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:使用   配置   roo   dem   def   ati   timezone   java   逗号   

_震惊,开局

 

不可避免的需要弄一些自定义的配置。

 


 

要点:


1. 把配置项都写出来,分析层次关系;
2. 抽象成bean与bean之间的关系,写出bean对应的类,这时候配置项对应了bean的属性,属性可以又默认值
3. 在顶层的bean加上相关注解,即@Configuration,@ConfigurationProperties(prefix = "my-project")
4. 项目中使用配置项目,只需要注入配置类即可。


 

 

 

demo:


//////////////////////////////////////////////////////////
//1.写出所有配置项//////////////////////////////////////
//////////////////////////////////////////////////////////
my-project.name=hello
my-project.url=http://localhost
my-project.db.username=root
my-project.db.password=root
my-project.db.url=jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8


//////////////////////////////////////////////////////////
//2.抽象成bean与bean的关系////////////////////////////
//////////////////////////////////////////////////////////
public class ProjectConfig {
    private String name = "project-default-name";
    private String url = "project-default-url";
    private DbConfig db;

    // getter & setter
}

public class DbConfig {
    private String username="db_default_user";
    private String password="db_default_pwd";
    private String url="jdbc:mysql://localhost:3306/default?serverTimezone=GMT%2B8";
    
    // getter & setter
}

//////////////////////////////////////////////////////////
//3.加上注解/////////////////////////////////////////////
//////////////////////////////////////////////////////////
@Configuration
@ConfigurationProperties(prefix = "my-project")
public class ProjectConfig {
    private String name = "project-default-name";
    private String url = "project-default-url";
    private DbConfig db;
    // getter & setter
}

  


 

 

最后,但是同样重要的:

有时候配置项的值是多个值,通过逗号分隔,如何处理?

 

SpringBoot#自定义配置的封装

标签:使用   配置   roo   dem   def   ati   timezone   java   逗号   

原文地址:https://www.cnblogs.com/luohaonan/p/11270196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!