Java Spring数据Cassandra:仅当参数不为null时在何处运行

Java Spring数据Cassandra:仅当参数不为null时在何处运行,java,spring,spring-boot,cassandra,spring-data-cassandra,Java,Spring,Spring Boot,Cassandra,Spring Data Cassandra,正如你所知,你可以在春天做这样的事情,卡桑德拉: @Query("SELECT * from Report WHERE :param1 = "test") List<Report> findByParam1(@Param String param1); @Query(“从报告中选择*,其中:param1=“test”) 列出findByParam1(@Param String param1); 但是如果Param1为null怎么办?我想创建一个查询,如果没有要检查的Param1,

正如你所知,你可以在春天做这样的事情,卡桑德拉:

@Query("SELECT * from Report WHERE :param1 = "test")
List<Report> findByParam1(@Param String param1);
@Query(“从报告中选择*,其中:param1=“test”)
列出findByParam1(@Param String param1);

但是如果Param1为null怎么办?我想创建一个查询,如果没有要检查的Param1,则忽略“where”子句。在CASSANDRA中这样做可能吗?

您正在查找的内容不是直接可能的。但是您可以通过创建另一个不带param的方法findAll方法并在param为null时调用它来实现同样的效果

范例

@Query("SELECT * from Report WHERE :param1 = "test")
List<Report> findByParam1(@Param String param1);

@Query("SELECT * from Report")
List<Report> findAll();
@Query(“从报告中选择*,其中:param1=“test”)
列出findByParam1(@Param String param1);
@查询(“从报告中选择*)
列出findAll();
现在,基于对is param null的检查,您可以调用
findByParam1(param)
findAll()
方法