我使用JpaRepository
和JpaSpecificationExecutor
從春季數據,我有一個問題排序的方法findAll(specification, pageable, sort)
春數據:訂購嵌套屬性
我想從一個嵌套的屬性規範的結果進行排序主要的回購類。這是我的情況:
主類
class Foo {
//other properties
@OneToMany(mappedBy="foo")
private Set<Bar> bars;
}
排序類
class Bar {
@ManyToOne
@JoinColumn(name="fooId")
private Foo foo;
//I WANT TO SORT BY THIS FIELD
@Column
private Date date;
}
,這是我的回購
interface FooRepo extends JpaRepository<Foo , Long>,
JpaSpecificationExecutor<Foo>{
//just jparepo methods
}
這是如何我想這個順序結果
void anymethod(){
Sort sort = new Sort(Bar_.date.getName());
PageRequest pr = new PageRequest(anyPage, anyMaxResultsNum, sort);
repository.findAll(anySpecification, pr);
}
當我運行這個我得到的「PropertyReferenceException:找不到類型Foo的屬性日期!」
我該怎麼做?
我有很多規範工作,以富,所以FooRepo是excencial。 – pablobaldez
我想要做一些這樣的事情:「new Sort(Order(」bars.date「))// This this as well as」 - 但使用元模型類。您知道我如何在元模型屬性之間導航? – pablobaldez
如果您想對「Foo」列表進行排序,您需要爲每個「Foo」選擇一個「Bar」進行排序,對吧? –