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文件”有啥区别

spring入门 spring mvc返回json结果

(04)Spring MVC之Get方式传参访问Controller,从Controller返回json串出现菱形问号(?????)乱码,解决方法。

深入理解Spring MVC Controller返回String类型导致中文乱码的问题。

深入理解Spring MVC Controller返回String类型导致中文乱码的问题。

Spring MVC - 如何在 Rest Controller 中以 JSON 形式返回简单字符串