时间:2022-10-26 09:56:49 | 栏目:JAVA代码 | 点击:次
/*重定向测试*/ @RequestMapping("/m1/t2") public String test1(Model model, String message) { message = "222"; model.addAttribute("msg", message); return "redirect:/r1"; }
@RequestMapping("/r1") public String test2(Model model, String msg) { model.addAttribute("msg", msg); return "success"; }
这里的return “success”;是跳转到自己编写的视图解析器规则下的success.jsp页面
http://localhost:8080/mvc_04/m1/t2
mvc_04是我自己的项目模块名,m1/t2是上面创建的拦截
http://localhost:8080/mvc_04/r1?msg=222
成功获取到重定向传入的参数,
问题思考:
如果跳转到主页,那model的参数怎么获取呢,如上我跳转的是ViewResolver拼接而成的success.jsp页面,
这时候需要使用RedirectAttributes参数
/*重定向测试2*/ @RequestMapping("/r2") public String test3(Model model, RedirectAttributes rettr) { rettr.addAttribute("msg", "redirect"); return "redirect:/index.jsp"; }
注意:index.jsp中参数的获取不能直接 ${msg}
而是得使用 ${param.msg}
spring的Model相当于前端的一个数据库,就好比后端中的user实体类所对应的数据库User,从Model中获取数据比从后端的User实体类中获取数据更加方便。
如下图是一个简单的实例,简单展示一下Model是怎么存储数据然后展示到前段页面的。