SpringMVC的Controller方法返回值
一、返回ModelAndView
controller方法中定义ModelAndView对象并返回,对象中可以添加model数据、指定的view。
public ModelAndView queryItemList() {// 创建页面需要显示的商品数据List<Item> list = new ArrayList<>();list.add(new Item(1, 2399, new Date());// 创建ModelAndView,用来存放数据和视图ModelAndView modelAndView = new ModelAndView();// 设置数据到模型中modelAndView.addObject("itemList", list);// 设置视图jsp,需要设置视图的物理地址// modelAndView.setViewName("/WEB-INF/jsp/itemList.jsp");// 配置好视图解析器前缀和后缀,这里只需要设置逻辑视图就可以了。// 视图解析器根据前缀+逻辑视图名+后缀拼接出来物理路径modelAndView.setViewName("itemList");return modelAndView;
}
二、返回void
在controller方法形参上可以定义request和response,使用request或者response
指定响应结果:
1.使用request转发页面
request.getRequestDispatcher("页面路径").forward(request,response);
页面路径举例:"/WEB-INF/jsp/success.jsp"
2.使用response页面重定向
response.senRedirect("转发路径")
3.通过response指定响应结果,比如响应json数据
response,getWriter().print("{\"a\":1}");
三、返回字符串
1.返回逻辑视图名
controller方法返回字符串可以制定逻辑视图名,通过视图解析器解析为物理视图地址。
return "itemList";
实际返回经过解析后的:/WEB-INF/jsp/itemList.jsp
2.Redirect重定向
Controller方法返回字符串可以重定向到一个url地址
@RequestMapping("updateItem")
public String updateItemById(Item item) {// 更新商品this.itemService.updateItemById(item);// 修改商品成功后,重定向到商品编辑页面// 重定向后浏览器地址栏变更为重定向的地址,// 重定向相当于执行了新的request和response,所以之前的请求参数都会丢失// 如果要指定请求参数,需要在重定向的url后面添加 ?itemId=1 这样的请求参数return "redirect:/itemEdit.action?itemId=" + item.getId();
}
3.forword转发
Controller方法执行后继续执行另一个Conreoller方法。
@RequestMapping("updateItem")
public String updateItemById(Item item) {// 更新商品this.itemService.updateItemById(item);// 修改商品成功后,继续执行另一个方法// 使用转发的方式实现。转发后浏览器地址栏还是原来的请求地址,// 转发并没有执行新的request和response,所以之前的请求参数都存在return "forward:/itemEdit.action";}
结果转发到editItem.action,request可以带过去
SpringMVC的Controller方法返回值相关推荐
- SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器
SpringMVC入门(二)-- 参数的传递.Controller方法返回值.json数据交互.异常处理.图片上传.拦截器 参考文章: (1)SpringMVC入门(二)-- 参数的传递.Contro ...
- SpringMVC控制类的Controller方法返回值
SpringMVC控制类的Controller方法返回值 Controller方法返回值 返回字符串 逻辑视图名 controller方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址 ...
- springmvc中Controller方法的返回值
1.1 返回ModelAndView controller方法中定义ModelAndView对象并返回,对象中可添加model数据.指定view. 1.2 返回void 在controller方法形参 ...
- Java框架-SpringMVC的应用(json数据交互、控制器方法返回值、文件上传)
1. 搭建SpringMVC开发环境 1.1 创建项目,添加依赖 <?xml version="1.0" encoding="UTF-8"?> &l ...
- .net mvc actionresult 返回字符串_072-SpringMVC后端控制器接收参数、处理器方法返回值类型、拦截器、文件上传下载...
1. 注解式开发之annotation-driven解释 (1) mvc注解驱动在哪个文件中配置? 在springmvc中配置 (2) 配置mvc注解驱动使用哪个标签? 2. 注解式开发之视图解析器 ...
- 【Groovy】集合遍历 ( 使用 for 循环遍历集合 | 使用集合的 each 方法遍历集合 | 集合的 each 方法返回值分析 )
文章目录 一.使用 for 循环遍历集合 二.使用 each 方法遍历集合 三.集合的 each 方法返回值分析 四.完整代码示例 一.使用 for 循环遍历集合 使用 for 循环 , 遍历集合 , ...
- 父类作为方法的形参以及父类作为方法返回值
1.父类作为方法的形参 语句:修饰符 父类类型 方法名(){} 2.父类作为方法返回值 语句:修饰符 void/返回值类型 方法名(父类类型 形参名){} 代码例子: 动物类: /*** @autho ...
- C# 方法返回值的个数
方法返回值类型总的来说分为值类型,引用类型,Void 有些方法显示的标出返回值 public int Add(int a,int b) {return a+b; } 有些方法隐式的返回返回值,我们可以 ...
- IXMLDOMDocument中的load方法返回值有BUG
IXMLDOMDocument中的load方法返回值是否有BUG IXMLDOMDocument中load一个xml文件时,返回值和msdn上说的不符 MSDN上说的是: Return Values ...
最新文章
- oracle ora 14047,ORA-14047: ALTER TABLE|INDEX RENAME 不可以与其它分区组合
- project项目管理案例_福清公司开展Project项目管理软件学习培训活动
- ORACLE中的MERGE语法使用记录
- 用jQuery插件jVectorMap制作中国省份区域图
- 20191124每日一句
- Atitit aes 加密法php实现
- biopython1_序列操作
- MATLAB中的Hough变换
- 谨慎redis的timeout参数
- ida android so 断点,IDA Pro 7.0+调试Android so飘云整理(基于Android5.1.1)
- 算法学习系列(贪心算法)—机器人攀登问题
- SIM卡、USIM卡、UICC卡、eSIM卡的区别
- tplink怎么进去_如何进入tp-link路由器设置页面
- hp linux 禁用u盘启动,BIOS关闭Secure Boot(安全启动)方法大全(联想,华硕,DELL,HP等品牌)...
- Java 环境变量的配置的详细教程(Windows 10)
- 多台电脑共享上网的方法:在Windows XP中设置Internet连接共享
- 百度网盟怎样投放来辅助百度竞价推广
- CNN-卷积神经网络
- 【毕业设计】基于stm32的便携式U盘设计与实现 - stm32制作U盘
- 魅族 魅蓝note2 PRO5 华为荣耀6 6P 部分log不显示,不打印,不输出
热门文章
- 文件操作工具类FileUtil
- SpringBoot的全局异常处理的优雅吃法!要进来学习下吗
- 索引使用的限制条件,sql优化有哪些,数据同步问题(缓存和数据库),缓存优化
- vs2015 QT5.6 兼容xp系统
- 关于SVN Server自助修改密码详细教程
- 安装百分之80卡住_新车买回来要不要安装发动机护板呢?装好还是不好?
- python爬取学籍_python 爬取现充Shell的成绩单
- android背景图拉伸,Android使背景图像不拉伸它指定的视图_android_开发99编程知识库...
- u盘重置后计算机不显示了,u盘不显示盘符怎么办
- java对灰度值进行线性变换,灰度变换