我需要通过 entityManager 选择本地查询。我找到了方法:
public Query createNativeQuery(String sqlString, Class resultClass);
并尝试使用它:
Query query = em.createNativeQuery(readyQuery, SmevMessage.class);
return query.getResultList();
但是IDE仍然作为警告突出显示:
为什么此方法存在?我应该怎么做才能解决它?
答案 0 :(得分:1)
您会收到什么警告?您的IDE是否仅警告您有关返回的List
的未经检查的转换?
您可以忽略那个。不幸的是,createNativeQuery
方法返回了无类型的Query
。您无法解决该警告。如果确实困扰您,您可以使用@SuppressWarnings("unchecked")
来压制它。
请注意,您需要提供一个实体类作为resultClass
参数的值,如我所解释的here。因此,在您的情况下,SmevMessage
必须是一个实体。如果要将查询结果映射到DTO,则需要define an @SqlResultSetMapping
。