如何使用jpa本地查询获得单个对象。我做了一些研究,但给出的答案都是使用“getsingleresult”,但它没有返回我想要的结果。例如,如果我想在数据库中获取表的计数并将其取为整数,我应该怎么做。
下面的代码显示了如何使用session hibernate实现这一点:
int check = Integer.parseInt((String) sessionF.createSQLQuery("select to_char(count(*)) as count from user_tables where table_name upper('TEST')").uniqueResult());
我希望在jpa中表现良好:
int check = Integer.parseInt((String) getEntityManager().createNativeQuery("select to_char(count(*)) as count from user_tables where table_name upper('TEST')").getSingleResult());
显然,代码没有返回我想要的。因此,请帮助我解决这个问题。谢谢您!
3条答案
按热度按时间6fe3ivhb1#
对于jpa,你需要做如下的事情
编辑时间:
您将获得num object的count
希望它能对你有所帮助。
41zrol4v2#
如果本机查询包含多个select表达式,则返回
Object[]
(或List<Object[]>
).您可以根据需要使用下面的示例代码。
你可能需要打印结果
Array
价值观。cdmah0mi3#
这可能对某人有帮助。要获取单个对象,可以选择以下任一选项:
方法1:
方法2:
注意:为了简单起见,我刚刚打印了它。你可能需要打字。检查方法1或方法2所花费的时间是否更适合您。