mysql keyproperty_Mybatis中keyProperty="id" 和useGeneratedKeys="true"详解
在使用mybatis时,常常会出现这种需求:当主键id是自增的情况下,添加一条记录的同时,我们要获取到主键id。这时我们只需要在其对应xxxmapper.xml中加入以下属性即可:useGeneratedKeys=”true” keyProperty=”id”。...........useGeneratedKeys =true:这个表示插入数据之后返回一个自增的主键id给你对应实体类中的某个属性。
在使用mybatis时,常常会出现这种需求:
当主键id是自增的情况下,添加一条记录的同时,我们要获取到主键id。
这时我们只需要在其对应xxxmapper.xml中加入以下属性即可:useGeneratedKeys=”true” keyProperty=”id”。
...........
useGeneratedKeys =true:这个表示插入数据之后返回一个自增的主键id给你对应实体类中的某个属性。必须设置为true,默认为false。
keyProperty:设置为POJO对象的主键id属性名称。
keyColumn:设置为数据库记录的主键id字段名称。
说明:
1.如果我们已经在数据库表中指定了主键,那么keyColumn属性可以缺省。
这里我们数据库有主键,因此上列我们可以直接写为:
...........
2.新添加主键id并不是在执行添加操作时直接返回的,而是在执行添加操作之后将新添加记录的主键id字段设置为POJO对象的主键id属性。
如果在使用过程中遇到异常:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException:
请看:https://www.jianshu.com/p/f03e950da722

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)