第一項的JPA庫響應我的這些JPA實體(簡體):訂購中引用的實體
@Entity
class Trip {
@Id
Long tripId;
String travelerName;
@OneToMany
List<TripLeg> tripLegs;
}
@Entity
class TripLeg {
@Id
Long tripLegId;
Calendar departureDate;
@ManyToOne
Trip trip;
}
和這個倉庫:
interface TripRepository extends JpaRepository<Trip, Long> {
Page<Trip> findByTravelerName(String travelerName, Pageable pageable);
}
有什麼辦法那種旅行的腿之間的最早出發日期的頁面響應?通過查詢方法或JPQL,或者在Pageable的排序屬性中?
因此,舉例來說,此行:
{
id : 1,
travelerName : "John Doe",
tripLegs : [{
id : 3,
departureDate : 2015-10-03
}]
}
將排序後的這一個:
{
id : 2,
travelerName : "John Doe",
tripLegs : [{
id : 1,
departureDate : 2015-10-01
}, {
id : 2,
departureDate : 2015-10-05
}]
}
在每個TripLeg-IE的頁面中添加重複記錄,結果頁面從2次行程變爲3次(每次TripLeg排序一次)。 –
Sam Jones用查詢更新了答案,但請先測試它或嘗試將其轉換爲sql –