最近使用hibernate保存数据的时候,没有使用id自增主键,而是使用了一种调用seq以后手动赋值的方式生成主键,然后使用saveorupdate()报错。上网查看终于知道了问题所在,记录一下:

在单主键情况,save()和saveorupdate()到底有啥区别:

如果持久对象使用了自增长的单主键(一般情况下也都是这么做)。通常两者没什么区别。

但是如果持久对象使用自己赋值的单主键,那么使用saveOrUpdate就不大合适了。
例如:如果你将一个持久对象的主键赋值了,你本想插入这条记录,但实际上执行的是更新,因为hibernate会认为你的主键存在了,那么它会采用更新。但如果你使用save,那么hibernate直接插入数据。

转载于:https://www.cnblogs.com/baizhanshi/p/8079258.html

hibernate中的saveOrUpdate()报错相关推荐

  1. 《一起学习rgbdSLAM》中g2o部分报错的问题

    <一起学习rgbdSLAM>中g2o部分报错的问题 在高博的<一起学习rgbdSLAM>第六讲中使用到了g2o工具.但是由于版本问题,按照高博的写法来编写代码在编译过程中会报错 ...

  2. anconda安装后命令行中安装tensorflow报错

    现象  anconda安装后命令行中安装tensorflow报错 pip install --upgrade --ignore-installed tensorflow-gpu Building wh ...

  3. K.O. -------- Eclipse中Maven的报错处理

    ----------------------siwuxie095 K.O. -------- Eclipse 中 Maven 的报错处理 1.报错一: A 'Maven Build' configur ...

  4. python无法启动该程序因为计算机中丢失_python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  5. Navicat 远程连接docker容器中的mysql 报错1251 - Client does not support authentication protocol 解决办法

    Navicat 远程连接docker容器中的mysql 报错1251 - Client does not support authentication protocol 解决办法 1).容器中登录my ...

  6. python无法启动此程序因为计算机中丢失_python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  7. Eclipse中启动tomcat报错:A child container failed during start

    我真的很崩溃,先是workspace崩了,费了好久重建的workspace,然后建立了一个小demo项目,tomcat中启动却报错,挑选其中比较重要的2条信息如下: A child container ...

  8. Eclipse和MyEclipse使用技巧--解决MyEclipse中的js报错的小方法

    今天,下了个模版,但是导进去的时候发现js会报错.看了下其他都没有错误.而有一个js报错误,请原谅我有点红色强迫症,不能留一点红色 . 错误如下: Syntax error on token &quo ...

  9. python下载库报错_下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决...

    下载python中Crypto库报错:ModuleNotFoundError: No module named 'Crypto'的解决 前言 最近在网上找了很多下载Crypto的方法,感觉作用都不算很 ...

  10. php5.4curl报错,PHP中使用CURL报错解决方案 rip curl php curl开启 curl下

    准备使用CURL实现get和post方法时报错. Eg:CURL初始化时,报如下错误: Fatal error: Call to undefinedfunction curl_init() in C: ...

最新文章

  1. C++ Primer 读书笔记 (1)
  2. 17 个品牌,113 款 5G 手机,5G 离我们越来越近
  3. [C# 开发技巧系列]如何动态设置屏幕分辨率
  4. 逻辑漏洞-找回密码修改返回包
  5. IOCP 浅析与实例
  6. python getattr和getattribute_详解Python中 __get__和__getattr__和__getattribute__的区别
  7. 泉州海事学校计算机,泉州海事学校寝室图片、校园环境好吗?
  8. [hgoi#2019/2/16t1]math
  9. golang 解决 TCP 粘包问题
  10. kill 的常用信号
  11. ssh图示+hibernate图示
  12. 提升企业网站流量转化率的核心是什么
  13. redis中集群的故障恢复
  14. [剑指Offer] 第5章课后题详解
  15. iOS系统快捷指令一键打开北京健康宝个人信息扫码登记界面
  16. 小偷涂鸦 java_用Java做一个涂鸦板
  17. 使用IDO Runtime Development Server跟踪IDO层的错误
  18. 新手如何推广优化自己的网站
  19. 关于find_busiest_group函数提现出的Linux性能问题
  20. 逻辑卷(lvm)的配置与管理

热门文章

  1. LeetCode 718最长重复子数组
  2. sql出现列名无效的原因_SQL数据库中的数据类型与表结构的创建
  3. python中唯一的映射类型是什么_Python基础类型之字典(dict)
  4. linux定时任务被挖矿修改,Linux挖矿威胁情报分享(被植入计划任务)
  5. SVN更新有问题 svn The working copy at‘ ‘ is too old
  6. grid php 用法,grid布局主要用法
  7. 饥荒正版怎么创建专用服务器,饥荒:联机版专用服务器创建设置方法汇总
  8. 战争学院服务器不稳定,英雄联盟服务器突然崩溃坑玩家!战争学院玩家全被强制下线...
  9. 保存文件_正确保存Zbrush文件
  10. 计算机网络—物理层(思维导图)