`

oneToMany 修改many端属性saveupdate

 
阅读更多

ONE端

	@OneToMany(mappedBy = "role", cascade = CascadeType.ALL,fetch=FetchType.EAGER,orphanRemoval=true)
	@OrderBy(value = "action ASC")
	private Set<SystemGroupAction> groupActions;

 Many端

        @ManyToOne
	@JoinColumn(name = "roleid")
	private SystemRole role;

 saveUpdate

public boolean saveRole(RoleVo roleVo){
		SystemRole role = systemGroupDao.getSystemRoleByName(roleVo.getRolename());
		if(role == null){
			role = new SystemRole();
			role.setCreatetime(new Date());
			role.setRolename(roleVo.getRolename());
		}
		role.setRoledesc(roleVo.getRoledesc());
		List<ActionVo> list = roleVo.getActions();
		SystemGroupAction roleaction = null;
		for(ActionVo vo :list){
			roleaction = systemGroupDao.getAssociationByRoleAction(roleVo.getRolename(),vo.getAction());
			if(roleaction!=null){
				role.getGroupActions().remove(roleaction);
			}
			roleaction = new SystemGroupAction();
			SystemAction action = systemGroupDao.getSystemActionByAction(vo.getAction());
			roleaction.setAction(action);
			roleaction.setRole(role);
			roleaction.setActive(vo.isActive());
			role.addGroupAction(roleaction);
		}
		systemGroupDao.saveSystemRole(role);
		return true;
	}

 set集合先要删除,在添加

分享到:
评论

相关推荐

    hiberante - one to many - update

    对于"one"端,我们将使用`@OneToMany`注解,并指定`mappedBy`属性,这表明另一个实体("many"端)负责维护它们之间的关系。"many"端则使用`@ManyToOne`注解来引用"one"端的实体。 在更新操作时,需要注意以下几点:...

    JPA_OneToMany学习教程

    3. **@OneToMany注解**:此注解包含几个重要的属性,如`mappedBy`、`fetch`和`cascade`。`mappedBy`指定了在子实体中引用父实体的属性名。`fetch`用于指定加载策略,可以是EAGER(即时加载)或LAZY(延迟加载)。`...

    HIBERNATE 一对多 onetomany

    在Java持久化框架Hibernate中,"一对一"(one-to-one)和"一对多"(one-to-many)是两种常见的关联关系映射。本教程将详细讲解如何在Hibernate中实现"一对多"关联,并通过实际例子加深理解。 首先,让我们了解什么...

    Hibernate one to many(many to one) 配置

    - `cascade`属性:可以设置级联操作,如`CascadeType.SAVE_UPDATE`表示当保存或更新一方时,另一方也会被保存或更新。 - `fetch`属性:控制关联数据的加载策略,如`FetchType.LAZY`表示延迟加载,`FetchType.EAGER...

    hibernate对象三状态及OneToOne&OneToMany&ManyToMany

    本篇将详细阐述Hibernate中的对象三状态、一对一(OneToOne)、一对多(OneToMany)以及多对多(ManyToMany)关系映射。 一、Hibernate对象三状态 1. 游离态(Detached):对象在应用程序中创建,但尚未与Session...

    (4)Hibernate中的many-to-one和one-to-many关系

    在双向关联中,一方(通常是one-to-many的一方)需要通过`@OneToMany(mappedBy="")`来指定关联的另一方的属性,而另一方(many-to-one)则无需指定`mappedBy`,直接使用`@ManyToOne`即可。 4. 外键的处理 在one-to-...

    onetomany-hibernate

    这通常通过在父类(“一对一”端)中声明一个集合属性来完成,如`List&lt;ChildEntity&gt; childEntities = new ArrayList();`,并使用`@OneToMany`注解来标注这个属性,指定关联的子类以及其他的配置选项,如级联操作、...

    hibernate_6映射关系之one2many.zip_hibernate

    4. **级联操作**:通过`cascade`属性,可以设置级联操作,如`CascadeType.ALL`会将保存、删除等操作应用到`Many`端的对象上。这有助于简化数据操作,但需谨慎使用,避免数据误删。 5. **懒加载与瞬时状态**:默认...

    Hibernate- oneToMany using annotation

    `@OneToMany`注解是Hibernate提供的JPA(Java Persistence API)的一部分,它允许我们在实体类中定义一个集合属性,该属性对应于数据库中另一张表的一系列记录。这个注解的使用通常配合`@JoinColumn`或`@JoinTable`...

    Hibernate one-to-many / many-to-one关系映射

    例如,对于一对多关系,可以在父类上使用@OneToMany,子类上使用@ManyToOne,通过mappedBy指定关联的属性。 三、实际应用 在"hibernate-father-son"这个例子中,可能包含两个实体类,如"Father"和"Son","Father...

    Java中的OneToMany的使用方法

    在实际开发中,ften需要在One方的DTO中使用Many方的DTO,但由于JHipster声明的OneToMany在One方的DTO中没有与Many方的DTO的映射关系,导致无法直接使用Many方的DTO。解决这个问题需要三个步骤:在OneDTO中添加...

    ejb.rar_EJB onetomany_ejb

    `@OneToMany`注解指定了这个关系,而`mappedBy`属性指定了反向关系在`Employee`类中的属性名。 ### 5. 管理OneToMany关系 管理`OneToMany`关系涉及到操作集合,如添加或删除元素。JPA提供了一些便利的方法,如`add...

    mappedBy属性:one2many

    在处理一对多(One-to-Many)关系时,`mappedBy`属性扮演了关键角色。这篇博客文章,虽然描述为空,但链接指向了一个可能深入讨论`mappedBy`特性的资源。 `mappedBy`属性是Hibernate中用于定义关联关系的一个关键...

    hibernate one_to_many

    在这个关系中,一个实体(通常是"one"端)对应多个实体实例("many"端)。在数据库中,这通常表现为一方的主键出现在另一方的外键字段中。 标题"hibernate one_to_many"意味着我们将讨论如何在Hibernate中配置这种...

    One2Many

    4. Java实体类:在Java实体类中,对应多的一方的属性应声明为集合类型,并加上注解@OneToMany,指定关联的字段和映射方式。 5. CRUD操作:在CRUD(创建、读取、更新、删除)操作中,Mybatis会自动处理One2Many关系...

    Ejb3-OneToMany--Good.rar

    1. **注解的使用**:在父实体的属性上添加`@OneToMany`注解,指定关联的子实体类和关联字段。例如: ```java @Entity public class User { @OneToMany(mappedBy = "user") private List&lt;Order&gt; orders; } ```...

    jpa to many

    这包括了一对多(One-to-Many)和多对多(Many-to-Many)关系。这两种关系在现实世界的业务场景中非常常见,例如一个学生可以注册多个课程,或者一个订单可以包含多个商品。 **一对多关系(One-to-Many)**: 在一...

    oneToMany.rar

    - 在JPA中,`@OneToMany`注解用于指定一个实体属性与另一个实体的一组实例相关联。这个注解通常应用在字段或getter方法上,且需要配合`@JoinColumn`或`@JoinTable`来指定关联的外键。 2. **配置示例**: 假设我们...

    jpa-day3-onetomany.zip

    在这个名为"jpa-day3-onetomany.zip"的压缩包中,我们将探讨这种关系的配置、操作和实践。 一对多关系意味着一个实体(如“客户”)可以与多个其他实体(如“联系人”)相关联。在数据库设计中,这通常通过在“联系...

Global site tag (gtag.js) - Google Analytics