首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么deleteById采用双向方法?

为什么deleteById采用双向方法?
EN

Stack Overflow用户
提问于 2019-09-06 10:34:46
回答 3查看 75关注 0票数 0

我有两个实体,其中一个实体与第二个实体具有manyToOne关系

实体1:

代码语言:javascript
运行
AI代码解释
复制
@Entity
@Table(name = "chilling_unit")
@Data
@NoArgsConstructor
public class ChillingUnitMonitoringDetailsDAO<T> {

  @Id
  @GeneratedValue(strategy = GenerationType.SEQUENCE)
  private Long id;

  @Column(name="edge_controller_serial_number",nullable = false)
  private String l3SerialNumber;

  @Column(name = "product_type_name")
  private String productType;

  @ManyToOne(fetch = FetchType.EAGER, optional = false,cascade = javax.persistence.CascadeType.ALL
  @JoinColumn(name = "location_id")
  @OnDelete(action = OnDeleteAction.CASCADE)
  @JsonIgnore
  @EqualsAndHashCode.Exclude
  private LocationDAO location;

}

和实体2:

代码语言:javascript
运行
AI代码解释
复制
@Entity
@Table(name = "location")
@Data
@NoArgsConstructor
public class LocationDAO {

  @Id
  @GeneratedValue(strategy = GenerationType.SEQUENCE)
  private Long id;

  @Column(name = "location_id",unique = true)
  private String locId;

}

但是,每当我尝试使用JPA respository执行delete命令时,即deleteById(id),该操作将同时删除chlllingUnitMonitoringDetails和location

但是它应该只删除chlllingUnitMonitoringDetails行,而不是位置,谁能告诉我为什么位置也被删除了??

如何防止这种情况??

代码语言:javascript
运行
AI代码解释
复制
public interface ChillingUnitMonitoringRepository<T> extends JpaRepository<ChillingUnitMonitoringDetailsDAO<T>,Long> {

}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-09-06 10:49:34

上面有@OnDelete(action = OnDeleteAction.CASCADE)注释。这意味着“在删除ChillingUnitMonitoringDetailsDAO的同时,也删除LocationDAO”。

我建议您对级联类型做一些研究。您可以从这里开始:https://www.baeldung.com/jpa-cascade-types

如果Location字段上方有cascade = javax.persistence.CascadeType.ALLcascade = javax.persistence.CascadeType.REMOVE,则删除操作也将级联。

票数 1
EN

Stack Overflow用户

发布于 2019-09-06 10:45:43

只要删除行@OnDelete(action = OnDeleteAction.CASCADE)即可。

票数 0
EN

Stack Overflow用户

发布于 2019-09-06 12:45:03

您应该删除级联。

@ManyToOne(fetch = FetchType.EAGER,optional = false) @JoinColumn(name = "location_id")

@JsonIgnore @EqualsAndHashCode.Exclude私有LocationDAO位置;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57820394

复制
相关文章
为什么采用HTTPS是如此重要
随着越来越多的数据泄露事件被披露,网络安全和隐私问题成为信息安全的雷区。从而迫使越来越多人放弃标准的HTTPS协议,使用更安全的HTTPS安全加密协议。
迅达集团
2019/03/22
4920
为什么OpenFlow没有被广泛采用?
可操作性与可扩展性问题 OpenFlow的终端用户以及市场人员明确指出其技术问题:操作复杂,很难测试以及扩展。 这不是OpenFlow的核心技术问题,但确是其生态系统中很重要的一部分,像与芯片厂商以
SDNLAB
2018/03/30
1.3K0
为什么OpenFlow没有被广泛采用?
为什么考虑采用虚拟桌面基础架构?
将虚拟桌面基础架构(VDI)包含在公司战略规划中,是因为它为IT以及用户带来了灵活性以及众多功能。VDI具备弹性,而且有助于培育创新文化。 平板电脑、移动设备、可穿戴设备以及变化莫测的云计算模型对我们未来如何进行计算带来了不确定性。因此,凭直觉来看,在应用VDI上投入这么多的时间、精力以及资金有悖常理。但事实是采用VDI是有意义的,这是因为所有的“动荡与混乱”都源于我们如何计算。投资VDI在于选择一个创新路径并采用动态方式支持最终用户的需求。 VDI不仅仅是提供Windows桌面—而是无论用户采用什么设备或
静一
2018/03/20
7220
为什么MySQL索引结构采用B+树?
一位6年经验的小伙伴去字节面试的时候被问到这样一个问题,为什么MySQL索引结构要采用B+树?这位小伙伴从来就没有思考过这个问题。只因为现在都这么卷,后面还特意查了很多资料,他也希望听听我的见解。
Tom弹架构
2022/08/22
7650
为什么MySQL索引结构采用B+树?
为什么运营商采用SD-WAN?
应用软件和流量模式的结构变化让网络发生了彻底的改变,数据中心网络虚拟化已经开始渗入到WAN网络的其他部分,成为这一转变中的典型代表。 大型运营商正在观察这演变带来的机会--不仅仅是从MPLS到宽带互联网的简单过渡,软件定义广域网(SD-WAN)为运营商描绘了下一代技术的新收益模式。原因如下:运营商通常依赖于合作的供应商的电路和基础设施向企业提供端到端服务,利润被这些第三方厂商所侵蚀。凭借SDN-WAN,运营商可以使用现有的有利可图的底层电路技术如第三方MPLS电路、宽带互联网甚至LTE/4G
SDNLAB
2018/04/03
7930
为什么运营商采用SD-WAN?
微信红包业务,为什么采用轮询算法?
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/07/19
7160
微信红包业务,为什么采用轮询算法?
vue 数据双向绑定的实现方法
这篇文章主要介绍了vue 数据双向绑定的实现方法,帮助大家更好的理解和学习使用vue框架,感兴趣的朋友可以了解下
米米素材网
2022/07/24
7890
vue 数据双向绑定的实现方法
如何采用简化方法进行需求分析
  需求分析阶段是管理信息系统(MIS)开发最重要的阶段。MIS开发的需求阶段首先是了解和澄清用户的需求,然后严格地定义被开发的软件系统的需求规格说明书[1]。常用的软件需求分析方法有面向数据流的结构化分析方法、面向数据结构的Jackson方法、面向对象的方法和原型法等。原型法由于改变了系统的分析、设计和实现三个顺序阶段的观点[2],改变了传统的自顶向下的开发模式,降低了软件需求的风险,因此得到了广泛的应用,特别是在致力于某一领域MIS开发的软件公司,如致力于电力MIS开发的公司。但作者在长期的MIS需求分析过程中,发现原型法有以下缺陷:
阿新
2019/02/13
6790
武大+上交提出 BatGPT:创新性采用双向自回归架构,可预测前后token
本论文介绍了一种名为BATGPT的大规模语言模型,由武汉大学和上海交通大学联合开发和训练。
zenRRan
2023/08/22
2890
武大+上交提出 BatGPT:创新性采用双向自回归架构,可预测前后token
为什么敏捷估算采用斐波那契数列?
我在ThoughtWorks经历的一些敏捷交付项目中,估算方式有采用人天的“绝对”估算,估算值采用的是自然升序序列,比如1、2、3、4、5... 。也有采用复杂度相对估算,估算值有采用自然升序数列的,最多的还是斐波数列(1,2,3,5,8,13,21,34.....,前头去掉了一个1)。我还听过一种相对估算,估算值采用衣服尺寸,比如:S,M,L,XL,XXL,XXL。由于经验匮乏,这种估算我本人只是听说过,实际中没有经历过,但我对这种估算是心存疑虑的...
袁慎建@ThoughtWorks
2020/05/08
1.6K0
Google 和腾讯为什么都采用主干开发模式?
本文介绍了两种常用的代码分支模式:特性分支开发模式、主干开发模式,分别阐述了其优缺点和适用环境;同时剖析了 Google 和腾讯采用主干开发模式的背景和决策因素,捎带分享了这 2 个巨头的实践,供读者在技术选型中参考。
深度学习与Python
2021/06/08
3.1K0
Google 和腾讯为什么都采用主干开发模式?
为什么您的企业要采用边缘计算架构
物联网(IoT)有望在未来十年实现爆炸性增长,预计到2025年,物联网设备的增长将超过750亿,在短短10年内能实现5倍的飞跃。
边缘计算
2020/05/22
6360
windows下mysql双向同步备份实现方法
准备两台Windows NT 主机,分别安装好iKEY Server windows 版本,确定版本无误,确保mysql服务正常启动,确保两台主机处于同一个局域网中,确定好哪台做为主、备机器,假设A为主机,B为备机,假设A主机IP地址为:192.168.1.101,B主机IP地址为192.168.1.102
会长君
2023/04/26
1.2K0
为什么 Java 后端开发没有大规模采用 Kotlin?
在使用了 Java 15 年后,我写了第一行 Kotlin 代码,到现在已经差不多 5 年了。我们的团队用 Utterlyidle 替代 Spring,用 Totallylazy 进行函数式编程。我们是 IntelliJ 的忠实粉丝,并试着充分利用它提供的 Java 工具。
深度学习与Python
2021/04/21
1.1K0
excel双向查找的9种方法
可能有同学会说,解决问题会一种就可以了,干嘛伤脑筋学这么多。其实有这种观点的你不可能学好EXCEL,因为学excel就是学解决问题的思路,一题多解就是学习excel思路的大好时机。
用户1756920
2018/07/23
6200
excel双向查找的9种方法
采用面向对象的方法编写程序
虽然这一章我们课没有学,也是最后一章,但是我觉得很重要所以就自己自学了,并且在mooc上,我还会系统的学习c++面向对象的程序设计。这里书上讲的很笼统,也很少,我主要学一下一些模板的使用
废江_小江
2022/09/05
1740
046|为什么要采用自动化仓储物流系统?
相信很多人看过京东最近推广的一个新闻:位于东莞的新一代的“亚洲一号”在2019年12月18日正式投入使用。目前是亚洲最大规模的一体化智能物流中心。“东莞亚洲一号”该中心建筑面积近50万平米,单日订单处理能力达到160万单,自动立体仓库可同时存储超过2000万件商品。
老King
2020/04/09
7300
046|为什么要采用自动化仓储物流系统?
价格已腰斩,为什么比特币仍得到多方采用?
2022年以来,加密市场持续动荡,至今已距2021年高点价格下降超50%。然后价格腰斩似乎并未影响比特币的采用。加密在重新定义所有权和价值转移方面仍出现了一些令人兴奋的发展。
小将
2022/05/25
2940
价格已腰斩,为什么比特币仍得到多方采用?
采用敏捷方法的原因是什么?
如今,在瞬息万变的商业环境中,企业不断受到压力以适应不断变化的市场条件。越来越多的公司采用敏捷开发实践来帮助他们保持竞争力。敏捷过程是高度协作的、迭代的,并且所有过程都集中在快速和可重复的软件交付上。
Warren2Lynch
2018/12/21
1.7K0
采用敏捷方法的原因是什么?
点击加载更多

相似问题

JpaRepository deleteById()方法无效

12

AssertionFailedError deleteById

11

双向通信采用异步FIFO?

111

Spring :存储库DeleteById方法不工作

17

SOLRJ deleteById不工作

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文