Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.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
Spring数据jpa嵌套对象如何定义复杂查询存储库_Spring_Spring Data Jpa - Fatal编程技术网

Spring数据jpa嵌套对象如何定义复杂查询存储库

Spring数据jpa嵌套对象如何定义复杂查询存储库,spring,spring-data-jpa,Spring,Spring Data Jpa,假代码 public class User{ private long id; private String name; @OneToMany private List<Address>address; // ......set get } 接口应该如何命名?Sql如下所示 从用户u中选择* u.id上的左加入用户\地址ua=ua.user\ id ua.address_id=a.id上的左连接地址a

假代码

 public class User{

      private long id;

      private String name;

      @OneToMany

      private List<Address>address;



        // ......set get

}
接口应该如何命名?Sql如下所示

从用户u中选择*

u.id上的左加入用户\地址ua=ua.user\ id

ua.address_id=a.id上的左连接地址a

其中u.name='xxx'和a.name='xxxxx'和a.is\u del=0

interface MyRepository<T, ID> extends Repository<T, ID> {

  List<User> ???();
}
接口MyRepository扩展存储库{
列表??();
}
接口用户存储库扩展了JPA存储库{
@查询(“从用户u中选择不同的u,地址a”+
“其中,美国的成员地址和”+
“u.name=:用户名和“+
“a.name=:addressName和”+
“a.isDel=:isDel”)
列出getUsers(@Param(“用户名”)字符串用户名,
@参数(“addressName”)字符串addressName,
@参数(“isDel”)整数isDel);
}
interface MyRepository<T, ID> extends Repository<T, ID> {

  List<User> ???();
}
interface UserRepository extends JpaRepository<User, Long> {

  @Query("select distinct u from User u, Address a " + 
         "where a member of u.address and " + 
         "u.name=:userName and " + 
         "a.name=:addressName and " + 
         "a.isDel=:isDel")
  List<User> getUsers(@Param("userName") String userName, 
                      @Param("addressName") String addressName, 
                      @Param("isDel") Integer isDel);
}