在jsp中显示hibernate查询结果的最佳方法

时间:2015-08-02 08:40:15

标签: java hibernate java-ee jpa orm

由于“在视图中打开会话”模式有一些缺点(参见Why is Hibernate Open Session in View considered a bad practice?),我想知道将hibernate查询的结果显示到jsp页面的最佳方法是什么?

我想到的一个方法是在请求中放入一个java.util.list对象,并将内容输出到jsp页面。还有其他/更好的方法吗?

1 个答案:

答案 0 :(得分:1)

最好的方法是在UI视图中使用DTO投影。这样您就可以避免LazyInitializationExceptions,并确保只在特定视图中获取所需内容。从性能的角度来看,无论如何都没有什么能胜过SQL投影。

DTO投影如下所示:

select new my.package.UserInfo(u.name, u.age, u.gender)
from Users u