一文弄懂SpringBoot整合Mybatis史诗级详细流程

SpringBoot整合Mybatis

MyBatis是一款非常优秀的持久层框架,SpringBoot官方虽然没有对MyBatis进行整合,但是MyBatis团队自行适配了对应的启动器,进一步简化了程序员使用MyBatis进行数据的操作。

SpringBoot框架开发的便利性,因此实现SpringBoot与MyBatis框架的整合非常方便、简单,主要是引入mybatis对应的依赖启动器,并进行陪你数据库相关参数

基础环境准备

1、数据库准备

使用MySQL,创建数据库spring-boot-mybatis,然后在该数据库中创建两个表course和comment,并向表中插入一些基础数据。

# 创建数据库
CREATE DATABASE spring-boot-mybatis; 

USE spring-boot-mybatis;

# 创建表course

DROP TABLE IF EXISTS course; 

CREATE TABLE course (
id int(20) NOT NULL AUTO_INCREMENT COMMENT '课程id', 
title varchar(200) DEFAULT NULL COMMENT '课程标题',
content longtext COMMENT '课程内容',
PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;


INSERT INTO course VALUES ('1', 'Spring Boot基础入门', '从入门到精通讲解...'); 
INSERT INTO t_article VALUES ('2', 'Spring Cloud基础入门', '从入门到精通讲解...');

# 创建表comment

DROP TABLE IF EXISTS comment; 

CREATE TABLE comment (

id int(20) NOT NULL AUTO_INCREMENT COMMENT '评论id', 
content longtext COMMENT '评论内容',
author varchar(200) DEFAULT NULL COMMENT '评论作者', 
c_id int(20) DEFAULT NULL COMMENT '关联的课程id', PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

INSERT INTO t_comment VALUES ('1', '很全、很详细', 'lucy', '1'); 
INSERT INTO t_comment VALUES ('2', '赞一个', 'tom', '1');
INSERT INTO t_comment VALUES ('3', '很详细', 'eric', '1'); 
INSERT INTO t_comment VALUES ('4', '很好,非常详细', '张三', '1'); 
INSERT INTO t_comment VALUES ('5', '很不错', '李四', '2');
复制代码

2、创建对应的SpringBoot项目

3、编写与数据库对应的实体类(set和get方法省略)

public class Comment {
    private Integer id;
    private String content;
    private String author;
    private Integer aId;
}
复制代码
public class Course {
    private Integer id;
    private String title;
    private String content;
}
复制代码

4、编写SpringBoot的配置文件

# MySQL数据库连接配置 
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/springbootmybatis?serverTimezone=UTC&characterEncoding=UTF-8
    username: root
    password: rootroot
复制代码

配置文件整合Mybatis

创建course数据库对应的操作接口CourseMapper

public interface CourseMapper {
    public Article selectCourse(Integer id);
}
复制代码

创建Mapper对应的XML映射文件

resources目录下创建一个统一管理映射文件的包mapper,并在该包下编写与CourseMapper接口方应的映射文件CourseMapper.xml

<?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">
<mapper namespace="com.springboot.mapper.CourseMapper">
    <select id="selectCourse" resultType="Course">
        select * from course
    </select>
</mapper>
复制代码

配置XML映射文件路径

在项目中编写的XML映射文件,SpringBoot并不知道,所以无法扫描到自定义编写的XML配置文 件,还必须在全局配置文件application.yml中添加MyBatis映射文件路径的配置,同时需要添加 实体类别名映射路径,示例代码如下

mybatis:
    #配置MyBatis的xml配置文件路径 
    mapper-locations: classpath:mapper/*.xml 
    #配置XML映射文件中指定的实体类别名路径 
    type-aliases-package: com.mybatis.entity
复制代码

编写单元测试进行接口方法测试

@Autowired
private CourseMapper courseMapper;

@Test
void springBootAndMybatisTest() {
    Course course = courseMapper.selectCourse(1);
    System.out.println(course);
}
复制代码

至此SpringBoot整合Mybatis流程已经完成。


 

SpringBoot整合Mybatis的配置流程可以分为以下步骤: 1. 首先,需要在项目的pom.xml文件中添加相关的依赖,包括mybatis-spring-boot-starter和spring-boot-starter-jdbc等。这些依赖可以通过Maven或Gradle进行管理。 2. 接着,需要在应用程序的配置文件(一般是application.yml或application.properties)中进行相关配置。包括数据库连接信息、Mybatis的配置信息等。 3. 然后,创建实体类(entity)来映射数据库表。这些实体类通常使用注解来指定表名、字段名等信息。 4. 接着,创建数据访问对象(dao)接口,定义数据库操作的方法,使用Mybatis的注解或XML文件进行SQL语句的映射。 5. 接下来,创建服务层(service)和控制层(controller)来完成业务逻辑的处理和接口的调用。 6. 最后,在resources目录下创建mapper文件夹,编写对应的mapper接口和XML文件。XML文件中定义了具体的SQL语句,并与dao接口进行映射。 需要注意的是,以上步骤是整合Mybatis的一般配置流程,具体的实现方式可能会根据项目的需求和个人的习惯有所不同。可以参考和中提供的引用内容了解更多关于SpringBoot整合Mybatis的配置流程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [springboot整合mybatis详细步骤](https://blog.csdn.net/kobe_IT/article/details/123548793)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [springBoot——SpringBoot 整合 Mybatis 流程](https://blog.csdn.net/DreamPossible20/article/details/128751096)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值