作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我尝试使用 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);
interface UserRepository extends CrudRepository<User, Long>, QueryDslPredicateExecutor<User> {
}
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/
我是一名优秀的程序员,十分优秀!