我将尝试使用Spring Data JPA获取一个查询的结果。在这里,我将发送一些参数并根据其接收结果。
我的repository查询如下:
@Query("select u.username,p.pname from Users u join u.priviJoin p where u.username = :uname AND p.pname = :pname")
List<Users> findByUsername(@Param("uname") String uname , @Param("pname") String pname );
如下所示,在控制器中进行调用:
@RequestMapping(value = "/joinResult", method = RequestMethod.GET)
public List<Users> joinResultShow()
{
return (List<Users>) userRepo.findByUsername("test_user","testRole");
}
在这里,我们可以看到只有当我传递了某个值时才根据该参数进行检查。在这里,我需要修改我的查询,如果参数为空,则不需要在查询中使用AND条件。
如果参数为空,我该如何修改此查询以避免AND条件?我是Spring Data JPA世界的新手。