SPRINGMVC 后台控制器的同一个方法 可以使用两种不同的参数,SPRINGMVC 如何处理这两组不同的参数?

eisldkw eisldkw 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
同一个方法queryList 可以有两种参数 ,代码如下:

一、参数绑定:包装类
@RequestMapping(value="/queryList")
public String queryList(Model model,Fruit fruit) {
System.out.println("name:"+fruit.getName());
}
url:
http://localhost:8080/SpringMVC_test/queryList.action?name=%E5%8D%A7%E6%A7%BD
输出:
name:卧槽
name是Fruit包装类的属性名,这种类型会被SpringMVC的处理器适配器解析,会创建出具体的实体类,并将相关的属性值通过set方法绑定到包装类中,所以成功。

二、传入HttpServletRequest和HttpServletResponse,如:
@RequestMapping(value="/queryList")
public String queryList( HttpServletRequest request, HttpServletResponse response) {
System.out.println("name:"+request.getParameter("name"));
return "/fruitsList";
}
url:
http://localhost:8080/SpringMVC_test/queryList.action?name=%E5%8D%A7%E6%A7%BD
输出:
***
name:卧槽

问题如下:

为什么同一个方法 queryList ,它的参数既可以是 HttpServletRequest request, HttpServletResponse response 又可以是 Model model,Fruit fruit ,SPRINGMVC 接收到这两组参数,是如何区分的,又怎么能把这些参数对照到正确的 变量或对象中
...全文

相关推荐

评论 12
收藏 已收藏
分享
返回顶部
eisldkw
Web 开发 81,108 成员 341,721 内容