• springMVC--请求的跳转和传值


    forword跳转页面的三种方式

    1.使用serlvet

    复制代码
    /**
         * 使用forward跳转,传递基本类型参数到页面
         *     注意:
         *         1.使用servlet原生API Request作用域
         *         
         */
        @RequestMapping("/test")
        public String test(HttpServletRequest request,HttpServletResponse response){
            String name = "张小三";
            request.setAttribute("name",name);
            return "/back/attr";
        }
    复制代码

    2.使用Model对象

    复制代码
    /**
         * 使用forward跳转,传递基本类型参数到页面
         *     注意:
         *         1.使用springmvc 封装好的Model对象(底层就是request作用域)
         */
        @RequestMapping("/test1")
        public String test1(Model model){
            String name = "张小四";
            model.addAttribute("name", name);
            return "back/attr";
    
    }</span></pre>
    
    复制代码

    3.使用ModelAndView

    复制代码
    /**
         * 使用modelAndView
         *     注意事项
         *         modelAndView对象中的数据只能被ModelAndView对象的视图获取
         */
        @RequestMapping("/test2")
        public ModelAndView test2(ModelAndView modelAndView){
            String name = "张小五";
            modelAndView.setViewName("back/attr");
            modelAndView.addObject("name", name);
            return  modelAndView;
    
    }</span></pre>
    
    复制代码

     当然也可以通过new 一个ModelAndView对象来实现

    @RequestMapping("/test3")
        public ModelAndView test3(){
            String name = "张小六";
            return new ModelAndView("back/attr", "name", name);
        }

    redirect跳转到页面

     使用servlet

    复制代码
    /**
         * 使用redirect跳转 向页面传递数据
         *         1.使用Servlet原生API  Session  ServletContext
         */
    
    @RequestMapping(</span>"/test4"<span style="color: #000000;">)
    </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> String test4(HttpServletRequest request,HttpSession session){
        String name </span>= "张晓霞"<span style="color: #000000;">;
        session.setAttribute(</span>"name"<span style="color: #000000;">, name);
        </span><span style="color: #0000ff;">return</span> "redirect:/back/attr.jsp"<span style="color: #000000;">;
    }</span></pre>
    
    复制代码

     使用ModelAndView

    复制代码
    /**
         * 使用redirect跳转 向页面传递数据
         *         1..使用ModelAndView对象  modelAndView对象会把model中的数据以?形式拼接到地址栏后 可以使用${param.key}接受
         */
        @RequestMapping("/test5")
        public ModelAndView test5(){
            return new ModelAndView("redirect:/back/attr.jsp","name","小张张");
        }
    复制代码

    跳转到Controller中的方法

    forword跳转

    redirect跳转类似

    跳转到相同类中的方法:

    复制代码
    /**
         * 使用forword跳转到相同类中的某一方法
         * 注意:
         *         1.不需要加上类上的@RequestMapping的值
         */
        @RequestMapping("/test00")
        public String test00(){
            return "forward:test1";
        }
    复制代码

    跳转到不同类中的方法

    复制代码
    /**
         * 使用forword跳转到不同类中的某一方法
         * 注意:
         *         1.需要加上类上的@RequestMapping的值:比如 :/hello
         */
        @RequestMapping("/test01")
        public String test01(){
            return "forward:/hello/test";
        }
    复制代码
  • 相关阅读:
    CLRS2e读书笔记—Chapter11
    CLRS2e读书笔记—红黑树
    IOS 入门介绍1IOS简单介绍
    一些iOS高效开源类库
    关于ICloud编程。
    转载 10款iOS高效开发必备的ObjectiveC类库
    ObjecetiveC强制转换问题1
    总结:求随机数的方法
    NSObjcet类的简单说明
    随机函数之 rand() 与 arc4random() 对比(转)
  • 原文地址:https://www.cnblogs.com/jpfss/p/9546629.html
Copyright © 2020-2023  润新知