|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先谈谈我对java的一些认识。我选择java,是因为他语法简单,功能强大,从web,到桌面,到嵌入式,无所不能。但当我进一步了解了java后,感叹,java原来也有许多缺点。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());
%>
从一个编程语言的普及程度来将,一个好的IDE是至关中要的,而现在的java的IDE虽然已经很好了,但是和.net比起来还是稍微差一些的,这是个客观事实。java要想普及的更好。DE是必须加以改进的。 |
|