Portlets的Spring @ActionMapping语法

时间:2012-12-20 01:20:40

标签: spring model-view-controller portlet

我知道这适用于url包含参数'deleteItem = 6'

的地方
@ActionMapping(params="deleteItem")
public void deleteItem(@ModelAttribute("items") Items items, BindingResult bindingResult, @RequestParam int deleteItem) throws Exception {
    items.getItems().remove(deleteItem);
    ...
}

但我可以这样做(使用deleteItem参数的

@ActionMapping(params="deleteItem={idx}")
public void deleteItem(@ModelAttribute("items") Items items, BindingResult bindingResult, @RequestParam int idx) throws Exception {
    items.getItems().remove(idx);
    ...
}

没什么大不了的,因为它显示参数值是一个索引,所以代码更具可读性。

感谢。

1 个答案:

答案 0 :(得分:0)

不,您不能将动态参数用作此@ActionMapping(params="deleteItem={idx}")之类的绑定名称,因为Spring Portlet MVC需要将方法绑定到具有唯一名称的操作。

您的第一个代码段是正确的。