您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Spring MVC的同一@RequestMapping中为参数映射不同的值?

如何在Spring MVC的同一@RequestMapping中为参数映射不同的值?

尝试这个:

@RequestMapping(params = {"action=nuovoprodotto","action=salvaprodotto"})

params属性实际上是type String[],但是注释使您可以String代替单个元素编写一个String[],因此这两个是等效的:

@RequestMapping(params = {"action=nuovoprodotto"})

@RequestMapping(params = "action=nuovoprodotto")

更新:不好,您可以在“高级@RequestMapping选项 ”部分中阅读,多个参数使用和而不是or进行组合,因此它无法按上面指定的方式工作。

因此,我想说的是您要做的是创建一个具有几乎相同签名的别名方法

@RequestMapping(params = "action=nuovoprodotto")    
public ModelAndView nuovoProdotto(
        @RequestParam(value = "page", required = false, defaultValue = "-1") int page,
        @RequestParam(value = "action") String action,
        @modelattribute Prodotto prod, HttpSession session)
        throws Exception {
        // some stuff here
}

@RequestMapping(params = "action=salvaprodotto")    
public ModelAndView salvaProdotto(
        @RequestParam(value = "page", required = false, defaultValue = "-1") int page,
        @RequestParam(value = "action") String action,
        @modelattribute Prodotto prod, HttpSession session)
        throws Exception {

        return nuovoProdotto(page, action, prod, session);
}
Java 2022/1/1 18:14:29 有444人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶