私はSpring Framework 3.1を使用しており、オブジェクトのリストを表示するページがあります。例えば:
<c:forEach var="person" items="${restaurants}">
...
</c:forEach>
そして、コントローラーメソッドのコード (1):
@RequestMapping(value = "/people",method = RequestMethod.GET)
private String restaurants(Map<String, Object> map) {
List<Restaurant> r=new ArrayList<Restaurant>();
for(int i=0;i<5;i++)
{
Restaurant restaurant=new Restaurant();
restaurant.setAbout("bla bla!"+i);
restaurant.setName("REstaurant"+i);
r.add(restaurant);
}
map.put("restaurants",r);
return "/restaurants";
}
ここで、AJAX を使用して情報を動的に変更したいと考えています。
Ajax Post Request(2)の私の方法:
@RequestMapping(value = "/restaurant")
private @ResponseBody List<Restaurant> restaurant(Map<String, Object> map,
@RequestParam(value = "id", required = false) Long id,HttpServletResponse response) {
List<Restaurant> r=new ArrayList<Restaurant>();
for(int i=0;i<5;i++)
{
Restaurant restaurant=new Restaurant();
restaurant.setAbout("bla bla bla!"+i);
restaurant.setName("REstaurant"+i);
r.add(restaurant);
}
return r;
}
ajaxリクエスト後に受信した情報を表示するにはどうすればよいですか? c:forEach タグを使用してもう一度行うことはできますか? 2 番目の方法を書き直す必要があることはわかっています。2番目のメソッドのidパラメーターに応じて、オブジェクトを取得し、最初のメソッドで使用したのと同じモデルページに配置しますか?