JavaWeb----学习(7)----JSP(Attribute方法 && 请求的转发和重定向)

1.和属性相关的方法。

    1.1   Object getAttribute(String paramString);                                   获取指定的属性。

    1.2     void setAttribute(String paramString, Object paramObject);   设置属性。

    1.3    Enumeration getAttributeNames();                                           获取所有属性名

    1.4     void removeAttribute(String paramString);                               移除指定属性

2.pageContext,request,session,application 这些对象都有这些属性。(域对象)

       pageContext:属性的作用范围仅限于当前JSP页面。

       request:属性的作用范围仅限于同一个请求。

       session:属性的作用范围仅限于一次回话。

       application :属性的作用范围仅限于当前WEB应用。

3.请求的转发和重定向。

    3.1 区别:请求的转发只发了一次请求。重定向发了两次请求。

    3.2  请求的转发:地址栏是初次发出请求的地址。

           重定向:地址栏为最后响应的地址。

   3.3  请求的转发:在最终的Servlet中,request对象和中转的request是同一个对象。

           重定向:在最终的Servlet中,request对象和中转的request不是同一个对象。

   3.4  请求的转发:只能转发给当前WEB应用的资源

          重定向:可以重定向到任何资源。

    3.5  请求的转发: / 代表当前WEB应用的根目录。

           重定向:/ 代表当前WEB站点的根目录。

   3.6 请求的转发:

public class ForwardServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

	  String path = "testServlet";
	  RequestDispatcher rd = request.getRequestDispatcher("/"+path);
	  rd.forward(request, response);
	}

}

重定向:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		request.setAttribute("name", "789");
		Object name = request.getAttribute("name");
		System.out.println("TestServlet's  name : " + name);

		String path = "testServlet";
		response.sendRedirect(path);
	}

 

     

   

你可能感兴趣的:(JavaWeb)