我将一个实体嵌入另一个实体,如下所示。
存储库在DepEntity
上创建。
我正在尝试检索按DepEntity
列排序的totalExp
对象
在ExpEntity
中。
我正在使用Pageable进行GET调用并收到错误消息:
2018-12-18 05:17:58.172警告7 --- [http-nio-8000-exec-3] .mmaExceptionHandlerExceptionResolver:已解决[org.springframework.data.mapping.PropertyReferenceException:没有发现类型为DepEntity的属性totalExp! ]
我尝试使用totalExp
,exp.totalExp
和exp_totalExp
,但它们均无效。 spring data jpa版本是2.1.1
@Entity
public class DepEntity {
@Embedded
private ExpEntity exp;
}
@Embeddable
public class ExpEntity {
@Column(name = "exp_total")
private BigDecimal totalExp;
}
我期望结果在嵌套属性
totalExp
上以排序的顺序进行。有没有办法做到这一点?
最佳答案
下面应该工作:
Sort sort = new Sort(Direction.DESC, "exp.totalExp");
PageRequest pageRequest = PageRequest.of(0, 10, sort);
Page<DepEntity> depEntities = depEntityRepository.findAll(pageRequest);