Servlet中forward 与redirect区别
在java面试中关于servlet的知识点很可能会问到servlet的生命周期和forward 与redirect区别,在网络上百度或是google一下“forward 与redirect区别”,会发现很多人对此作出了自己的理解,但是这些理解或准确说关于两者的比较都不全面,看了尚学堂的servlet的视频后,对这两者的区别有了更加深入和全面的认识。

| Sendredirect | Forward |
| 是不同的request | 虽然是不同的对象,但是,可以取到上一个页面的内容 |
| send后的语句会继续执行,除非return | forward后的语句不会继续发送给客户端 |
| 速度慢 | 速度快 |
| 需要到客户端的往返,可以转到任何页面, | 服务器内部转换, |
| 地址栏有变化 | 地址栏没有变化 |
| 可以传参数,直接写在url后面 | 可以传参数 |
|
/代表的是http://127.0.0.1/ <%response.sendRedirect(“/test/ServletToJSP”);%> <form action=”/test/ServletToJSP”> <a href=”/test/ServletToJSP”>test</a> |
/代表的是http://127.0.0.1/test this.getServletContext().getRequestDispatcher (“/servlet_jsp/ServletUseJsp.jsp”) 并且只能以/开头 |
| 常用 | 常用 |
在网上发现这篇文章介绍的比较详细,你可以移步参观:JAVA基础 :request与response转向的区别
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=0981d625-53bc-4b9e-82c1-85283dfa88bb)
Recent Comments