`
esffor
  • 浏览: 1363765 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate中配置级联删除

阅读更多

首先,要在建表SQL中加入对级联删除的支持

CREATE TABLE `voteitem` (
  `id` varchar(50) NOT NULL default '',
  `title` varchar(50) default NULL,
  `votenum` varchar(50) default NULL,
  `vote_id` varchar(50) NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `vote_id` (`vote_id`),
  CONSTRAINT `voteitem_ibfk_1` FOREIGN KEY (`vote_id`) REFERENCES `vote` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 ROW_FORMAT=COMPRESSED;

其次,在hibernate mapping文件中设置cascade

<set name="voteitems" cascade="delete" order-by="title asc" inverse="true">
        
<key column="vote_id"></key>
        
<one-to-many class="Voteitems"/>
     
</set>


分享到:
评论

相关推荐

    Hibernate的级联操作(增,删,该)

    2. 级联删除(Cascade Type.REMOVE) 当设置为`CascadeType.REMOVE`时,如果删除了父实体,与之关联的子实体也会被删除。这在处理一对多或者多对多关系时非常有用,可以确保相关的数据在数据库中得到一致性的清理。...

    hibernate many-to-many级联保存,级联更新,级联删除

    在Hibernate配置文件(如hibernate.cfg.xml)中,你需要为实体类定义映射文件(如Student.hbm.xml和Course.hbm.xml)。在这些映射文件中,使用`&lt;many-to-many&gt;`标签来定义关系。例如: ```xml &lt;!-- Student.hbm.xml...

    hibernate3.2的级联关系_JavaProject

    通过配置级联关系,我们可以控制这些关联实体的行为。 1. **一对多(OneToMany)**:在数据库中,一个表的记录可以对应另一个表的多个记录。在Java对象模型中,这通常表现为一个类的对象可以包含多个另一个类的对象...

    hibernate 级联查询

    3. **配置级联**:在Hibernate的映射文件(XML或注解)中,可以指定实体之间的关联是否启用级联,例如在`@ManyToOne`、`@OneToOne`、`@OneToMany`和`@ManyToMany`等关联注解中设置`cascade`属性。 4. **级联查询...

    struts2 hibernate 实现无限级联 树形分类

    在这个"struts2 hibernate 实现无限级联 树形分类"项目中,主要目标是创建一个能够展示无限级联的树形分类结构。这种结构通常用于组织层次化的数据,如产品类别、部门结构或者权限角色等。无限级联意味着这个树可以...

    关于Hibernate级联删除的问题.doc

    在文档中提到的场景下,我们来详细探讨Hibernate级联删除的原理和配置方法。 首先,我们要理解关系映射中的几个关键概念。在给出的例子中,有四个表:A、AA、B和BB,它们之间存在一对多(one-to-many)和一对一...

    Hibernate级联操作一对多demo

    - `@OneToMany`注解提供了`cascade`属性,用于配置级联操作类型。常见的级联类型有`SAVE_UPDATE`、`REMOVE`、`ALL`等。 - 例如,如果我们希望在删除父类实体时,也删除所有子类实体,可以这样设置:`cascade = ...

    Hibernate_范型_级联

    而级联(Cascading)则是Hibernate中处理关联对象的一种策略,它定义了当一个实体被保存、更新或删除时,与之关联的其他实体应该如何处理。 【描述】: Hibernate中的范型主要体现在SessionFactory、Session、...

    hibernate级联增删改查

    首先,级联操作在Hibernate中是一种配置,用于指定当主表中的实体发生变化时,是否以及如何更新或删除关联的从表实体。级联操作可以通过在映射文件或注解中进行设置。例如,如果t_card是主表,而t_person是从表,...

    hibernate 级联(cascade和inverse)一对多

    使用JUnit进行测试是验证Hibernate配置和功能的一种常见方法。你可以创建测试类,模拟数据的增删改查操作,然后检查数据库中的记录是否符合预期。例如,你可以创建一个父实体,添加一些子实体,并设置级联操作为`...

    Hibernate 一对多、多对一、级联、加载、反转

    而在`Hibernate_01_1`的示例代码中,可能展示了如何在Hibernate中配置和使用这些关系,包括如何定义映射、如何处理级联和加载策略等。 总的来说,理解和熟练运用这些概念对于开发基于Hibernate的Java应用非常重要,...

    常用 Hibernate 映射配置说明.doc

    Hibernate支持多种级联选项,如`none`(默认值,不执行任何操作)、`all`(执行所有级联操作)、`save-update`(仅执行保存和更新操作)、`delete`(仅执行删除操作)。此配置可以显著简化对象关系映射(ORM)的代码...

    hibernate基础 二 关联映射 级联操作

    ### Hibernate基础之关联映射与级联操作 ...以上是关于Hibernate中关联映射和级联操作的基础知识概述,掌握了这些内容后,开发者能够在实际项目中更加灵活高效地使用Hibernate进行数据持久化操作。

    struts2 hibernate 框架 三级城市级联

    通过配置Hibernate的映射文件(hbm.xml),可以将数据库表与Java类关联起来,然后使用Session接口进行CRUD操作(创建、读取、更新、删除)。 实现三级城市级联的具体步骤可能包括以下部分: 1. **设计数据库模型**...

    详解Hibernate cascade级联属性的CascadeType的用法

    详解Hibernate cascade级联属性的CascadeType的用法 cascade(级联) ...cascade表示级联操作,在hibernate配置注解@OneToOne,@OneToMany,@ManyToMany,@ManyToOne中的属性。 例如: @ManyToOne(c

    hibernate的应用表之间的级联关系

    2. **数据完整性**:级联删除可能导致意外的数据丢失,因此在使用`CascadeType.DELETE`时需格外小心。 3. **事务管理**:级联操作通常在同一个事务中进行,确保数据一致性。如果不在同一个事务中,可能会引发并发...

    hibernate利用配置文件反向生成数据库所有配置文件及方法

    1. **Hibernate配置文件**(hibernate.cfg.xml):这个文件包含了连接数据库所需的基本信息,如数据库URL、用户名、密码等。 2. **实体关系数据库映射文件**(.hbm.xml):这些文件定义了Java类与数据库表之间的映射...

    hibernate相关配置.rar

    3. **Hibernate配置** Hibernate的配置通常通过`hibernate.cfg.xml`文件完成,其中包括以下内容: - 数据库连接信息:如URL、用户名、密码、驱动类名等。 - 数据库方言(Dialect):指定与数据库对应的SQL方言。 ...

    hibernate中文参考文档pdf

    9. **Cascading和Associations**:描述了对象之间的关联关系(一对一、一对多、多对多),以及如何配置级联操作,如级联保存、删除。 10. **Lazy Loading和Eager Loading**:懒加载和急加载是对象加载策略,决定了...

    java开始面试的第27天.doc

    虽然没有给出级联删除的代码(注释掉了 `testDeleteAccount()` 方法),但实现方式类似。在删除 Account 对象时,如果 `cascade` 设置了 `delete` 或 `all`,Hibernate 将会自动删除与之关联的所有 Service 对象。 ...

Global site tag (gtag.js) - Google Analytics