|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你希望java的IDE整合。这个是没有必要的,重要的是你理解java有多深以及怎么组织你的代码,即使没有IDE,代码照样能够编译运行的。cookie|cookies|js|扫瞄器
一般,会话办理是经由过程服务器将SessionID作为一个cookie存储在用户的Web扫瞄器中来独一标识每一个用户会话。假如扫瞄器不撑持cookies,大概将扫瞄器设置为不承受cookies,我们能够经由过程URL重写来完成会话办理。
本色上URL重写是经由过程向URL毗连增加参数,并把sessionID作为值包括在毗连中。但是,为使这失效,你必要为你的servlet呼应部分的每一个毗连增加sessionID。
把sessionID加到一个毗连可使用一对办法来简化:response.encodeURL()使URL包括sessionID,假如你必要利用重定向,可使用response.encodeRedirectURL()来对URL举行编码。
encodeURL()及encodeRedirectedURL()办法起首判别cookies是不是被扫瞄器撑持;假如撑持,则参数URL被原样前往,sessionID将经由过程cookies来保持。
来看上面的例子,两个JSP文件:hello1.jsp和hello2.jsp,及它们之间的影响。我们在hello1.jsp中复杂的创立一个会话,并在session中存储一个对象实例。接着用户能够点击页面的毗连抵达hello2.jsp。在hello2.jsp中,我们从session中猎取本来安排的对象并显现它的内容。注重,我们在hello1.jsp中挪用了encodeURL()办法来取得hello2.jsp的链接,使得在扫瞄器停用cookies的情形下,sessionID主动增加到URL,hello2.jsp仍能失掉session对象。
起首在启用cookies的情形下运转。然后封闭对cookie的撑持,重启扫瞄器,再运转一次。每次你都能够看到会话办理在起感化,并能在页之间传送信息。
注重,假如你想让这个例子能在封闭了cookies的扫瞄器中事情,你的JSP引擎必需撑持URL重写。
hello1.jsp
<%@pagesession="true"%>
<%
Integernum=newInteger(100);
session.putValue("num",num);
Stringurl=response.encodeURL("hello2.jsp");
%>
<ahref=<%=url%>>hello2.jsp</a>
hello2.jsp
<%@pagesession="true"%>
<%
Integeri=(Integer)session.getValue("num");
out.println("Numvalueinsessionis"+i.intValue());
%>
axeon于2000-08-0311:05:38发送
Copyright |
|