gpt4 book ai didi

spring - 如何为 QueryDslPredicateExecutor 编写谓词

转载 作者:行者123 更新时间:2023-12-03 18:52:30 26 4
gpt4 key购买 nike

当我尝试使用 Querydsl 时,如 Spring 引用 Spring 1.10.4.RELEASE reference 中所示- 我从 IDE 收到一些错误:
无法解析方法 findAll(predicate)。我将导入更改为 com.mysema.query.types.Predicate。现在方法看起来不错。
但我无法解决以下问题:

Predicate predicate = user.getUsername().equalsIgnoreCase(username).and((user.getId().equals(userid)).not);

我遇到错误:无法解析方法:并且,无法解析方法。

一些引用:
示例 32. 存储库上的 Querydsl 集成
interface UserRepository extends CrudRepository<User, Long>, QueryDslPredicateExecutor<User> {

}

以上允许使用 Querydsl Predicate 编写类型安全查询。
Predicate predicate = user.firstname.equalsIgnoreCase("dave")
.and(user.lastname.startsWithIgnoreCase("mathews"));

userRepository.findAll(predicate);

但例子是不正确的。
有人知道这个怎么用吗?

最佳答案

你可能用错了user对象开始。我假设您目前正在使用您的域类 User但是你需要使用Querydsl生成的类,通常命名为QUser .

https://github.com/querydsl/querydsl/tree/master/querydsl-jpa例如代码。

QueryDsl - How to create Q classes with maven?了解如何使用 Querydsl 生成必要的类。

关于spring - 如何为 QueryDslPredicateExecutor 编写谓词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40633413/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com