文档章节

hibernate 多级引用删除不行吗?

zhaoyou
 zhaoyou
发布于 2010/12/08 17:21
字数 214
阅读 303
收藏 1

A 引用 B ,B 引用 C。 通过 C的标识Id,删除所有的A 。这样写hql语句难道不行吗?

String hql = "delete from A a where a.b.c.cid = ?" ;

 

public class Books implements Serializable {
		
		private Integer bid ;
		private String bname ;
		private String bnumber ;
		private String bremark ;
                private BookUnit bookUnit ;	
}

public class BookType implements Serializable {
	
	private Integer id ;
	private String name ;
}

public class BookUnit implements Serializable {
	
		private Integer id ;
		private String name ;
		
		
		private BookType bookType = null ;
		
}

xml 配置文件

<hibernate-mapping>
    <class name="org.zy.entity.BookType" table="booktype"  >
        <id name="id" type="java.lang.Integer">
            <column name="id" />
            <generator class="native" />
        </id>
       
       <property name="name"></property>
     
     
    </class>
</hibernate-mapping>


<hibernate-mapping>
    <class name="org.zy.entity.Books" table="books"  >
        <id name="bid" type="java.lang.Integer">
            <column name="bid" />
            <generator class="native" />
        </id>
       
       <property name="bname"></property>
     
     	<property name="bnumber"></property>
     
     	<property name="bremark"></property>
     	
     	<many-to-one name="bookUnit" class="org.zy.entity.BookUnit" column="unitid"></many-to-one>
     
    </class>
</hibernate-mapping>

<hibernate-mapping>
    <class name="org.zy.entity.BookUnit" table="bookunit"  >
        <id name="id" type="java.lang.Integer">
            <column name="id" />
            <generator class="native" />
        </id>
       
       <property name="name"></property>
     
     	<many-to-one name="bookType" class="org.zy.entity.BookType" column="typeid"></many-to-one>
     
    </class>
</hibernate-mapping>
String hql = "delete from Books b where b.bookUnit.bookType.id = ?";
 Query query = this.getSession().createQuery(hql) ;
 query.setInteger(0, typeId) ;
 query.executeUpdate() ;

© 著作权归作者所有

共有 人打赏支持
zhaoyou
粉丝 14
博文 16
码字总数 2043
作品 0
上海
项目经理
私信 提问
Hibernate加载树形结构的数据怎么用上二级缓存?

经常有树形结构的数据保存在一张二维表中,例如组织架构,多级菜单等。一般是在一张表中使用ID,PID作关联。我项目中的是这样一个树形菜单: 下面是关联配置: 这些数据由于很修改少,访问频繁...

喜之郎
2012/09/29
1K
4
MySql和Hibernate中关于cascade的用法

数据库里的cascade的用法,Mysql和Hibernate里面是不相同。 在数据库里,进行增加、修改、删除记录的时候,经常会涉及到父子关系的表。 例如:有省份表和城市表,其中城市表有一个外键provi...

空云万里晴
2012/08/29
0
0
关于oracle 中delete之后释放空间的问题。

首先感谢大家,嗯,我现在有一张表,2亿条记录,没做分区。。。空间不足要删除部分数据用了delete。 网上查到释放空间 alter table cbsd_log_t enable row movement; alter table cbsd_log_t...

醉酒小螃蟹
2016/12/30
758
4
id是 roleId, popedomModule, popedomPrivilege的联合主键hibernate hql调用id的roleid时报错

@Entity public class SysPopedomPrivilege implements java.io.Serializable { @EmbeddedId private SysPopedomPrivilegeId id; public SysPopedomPrivilege() {} } @SuppressWarnings("ser......

新手求罩
2015/03/26
70
0
游戏设计模式——面向数据编程思想

前言:随着软件需求的日益复杂发展,远古时期面的向过程编程思想才渐渐萌生了面向对象编程思想。 当人们发现面向对象在应对高层软件的种种好处时,越来越沉醉于面向对象,热衷于研究如何更加...

KillerAery
2018/10/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JDK 12又来了,我学不动了...

写在前面 看到 JDK 12又发布了,萌新不知不觉感觉瑟瑟发抖,从 Java 1.8的函数式编程思维和范式 到 Java 1.9的模块化特性的加持 以及还没来得及深切感受一下 Java 1.11 的 ZGC强大之后,这次...

CodeSheep
35分钟前
7
0
解决在gradle构建project时,发生peer not authenticated错误的方法

问题: FAILURE: Build failed with an exception.* What went wrong:Could not resolve all dependencies for configuration ':wl01-service:compile'.> Could not resolve com.ali......

Benz001
45分钟前
1
0
Apache Ignite上的TensorFlow

任何深度学习都是从数据开始的,这是关键点。没有数据,就无法训练模型,也无法评估模型质量,更无法做出预测,因此,数据源非常重要。在做研究、构建新的神经网络架构、以及做实验时,会习惯...

李玉珏
今天
10
0
Java记录日志附带请求标识

起因 系统是web接口服务,排查故障的时候经常需要记录某次请求调用链路日志。这样我们拉日志的时候只要匹配这个traceid就行了 第一版解决方案 原来我们一直用了个很low的办法,在请求开始的时...

Tree
今天
4
0
使用split_size优化的ODPS SQL的场景

使用split_size优化的ODPS SQL的场景 首先有两个大背景需要说明如下: 说明1:split_size,设定一个map的最大数据输入量,单位M,默认256M。用户可以通过控制这个变量,从而达到对map端输入的...

阿里云官方博客
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部