在JPA或Hibernate查询中使用Constructor Result会影响性能吗?

时间:2018-06-18 06:41:28

标签: java mysql performance hibernate jpa

我的Java DAO类中有以下查询:

Query query = session.createQuery(
    "select new Question(q.qid, q.qtype) from Question q where q.qlang=:lang "
);
  1. 在hibernate查询中使用新构造函数会影响性能吗?它以什么方式受到影响?
  2. 无论是上面的java代码还是它转换成的SQL查询,或者将SQL结果汇总到Question对象中,是否会增加或降低应用程序的整体性能?

1 个答案:

答案 0 :(得分:1)

如果您在谈论构造函数结果,那么在担心性能之前,您应该问自己一个不同的问题。

  

JDBC ResultSet是否适合我的数据访问层服务   图层和UI?

对于大多数应用程序,答案是。表格式JDBC ResultSet不适合用OOP语言开发的应用程序,因为您需要对象图,即使将结果推送到客户端(例如JSON)。

为此,您需要DTO或实体。