我是靠谱客的博主 阳光嚓茶,最近开发中收集的这篇文章主要介绍Spring Data JPA的save之坑,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

问题

因为想要用mysql自增id,想要在save之后获取这个保存的实体的id判断是否插入成功,一直以为Spring Data JPA中的save方法执行结束之后,save(entity)中的entity就会自动被更新为保存的entity,但是其实不是这样的,save之后这个实体的id总是为0

解决办法

必须在主键get方法上要加上

@GeneratedValue(strategy = GenerationType.AUTO)

@GeneratedValue(strategy = GenerationType.IDENTITY),Spring Data JPA才会知道你想要拿到这个保存后的实体,再返回这个实体

 //返回主键
@GeneratedValue(strategy = GenerationType.AUTO)
//或
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Id
@Column(name = "id")
public int getId() {
return id;
}

 

 

最后

以上就是阳光嚓茶为你收集整理的Spring Data JPA的save之坑的全部内容,希望文章能够帮你解决Spring Data JPA的save之坑所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部