Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将每个参数的本机查询传递给JpaRepository接口_Java_Spring_Spring Data Jpa - Fatal编程技术网

Java 将每个参数的本机查询传递给JpaRepository接口

Java 将每个参数的本机查询传递给JpaRepository接口,java,spring,spring-data-jpa,Java,Spring,Spring Data Jpa,我需要创建一个扩展JpaRepository的接口,在这个接口中,我希望通过参数传递本机select查询,而不是在@query注释中保留静态。我不想使用@Query value=select*from a=:a,nativeQuery=true,而是想使用下面的代码示例 公共接口MeuRepository扩展了JpaRepository{ @Queryvalue=query,nativeQuery=true 列表findCustomNativeQueryString查询; } 是否可以按照上面例

我需要创建一个扩展JpaRepository的接口,在这个接口中,我希望通过参数传递本机select查询,而不是在@query注释中保留静态。我不想使用@Query value=select*from a=:a,nativeQuery=true,而是想使用下面的代码示例

公共接口MeuRepository扩展了JpaRepository{ @Queryvalue=query,nativeQuery=true 列表findCustomNativeQueryString查询; } 是否可以按照上面例举的代码进行操作?
如何使用?

如果必须使用本机查询,请使用自定义实现

public interface  MeuRepositoryCustom {
  List<MeuEntity> findCustomNativeQuery(String query);
}
然后

最后是您的存储库接口

public interface MeuRepository extends JpaRepository<MeuEntity, Integer>, MCustomRepository{

 }
请注意,命名在这里是至关重要的,因为自定义接口必须命名为***custom,其实现必须是***Impl

有关更多信息,请参见第1.3点

这里是文档的更新版本


我需要为我的所有存储库创建一个***自定义和***Impl?Spring数据的全部思想是避免创建自定义的普通查询,如果您想返回,那么是的。威胁将其作为向后兼容机制;但是你可以让你的自定义界面变得通用,让所有的存储库都扩展它。我需要自定义where,这样我就可以传递一个映射并动态地构建where来组成select。明白吗?是的,我会使用CriteriaQuery来实现这一点,看起来这是在定制回购实现中实现这一点的唯一选择。如果你有这样复杂的标准,这就是方法。我不知道如何做到这一点,我需要一步一步
public interface MeuRepository extends JpaRepository<MeuEntity, Integer>, MCustomRepository{

 }