mybatis新增insert返回主键id,与解决新增主键id一直为1的问题。


  • 新增返回主键

mapper(dao)

public Integer insertCmsContent(CmsContent cmsContent);     //返回类型为 Integer  xml文件不用写 resultType = "Integer" 标签属性

mapper.xml文件

<insert id="insertCmsContent" parameterType="cmsContent" useGeneratedKeys="true" keyProperty="cmsContent.id" keyColumn="id" >
.. (新增语句忽略 主要是加标签 useGeneratedKeys="true" keyProperty="id" keyColumn="id" "id" 为你表的要返回主键 )
</insert>
  • 处理返回新增主键一直为1问题
//service 业务层 contentId 为你返回的主键id
Integer contentId = baseMapper.insertCmsContent(cmsContent);

解决方案:

不能用  Integer contentId  去接收返回的自增主键id  ,要使用该主键的话,需要把整个  baseMapper.insertCmsContent(cmsContent)  set 进去。例:

cmsContent.setContentId(baseMapper.insertCmsContent(cmsContent));

然后,问题解决!至于为啥出现这种问题,这边文章不做叙述。只用做解决bug。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM