一、SpringMVC页面跳转
1、请求转发(只能访问本站资源:网址不发生改变)
简单方式:
这种写法走配置文件中的视图解析器,如果我们想要跳转到配置的路径以外的页面,就会有问题,访问不到。
@RequestMapping("/quick")
public String quick(){
return "success" ;
}
forward关键字:
forward关键字的底层就是:request.getRequestDispatcher(“跳转路径”).forward(req,resp);
forward关键字,不经过视图解析器进行拼接字符串
@Controller
public class ForwardController {
@RequestMapping("/forward")
public String forward(){
return "forward:/list.jsp";
}
}
2、重定向(可访问外网资源:网址发生改变)
redirect关键字:
此关键字的底层:response.sendRedirect(“web项目地址+重定向地址”);
@RequestMapping("/redirect")
public String redirect() {
return "redirect:/list.jsp";
}
二、SpringMVC储存数据
1、ModelAndView
使用ModelAndView类用来储存处理完后的结果数据,以及显示该数据的视图
Model:代表模型
View:代表视图
用法一:储存数据
用法二:设置视图(通过配置的视图解析器)
void setViewName(资源路径)
@RequestMapping("/modelAndView")
public ModelAndView modelAndView(ModelAndView modelAndView) {
// 设置数据
modelAndView.addObject("name", "张三");
// 设置视图
modelAndView.setViewName("success");
return modelAndView;
}
2、Model
使用ModelAndView进行数据的存储和页面的跳转比较麻烦,把跳转的任务交给SpringMVC
用法:存储数据
model.addAttribute(”键”,值)
@RequestMapping("/model")
public String model(Model model) {
model.addAttribute("name", "小德");
return "success";
}