2

我可以使用NEWJPQL 运算符将查询结果映射到里面DTO吗?

我测试了这段代码:

Query query = em.createNativeQuery("SELECT NEW com.sim.dtos.entities.FreeLocation(t1.galaxie, t1.ss, t1.position) FROM ...");

List<FreeLocation> l = query.getResultList();

但我有例外:

[#|2012-12-20T12:9:21.203+0100|警告|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=79;_ThreadName=Thread-2;| StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet 抛出异常 org.postgresql.util.PSQLException: ERREUR: erreur de syntaxe sur ou près de « 。» 职位:15

那么我可以将NEW运算符与本机查询一起使用吗?

4

1 回答 1

2

根据定义,本机查询是 SQL 查询。它必须包含特定数据库的有效 SQL。

查询将返回 a ,并且迭代列表并为每个数组List<Object[]>创建一个新实例应该是微不足道的。FreeLocationObject[]

于 2012-12-20T12:22:14.883 回答