Spring Boot 是一个非常流行且强大的 Java 后端开发框架,它的核心目标是简化基于 Spring 框架应用的初始搭建 和开发过程,可以把它理解为 Spring 框架的一个"增强套件"或"快速启动包"。
核心组成部分:启动器、自动配置、外部化配置、Spring Boot Actuator、简化的编程模型。
启动器 :一组预定义 的依赖描述符。只需要引入一个启动器,就可以帮助我们引入开发某个功能所需要的所有相关依赖。
自动配置:Spring Boot在启动的时候会扫描项目的Classpath,根据已有的jar包依赖,自动推断并配置应用程序所需要的组件。
外部化配置 :通过application.properties或者application.yml文件轻松管理配置。(目前主要用yml,properties的写法比较繁琐,yml采用缩进的写法更方便阅读)
Spring Boot Actuator:提供了一系列HTTP端点或JMX来监控和管理运行中的应用。(常用的端点,健康状态:/actuator/health,应用信息:/actuator/info,运行指标:/actuator/metrics)。
简化的编程模型 :主类加上**@SpringBootApplication**注解就能启动整个应用。
1.整合mybatis:
分为依赖和配置文件:
java
具体的两个依赖:
//在pom文件中添加依赖,写入后maven刷新
<!--mysql驱动依赖-->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!--mybatis的起步依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
添加数据源:
//在application.yml文件中写入datasource
spring:
datasource:
driver-class-name:com.mysql.cj.jdbc.Driver
url:jdbc:mysql://localhost:3306/mybatis
username:root
password:123456
2.三层数据关系
后端处理逻辑:浏览器发送请求,经过controller层,controller调用service方法,service调用mapper方法,mapper调用sql语句使用数据库。controller、service、mapper三层依次传递数据并处理后返回前端。以下展示目录结构,用示例代码简要说明三层作用和关联:

这里主要写三层的关键代码,为了理清三层的关系。(新建数据库,并创建一个表user)
java
//UserController.java 主要任务就是使用service层的bean对象,然后调用service方法传递参数
@RestController{
@Autowired
private UserService userService;
RequestMapping("/findById")
public User findById(Integer id){ //通过id查询用户
return userService.findById(id); //返回用户信息
}
}
//UserService.java 主要任务就是使用mapper层的bean对象,然后调用mapper方法传递参数
public interface UserService {
public User findById(Integer id);
}
//UserServiceImpl.java 继承service类,详写具体实现功能的代码内容
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public User findById(Integer id){ //通过id查询用户
return userMapper.findById(id); //返回用户信息
}
}
//UserMapper.java 主要任务就是使用sql语句,与数据库进行交互,返回数据
@Mapper
public interface UserMapper {
@Select("select * from user where id = #{id}")
public User findById(Integer id);
}
运行启动类后,直接访问localhost:8080/findById?id=1,可以直接看到数据库查询的内容。