SpringMvc中的重定向与转发
1.重定向中类中代码
@Controller
public class ViewController {
@RequestMapping("test01")
public String test01(){
return "redirect:v1.jsp";
}
@RequestMapping("test02")
public String test02(){
return "redirect:v1.jsp?a=admin&b=123456";
}
//解决中文乱码的问题
@RequestMapping("test03")
public String test03(RedirectAttributes redirectAttributes){
redirectAttributes.addAttribute("a","哈哈哈");
redirectAttributes.addAttribute("b","123333");
return "redirect:v1.jsp";
}
@RequestMapping("test04")
public ModelAndView test04(){
ModelAndView mv=new ModelAndView();
mv.setViewName("redirect:v1.jsp");
mv.addObject("a","后");
mv.addObject("b","qwe");
return mv;
}
2.重定向页面代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<h2>9800000</h2>
${param.a}||${param.b}
</from>
</body>
</html>
3.转发操作
//转发到另一个控制器
@RequestMapping("test05")
public ModelAndView test05(){
ModelAndView mv=new ModelAndView();
mv.setViewName("forward:test");
return mv;
}
//转发到另一个控制器进行传参
@RequestMapping("test06")
public ModelAndView test06(){
ModelAndView mv=new ModelAndView();
mv.setViewName("forward:test?a=admin&b=123456");
return mv;
}
//重定向到另一个方法上
@RequestMapping("test08")
public ModelAndView test08(){
ModelAndView mv=new ModelAndView();
mv.setViewName("redirect:test");
mv.addObject("a","后");
mv.addObject("b","qwe");
return mv;
}
另一个控制器
@Controller
public class TestController {
@RequestMapping("test")
public void test(String a,String b){
System.out.println("转发成功!"+a+b);
}
}