我有一个带有日期字段的类,所以我可以设置并获取日期。 感谢JPA,我可以通过本课程中的任何字段轻松获取数据库排序中的所有类行。
问题在于,我只希望获得日期大于或低于发送值的行。
像这样的东西:SELECT * FROM example WHERE example.date < biggerDate AND example.date > lowerDate;"
我休息了一个功能:
public List<example> getDataBetween(String older, String newer) {
return em.createQuery("SELECT row FROM example row WHERE row.date < " + older + " and > " + newer).getResultList();
}
所以现在我想发送包含较旧和较新值的JSON。
{ older: '2011-01-01', newer: '2005-01-01' }
我怎样才能在
中获得这些值@POST
@Path("/getBetween")
@Consumes(MediaType.APPLICATION_JSON)
public List<example> getBetween(***WHAT SHOULD BE HERE?***) {
//I NEED older and newer here
return service.getDataBetween(older, newer);
}
我无法将示例设置为getBetween参数,因为Example类没有较旧和较新的字段。我希望这些参数仅用于函数getDataBetween调用。
在这种情况下我怎么能拿JSON?
答案 0 :(得分:0)
答案是使用JSONObject。
@POST
@Path("/getBetween")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public List<data> getBetween(JSONObject json) throws JSONException {
String older = json.get("older").toString();
String newer = json.get("newer").toString();
return ds.getDataBetween(older, newer);
}