摘要:
什么是悲观锁?什么又是乐观锁? 悲观锁是为了保证数据不被另外修改而增加的一种锁,具有独占性和排他性,在整个处理过程中数据都是被锁住的。适合于读少写多的情况。 乐观锁是在数据提交修改的时候通过一种机制去验证数据是否已经被修改。适合于读多写少的情况。 数据库的乐观锁 一般通过数据版本或者时间戳来实现。 阅读全文
摘要:
使用mapper的select相关方法时,我们来观察一下其生成的语句: 我们注意到,生成的sql将表的全字段都查询出来了,相当于select *。众所周知,在实际的使用中是不推荐使用select *的,那其中的原因是什么。 原因1: 不需要的字段会产生更多的IO操作,影响性能 原因2: 对于非索引字 阅读全文
摘要:
mybatis-plus中xml的使用方法和mybatis是一样,需要一些简单的配置就可以定义xml了。 配置sql日志和mapper文件路径 在application.properties中指定如下配置: 其中mapper-locations可以根据实际路径进行修改 建立xml文件 在mapper 阅读全文
摘要:
mybatis-plus包含内置的分页插件,我们要做的就是配置拦截器,然后使用内置的分页类就可以了。 配置Interceptor 分页的使用 QueryWrapper指定查询条件 Page指定获取特定页及数据条数 IPage获取查询结果 阅读全文
摘要:
LambdaQueryWrapper与QueryWrapper类似,只不过QueryWrapper的列名使用的是字符串,而LambdaQueryWrapper使用的是Lambda语法,个人更推荐使用LambdaQueryWrapper,因为它增加了一层实体到数据库字段的约束,一定程度上避免了字符串列 阅读全文