私はあなたのようなPOJOを取得リクエストパラメータをバインドすることができます知っている:/予約:リクエストに春REST - ネストされたオブジェクトにGETパラメータを結合
public class ReservationCriteria {
String hotelName;
DateRange reservationDateRange;
//getters-setters omitted
}
:のようなPOJOを使用して
@RequestMapping(value = "/reservation",
method = RequestMethod.GET,
produces = MediaType.APPLICATION_JSON_VALUE)
public List<Reservation> loadReservations(ReservationCriteria criteria)
return service.loadReservations(criteria);
}
?hotelName = myHotel
myHotelはReservationCriteriaオブジェクトのhotelNameにバインドされます。
しかし、どのようにパラメータをネストされたオブジェクトDateRangeにバインドできますか?
/reservation?hotelName=myHotel&reservationDateRange={fromDate=14.04.2016,toDate=15.04.2016}
または私は別々のリクエストパラメータを宣言し、それらを手動でバインドする必要があります:どのように定義:ようなものを結合のようなものを可能にするURLパターンは
public class DateRange {
Date from;
Date to;
//getters-setters omitted
}
ありますか?
@RequestMapping(value = "/reservation",
method = RequestMethod.GET,
produces = MediaType.APPLICATION_JSON_VALUE)
public List<Reservation> loadReservations(
ReservationCriteria criteria,
@RequestParam Date from,
@RequestParam Date to)
DateRange range = new DateRange();
range.setFrom(from);
range.setTo(to);
criteria.setDateRange(range);
return service.loadReservations(criteria);
}
それは他の多くのプロジェクトで使用されているので、私はリファクタリングの多くを行うことが原因と思われる、ReservationCriteriaクラスを変更しないことを好むだろう。
助けることができることを願っています。 – Reek
予約する場合は、予約を変更して登録するだけです。 –
あなたはコンバータを提供する方法を詳しく教えていただけますか? – benaich