mybatis 两种模式开发

随着springboot的逐渐火热,mybatis为了融入springboot的这个大家庭,也提供了自己的对于springboot的友好支持,这个就是mybatis-spring-boot-starter,极大方便了我们集成springboot+mybatis的开发,对于mybatis,似乎给我们的认识就是一直停留在繁琐的xml文件配置,没有jpa那么随性简捷。时至今日,其配置流程也越发简单。目前主流的有两种模式,一种是全注解零配置xml,另外一种就是极简xml,就是还保留很少的xml配置。

全注解零配置版


1.在pom.xml中引入mybatis和数据库的相关依赖,在resources目录下创建application.properties文件,配置相应的数据库配置.

2.开发dao层(或者mapper层也行)

此处需要了解几个对应的注解:

@Select 查询类的注解

@Insert 插入数据操作

@Update 更新数据操作

@delete 删除数据操作

@Result 返回查询结果集,如果返回字段和对应实体类的属性完全一致,此注解可以忽略.

3.在启动类中添加mapper包路径的扫描

4.此处忽略service层和控制层代码编写,直接做简单的单元测试


执行绿色无误,说明配置成功。

极简XML配置

其实步骤和注解版差不多,需要注意的如下:

1.在application.properties添加如下配置:

主要指定了Mybaatis基础配置文件和实体类映射文件对应位置,其中基础配置文件如下:


2.添加实体类映射文件,我这里是UserMapper.xml

其实和之前传统配置那种差不多,需要在映射文件中指定映射哪个接口,我这里指定的是UserMapper,

3.在UserMapper中添加对应的方法


其余步骤和注解版没什么差异,说白了也就是一个把sql写在Mapper接口中,一个写在xml映射文件中,可能对于很多人习惯了之前传统mybatis,更加比较认可第二种写法,毕竟把sql写在接口层还是看着蛮怪异的。你是怎么看的呢?