3-4 集成持久层框架Mybatis

Posted 孤注一掷 、

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3-4 集成持久层框架Mybatis相关的知识,希望对你有一定的参考价值。

一、集成Mybatis

pom.xml中添加依赖

        <!-- 集成mybatis-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.3</version>
        </dependency>
        <!-- 集成mysql连接 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.22</version>
        </dependency>

然后如图所示的配置文件中添加数据库连接

# 增加数据库连接
spring.datasource.url=jdbc:mysql://......../........?characterEncoding=UTF8&autoReconnect=true&serverTimezone=Asia/Shanghai&allowMultiQueries=true
spring.datasource.username=..........
spring.datasource.password=..........
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

集成成功。

二、Mybatis的使用

新建文件夹domain

 这一层实体类就是和数据表一一映射。

在domain中新建一个java类,Test.java

 然后摁住alt+insert,选择getting and setting,即可自动生成构造函数。实体类生成好。

接下来写接口,接口层称为Mapper层,即Dao层。因为后续要用官方的代码生成器,其生成的代码就是XXXMapper。

新建文件夹mapper,然后新建TestMapper接口类

接下来写对应的sql脚本,在resource中新建mapper文件夹

之后所有的sql脚本放到mapper中,然后新建一个接口对应的xml文件 即TestMapper.xml

 添加如下内容,前三行是固定的,中间是sql语句。

<?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.swk.imooc.mapper.TestMapper" >

    <select id="list" resultType="com.swk.imooc.domain.Test">
        select `id`, `name`, `password` from `test`
    </select>

</mapper>

 

然后可以安装一个插件

 可实现代码的快速跳转。

 

 下面,要让整个项目知道Mapper是持久层,需要在启动类里增加一个扫描注解。

 

 要让整个项目知道xml是要执行的sql,需要在配置项 application.properties 中配置所有Mapper.xml的路径。

下面演示持久层的使用。

新建service文件夹

service中新建文件TestService.java

 下面在controller下的TestController中添加

    @Resource
    private TestService testService;


    @GetMapping("/test/list")
    public List<Test> list()
        return testService.list();
    

在测试中的test.http

添加如下

在数据库中添加一条数据,如

insert into `test` (id, name, password) values (1,'测试','password');

启动类运行后即可

 

 

 

 

以上是关于3-4 集成持久层框架Mybatis的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot集成mybatis框架

不学mybatis直接学spring boot

持久层框架JPA与Mybatis该如何选型

持久层框架JPA与Mybatis该如何选型

Java数据持久层框架 MyBatis之背景知识二

Spring Boot 数据访问集成 MyBatis