SpringMVC controller返回值

返回ModelAndView

@RequestMapping(value = "/getUsers")
    public ModelAndView getUsers() {
        System.out.println("getUsers.......");
        List<User> users = userService.getUsers();
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("userList", users);//设置参数
        modelAndView.setViewName("/static/editUser.jsp");
        return modelAndView;
    }

配置视图解析器(springmvc的配置文件中)

<!--配置视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!--前缀-->
        <property name="prefix" value="/static/"></property>
        <!--后缀-->
        <property name="suffix" value=".jsp"></property>
    </bean>

modelAndView.setViewName("/static/editUser.jsp");==(“editUser”)

返回 void(和使用servlet一样)

(1)使用request转发页面
request.getRequestDispatcher( “/static/productList.jsp” ).forward( request,response );

(2)使用response页面重定向
response.sendRedirect( “/static/productList.jsp” );
(3)可以通过Response只是响应结果啊,比如响应返回JSON数据:

返回String

(1)逻辑视图名
return “editUser” //可以配合视图解析器使用,否则写全路径
(2)redirect重定向

@RequestMapping("/getProducts")
    public String getProducts() {
        System.out.println("getProducts.......");
        //模拟假数据测试
        return "redirect:/api/user/getUsers";
        //注意:重定向最前面有"/"是绝对路径 否则为相对路径
        //注意:它也可以配合视图解析器一块使用
    }

(3)forward转发

 return "forward:/api/user/editUser?id="+id;

猜你喜欢

转载自blog.csdn.net/qq_35495339/article/details/92581638