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的主要内容,如果未能解决你的问题,请参考以下文章