Java hibernate-类的模型

Java hibernate-类的模型,java,hibernate,Java,Hibernate,我刚进入hibernate,我想解决一些疑问。起初,我一直在寻找某种实体,我想了解如何映射我的实体,但我没有发现任何东西如此“comum”和简单易懂,我需要帮助 我有一个名为“client”的类,另一个名为“address”,另一个名为“company”,client有一个地址列表,company只有一次,但是我如何映射它呢 我说,什么时候使用@manytoone(映射者)或其他类型 我的班级客户: @Entity public class Client { @Id @Gener

我刚进入hibernate,我想解决一些疑问。起初,我一直在寻找某种实体,我想了解如何映射我的实体,但我没有发现任何东西如此“comum”和简单易懂,我需要帮助

我有一个名为“client”的类,另一个名为“address”,另一个名为“company”,client有一个地址列表,company只有一次,但是我如何映射它呢

我说,什么时候使用@manytoone(映射者)或其他类型

我的班级客户:

@Entity
public class Client {
    @Id
    @GeneratedValue
    private long id;
    private String name;
    //Adress
    private List<Adress> adress;
}
我的班级公司:

@Entity
public class Company{
    @Id @GeneratedValue
    private Long id;
    private String name;

    //Adress
    private Adress adress;
}

地址通常是一对一。也就是说,一家公司不会与另一家公司共享地址,是吗?因此,您可以尝试:

  @OneToOne(cascade = CascadeType.ALL)
  @JoinColumn(name="address_id")
  private Adress address;

我进行了测试,结果是正确的,我没有将连接列放在正确的位置
  @OneToOne(cascade = CascadeType.ALL)
  @JoinColumn(name="address_id")
  private Adress address;