Spring MVC之返回类型
程序员文章站
2022-07-15 13:24:59
...
Spring MVC之返回类型
在spring MVC中存在多种返回类型,例如;view、modelandview、string、json或Map类型。
- 返回String类型 返回逻辑视图名称,根据由于springMVC-servlet.xml配置文件中配置的图解析器解析成物理视图
2.返回ModelAndView 类型 ModelAndView相对于String的返回类型的优势,可以携带参数传递到页面
3.返回void类型 一般配合PrintWriter使用,和Servlet用户类似
4.返回JSON类型 一般使用在JQuery的异步请求返回json格式的数据 返回String类型,通过“springMVC-servlet.xml”中的配置的视图解析器,解析并响应 prefix+returnValue+suffix 对应的视图
实例代码:
1. package com.wangbiao.springMVC;
2. import java.util.HashMap;
3. import java.util.Map;
4. import javax.servlet.ServletContext;
5. import javax.servlet.http.HttpServletRequest;
6. import javax.servlet.http.HttpServletResponse;
7. import org.springframework.context.ApplicationContext;
8. import org.springframework.stereotype.Controller;
9. import org.springframework.ui.Model;
10. import org.springframework.web.bind.annotation.RequestMapping;
11. import org.springframework.web.bind.annotation.RequestMethod;
12. import org.springframework.web.servlet.ModelAndView;
13. import org.springframework.web.servlet.View;
14. import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
15. @Controller
16. @RequestMapping("/return")
17. public class HelloWorld extends MultiActionController{
18.
19. /*
20. * 返回值为ModelAndView类型的
21. */
22. public ModelAndView sayHelloWorld(HttpServletRequest request, HttpServletResponse response) {
23. String param = request.getParameter("param");
24. System.out.println("springMVC测试:helloWorld;"+param);
25. ModelAndView mv = new ModelAndView();
26. User user = (User) this.getApplicationContext().getBean("user");
27. mv.addObject("content", "springMVC HelloWorld:"+param);
28. mv.setViewName("springMVC/helloWorld");
29. ServletContext ctx = this.getServletContext();
30. return mv;
31. }
32. /*
33. * 返回值为String类型的,视图名就是返回值
34. */
35. @RequestMapping(value="/returnString",method=RequestMethod.GET)
36. public String returnString(Model model) {
37. model.addAttribute("test", "return string!!!");
38. System.out.println("springMVC测试:helloWorld;");
39. return "return/returnString";
40. }
41.
42. /*
43. * 返回值是void类型的,由于没有返回值
44. * 它默认的展示视图名和url中的一段是一样的即returnVoid.jsp
45. */
46. @RequestMapping("/returnVoid")
47. public void returnVoid(Model model){
48. model.addAttribute("test", "return void!!!");
49. }
50.
51. /*
52. * 返回值是void类型的,由于没有指定视图名
53. * 它默认的展示视图名和url中的一段是一样的即returnVoid.jsp
54. */
55. @RequestMapping("/returnModel")
56. public Model returnModel(Model model){
57. model.addAttribute("test", "return Model!!!");
58. return model;
59. }
60.
61. /*
62. * 返回值是void类型的,由于没有指定视图名
63. * 它默认的展示视图名和url中的一段是一样的即returnVoid.jsp
64. */
65. @RequestMapping("/returnMap")
66. public Map returnMap(Model model){
67. Map map = new HashMap<String,String>();
68. map.put("test", "return map!!!");
69. return map;
70. }
71.
72.
73. }
下一篇: 在Mybatis传值想后台传条件值问题
推荐阅读
-
Spring MVC之DispatcherServlet详解_动力节点Java学院整理
-
Spring MVC之DispatcherServlet_动力节点Java学院整理
-
Spring MVC自定义日期类型转换器实例详解
-
Spring mvc实现Restful返回json格式数据实例详解
-
Spring mvc实现Restful返回xml格式数据实例详解
-
解决ASP.NET MVC返回的JsonResult 中 日期类型数据格式问题,和返回的属性名称转为“驼峰命名法”和循环引用问题
-
HandlerMethodArgumentResolver(二):Map参数类型和固定参数类型【享学Spring MVC】
-
微服务[v1.0.0][Spring MVC常用注解之@RequestParam]
-
Spring MVC学习笔记之Controller查找(基于Spring4.0.3)
-
Android 客户端通过内置API(HttpClient) 访问 服务器(用Spring MVC 架构) 返回的json数据全过程