[javaweb]注意事项杂录

请求转发与重定向

  • 请求转发是一个请求,而重定向是两个请求
  • 请求转发,是使用RequestDispatcher来完成,重定向使用response.sendRedirect()
  • 请求转发的路径都是服务器端路径,而重定向是客户端路径,需要给出应用名称
  • 请求转发在浏览器地址栏中的地址是第一个Servlet的路径,而重定向在地址栏中的地址是第二个请求的Servlet的路径
  • 请求转发中的两个Servlet是可以共享request数据的,而重定向因为是两个请求,所以不能共享request数据
  • 请求转发只能转发到本应用的其他Servlet,而重定向可以重定向到其他应用中。

request.getParameter()和request.getAttribute()

1. getParameter()  是获取客户端参数,它是从客户端传递给服务器的数据。
2. getAttribute()  是获取服务器端自己设置的数据,而不是客户端的数据。
3. request没有setParameter() 方法,不能自己设置参数,参数都由客户端传递
4. request有setAttribute()  方法,在getAttribute()之前,需要先setAttribute()才能获取到。
5. getAttribute()和setAttribute()   是用来在请求转发和请求包含中的多个Servlet中共享数据。

路径

1. 客户端路径需要给出应用名称,例如:/day05_1/AServlet
2. 服务器端路径无需给出应用名称,例如:/AServlet
3. 重定向是客户端路径,需要加上应用名称
posted @ 2021-11-13 16:54  从零开始学java_wxz  阅读(25)  评论(0)    收藏  举报