我正在计划基于 Java EE/JPA 技术的第一个 Web-App。我知道 JPA 将 Java 类的对象结构映射到基于继承层次结构的数据库结构。共有三种映射策略:
- SINGLE_TABLE
- 已加入
- TABLE_PER_CLASS
Java中的一个对象可能有引用的对象,这个对象可能有更多的引用对象等等。我读到这些关系是通过方便的@OneToMany、@ManyToMany、@OneToOne 注释在类中定义的。我可以将这些关系 FetchType 定义为 EAGER 或 LAZY。
在高级继承结构(可能包含某种关系中的圆圈)中,默认的 EAGER 提取不会自动导致性能问题吗?是否有可能限制获取级别,例如在 X 上的深度?