java singleresult方法_java – JPA:createNativeQuery.getSingleResult()返回一个对象,我怎样才能获得该对象中一个属性的值...

我有这样的查询

SET @rownum := 0;

SELECT rank, id, point FROM

(

SELECT @rownum := @rownum + 1 AS rank, id, point FROM user ORDER BY point DESC

) AS result

WHERE id = 0;

所以我使用EntityManager#createNativeQuery来执行这个查询.

Object temp = em.createNativeQuery(sql).getSingleResult(); //sql is the above SQL query

所以现在对象临时保存有关rank,id和point的信息.请注意,排名不是我的实体内的属性,排名是在查询执行时计算的 – >不能将此对象强制转换为我的实体.

那么如何才能获得排名的价值呢?

编辑

这是我正在寻找的答案.所以不要这样

Object temp = em.createNativeQuery(sql).getSingleResult();

做这个

Object[] temp = (Object [])em.createNativeQuery(sql).getSingleResult();

既然我想知道等级的价值,那么我会这样做

Long rank = (Long) temp[0];

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值