SSM(springboot部分)
配置格式
同时存在,优先级从‘’上往下
application.properties
application.yml
application.yaml
读取配置文件
1、@Value注入
2、Environment对象,加载全部配置文件属性
使用:environment.getProperty(“属性名”)
3、用对象封装
使用:
- @Component注解
- @ConfigurationProperties(prefix=“前缀名”)
多环境开发配置
1、yml通过"—"区分不同环境
spring:profiles:active: dev---
spring:config:activate:on-profile: devserver:port: 80
---
spring:config:activate:on-profile: envserver:port: 81---
spring:config:activate:on-profile: testserver:port: 82
2、properties文件通过原始文件名-环境名区分不同环境
多环境启动
命令行格式(带参数启动)
java -jar springboot.jar --spring.profiles.active=test
可以通过命令行修改配置文件参数值
参数优先级:
命令行参数>配置文件
springboot官网提供了优先级顺序,可以查找
多环境开发兼容问题
springboot中多环境应与Maven中多环境相同
1、配置resource过滤
<build><resources><resource><directory>${project.basedir}/src/main/resources</directory><filtering>true</filtering></resource></resources>
</build>
2、激活maven多环境(profiles)
<profiles><profile><id>env_dep</id><properties><profile.active>dev</profile.active></properties><activation><activeByDefault>true</activeByDefault></activation></profile><profile><id>env_pro</id><properties><profile.active>pro</profile.active></properties></profile>
</profiles>
3、在配置文件中引用变量
spring:profiles:active: ${profile.active}---
spring:config:activate:on-profile: devserver:port: 80
---
spring:config:activate:on-profile: proserver:port: 81---
spring:config:activate:on-profile: testserver:port: 82
注意:在idea中运行时,并不会替换,而是在maven打包时替换
配置文件可以设置多级
springboot中4级配置文件
1级:file:config/application
2级:file:application.yml
3级:classpath:config/application.yml
4级:classpath:application.yml(最低级)
作用:
1级与2级留作系统打包后设置通用属性
3级和4级用于系统开发阶段设置通用属性
整合第三方技术
整合JUnit
名称:@SpringBootTest
类型:测试类注解
位置:测试类定义上方
作用:设置JUnit加载的SpringBoot启动类
范例:
@SpringBootTest(classes=SpringBootApplication.class)
class SpringbootJunitApplicationTests{}
相关属性:
classes:设置SpringBoot启动类
注意事项:
如果测试类在SpringBoot启动类的包或者子包中,可以省略启动类的设置,也就是省略classes的设定
整合Mybatis
1、创建新模块,选择Spring初始化,并配置模块相关基础信息
2、选择当前模块需要用到的技术集(Mybatis、Mysql)
3、设置数据源参数
spring:#数据库连接信息datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/db01username: rootpassword: 123456
4、定义数据层接口与映射配置(@Mapper)