我有一个带有表格和表格的小应用程序,没什么特别的。我希望能够单击一个特定行并删除/修改信息。我设法使用Richfaces这样做,但现在我必须使用Spring Framework复制此功能。 我以这种方式渲染表格行:
<form:form action="del.htm" commandName="movie">
<td><form:hidden path="movieName"/>${movie.movieName}</td>
<td><form:hidden path="year"/>${movie.year}</td>
<td><form:hidden path="length"/>${movie.length}</td>
<td><form:hidden path="category"/>${movie.category}</td>
<td><form:hidden path="actors"/>${movie.actors}</td>
<td><input type="submit" value="Delete" /><input type="submit" value="Modify"/></td>
</form:form>
指定的操作映射到Controller,该Controller返回ModelAndView以呈现页面。正确调用与删除相对应的函数,但是我没有收到电影对象,所以我可以根据它的id从Hibernate中删除它。如果有人知道如何发送电影对象,我会很高兴听到它。
任何帮助都将受到高度赞赏!
答案 0 :(得分:0)
如何将电影ID添加到表单?
<td><form:hidden path="id"/>${movie.id}</td>
答案 1 :(得分:0)
你可以使用像
这样的东西 <td><a href="deleteMovie/${movie.id}"><spring:message code="label.delete"/></a></td>
然后在你的控制器中你应该有一个方法如下:
@RequestMapping("/deleteMovie/{id}")
public String removeMovie(@PathVariable("id") Integer id) {
movieService.removeMovie(id);
return "redirect:/index";
}
为了将影片对象传递给窗体,您需要将影片对象放置在导致渲染jsp的方法内的地图上。所以例如
@RequestMapping(method = RequestMethod.GET)
public String selectMovie(Map<String, Object> map) {
//PicasawebService myService = new PicasawebService("exampleCo-exampleApp-1");
map.put("movie", movieService.getMovie(id);
return "movieDetails";
}
其中movieDetails是url模式,它使您的jsp具有您向我们展示的表单。
我希望它有所帮助......