JSP九大内置对象对应的JSP四大作用域以及session的生命周期

来源:互联网 发布:淘宝产品发布流程 编辑:程序博客网 时间:2024/05/17 11:32

JSP中九大内置对象及对应的作用域为:

request             请求对象             类型 javax.servlet.ServletRequest        作用域:Request

session             会话对象                类型 javax.servlet.http.HttpSession      作用域:Session

application        应用程序对象         类型 javax.servlet.ServletContext        作用域:Application

response          响应对象                类型 javax.servlet.SrvletResponse        作用域:Page

pageContext    页面上下文对象      类型 javax.servlet.jsp.PageContext      作用域:Page

out                    输出对象                类型 javax.servlet.jsp.JspWriter            作用域:Page

config                配置对象                类型 javax.servlet.ServletConfig            作用域:Page

page                 页面对象                类型 javax.lang.Object                           作用域:Page

exception          例外对象                类型 javax.lang.Throwable                     作用域:page

session的生命周期:

PHP中的session有效期默认是1440秒(24分钟)【weiweiok 注:php5里默认的是180分】,也就是说,客户端超过24分钟没有刷新,当前session就会失效。很明显,这是不能满足需要的。
一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储到数 据库,这样可以通过SQL语句来删除所有过期的session,精确地控制session的有效期。这也是基于PHP的大型网站常用的方法。但是,一般的 小型网站,似乎没有必要这么劳师动众。
但是一般的Session的生命期有限,如果用户关闭了浏览器,就不能保存Session的变量了!那么怎么样可以实现Session的永久生命期呢?
大 家知道,Session储存在服务器端,根据客户端提供的SessionID来得到这个用户的文件,然后读取文件,取得变量的值,SessionID可以 使用客户端的Cookie或者Http1.1协议的Query_String(就是访问的URL的“?”后面的部分)来传送给服务器,然后服务器读取 Session的目录……
要实现Session的永久生命期,首先需要了解一下php.ini关于Session的相关设置(打开php.ini文件,在“[Session]”部分):
1、session.use_cookies:默认的值是“1”,代表SessionID使用Cookie来传递,反之就是使用Query_String来传递;
2、session. name:这个就是SessionID储存的变量名称,可能是Cookie,也可能是Query_String来传递,默认值是“PHPSESSID”;
3、session.cookie_lifetime:这个代表SessionID在客户端Cookie储存的时间,默认是0,代表浏览器一关闭SessionID就作废……就是因为这个所以Session不能永久使用!
4、session.gc_maxlifetime:这个是Session数据在服务器端储存的时间,如果超过这个时间,那么Session数据就自动删除!
0 0
原创粉丝点击