实体之间的关系

问题描述 投票:0回答:1

我是一个简单的初学者,想学习编程,但我有点困惑

我有三个实体:管理员(唯一的卖家)、客户和产品。这些实体之间一定是下一个关系吗?

  • 管理员和产品 (@OneToMany)、产品和管理员 (@ManyToOne)
  • 客户和产品(@OneToMany),产品和客户(@ManyToOne)

管理员是唯一的卖家,他销售自己的产品,客户可以购买更多的产品。这是我的应用程序的主要思想。

另外,我是否必须在开始实体之间的关系之前创建身份验证和授权部分?

有人可以告诉我这是否是一个好方法? :)

我试图更好地理解实体关系的概念,但我不确定如何实现它们。

java mysql spring-boot spring-data-jpa
1个回答
0
投票

没有必要在实体之间使用双向关系。当您想以两种方式从另一个实体访问每个实体时,只需使用它即可。 最好使用这样的东西。

@Entity
public class administrator { 

@Id
@GeneratedValue(strategy= Identity)
private Long id;

@OneToMany
@JoinColumn(name="administrator_id")
private List<Customer> customers;

// Other properties

}


@Entity
public class Customer{

@Id
@GeneratedValue(strategy= Identity)
private Long id;

@OneToMany
@JoinColumn(name="Customer_id")
private List<Product> products;

// Other properties
}


@Entity
public class Product{

@Id
@GeneratedValue(strategy= Identity)
private Long id;

// Other properties
}

我认为这种数据模型更适合您的目的。

© www.soinside.com 2019 - 2024. All rights reserved.