目录
一、整合单元测试框架:Junit
1. 代码位置
2. 引入依赖
3. 注解
3.1. @SpringBootTest
测试类放到其他位置后不能使用该怎么办?
3.2. @ContextConfiguration
二、整合持久化框架:MyBatis
1. 代码位置
2. 数据源
3. 引入依赖
4. 配置文件
三、整合持久化框架:MyBatis-Plus
1. 代码位置
2. 数据源
3. 引入依赖
4. 配置文件
四、整合数据库连接池技术:Druid
1. 代码位置
2. 数据源
3. 引入依赖
4. 配置文件
5. 总结
一、整合单元测试框架:Junit
1. 代码位置
2. 引入依赖
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>
3. 注解
3.1. @SpringBootTest
@springbootTest 是一个注解,用于在Spring Boot测试类中进行标记。
它可以通过在测试类中添加注解来标识该类是一个Spring Boot的测试类。
以下是一个使用 @springbootTest 的示例代码:
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
public class MySpringBootTest {@Testpublic void exampleTest() {// 在这里编写测试代码}
}
在上面的示例中,@springbootTest 注解用于标记 MySpringBootTest 类,表明这是一个 Spring Boot 的测试
类。然后,我们可以在该类中编写测试方法,在 exampleTest 方法中编写测试代码。
测试类放到其他位置后不能使用该怎么办?
如果测试类在引导类所在包或者其子包下,不需要对其进行管理,如果将测试类放到其他包下会进行报错,那么
我们该如何解决呢?其实很简单,只需要在测试类的注解上加一行代码即可:
@SpringBootTest(classes = Springboot04JunitApplication.class)
把引导类的类名放进去运行即可。
如果不用上面的注解,也可以使用 @ContextConfiguration 指定了你的配置文件或配置类是哪一个,但一般都使
用上面的方法
- 名称:@SpringBootTest
- 类型:测试类注解
- 位置:测试类定义上方
- 作用:设置当JUnit加载的SpringBoot启动类
- 范例:
@SpringBootTest(classes = Springboot04JunitApplication.class)
class Springboot04JunitApplicationTests {
}
- 相关属性:
-
- classes:设置spring boot启动类
3.2. @ContextConfiguration
@ContextConfiguration是Spring Test中的一种注解,用于指定ApplicationContext的配置信息,从而使测试类中可以使用
ApplicationContext容器中的Bean实例。通过该注解,我们可以加载配置文件或者配置类,也可以指定多个配置文件或者配置类。
@SpringBootTest
@ContextConfiguration(classes = Springboot04JunitApplication.class)
public class MySpringBootTest {@Testpublic void exampleTest() {// 在这里编写测试代码}
}
二、整合持久化框架:MyBatis
1. 代码位置
2. 数据源
3. 引入依赖
<dependencies><!--1.导入对应的starter--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.0</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>
4. 配置文件
application.yml
#2.配置相关信息
spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTCusername: rootpassword: root
三、整合持久化框架:MyBatis-Plus
1. 代码位置
2. 数据源
3. 引入依赖
<dependencies><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.3</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>
4. 配置文件
application.yml
#2.配置相关信息
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTCusername: rootpassword: root#设置Mp相关的配置
mybatis-plus:global-config:db-config:table-prefix: tbl_
四、整合数据库连接池技术:Druid
1. 代码位置
2. 数据源
3. 引入依赖
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.6</version></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.0</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>
4. 配置文件
application.yml
#2.配置相关信息
#spring:
# datasource:
# driver-class-name: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
# username: root
# password: root
# type: com.alibaba.druid.pool.DruidDataSourcespring:datasource:druid:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTCusername: rootpassword: root
5. 总结
SpringBoot技术的定位用于简化开发,SpringBoot整合第三方技术的简化方式,导入对应的starter。
starter所属 | 命名规则 | 示例 |
官方提供 | spring-boot-starter-技术名称 | spring-boot-starter-web |
第三方提供 | 第三方技术名称-spring-boot-starter | druid-spring-boot-starter |
第三方提供 | 第三方技术名称-boot-starter(第三方技术名称过长,简化命名) | mybatis-plus-boot-starter |