由于项目是使用MyBatis-Plus开发的,用起来也确实比较方便,尤其是service层封装好的一些通用的增删改查方法,省去了不少sql语句的书写,但是在开发过程中,我也发现MyBatis-Plus的saveBatch批量插入方法针对MySQL和Oracle数据库可能会出现效率贼低的情况
作者:AlbertWen
添加时间:2022-05-17 00:09:14
修改时间:2025-09-15 19:36:29
分类:07.Java框架/系统
编辑
网上很多文章,都说MySQL驱动并没有实现"真正的"batchUpdate,执行的时候还是一条一条按顺序将SQL发送到MySQL服务器,其实这是错误的。
作者:AlbertWen
添加时间:2022-05-15 23:43:53
修改时间:2025-09-13 02:31:22
分类:07.Java框架/系统
编辑
IService中自带的 saveBatch
和 saveOrUpdateBatch
等方法,仔细看会发现,他们的批量执行,竟然不是 真正的(数据库级别的)批量执行
作者:AlbertWen
添加时间:2022-05-15 23:34:48
修改时间:2025-09-13 10:39:32
分类:07.Java框架/系统
编辑
大家已知MP给大家提供了很多通用的方法,可以看看MP源码中DefaultSqlInjector
这个类,在这个集合当中包含了都是通用方法类,如果想要使用自定义通用方法,也需要添加到这个集合当中。
用stream流 手动封装分页工具类
作者:AlbertWen
添加时间:2022-05-15 18:18:18
修改时间:2025-09-09 04:34:54
分类:07.Java框架/系统
编辑
MyBatis-Plus为我们支持了许多种的主键策略,主键策略是指MyBatis-Plus可以自动生成主键的策略,不需要手动插入主键,MyBatis-Plus的主键策略帮我们自动生成主键
作者:AlbertWen
添加时间:2022-05-15 13:14:54
修改时间:2025-09-11 15:40:02
分类:18.系统设计/UML建模
编辑
以MVC的entity或domain为例,这种只包含数据不包含逻辑业务的类就叫做贫血模型(Anemic Domain Model)。贫血模型将数据与操作分离,破坏了面向对象的封装特性,是一种典型的面向过程编程。
作者:AlbertWen
添加时间:2022-05-14 21:22:25
修改时间:2025-09-14 04:11:55
分类:07.Java框架/系统
编辑
总得来说,Mybatis注重的是写sql语句。针对单表 的增删改查还是比较好写的,直接写出SQL语句可以了,但是如果遇到了多表的关联查询,可能就会复杂了点。
作者:AlbertWen
添加时间:2022-05-14 20:48:07
修改时间:2025-09-13 23:56:57
分类:07.Java框架/系统
编辑
动态SQL就是复用sql语句的过程。
作者:AlbertWen
添加时间:2022-05-14 20:37:20
修改时间:2025-09-16 06:14:43
分类:07.Java框架/系统
编辑
别名最初是在数据库中接触到的,后来发现在任何有计算机的地方都可以用别名来代替一些东西,这样就方便,有好用,程序员可以减少很多的工作量,效果也很棒。