java – JPA query.getResultList()?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – JPA query.getResultList()?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1209字,纯文字阅读大概需要2分钟。
内容图文
![java – JPA query.getResultList()?](/upload/InfoBanner/zyjiaocheng/703/3ef84a26de6b48f6a30e72eab2d2a6d8.jpg)
我使用JPA 1.0:
Query query;
query = em.createNamedQuery("getThresholdParameters");
query.setParameter(1, Integer.parseInt(circleId));
List<Object[]> resultList = new ArrayList();
resultList = query.getResultList();
这里我得到了List< Object []>的结果,因此我必须键入将该行的所有参数转换为它们各自的类型,这很麻烦.
在JPA 2.0中,有TypedQuery返回类型为1的实体对象指定.
但是当我使用JPA 1时,我无法使用它.
如何获得结果作为我想要的类型的实体对象?
编辑:
QUERY
@Entity
@Table(name="GMA_THRESHOLD_PARAMETERS")
@NamedQuery(
name = "getThresholdParameters",
query = "select gmaTh.minNumberOc, gmaTh.minDurationOc, gmaTh.maxNumberIc, gmaTh.maxDurationIc, gmaTh.maxNumberCellId,"
+ "gmaTh.distinctBnumberRatio, gmaTh.minPercentDistinctBnumber from GmaThresholdParameter gmaTh "
+ "where gmaTh.id.circleId=?1 AND gmaTh.id.tspId=?2 AND gmaTh.id.flag=?3 "
)
解决方法:
您的查询选择了许多字段.这样的查询总是返回Object数组的列表.如果您想要一个包含GmaThresholdParameter实体实例的列表,那么查询应该是
select gmaTh from GmaThresholdParameter gmaTh
where gmaTh.id.circleId=?1 AND gmaTh.id.tspId=?2 AND gmaTh.id.flag=?3
然后,获取实体列表的代码将是
List<GmaThresholdParameter> resultList = query.getResultList();
您将从编译器获得类型安全警告,您可以忽略.
内容总结
以上是互联网集市为您收集整理的java – JPA query.getResultList()?全部内容,希望文章能够帮你解决java – JPA query.getResultList()?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。