SpringBoot配置流程(02)

Spring Boot框架是一个将整合框架的整合代码都写好了的框架。我们只需要通过SpringBoot提供的属性就可以整合各种框架。所以,如果要很好地找到这些属性,就需要了解SpringBoot的配置流程。


配置原理说明:

在spring-boot-autoconfigure-1.5.6.RELEASE.jar中编写了所有第三方框架的整合代码。所有支持的框架根据功能类型来划分包,每个包都有一个XxxAutoConfiguration配置类,都是一个基于纯注解的配置类,它是各种框架整合的代码。如图所示:

如果这些框架有默认的配置参数,都放在一个命名为XxxProperties的属性类,如图所示:

如果要在项目中修改这些框架的默认配置,可以在src/main/resources目录下新建一个名为application.properties的文件。然后加入要修改的属性。例如:

配置流程总结:

第一步:先到spring-boot-autoconfigure-1.5.6.RELEASE.jar找到对应的模块;

第二步:如果该框架有可以配置的参数,那么对应的整合模块中一定有一个XxxProperties类,在里面可以找可以设置的参数;

第三步:在resources源目录下的application.properties文件里面可以修改XxxProperties类中默认的参数;


配置文件:

默认情况下,Spring Boot会加载resources目录下的application.properties或application.yml来获得配置的参数。

方式一:application.properties

# 配置数据源

spring.datasource.driverClassName=com.mysql.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/springboot_db

spring.datasource.username=root

spring.datasource.password=root

spring.datasource.type=com.mchange.v2.c3p0.ComboPooledDataSource

也可以把不同框架的参数配置在不同的application配置文件中,这样可以提高程序的可读性和可维护性。具体步骤如下:

1)在application.properties文件所在目录下增加多个application-xxx.properties配置文件,其中xxx是一个任意的字符串。

application-database.properties

application-jpa.properties

application-freemarker.properties

2)在application.properties文件中加载其他配置文件。

spring.profiles.active=database,jpa,freemarker

方式二:application.yml

YML文件格式是YAML(YAML Aint Markup Language)层级树键值对格式文件。其结构如下所示:

# 配置数据源

spring:

    datasource:

      url: jdbc:mysql://localhost:3306/test

      driverClassName: com.mysql.jdbc.Driver

      username: root

      password: root

      type: com.mchange.v2.c3p0.ComboPooledDataSource

其实application.yml配置文件就是将原来application.properties使用(.)分割的方式,改为树状结构,使用(:)分割。

注意:最后key的字段与值之间的冒号(:)后面一定要有一个空格。

猜你喜欢

转载自blog.csdn.net/zhongliwen1981/article/details/82258712