关于hibernate一对多关系的对象操作

本文介绍了如何通过反向工程在实体关系中自动为一方实体内的Set集合中的每个多方对象赋值一方对象的实例,实现多方对象与一方对象之间的自动关联。同时,阐述了在对多方进行增删改查操作时,通过一方来统一管理,确保数据一致性的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,用反向工程生成的“一”方entity里的Set集合的set方法内给每一个“多”方对象赋值一方对象(this),这样在生成“多”方对象的时候会自动赋值“一”方对象的值。例如:见下图。


OdsRisReport为“一”方,OdsRisReportiamge为“多”方。



此时,当获取OdsRisReportimage时便有OdsRisReport的值了。


2,当对“多”方进行增删改查操作时,都是通过“一”方来进行的,以便保持数据一致性。例如:

// 添加检查报告
	public ODSResult saveReport(OdsRisReport odsRisReport) throws Exception {
		if (odsRisReport == null)
			throw new ODSException(ODSExCode.ODS_CHECKREPORTNOTEXIST, "检查报告对象不能为空");
		saveEntity(createReportOperList(odsRisReport, HibOper.SAVEORUPDATE));//通过保存“一”方对象同时保存“多”方对象。
		ODSResult odsResult = new ODSResult();
		odsResult.setData(odsRisReport);
		return odsResult;
	}

	// 构建创建报告hiboper list
	public List<HibOper> createReportOperList(OdsRisReport orr, int oper) throws Exception {
		List<HibOper> dbObjList = new ArrayList<HibOper>();
		dbObjList.add(new HibOper(orr, oper));//添加“一”方对象
		for (Object orri : orr.getOdsRisReportimages()) {  //根据“一”方取出“多”方对象并添加
			dbObjList.add(new HibOper(orri, oper));
		}
		return dbObjList;
	}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值