1. 回顾
1. springboot框架。简化spring项目的初始化搭建和配置的。
2. springboot的配置文件种类: (1)properties (2)yml ===application
3. java读取springboot配置文件中的内容。
4. springboot注册web组件。
5. springboot包扫描的原理---自定义包扫描的路径
2. 正文
1.springboot自动装配原理
2.springboot整合数据源--连接数据库
3.springboot整合mybatis框架。
4.springboot整合pageHelper分页插件
5.springboot整合定时器。
6.springboot整合swagger接口文档
7.springboot整合mp[mybatis-plus]
3.springboot自动装配原理
我们在使用springboot时,并没有像之前项目加载我们的前端控制DispatcherServlet,也没有写编码过滤器。但是springboot可以完成请求以及编码的设置。
原理: 主启动类上的@SpringBootApplication注解上,而该注解是一个复合组件,而在复合注解中存在@EnableAutoConfiguration, 这个@EnableAutoConfiguration注解也是一个复合注解,包含@Import---而@Import注解导入一个AutoConfigurationImportSelector 【自动配置选择器】,在该类中存在一个方法getAutoConfigurationEntry --作用:得到自动配置类的实体。而这些自动配置类会完成相应的自动装配。
4. springboot整合数据源--连接数据库
连接我们的数据库----druid数据源----默认的数据源
4.1 设置默认数据源
(1)引入相关依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
springboot自动配置会加载jdbc的自动配置类---读取springboot配置文件中数据源的信息,从而完成数据源的自动配置。
(2)application配置文件中配置数据源.
#配置数据源
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.url=jdbc:mysql://localhost:3306/aaa?serverTimezone=Asia/Shanghai
(3)测试
@SpringBootTest
class Qy168Springboot03ApplicationTests {
@Autowired
private DataSource dataSource;//springboot帮你完成数据源的自动装配
@Test
void contextLoads() throws SQLException {
System.out.println(dataSource.getConnection());
}
}
4.2 设置Druid数据源
<!--druid数据源的依赖-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.1</version>
</dependency>
修改配置文件
spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.username=root
spring.datasource.druid.password=root
spring.datasource.druid.url=jdbc:mysql://localhost:3306/aaa?serverTimezone=Asia/Shanghai
#初始化的连接对象的个数
spring.datasource.druid.initial-size=5
#最多的连接数
spring.datasource.druid.max-active=10
测试:
5. springboot整合mybatis框架
ssm===>spring框架需要配置SqlSesssionFactoryBean对象,还有配置DAO接口的代理实现类。
springboot会自动配置SqlSesssionFactoryBean对象,必须引入starter依赖
(1) 依赖
<!--mybatis和springboot整合的依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
(2)创建实体类
@Data
public class User {
private Integer id;
private String username;
private String password;
private String name;
private Double balance;
}
(3)dao接口
public interface UserDao {
public List<User> findAll();
}
(4)mapper映射文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"