首页 > 解决方案 > 一对多关系的 JPA 设计模型

问题描述

我有一个这样的数据库设计:tb_address( id, address )并且tb_store( id, name, address_id )两者tb_user( id, name, address_id )都是address_idtb_address 的引用键。我想使用spring-data-jpa. 我已经通过使用工具Intellij生成数据库脚本来创建模型一,但我没有得到我想要的。我得到的是这样的tb_address( id, address, store_id, user_id ),我不想要那样。所以请帮助我。

标签: spring-bootspring-data-jpa

解决方案


Models由于or的设计,您似乎没有得到想要的东西Entities。我想这就是你要找的:

@Entity
@Table(name = "td_address")
public class Address {

    @Id
    private Long id;
    private String address;

    //getters and setters

}

@Entity
@Table(name = "tb_store")
public class Store {

    @Id
    private Long id;
    private String name;
    @ManyToOne
    @JoinColumn(name = "address_id")
    private Address address;

    //getters and setters

}

@Entity
@Table(name = "tb_user")
public class User {

    @Id
    private Long id;
    private String name;
    @ManyToOne
    @JoinColumn(name = "address_id")
    private Address address;

    //getters and setters
}

推荐阅读