使用Factory创建JPA实体

时间:2013-09-18 10:40:26

标签: java jpa persistence batoo

我正在考虑创建实体的JPA 2.0映射,但是我不希望有任何setter或暴露构造函数,我想使用Factory来创建我的类,只要从db中获取它。 我已经看过专业的JPA 2.0书和一些在线文章,但找不到类似的东西,有没有人做过这样的事情?

谢谢,

2 个答案:

答案 0 :(得分:1)

使用字段访问权限并添加私有构造函数。 JPA可以访问私人领域。

答案 1 :(得分:0)

工厂模式实际上是JPA实体的一个很好的候选者。但是,实际上不可能让实体管理器在获取时使用自定义工厂,除非您自己进行JPA实现。 但仍有许多工厂应用,尤其是CRUD程序。最重要的恕我直言是字段的上下文依赖默认值,当然涉及用户创建的新实体。 对于完整堆栈java-ee应用程序,我更喜欢使用Singleton EJB来实现此目的,因为它可以轻松访问JPA实体管理器。 您可以为实体创建受保护的构造函数以防止用户实例化。