SpringBoot 2.x(四):整合Mybatis的四种方式
2018-12-24 11:55
1051 查看
前言
目前的大环境下,使用
Mybatis作为持久层框架还是占了绝大多数的,下面我们来说一下使用
Mybatis的几种姿势。
姿势一:零配置注解开发
第一步:引入依赖
首先,我们需要在pom文件中添加依赖:
第二步:配置文件
这里我们采用yml来进行编写,与properties文件相比,yml看起来更加简洁优雅,这里需要注意的是
driver-class-name这个属性我们采用的是
com.mysql.cj.jdbc.Driver而非之前的
com.mysql.jdbc.Driver,如果采用之前包下的
Driver,控制台会打印出一行这样的信息告诉我们去用新的~
第三步:指定MapperScan
首先,我们需要在启动类指定
@MapperScan,这样做就可以不用去挨个的在
Mapper接口中添加
@Mapper注解。这里的值就是你的
Mapper接口所在的包的路径。
第四步:编写Mapper接口
通过
@Select注解和
@Resuts注解可以指定SQL语句以及返回值。当然,其他的不同的操作也有不同的注解,比如
@Insert、
@Update、
@Delete
第五步:测试程序编写
访问 localhost:8081/user/findAll,我们就可以看到测试的结果:
姿势二:XML
我们用的最多的是这种方式,下面来看看怎么去实现,第一步与姿势一的重复,这里就不再多做阐述
第一步:编写配置文件
我们需要在配置文件中添加
mybatis-config.xml的路径以及用于
Mapper*.xml的文件的路径:
第二步:编写Mapper接口以及配置文件:
Mapper接口:
mybatis-config.xml:
UserMapper.xml:
这里需要注意UserMapper.xml中的
namespace需要与接口的路径一致,否则会出现错误。
测试:
测试的程序与之前的一致,我们直接访问
localhost:8082/user/findAll,可以看到成功的结果:
姿势三:SqlSession
使用SqlSession的姿势和可以与上面两种方式进行结合,emmm。。。可以这么理解,SQL就在那里,只不过分为了两个不同的方法去调用。其余的代码我们就不再多讲,直接来看是如何调用的:
可以看到,参数写的是要调用的方法的路径(这里是与
namespace相对应)。下面我们可以运行一下程序:
姿势四:基于SqlSession的升级
这里,我们基于
SqlSession进行了一次升级,首先我们写了一个
BaseDao,作为一个公用的接口。接口的实现是通过
sqlSessionTemplate。
然后我们将
*Mapper.xml的
namespace改为
*Mapper。现在,我们可以直接将所有的
Mapper接口删除,直接通过
dao进行调用~
然后我们来启动程序后去访问
关于
Mybatis的使用,我们就先讲到这里~
原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。
源码可以去github或者码云上进行下载,后续的例子都会同步更新。
云撸猫
公众号
相关文章推荐
- Spring Boot系列之六 以注解方式整合MyBatis
- springboot整合mybatis使用阿里(阿里连接池)和xml方式
- mybatis与spring3.1整合的四种方式 (附示例)
- 全注解方式整合spring+mybatis模拟springboot整合
- mybatis与spring3_1整合四种方式
- springboot使用之二:整合mybatis(xml方式)并添加PageHelper插件
- springboot之整合mybatis-annotation(注解方式)
- springboot微服务搭建(一):整合mybatis配置(第一种方式)
- SpringBoot整合MyBatis(转)
- Spring Boot 整合mybatis mapper扫描(坑)
- 详解SpringBoot 快速整合MyBatis(去XML化)
- springBoot整合Mybatis
- spring boot +springMVC +mybatis整合踩过的坑
- springBoot 整合mybatis
- (五)mybatis学习之mapper代理开发方式及与spring整合
- springBoot整合Mybatis
- thymeleaf :springboot整合mybatis的web项目中使用html而不是jsp当页面渲染
- SpringBoot2 Mybatis整合
- SpringBootl连接数据库MyBatis方式实现