Spring MVC @Controller中返回值为void类型
Posted 张梦源
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring MVC @Controller中返回值为void类型相关的知识,希望对你有一定的参考价值。
控制器方法的返回值类型为void (实际上和String类型类似,把请求的路径名字当做视图名字进行返回)
• 当控制器方法的返回类型为void时,会把RequestMapping中指定的映射
路径 (/manager/index)作为逻辑视图名称然后解析为物理地址去访问。
• 此时,可以通过原生ServletAPI对象中的HttpServletRequest和
HttpServletResponse对象进行请求和响应,也就可以进行请求的转发和重
定向,包括使用response对象直接向客户端输出响应数据
1.把请求的路径名字,作为视图名字做了返回,交给了视图解析器。
2.手动转发
@RequestMapping("/Void")
public void testVoid(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
System.out.println("LoginController.testVoid()");
// 转发: 手动转发不会通过视图解析器
//request.getRequestDispatcher("/WEB-INF/pages/login.jsp").forward(request, response);
// 重定向:
//response.sendRedirect(request.getContextPath() + "/login");
// 还可以通过response对象直接响应数据
response.setContentType("text/html;charset=utf-8");
response.getWriter().print("你好!");
以上是关于Spring MVC @Controller中返回值为void类型的主要内容,如果未能解决你的问题,请参考以下文章
Spring MVC Controller:“返回转发”、“返回重定向”和“返回jsp文件”有啥区别
(04)Spring MVC之Get方式传参访问Controller,从Controller返回json串出现菱形问号(?????)乱码,解决方法。
深入理解Spring MVC Controller返回String类型导致中文乱码的问题。