servlet jsp中 session对象 一样吗?

来源:百度知道 编辑:UC知道 时间:2024/05/29 16:05:41
在servlet中,要得到session并设值 要用 request.getSession().setAttribute();
而在jsp页面中 用session可以直接用,session.getAttrib(); 为什么?
session 既然是request里的成员 为什么在JSP页面不用 request.getSession()?
谢谢各位了,答的都清楚,不知给谁为最佳了啊!
选个四级的加加分啊

说明一点 在jsp页面中 使用request.getSession()是可以的。

可以试下,
<%
request.getSession().setAttribute("name","zzc");
%>
<%=session.getAttribute("name")%>
servlet是个类,要想使用session必须先获取 session对象。
jsp中可以直接使用session ,原因是因为 他把session对象内置了,
就像java.lang.*那4个包他默认导入一样。

你直接使用session ,其实 jsp 也是最后要编译成一个个类,
容器遇到jsp文件 就会自动创建 一个session对象 无须自己再写,
也就是 session =request.getSession(); 容器替你完成。

Jsp中的session 属于JSP的隐式对象,可以直接拿来使用的··
如此隐式对象还有:request,response,application,config,page,exception,out··===

而在Servlet里面的session需要自己创建哦··

如:

HttpSession session =request.getSession();

要明白一点:session不是request里的成员,只不过可以通过request.getSession()从request中取得session。

至于在jsp中可以直接用session,是因为在jsp中已经内置九个对象,其中session就是其中之一。