**要求方法返回值为String**
默认:逻辑视图 视图解析器 找到对应的页面
Handler中返会的String类型为跳转到的页面
eg:return "hello"; 则执行方法后页面会跳转到hello.html
重定向forward:
@GetMapping("forward") public String forward(String path){ System.out.println("path = " + path); return "forward:"+path; }
转发redirect(是项目下的相对路径 外部路径正常加http即可):
@GetMapping("redirect") public String redirect(String path){ System.out.println("path = " + path); return "redirect:"+path; }
相同点
都是web开发中资源跳转的方式。
不同点
转发:是服务器内部的跳转,浏览器的地址栏不会发生变化。从一个页面到另一个页面的跳转还是同一个请求,也即是只有一个请求响应。可以通过request域来传递对象。
重定向:是浏览器自动发起对跳转目标的请求,浏览器的地址栏会发生变化。从一个页面到另一个页面的跳转是不同的请求,也即是有两个或两个以上的不同的请求的响应。无法通过request域来传递对象。