弹簧数据 JPA 和可以为空的参数
我的理解是,使用Spring数据JPA,我不能有一个查询方法来获取列等于给定非空方法参数的所有行,并在方法参数为空时使用相同的方法来获取此列为NULL的所有行。
这是对的吗?
因此,我必须在我的JAVA代码中区分这一点,并且我必须使用单独的查询方法显式要求空值,如下面的示例所示?
// Query methods
List<Something> findByParameter(Parameter parameter);
List<Something> findByParameterIsNull();
...
List<Something> result = new ArrayList<>();
if (parameter == null)
result = findByParameterIsNull();
else
result = findByParameter(parameter);
这很糟糕,如果我有4个参数,这些参数可能是空的,并且必须编写16种不同的查询方法。