Eclipselink JPA 实体 类 必须是 public 吗?
Do Eclipselink JPA Entity Classes have to be public?
如果这个问题之前已经发布过,或者如果信息很容易获得而我只是一个没有找到它的傻瓜,我深表歉意。我看了不少。我知道它们不能是私有的,因为 eclipselink 使用反射来实例化 类.
我似乎发现当我将类标记为私有时,一切都失败了。
但是,如果我将它们标记为受保护,则 LAZY 加载将失败,而 EAGER 可以正常工作。这是文档中某处的既定规则,还是只是有时有效?
换句话说,eclipselink jpa实体类必须是public吗?如果重要的话,我会使用 derby 嵌入式数据库作为我的基础数据库。
来自http://www.objectdb.com/java/jpa/entity/types
Entity Class Requirements
A portable JPA entity class:
- should be a top-level class (i.e. not a nested / inner class).
- should have a public or protected no-arg constructor.
- cannot be final and cannot have final methods or final instance variables.
由于顶级 classes 的可见性修饰符可以是 public
或包级别(如果未指定),答案是实体必须是顶级 class 即public
或具有包级可见性。
如果这个问题之前已经发布过,或者如果信息很容易获得而我只是一个没有找到它的傻瓜,我深表歉意。我看了不少。我知道它们不能是私有的,因为 eclipselink 使用反射来实例化 类.
我似乎发现当我将类标记为私有时,一切都失败了。 但是,如果我将它们标记为受保护,则 LAZY 加载将失败,而 EAGER 可以正常工作。这是文档中某处的既定规则,还是只是有时有效?
换句话说,eclipselink jpa实体类必须是public吗?如果重要的话,我会使用 derby 嵌入式数据库作为我的基础数据库。
来自http://www.objectdb.com/java/jpa/entity/types
Entity Class Requirements
A portable JPA entity class:
- should be a top-level class (i.e. not a nested / inner class).
- should have a public or protected no-arg constructor.
- cannot be final and cannot have final methods or final instance variables.
由于顶级 classes 的可见性修饰符可以是 public
或包级别(如果未指定),答案是实体必须是顶级 class 即public
或具有包级可见性。