目录
1.SpringBoot简介
2.构建一个SpringBoot工程
3.SpringBoot整合Web模块对外提供接口(整合SpringMVC)
4.yml配置文件
5.SpringBoot整合Mybatis
6.SpringBoot实现事务管理
7.SpringBoot整合Mybatis-Plus
8.SpringBoot整合Thymeleaf(作用类似于jsp)
什么是前后端分离?
9.SpringBoot的自动装配
1.SpringBoot简介
约定>配置>编码(零架构配置)
SpringBoot并不是什么新的框架,简单来说SpringBoot是Spring官方提供的一个进行Spring应用快速搭建的工具(脚手架),能够快速的整合很多第三方的框架或者组件。
SpringBoot的核心=SpringIOC容器+自动装配
2.构建一个SpringBoot工程
2.1 创建一个Maven工程
2.2添加SpringBoot的父工程
org.springframework.boot spring-boot-parent2.3.0.RELEASE
2.3 添加SpringBoot的核心依赖
org.springframework.boot spring-boot-starter
2.4 添加SpringBoot整合Maven的插件
org.springframework.boot spring-boot-maven-plugin2.3.0.RELEASE
2.5 编写启动类(main方法)
package com.qf.application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
2.6 提供SpringBoot的核心配置文件(application.yml)
3.SpringBoot整合Web模块对外提供接口(整合SpringMVC)
3.1 添加web模块的依赖(如添加,则前面的spring核心依赖可以省略)
org.springframework.boot spring-boot-starter-web
3.2 提供对外接口(controller)
package com.qf.application.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class DemoController {
@RequestMapping("/demo")
public String demo(String name){
System.out.println("接收到客户端参数:" + name);
return "Hello World!";
}
}
注意:SpringBoot默认只会扫描主包(启动类所在包)下的所有组件(@Component),当前一些组件,必须放在主包下才能生效。
通过以下方式可以改变主包路径:
在启动类上注解
@SpringBootApplication
@ComponentScan("com.qf")
4.yml配置文件
yml | yaml只是一种新型的配置文件的格式,仅此而已。让配置文件看起来更加具有层次感。
注意:1.yml文件的格式必须注意缩进的正确性
2.冒号后面必须根一个空格
yml文件数据的读取
1.单值与多值读取
5.SpringBoot整合Mybatis
原来mybatis整合Spring:
1.添加相关依赖
2.编写映射接口/映射文件
3.配置jdbc数据源
4.配置bean :SqlsessionFactoryBean 注入Datasource 映射文件扫描,其他的相关配置
5.配置映射接口扫描
原来mybatis整合Spring:
1.添加相关依赖
2.编写映射接口/映射文件
3.配置jdbc数据源
4.配置bean :SqlsessionFactoryBean 注入Datasource 映射文件扫描,其他的相关配置
5.配置映射接口扫描
5.1添加相关依赖
org.mybatis.spring.boot mybatis-spring-boot-starter2.1.4 mysql mysql-connector-java
5.2编写映射文件、映射接口
5.3配置jdbc的相关属性(application.yml)
spring:
datasource:
url: jdbc:mysql:///db2106?serverTimezone=GMT%2B8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
5.4 配置映射接口扫描(启动类)
@MapperScan("com.qf.dao")
5.5 配置映射接口扫描(application.yml)
mybatis:
mapper-locations: classpath:mapper/*.xml
6.SpringBoot实现事务管理
6.1启动类添加注解
@EnableTransactionManagement
6.2 业务方法上添加注解
@Transactional
7.SpringBoot整合Mybatis-Plus
官网:简介 | MyBatis-Plus
7.1 添加相关依赖(有可能会跟mybatis版本起冲突,则前面的mybatis可以省略)
com.baomidou mybatis-plus-boot-starter3.4.0
7.2 映射接口继承固定接口
package com.qf.dao; import com.baomidou.mybatisplus.core.mapper.baseMapper; import com.qf.entity.Student; public interface StuDao extends baseMapper{ }
7.3 实体类 添加主键的注解(如果想用Integer,也可以int)
@Data
@Accessors(chain = true)
public class Student implements Serializable {
@TableId(type = IdType.AUTO)
private Integer id;
private String name;
private Integer age;
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday;
private Date createTime = new Date();
private Date updateTime = new Date();
private Integer status = 0;
private Integer delFlag = 0;
}
7.4 修改service层的实现接口
public interface IStuService extends IService{ } @Service public class StuServiceImpl extends ServiceImpl implements IStuService { }
注意:serviceImpl<泛型1,泛型2>
泛型1:映射接口类型
泛型2:操作实体类的类型
7.5扫描映射文件(application.yml)
如果需要指定可以自定义,默认是下面
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
8.SpringBoot整合Thymeleaf(作用类似于jsp)
注意:@ResponseBody:把你的返回值放入响应体中,不经过视图解析器
注意:@ResponseBody:把你的返回值放入响应体中,不经过视图解析器
8.1 添加依赖
org.springframework.boot spring-boot-starter-thymeleaf
8.2配置application.yml
spring:
#配置页面缓存 - 开发关闭
thymeleaf:
cache: false
8.3 提供视图文件,并且写入thymelea的命名空间
xmlns:th="http://www.thymeleaf.org"
8.4 简单的使用
Title
学生列表页
| id | 姓名 | 年龄 | 生日 |
|---|---|---|---|
| id | 姓名 | 年龄 | 生日 |
什么是前后端分离?
9.SpringBoot的自动装配
什么是自动装配? 需要让别人的SpringBoot工程能够自动加载我们自己开发组件的指定的配置类
9.1 创建一个第三方开源项目
9.2 添加依赖
org.springframework.boot spring-boot-starter2.3.0.RELEASE
9.3 实现组件核心功能和自动配置类
9.4 编写自动装配文件
resources/meta-INF/spring.factories 内容: org.springframework.boot.autoconfigure.EnableAutoConfiguration= org.example.config.MyAutoConfiguration
9.5 打包发布,其他SpringBoot工程依赖即可



