【发布时间】:2018-07-07 11:30:03
【问题描述】:
JPAQuery<String> query = jpaQueryFactory.select(userEntity.id);
query.from(userEntity);
query.orderBy(userEntity.createdAt)
在上面的代码中,我不能为 createdAt 调用 asc(),因为它是 SimplePath 类型。还有其他选择吗?
【问题讨论】:
JPAQuery<String> query = jpaQueryFactory.select(userEntity.id);
query.from(userEntity);
query.orderBy(userEntity.createdAt)
在上面的代码中,我不能为 createdAt 调用 asc(),因为它是 SimplePath 类型。还有其他选择吗?
【问题讨论】:
没用过QueryDSL,但是orderBy签名是
public Q orderBy(OrderSpecifier<?>... o)
所以它期望一个或多个OrderSpecifier 作为参数。单击 OrderSpecifier 会导致 this documentation,显示以下构造函数:
public OrderSpecifier(Order order, Expression<T> target)
Order 是一个简单的枚举。单击Expression 会导致this documentation,其中列出了该接口的所有实现类。其中包括SimplePath,这是您尝试订购的属性的类型。
javadoc 是一个非常有用的资源,并且非常易于浏览。使用它。
【讨论】: