mybatis和mybatisplus使用记录
(1)获取自增返回的主键值
框架: 若依
使用若依时,因为若依的数据库使用自增主键,就有点疑惑框架怎么获取的插入数据的自增主键的值
通过在网上查资料发现,这个其实是mybatis的功能
实现:
在对应的xml文件里面的insert语句里面有这两个属性即可
一般来说自动生成的xml语句里面会有这两个属性
在插入数据后,插入的数据的组件会返回到对应的实体类的属性里面,直接getId即可获取
(2)添加控制台输出执行的sql语句功能
(a)使用的是mybatis时
mybatis: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
(b)使用的是mybatis-plus时
mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
如果不确定使用的是哪一个,建议两个配置都加上,他们不会冲突
(3)使用mybatis-plus的主键策略的时候,不能自己写insert语句,要使用它的save方法它的主键策略才会生效
@TableId(type = IdType.ASSIGN_UUID)
(4) 启动报错如下错误
Could not resolve type alias 'xxx'. Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
报这个错误一般是xml文件写的有问题
parameterType这个参数的值一定要写全路径(很多代码生成器生成的代码不是全路径)
只要改为全路径就正常启动了
(5)mybatis-plus的乐观锁的使用步骤
(a) 先看官方文档 地址 https://mp.baomidou.com/guide/
(b) 引入对应的maven依赖 注意版本问题 如果MybatisPlusInterceptor不能导入,一直报错的话,应该是下图的依赖版本冲突,按照idea提示更新版本即可
(c) 配置插件 如下图 注意配置要在启动类的同级或者子级目录下
(d)在实体类加上@Version注解 一定要注意字段不能为string类型,可以是int 或者Integer
(e) 在业务代码里面,一定要把查出来的version放到修改的对象里面