作用域不同,request的话一般在servlet中使用
request.setAttribute(String,Object);
getServletContext().getRequestDispatcher("xxx.jsp").forward(request,response);
的方法,使得xxx.jsp可以使用getAttribute获得传入的Object。session则是保持在Server的内存中的,只要不过期会一直存在,任何时候都可以使用。

解决方案 »

  1.   

    作用域不同:
    1、request对象的作用域是其请求所指向的网页,如a.jsp网页所请求的网页是next.jsp,那么request对象所存储的变量就只能由a.jsp传向next.jsp网页,而不能实现多个网页之间的状态传递,注意请求网页页可以是Servlet程序
    2、session对象所存储的变量可以在一次会话过程中传递,如登录电子商务网站,购物车的状态就是存储在session对象中的
      

  2.   

    简单一点就是作用域不同, 上述诸位说得很对, 但是具体的解释却
    不是很正确. 比如 java/servlet 中有四种内嵌对象, 代表四种
    作用域, 从小到大依次是 Page, Request, Session, Application.
    其他的好说, 难以区别的是 Page 和 Request, 一次 Request 可以引起多个 Page. 举个例子来说, 常用的 forward, sendRedirect 会引起多个 Page,
    但是只是一次请求.