Spring 如何为QueryDslPredicateExecutor编写谓词
当我尝试使用Spring参考中所示的Querydsl时-我从IDE中得到一些错误: 无法解析方法findAll(谓词)。我将导入更改为com.mysema.query.types.Predicate。现在这个方法看起来不错。 但我无法解决以下问题:Spring 如何为QueryDslPredicateExecutor编写谓词,spring,spring-data,spring-data-jpa,predicate,querydsl,Spring,Spring Data,Spring Data Jpa,Predicate,Querydsl,当我尝试使用Spring参考中所示的Querydsl时-我从IDE中得到一些错误: 无法解析方法findAll(谓词)。我将导入更改为com.mysema.query.types.Predicate。现在这个方法看起来不错。 但我无法解决以下问题: Predicate predicate = user.getUsername().equalsIgnoreCase(username).and((user.getId().equals(userid)).not); 我遇到错误:无法解析方法:和,无
Predicate predicate = user.getUsername().equalsIgnoreCase(username).and((user.getId().equals(userid)).not);
我遇到错误:无法解析方法:和,无法解析方法
一些参考资料:
例32。存储库上的Querydsl集成
interface UserRepository extends CrudRepository<User, Long>, QueryDslPredicateExecutor<User> {
}
但这个例子是不正确的。
有人知道如何使用这个吗?您可能使用了错误的
用户
对象。我假设您当前正在使用域类User
,但您需要使用由Querydsl生成的类,通常命名为QUser
参见示例代码
有关如何使用Querydsl生成必要的类,请参见
Predicate predicate = user.firstname.equalsIgnoreCase("dave")
.and(user.lastname.startsWithIgnoreCase("mathews"));
userRepository.findAll(predicate);