jpa 联级对象 更新操作

news/2024/7/4 10:07:48

切记制定关联操作 merge
一开始以为refresh就可以联级保存,后来发现merge是联级保存

    @OneToMany(cascade = {CascadeType.PERSIST, CascadeType.REFRESH, CascadeType.MERGE }, fetch = FetchType.EAGER)
    @JoinColumn(name = "purchase_contract_id")
    private List<PurchaseContractCarModel> purchaseContractCarModelList;
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void update(PurchaseContractDto resources) {
        PurchaseContract purchaserContract = purchaserContractRepository.findById(resources.getId()).orElseGet(PurchaseContract::new);
        ValidationUtil.isNull(purchaserContract.getId(), "PurchaseContract", "id", resources.getId());
        resources.getCarModelDeleteList().forEach(item -> item.setActive(BaseEntityStatus.NOT_ACTIVE));
        resources.getPurchaseContractCarModelList().forEach(item -> item.setActive(BaseEntityStatus.ACTIVE));
        resources.getPurchaseContractCarModelList().addAll(resources.getCarModelDeleteList());
        purchaserContract.copy(GeneralConv.conv(resources, PurchaseContract.class));
        purchaserContractRepository.save(purchaserContract);
    }

http://www.niftyadmin.cn/n/4557464.html

相关文章

c.s中怎样调轻盈

你就可以飘起来了 选择重力 按H然后进入服务器设置 足以摔死几个人了LZ有兴趣可以试试 ||| cs1.6 沉重4种状态先失重后沉重 正常 轻盈 恩H健在服务器选项地心引力中选择有失重 然后选择失重

docker命令笔记

容器 启动容器 docker run ubuntu:15.10 /bin/echo "Hello world" docker&#xff1a;命令 run&#xff1a;启用镜像参数 ubuntu:15.10&#xff1a;镜像名称&#xff0c;并指定版本为15.10&#xff0c;ocker 首先从本地主机上查找镜像是否存在&#xff0c;如果不存在…

[JSOI2011]柠檬

https://www.zybuluo.com/ysner/note/1236327 题面 给定一段长度为\(n\)的序列\(a\)&#xff0c;需要把它分为任意多段。 对于每一段&#xff0c;需要选出一个数\(p\)&#xff0c;若\(p\)在该段中出现\(k\)次&#xff0c;则该段贡献为\(pk^2\)。 最大化贡献和。 \(n\leq10^6,x\…

异构数据库同步数据(mysql2sqlserver)

需要使用datax插件&#xff0c;是阿里开源插件&#xff0c;能够实现各种异构数据库的数据同步 github地址datax 找到下面的快速开始&#xff0c;点击Quick Start就可以下载插件 转载&#xff1a;详细介绍 如果想实现增量同步&#xff0c;就需要使用where和数据库中的时间字段…

参考文献引用网页怎么标注 ?

【格式】 [序号]主要责任者.电子文献题名.电子文献出处[电子文献及载体类型标识].或可获得地址&#xff0c;发表或更新日期/引用日期. 维基百科:引用维基百科 【举例】 [16] 王明亮.关于中国学术期刊标准化数据库系统工程的进展[EB/OL].http: //www.cajcd.edu.cn/pub/wml.txt/9…

Java 8 (7) 重构、测试和调试

为改善可读性和灵活性重构代码 看到这里我们已经可以使用lambda和stream API来使代码更简洁&#xff0c;用在新项目上。但大多数并不是全新的项目&#xff0c;而是对现有代码的重构&#xff0c;让它变的更简洁可读&#xff0c;更灵活。 改善代码的可读性 别人理解这段代码的难易…

java深入虚拟机

今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&#xff0c;测试数据在哪里今天是个好日子&a…

开源工程系列之2.5寸硬盘盒

手上攒了几个硬盘&#xff0c;有2.5寸的&#xff0c;也有3.5寸的。我打算把资料整理一下&#xff0c;放到一个盘子里&#xff0c;但是懒得拆电脑装硬盘。曾经看到过一种叫做易驱线的东西&#xff0c;一头可以插到2.5寸或3.5寸的硬盘上&#xff0c;而另外一头则是USB。这真是个好…