二叉索引树java代码 二叉搜索树代码( 十 )


input type="text"
/form
这种技术现在已较少应用,笔者接触过的很古老的iPlanet6(SunONE应用服务器的前身)就使用了这种技术 。
实际上这种技术可以简单的用对action应用URL重写来代替 。
在谈论session机制的时候 , 常常听到这样一种误解“只要关闭浏览器,session就消失了” 。其实可以想象一下会员卡的例子,除非顾客主动对店家提出销卡,否则店家绝对不会轻易删除顾客的资料 。对session来说也是一样的,除非程序通知服务器删除一个session,否则服务器会一直保留,程序一般都是在用户做log off的时候发个指令去删除session 。然而浏览器从来不会主动在关闭之前通知服务器它将要关闭,因此服务器根本不会有机会知道浏览器已经关闭,之所以会有这种错觉 , 是大部分session机制都使用会话cookie来保存session id,而关闭浏览器后这个session id就消失了,再次连接服务器时也就无法找到原来的session 。如果服务器设置的cookie被保存到硬盘上,或者使用某种手段改写浏览器发出的HTTP请求头,把原来的session id发送给服务器,则再次打开浏览器仍然能够找到原来的session 。
恰恰是由于关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间,当距离客户端上一次使用session的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把session删除以节省存储空间 。
五、理解javax.servlet.http.HttpSession
HttpSession是Java平台对session机制的实现规范,因为它仅仅是个接口,具体到每个web应用服务器的提供商,除了对规范支持之外 , 仍然会有一些规范里没有规定的细微差异 。这里我们以BEA的Weblogic Server8.1作为例子来演示 。
首先 , Weblogic Server提供了一系列的参数来控制它的HttpSession的实现 , 包括使用cookie的开关选项 , 使用URL重写的开关选项,session持久化的设置 , session失效时间的设置,以及针对cookie的各种设置,比如设置cookie的名字、路径、域 , cookie的生存时间等 。
一般情况下,session都是存储在内存里,当服务器进程被停止或者重启的时候,内存里的session也会被清空,如果设置了session的持久化特性,服务器就会把session保存到硬盘上,当服务器进程重新启动或这些信息将能够被再次使用,Weblogic Server支持的持久性方式包括文件、数据库、客户端cookie保存和复制 。
复制严格说来不算持久化保存 , 因为session实际上还是保存在内存里,不过同样的信息被复制到各个cluster内的服务器进程中,这样即使某个服务器进程停止工作也仍然可以从其他进程中取得session 。
cookie生存时间的设置则会影响浏览器生成的cookie是否是一个会话cookie 。默认是使用会话cookie 。有兴趣的可以用它来试验我们在第四节里提到的那个误解 。
cookie的路径对于web应用程序来说是一个非常重要的选项,Weblogic Server对这个选项的默认处理方式使得它与其他服务器有明显的区别 。后面我们会专题讨论 。
关于session的设置参考[5]
~~我要200分~~
九宫格拼图·求此问题解法~~思路~代码都可~~就是关于其还原算法的·急~在线等~多谢哈在一个3×3的九宫中有1-8这8个数及一个空格随机的摆放在其中的格子里 , 如图1-1所示 。现在要求实现这个问题:将其调整为如图1-1右图所示的形式 。调整的规则是:每次只能将与空格(上、下、或左、右)相邻的一个数字平移到空格中 。试编程实现这一问题的求解 。
(图1-1)
二、题目分析:

推荐阅读