自定义存储库的java Spring数据解决方案优先级
我需要在Spring Data Solr自定义存储库中实现以下功能:
(X OR Y) AND Z
我目前的代码如下:
Criteria criteria = new Criteria("x").is(X_VALUE);
criteria = criteria.or(new Criteria("y").is(Y_VALUE);
criteria = criteria.and(new Criteria("z").is(Z_VALUE);
但运行此代码时,我得到以下优先级:
X OR (Y AND Z)
有什么想法吗
# 1 楼答案
当前API不允许这种条件组合。在DATASOLR-105上附加了一个补丁,虽然它不能完全解决问题,但可能会有所帮助
现在使用
SimpleStringCriteria
可能会有所帮助。请注意,值必须转换为Solr可读格式更新
版本
1.2
将修复此问题,因此可以按如下方式创建查询