Hibernate 如何从jpa-named-querys.properties获取查询

Hibernate 如何从jpa-named-querys.properties获取查询,hibernate,spring-data-jpa,spring-data,nativequery,hibernate-native-query,Hibernate,Spring Data Jpa,Spring Data,Nativequery,Hibernate Native Query,我正在使用jpa命名查询.properties文件为我的存储库接口编写HQL和本机查询 现在的问题是,当我编写本机查询时,返回的值不能直接转换到实体中,因为在实体中定义为Long的列现在被更改为BigInteger。PFB 我也得到了将本机查询转换为实体的解决方案,但我希望我的查询保留在jpa named querys.properties中,我不希望它在DAO实现中硬编码 Query q = getEntityManager().createNativeQuery("select

我正在使用jpa命名查询.properties文件为我的存储库接口编写HQL和本机查询

现在的问题是,当我编写本机查询时,返回的值不能直接转换到实体中,因为在实体中定义为Long的列现在被更改为BigInteger。PFB

我也得到了将本机查询转换为实体的解决方案,但我希望我的查询保留在jpa named querys.properties中,我不希望它在DAO实现中硬编码

Query q = getEntityManager().createNativeQuery("select * from todo", Todo.class);
    List<Todo> l = q.getResultList();
TodoRepo.java

@Repository
public interface TodoRepo extends JpaRepository<Todo, Long> {
      @Query(nativeQuery = true)
      public void getList();
}
@存储库
与Orepo的公共接口扩展了JpaRepository{
@查询(nativeQuery=true)
public void getList();
}

首先,尝试读取属性文件(),然后在
createNativeQuery
中传递字符串,谢谢@Rono的建议,有一个疑问,因为该文件已经加载到上下文中,存储库接口正在读取该文件,加载与属性源相同的属性文件是否好??我只是想知道,为了不同的目的加载两次是否会导致任何性能问题或诸如此类的问题?如果您已经在上下文中加载了,那么使用它就是问题所在,我知道它在上下文中,因为存储库接口正在读取它,但是,我不知道如何读取它,因为它是在我将它放入\src\main\resources\META-INF\jpa-named-querys.properties后由spring boot自动拾取的。有什么建议我怎么读这个文件吗?如果使用
@Query(name=“TodoRepo.getList”,…
,会发生什么情况?我不确定它是否只适用于JPQL。
@Repository
public interface TodoRepo extends JpaRepository<Todo, Long> {
      @Query(nativeQuery = true)
      public void getList();
}