forward、redirect

forward 实际的效果是在浏览器中的地址还是原地址,存在重复提交的问题 如:forward:/rest/queryData?name=aaa 在跳转的controller中使用@RequestParam("name") String name 获取传递的参数

浏览器只发出一次请求,servlet把请求转发给servlet、html、jsp或者其他信息资源,由第二个信息资源响应该请求,两个信息资源共享同一个request对象

redirect 如:redirect:/rest/queryData 浏览器地址变成跳转的新地址,避免了重复提交的问题 参数可以通过url后面拼接或者attribute传递

服务端在响应第一次请求的时候让浏览器再向另外一个url发出请求,从而达到转发的目的。它本质山是两次http请求,对应两个request对象

原文地址:https://www.cnblogs.com/leifonlyone/p/15121983.html