使用 MyBatis 原生功能
我们使用 MyBatis-Flex 作为 MyBatis 的增强框架进行代码开发,并不会影响原有的 MyBatis 的任何功能。
使用 @Select
等 MyBatis 原生注解
MyBatis 提供了 @Insert
、@Delete
、@Update
、@Select
4 个注解,用于对 Mapper 的方法进行配置,用于原生编写原生 SQL 进行增删改查, 在 MyBatis-Flex 我们一样可以使用这些注解。例如:
java
@Insert
、@Delete
、@Update
等注解也是一样的,也就是说,原有的 MyBatis 功能如何使用,在 MyBatis-Flex 就如何使用。
@InsertProvider
、@DeleteProvider
、@UpdateProvider
、@SelectProvider
等还是和原生 MyBatis 一样的用法。
测试代码
测试截图
使用 xml 的方式
在开始使用 xml 之前,我们需要添加如下配置,告知 mybatis 的 xml 存放路径。
yaml
配置完成后,我们就可以编写自己的 xml 和 mapper 代码了,如下所示:
mapper:
java
xml:
xml
测试代码
测试结果
XML 分页^ v1.5.5
XML 分页是 MyBatis-Flex 在 v1.5.5 开始提供的一个 XML 分页解决方案,方便用户在使用 XML 时,对数据进行分页查询。
示例代码如下:
java
参数
selectById
指的是在 XML 里定义的 select 节点的 id 的名称。此时,需要也在 XML 里定义名称为
selectById_COUNT
的 select 节点,用于查询数据总量。
XML 代码如下:
xml
XML 参数解释:
- ${qwSql}: 传入的 QueryWrapper 生成的 where 部分的 SQL,带有 "
where
" 关键字 - ${pageOffset}: sql offset 的值
- ${pageSize}: 需要查询的数据量
- ${pageNumber}: 当前的页码
- ${dbType}: 当前用户配置的数据库类型,用户切换数据源也有可能造成数据库类型发生变化。我们可以通过不同的 dbType 来编写不同的 SQL,以适配不同的数据库类型。
测试代码
测试结果