hibernate 常见问题一览
2015-09-10 14:56
253 查看
1.保存 实体类 saveorupdate(),只有select语句,没有发出insert 语句 ,循环比例时,只插入了最后一条
查看事务处理,@Transactional(readOnly = false) 注意事务中引用事务的情况。
当带有@Transactional 标记的方法中引用 for循环 插入语句时,有可能会 出现循环语句只插入了最后一条。
需要将遍历的内容放到新的方法中,新方法使用@Transactional 标记,父方法去掉@Transactional 标记,注意查看类的事务标记不要影响到方法
2.@manytoone lazy=true 不起作用 原因:带有@NotFound 时,hibernate需要判断是否存在该对象,所以lazy不起作用.
3. hibernate 循环便利保存对象时 ,debug模式,虽然是 cretia.list() 但确insert语句,inser语句插入的内容是上一条内容.
4. 当保存的对象中有多对一(manytoone) 关系时,没有对其设置 one端的对象而保存时,也会报 以下异常
查看事务处理,@Transactional(readOnly = false) 注意事务中引用事务的情况。
当带有@Transactional 标记的方法中引用 for循环 插入语句时,有可能会 出现循环语句只插入了最后一条。
需要将遍历的内容放到新的方法中,新方法使用@Transactional 标记,父方法去掉@Transactional 标记,注意查看类的事务标记不要影响到方法
2.@manytoone lazy=true 不起作用 原因:带有@NotFound 时,hibernate需要判断是否存在该对象,所以lazy不起作用.
3. hibernate 循环便利保存对象时 ,debug模式,虽然是 cretia.list() 但确insert语句,inser语句插入的内容是上一条内容.
4. 当保存的对象中有多对一(manytoone) 关系时,没有对其设置 one端的对象而保存时,也会报 以下异常
org.hibernate.TransientObjectException: com.entity.SysUser at org.hibernate.engine.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:216) at org.hibernate.type.EntityType.getIdentifier(EntityType.java:108) at org.hibernate.type.ManyToOneType.isDirty(ManyToOneType.java:221) at org.hibernate.type.TypeFactory.findDirty(TypeFactory.java:476)
相关文章推荐
- 使用C++ 11自带的库函数生成随机数
- 使用Volley框架中的ImageLoader来异步的加载图片
- pdf中如何更改文字的颜色
- LVS持久连接
- BJP3 Self-Check 5.23: robustInput Scanner
- Redis和Memcache的区别总结
- Haskell之Yesod开发–边踩坑边开发(2.1)
- Navigationbar
- uva 672 dp
- 解决Use 'LimitInternalRecursion' to increase the limit if necessary的问题 CodeIgniter .htaccess
- Methods to sparkling Diesel-engined Devices
- E - Phone List(字典序,string类型使用)
- SlimDX.dll安装之后所在位置
- 纯CSS实现的菱形导航菜单效果代码
- Android图片的三级缓存管理
- android——json解析
- pdf中如何更改文字的颜色
- iOS 在UILabel显示不同的字体和颜色
- 在java类中模仿表单提交
- Jquery动态生成表单