@Test
public void testSave(){
DomesticCat cat = new DomesticCat();
cat.setId(101);
cat.setName("Hello kitty");
cat.setSex('M');
cat.setBirthday(new Date());
Transaction tx = session.beginTransaction();
session.save(cat);
System.out.println(cat.getId());
tx.commit();
}
@Test
public void testPersist(){
DomesticCat cat = new DomesticCat();
cat.setId(100);
cat.setName("Jscis");
cat.setSex('F');
cat.setBirthday(new Date());
Transaction tx = session.beginTransaction();
session.persist(cat);
System.out.println(cat.getId());
tx.commit();
}
1. 如上的测试代码,其实id是数据库自动生成的,使用save方法保存时,id并不是程序中设置的值,而是数据库自动生成的。而persist方法则认为要保存的是Detached状态的对象,会抛出异常PersistentObjectException
2.save方法保证马上返回标识符,而persist方法并不保证,但是在测试中persist好像也是马上返回标识符的,可能是我不知道如何测试,还望高手指教
3.当代码中去掉Transaction tx = session.beginTransaction();和tx.commit();时,persist不会执行insert语句,而save会执行。
分享到:
相关推荐
NULL 博文链接:https://dreamzhong.iteye.com/blog/1218885
本文章来给各位同学介绍一下Hibernate save()与persist()区别,希望此文章能对各位同学对于Hibernate save()与persist()有所理解
轻量级的Guice2.0代替了Spring,速度更快,项目体积更小,Hibernate3.2与JPA的结合使用代替了传统的配置文件,使Hibernate的开发更简单,本项目基本上是零配置开发,由于我只能上传小于15M的文件,故JAR被我删除了,...
万物皆自然,每个 API 的设计,无论是否正确,都有其意图。因此,在学习某些框架的时候,我们需要经常思考:这个 API 的设计意图是啥?...本文来探讨一下 Session 中 persist 的设计意图。。。。。。。。。。。。。。。
Hibernate级联操作一对多demo Hibernate级联操作一对多demo Hibernate级联操作一对多demo
后面的hibernate代码,我会慢慢的上传上去,这些资源都是免费的,希望可以帮到大家。
hibernate save()方法能够保存实体到数据库,正如方法名称save这个单词所表明的意思。我们能够在事务之外调用这个方法,这也是我不喜欢使用这个方法保存数据的原因。 假如两个实体之间有关系(例如employee表和...
一加8传感器分区文件persist.img+修复步骤 如果你刷机 更新 降级或者刷写第三方系统或者修改系统文件后有以下问题, 应该就是传感器分区出问题了 以下问题包括 但不限于全部 1-----相机 打不开或者反应慢或者其他...
warp-persist框架:封装Hibernate和JPA,提供事务管理和持久化资源管理 warp-dynamic-finder:提供了基于Annotation的动态查询功能,让数据库查询变得异常简单,不再需要DAO层 warp-mvc:借鉴了Tapestry5,提供了...
小米平板4 persist分区恢复固件
8.4.1 Session的save()和persist()方法 8.4.2 Session的load()和get()方法 8.4.3 Session的update()方法 8.4.4 Session的saveOrUpdate()方法 8.4.5 Session的merge()方法 8.4.6 Session的delete()方法 ...
CascadeType是hibernate中的枚举类型,定义了多种级联操作,包括REFRESH、PERSIST、REMOVE、MERGE、ALL等。 CascadeType.REFRESH: 级联刷新是指当多个用户同时操作一个实体时,为了确保用户获取的数据是实时的。...
* @Table —— 注解声明了该实体bean映射指定的表(table),目录(catalog)和schema的名字 * @Column —— 注解声明了属性到列的映射。该注解有如下的属性 * name 可选,列名(默认值是属性名) * unique 可选,...
8.4.1 Session的save()和persist()方法 191 8.4.2 Session的load()和get()方法 194 8.4.3 Session的update()方法 195 8.4.4 Session的saveOrUpdate()方法 197 8.4.5 Session的merge()方法 198 8.4.6 Session的...
Persist.NET是C#编写的一款完整的持久层框架
04_Session接口及get|load|persist方法 05_实体对象的三种状态与saveOrUpdate方法 06_完善HibernateUtil类及hql查询入门 07_实体类或属性名与数据库关键字冲突问题 10_使用Hibernate完成CRUD实验的步骤说明 11_...
一加7pro传感器分区文件persist.img+修复步骤 如果你刷机 更新 降级或者刷写第三方系统或者修改系统文件后有以下问题, 应该就是传感器分区出问题了 以下问题包括 但不限于全部 1-----相机 打不开或者反应慢或者...
小米8传感器分区文件persist.img+修复步骤 资源说明: 如果你刷机 更新 降级或者刷写第三方系统或者修改系统文件后有以下问题, 应该就是传感器分区出问题了 以下问题包括 但不限于全部 1-----相机 打不开或者反应...
一加8T传感器分区文件persist.img+修复步骤 如果你刷机 更新 降级或者刷写第三方系统或者修改系统文件后有以下问题, 应该就是传感器分区出问题了 以下问题包括 但不限于全部 1-----相机 打不开或者反应慢或者其他...
一加8T传感器分区修复文件persist 传感器失效表现在指纹 指南针 相机 陀螺仪等bug或者完全使用不了等等 一般是更新或者刷机后导致的 资源即可解决这种问题 方法为解锁后fast刷入persist分区 或者twrp里写入镜像方式...