SpringMVC Controller的返回类型
Controller的三种返回类型中
ModelAndView类型 带数据带跳转页面
String 跳转页面不带数据
void 通常是ajax格式请求时使用
1返回ModelAndView
controller方法中定义ModelAndView对象并返回,对象中可添加model数据、指定view。
controller
@RequestMapping("/test") public ModelAndView test(){ModelAndView mav=new ModelAndView("hello");//通过ModelAndView构造方法可以指定返回的页面名称,也可以通过setViewName()方法跳转到指定的页面mav.addObject("time", new Date());mav.getModel().put("name", "caoyc");return mav; }
JSP
time:${requestScope.time}<br/>name:${name }
2 返回字符串
controller方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址。
@RequestMapping(value = "saveRegSigned")public String saveRegSigned(MeetingReg meetingReg, HttpServletRequest request, HttpServletResponse response,Model model) throws Exception {meetingReg.setMeetingId(Utils.getMeetingId(request));Map<String, Object> resultMap = regService.saveRegSigned(meetingReg);model.addAttribute("resultMap", resultMap);return "modules/meeting/signed/RegSignedReturnPage";}
JSP
<div class="code_reg"><ul><li>注册号:${resultMap.regCode}</li><li>注册类型:${resultMap.regType}</li></ul></div>
3 返回void
void
如果返回值为空,则响应的视图页面对应为访问地址
@RequestMapping("/index") public void index() {return; }
对应的逻辑视图名为"index"
4返回map
Map
@RequestMapping("/demo2/show") public Map<String, String> getMap() { Map<String, String> map = new HashMap<String, String>(); map.put("key1", "value-1"); map.put("key2", "value-2"); return map; }
在jsp页面中可直通过${key1}获得到值, map.put()相当于request.setAttribute方法。
对应的逻辑视图名为../demo2/show+suffix
返回其他object类型同map
1.使用 String 作为请求处理方法的返回值类型是比较通用的方法,这样返回的逻辑视图名不会和请求 URL 绑定,具有很大的灵活性,而模型数据又可以通过 ModelMap 控制。
2.使用void,map,Model 时,返回对应的逻辑视图名称真实url为:prefix前缀+视图名称 +suffix后缀组成。
3.使用String,ModelAndView返回视图名称可以不受请求的url绑定,ModelAndView可以设置返回的视图名称。
参考http://www.cnblogs.com/xiepeixing/p/4243801.html
在controller方法形参上可以定义request和response,使用request或response指定响应结果:
1、使用request转向页面,如下:
request.getRequestDispatcher("页面路径").forward(request, response);
2、也可以通过response页面重定向:
response.sendRedirect("url")
3、也可以通过response指定响应结果,例如响应json数据如下:
response.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
response.getWriter().write("json串");
转载于:https://www.cnblogs.com/miye/p/6970436.html
SpringMVC Controller的返回类型相关推荐
- Spring MVC Controller中返回json数据中文乱码处理
问题 在使用spring MVC Controller的过程中,发现返回到客户端的的中文出现乱码.后台Java代码: @RequestMapping(value = "/upload&quo ...
- SpringMVC 方法三种类型返回值总结,你用过几种?
SpringMVC 现在算是 Java 领域的一个基础性框架了,很多人天天用,可是对于 SpringMVC 方法的返回值,你又是否完全清楚呢?今天松哥就来和大家聊一聊 SpringMVC 中四种不同类 ...
- SpringMVC控制类的Controller方法返回值
SpringMVC控制类的Controller方法返回值 Controller方法返回值 返回字符串 逻辑视图名 controller方法返回字符串可以指定逻辑视图名,通过视图解析器解析为物理视图地址 ...
- SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器
SpringMVC入门(二)-- 参数的传递.Controller方法返回值.json数据交互.异常处理.图片上传.拦截器 参考文章: (1)SpringMVC入门(二)-- 参数的传递.Contro ...
- SpringMVC的Controller方法返回值
一.返回ModelAndView controller方法中定义ModelAndView对象并返回,对象中可以添加model数据.指定的view. public ModelAndView queryI ...
- ASP .NET Controller返回类型
返回类型 return View(model); 即返回html return Json("String"); 返回Json格式的数据 return File(new byte[] ...
- SpringMVC Controller介绍(转)
SpringMVC Controller 介绍 一.简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理 ...
- 【转】SpringMVC Controller 介绍
转自:原文url 一.简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ...
- SpringMVC Controller中常用到的一些注解
在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返 ...
最新文章
- 联想G480类似没有小键盘开关的机器
- steps/align_si.sh
- asp.net学习历程。
- 《博德之门 3》究竟有多「DnD」?
- 基于AVS2的图片容器——TPG:现状与改进之路
- 使用ASP.NET Core 3.x 构建 RESTful API - 3.3.3 ProblemDetails
- 基于图像处理的数码印花喷墨墨滴形状规范的研究(Python+OpenCV+Mysql)
- Red Hat Enterprise Linux Server release 7.0双系统安装
- prototype.js ajax.request,javascript – Prototype和Ajax.Request范围
- 在页面显示html文件,把选择的文件显示在页面上 #1《 HTML5:文件 API 》
- no cortex-m sw device found_SW大模块水箱桂林厂家图纸
- IT职场人生系列之十二:语言与技术I
- Vue.js 学习笔记 八 v-for
- 还不了解小程序?看这一篇文章就够了
- 如何免费将XPS转成PDF格式
- 智能车过滤阳光_阳光为这辆车加油
- 研华PCI1716L的C#编程
- fortran2010编译出错,无法找到exe文件的解决方法
- windows虚拟机安装Mac OS系统(操作图解)
- charles抓包一直返回unkown的解决方法