大佬教程收集整理的这篇文章主要介绍了Spring Data REST的QueryDSL集成可以用于执行更复杂的查询吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我认为你应该可以使用以下定制功能使它起作用:
bindings.bind(user.dateOfBirth).all((path, value) -> {
Iterator<? extends LocalDate> it = value.iterator();
return path.between(it.next(), it.next());
});
此处的关键是使用?dateOfBirth=…&dateOfBirth=
(使用属性两次)和….all(…)
绑定,该绑定将使你能够访问提供的所有值。
确保将@datetiR_634_11845@eFormat
注释添加到的dateOfBirth
-property中,User
以便Spring能够正确地将输入内容Strings转换为LocalDate
实例。
目前,lambda得到了a Collection<? extends T>
,这使理清各个元素变得更加痛苦,但我认为我们可以在将来的版本中对此进行更改以更合理地暴露a List
。
我目前正在构建一个REST API,我希望客户端可以在其中轻松过滤特定实体的大多数属性。通过将QueryDSL与Spring Data REST结合使用,我可以通过允许客户端通过组合引用属性(例如/users?firstName=Dennis&lastName=Laumen
)的查询参数进行过滤,轻松达到我想要的90%。
我什至可以通过实现QuerydslBinderCustomizer接口来自定义查询参数与实体属性之间的映射(例如,不区分大小写的搜索或部分字符串匹配)。一切都很好,但是我也希望客户端能够使用范围过滤某些类型。例如,关于诸如出生日期之类的属性,我想执行以下操作/users?dateOfBirthFrom=1981-1-1&dateOfBirthTo=1981-12-31
。基于数字的属性也是如此/users?idFrom=100&idTo=200
。我觉得使用QuerydslBinderCustomizer
接口应该可以实现这一点,但是这两个库之间的集成并未得到广泛的记录。
最后,使用Spring Data REST和QueryDSL是否可能?如果是这样,怎么办?
以上是大佬教程为你收集整理的Spring Data REST的QueryDSL集成可以用于执行更复杂的查询吗?全部内容,希望文章能够帮你解决Spring Data REST的QueryDSL集成可以用于执行更复杂的查询吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。