• SpringMVC 几种页面跳转方式


     
    SpringMVC 几种页面跳转方式总结如下:

    1.不使用ModelAndView

    1)、通过HttpServletResponse的API直接输出(不需要配置渲染器)
    @Controller
    public class RequestController{
     @RequestMapping("/resp")
        public void test(HttpServletRequest req, HttpServletResponse resp) throws Exception {
             resp.getWriter().println("hello HttpServletResponse");
        }


    2)、 使用HttpServletResponse 重定向到另一个视图(其他不变 ) 
        @RequestMapping("/resp")
        public void test(HttpServletRequest req, HttpServletResponse resp) throws Exception {
            resp.sendRedirect("index.jsp");
        }


    3)、 使用HttpServletRequest 转发(默认访问/下的index.jsp页面 不受渲染器的影响)
    @RequestMapping("/resp")
        public void test(HttpServletRequest req, HttpServletResponse resp) throws Exception {
            req.setAttribute("message","it's forword ");
            req.getRequestDispatcher("index.jsp").forward(req,resp);
            }


    4)、直接返回jsp页面的名称(无渲染器)
     @RequestMapping("/nice")
        public String test(){
            //转发方式1
            return "home.jsp";
            //转发方式2
            return "forward:index.jsp";
            //重定向方式
            return "redirect:index.jsp";
        }


    5)、当有渲染器指定
    @RequestMapping("/nice")
        public String hello1(){
            //转发方式1
            return "home";
            //转发方式2
            return "forward:index";
            //重定向方式  hello指的是requsrmapping
            return "redirect:hello";
        }


    2、使用ModelAndView
     @Override
    public ModelAndView test(javax.servlet.http.HttpServletRequest httpServletRequest,
                                          javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
            ModelAndView mv = new ModelAndView();
            //封装要显示到视图的数据
            mv.addObject("msg","hello myfirst mvc");
            //通过视图名跳转
            mv.setViewName("hello");
            return mv;

        //跳转到服务器内部的一个功能处理方法
        //return new ModelAndView("forward:test.jsp");
        //重定向一个功能方法
        //return new ModelAndView("redirect:test.jsp");


    }
     
    原文链接:https://blog.csdn.net/figo0423/article/details/79759151

  • 相关阅读:
    jdk环境变量配置(默认安装在c盘下)
    Less使用笔记
    Bootstrap4元素显示和隐藏
    npm常见命令及参数用法
    详解:cssrem插件 -- VS Code px转rem神器
    关于position:fixed的注意点
    解决:无法push到远程仓储
    解决:'git' 不是内部或外部命令,也不是可运行的程序
    小程序3-地图定位2
    转-前端开发流程
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/11420500.html
Copyright © 2020-2023  润新知