我可以在JSF Bean中使用JPA实体吗?

时间:2016-06-15 07:28:30

标签: jsf jpa java-ee

我刚刚发现了一段很旧的代码,它直接在JSF bean中使用JPA实体。对我来说,这似乎是错误的,因为我一直希望将实体保留在后端/服务层中,然后创建单独的对象以在前端/ bean中使用。

实体上没有设置任何内容,也没有打开任何事务,所以不存在更改任何内容的风险,但我仍然担心使用getter会每次查询数据库,因为它都是懒惰的。所以我觉得最好先预先获取所需数据并将其加载到另一个对象中。

与我团队中的其他人讨论过这个问题后,有些人似乎并不关心它,但这对我来说似乎并不合适。我希望有人能给我一些关于正确使用的信息和原因?

由于

1 个答案:

答案 0 :(得分:1)

从技术上讲,可以将JPA实体传递给JSF bean,但这不是一个好的设计。

如果您尝试按照S.O.L.I.D. principles进行操作,则会破坏Single Responsibility Principle,因为您在同一个类中混合了不同的抽象层。