![](/img/trans.png)
[英]When to choose @RequestParam over @PathVariable and vice-versa?
[英]@ElementCollection over @OneToMany or vice-versa
假设我确实有一个Offer
实体。 它有一个可以是Salary
对象列表的属性salaries
。 Salary
没有Offer
就不能存在,所以这是否意味着我应该使用@ElementCollection
或不可以? 我们应该何时使用@ElementCollection
以及何时使用@OneToMany
。 当我们谈论@Embeddable
和@Embedded
时,我会想到同样的问题,是否值得使用它,或者拥有@OneToOne
关系会更好。
class Salary(
val salary_from: Integer,
val salary_to: Integer,
val salary_type: Type
)
class Offer(
@ElementCollection
@CollectionTable(name = "offer_salaries", joinColumns = @JoinColumn(name = "offer_id"))
@OrderColumn
@Column(name = "salaries")
val salaries: List<Salary>;
)
@OneToMany
适用于当您想将 map 作为实体添加到数据库表时。 @ElementCollection
:您可以将其视为用于映射非实体的常规集合。
参考: @OneToMany 和 @ElementCollection 之间的区别?
EG:你有一个Perfume
实体,它有2
列表。
@ElementCollection
),因为它包含一些不是实体的属性。@oneToMany
,因为它应该被映射为一个实体)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.