hibernate 的saveorupdate方法的使用

不爱吃苹果的小少年 2016-12-15 05:36:18
假如我现在想用这个方法。已经设置了主键自动递增。我现在想添加还有更新都可以执行怎么弄。在注解里面把id不设置成自动生成吗
...全文
377 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
那年花 2016-12-26
  • 打赏
  • 举报
回复
怀疑你是存在2个主键问题所以用不到这个方法,本身框架里面规定了一个主键 数据库又规定了一个主键
lq_bingxueyizu 2016-12-17
  • 打赏
  • 举报
回复
主键生成策略一般情况都是自动递增的。保存和更新用户并不冲突,和主键生成策略没有关系。更新用户的时候,是要拿到当前用户id的,只要update(user) user含有id就可以找到用户并更新了。
什么都不能 2016-12-17
  • 打赏
  • 举报
回复
直接贴你的Entity吧
  • 打赏
  • 举报
回复
id既然是自增的了,还手动设置id干嘛
  • 打赏
  • 举报
回复
好的,我试试看
roger-jie 2016-12-16
  • 打赏
  • 举报
回复
你的主键如果是uuid的话 你应该把你的主键策略改一下 strategy = "assigned" 这个主键策略支持你自己给主键赋值
bcsflilong 2016-12-16
  • 打赏
  • 举报
回复
引用 2 楼 u010425898 的回复:
saveorupdate 本来就是一个 可新增可以修改的方法,hibernate默认根据id主键来判断,如果数据库中存在该id就update,数据库中不存在就insert
加1
  • 打赏
  • 举报
回复
我用的是mysql。为什么不行呢。我现在要把javaBean配置里面的id不设置成主键才可以
月明星稀灬 2016-12-16
  • 打赏
  • 举报
回复
如果是oracle数据库,需要拿到自增长的序列号。 mysql的不需要。
  • 打赏
  • 举报
回复
主要就是现在我要是写id就插不进去了
ryuugu_rena 2016-12-16
  • 打赏
  • 举报
回复
saveorupdate方法id相同就update,没有id就插入,如果你主键自动生成的话,这有啥问题呀?我看半天没明白。
  • 打赏
  • 举报
回复
如果我的主键生成策略改成assigned那么我的insert方法就要输入id才能差入成功了,这样一点不方便
  • 打赏
  • 举报
回复
因为可以更新啊。如果不写idupdate怎么知道更新那一条数据呢
  • 打赏
  • 举报
回复
saveorupdate 本来就是一个 可新增可以修改的方法,hibernate默认根据id主键来判断,如果数据库中存在该id就update,数据库中不存在就insert
  • 打赏
  • 举报
回复
怎么进行判断。我现在要把这个id设置成自动递增

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧