如下所示:
public static void delete() {
Session session = HiberUtil.getSession();
ProjCost toDelete
= (ProjCost)session.load(ProjCost.class, 6723L); // 用load方式就是想不希望Hibernate去touch数据库,毕竟delete时只需要一个id就够了。
session.close();
session = HiberUtil.getSession();
session.beginTransaction();
session.delete(toDelete);
session.flush();
session.getTransaction().commit();
}
我想用这样的方法来删除一行记录,目的是想实验下Hibernate能不能不去数据库中加载数据情况下删除一行记录。
实验结果是,现在3.2版本的不行, Hibernate会自动加载数据。
执行过程中,org.hibernate.event.def. DefaultDeleteEventListener类中onDelete(DeleteEvent
event, Set transientEntities)方法中的一句话“Object entity = persistenceContext.unproxyAndReassociate(
event.getObject() );”剥去Proxy外壳而取hit数据库地数据。
哪为什么要这样呢?也就是说不这样会有什么不良后果尼?
分享到:
相关推荐
hibernate-release-5.0.7.Final.zip 传智播客黑马程序员hibernate2016版框架所用的版本
hibernate-entitymanager-5.5.5.Final
hibernate-release-4.0.0.Final.zip
weblogic12 下最新 org.hibernate.hql.ast.HqlToken解决办法
hibernate-release-4.3.10.Final.zip 官方原版,因上传文件大小限制,去掉里面的project
hibernate-release-4.1.4.Final源码,是学习和使用hibernate的好资源,领略大师的编码规则,掌握高超的编码技术,值得学习!hibernate开发人员必备资料!
hibernate-annotations-3.4.0.GA hibernate-annotations-3.4.0.GA hibernate-annotations-3.4.0.GA
hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+tomcat 5.5.x(配置jndi)hibernate 3.1+...
Hibernate稳定版(hibernate-release-5.3.23.Final.zip),Hibernate ORM 是一个为应用程序、库和框架提供对象/关系映射 (ORM) 支持的库。它还提供了 JPA 规范的实现,这是 ORM 的标准 Java 规范。
Hibernate.jar包,Hibernate可以应用在任何使用JDBC的场合,包含 hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-...
因为上传数据大小限制,这里只有jar包
hibernate-entitymanager-3.4.0.GA.rar hibernate-entitymanager-3.4.0.GA.rar hibernate-entitymanager-3.4.0.GA.rar hibernate-entitymanager-3.4.0.GA.rar hibernate-entitymanager-3.4.0.GA.rar hibernate-...
最新版Latest release announcement (2018-07-05): 5.3.2.Final. hibernate-release-5.3.2.Final
hibernate-configuration-3.0.dtd、hibernate-mapping-3.0.dtd、hibernate.properties(5.0.7)
hibernate-mapping-3.0.dtd 配置后,就会在xml中进行提示
hibernate-release-5.3.7.Final
详解hibernate.hbm2ddl.atuo 属性的配置
hibernate-distribution-3.6.7.Final-dist.zip
使用hibernate-validator 进行校验的jar包,里面包括了基础hibernate-validator-5.0.0.CR2.jar hibernate-validator-annotation-processor-5.0.0.CR2.jar 之外,还包括了el-api-2.2.jar javax.el-2.2.4等项目必不可...