Spring Jpa Hibernate 外键关联

本文探讨了Spring JPA中@OneToMany和@ManyToOne注解的单独及联合使用,详细阐述了一对多和多对一关系的实现。通过配置可以避免中间表的生成,同时提到了双向绑定可能导致的死循环问题及其解决方案,建议根据业务需求选择单向关联以减少资源浪费。
摘要由CSDN通过智能技术生成

@OneToMany单独使用

  1. 一对多关系,注解单独使用时会产生中间表。
  2. 配合@JoinColumn(name = "") 可以不产生中间表,外键生成在Many方。name属性指定了生成的外键的名字。

@ManyToOne单独使用

  1. 多对一关系,注解单独使用时不会产生中间表
  2. 外键生成在Many方,使用@JoinColumn(name = "")可以指定生成的外键的名字。

@OneToMany和@ManyToOne联合使用(双向绑定)

  1. 双向绑定。
  2. 使用@OneToMany(mappedBy = "")来避免生成中间表。
  3. @ManyToOne@JoinColumn(name = "", referencedColumnName = "")配合使用,referencedColumnName声明外键指向的主键。
    例如,一个班级有多名学生:
\\班级表
@Entity
@Table(name = "class")
public class ClassDao {

        @Id
        private S
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值