繁体   English   中英

entityManager.createNativeQuery 不返回输入结果

[英]entityManager.createNativeQuery does not return a typed result

我需要使用entityManager选择本机查询 我找到了方法:

public Query createNativeQuery(String sqlString, Class resultClass);

并尝试使用它:

Query query = em.createNativeQuery(readyQuery, SmevMessage.class);
return query.getResultList();

但是 IDE 仍然突出显示为警告:

在此处输入图片说明

那么为什么会存在这种方法呢? 我该怎么做才能解决它?

你得到哪个警告? 您的 IDE 是否只警告您返回List的未经检查的转换?

你可以忽略那个。 不幸的是, createNativeQuery方法返回一个无类型的Query 您无法修复该警告。 如果它真的困扰你,你可以用@SuppressWarnings("unchecked")抑制它。

请注意,您需要提供一个实体类作为resultClass参数的值,正如我在此处解释的那样。 因此,在您的情况下, SmevMessage必须是一个实体。 如果要将查询结果映射到 DTO,则需要定义一个@SqlResultSetMapping

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM