版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JAVAWEB开发实战经典第6章:JSP内置对象
——session对象李兴华北京魔乐科技软件学院JAVAWEB开发实战经典第6章:JSP内置对象李兴华北京本章目标掌握session的主要作用掌握session的常用操作方法本章目标掌握session的主要作用session对象在前面讲解四种属性范围的时候,已经为读者介绍了session对象的使用,实际上在开发中session对象最主要的用处就是完成用户的登陆(login)、注销(logout)等常见功能的,每一个session对象都表示不同的访问用户,session对象是javax.servlet.http.HttpSession接口的实例化对象,所以session只能应用在HTTP协议中。session对象在前面讲解四种属性范围的时候,已经为读者介HttpSession接口的主要方法No.方法类型描述1publicStringgetId()普通取得SESSIONID2publiclonggetCreationTime()普通取得SESSION的创建时间3publiclonggetLastAccessedTime()普通取得SESSION的最后一次操作时间4publicbooleanisNew()普通判断是否是新的SESSION(新用户)5publicvoidinvalidate()普通让SESSION失效6publicEnumerationgetAttributeNames()普通得到全部属性的名称HttpSession接口的主要方法No.方法类型描述1pu取得SessionId当一个用户连接到服务器之后,服务器会自动为此session自动分配一个不会重复的SessionId,服务器依靠这些不同的SessionId来区分每一个不同的用户,在WEB中可以使用HttpSession接口中的getId()方法取得这些编号。取得SessionId当一个用户连接到服务器之后,服务器会取得SessionId<%@pagecontentType="text/html"pageEncoding="GBK"%><html><head><title>,MLDN高端Java培训</title></head><body><% Stringid=session.getId(); //取得SessionId%><h3>SESSIONID:<%=id%></h3><h3>SESSIONID长度:<%=id.length()%></h3></body></html>取得SessionId<%@pagecontentTy通过序列化的方式保存session在Tomcat中可以通过配置server.xml文件,将每一个用户的session在服务器关闭时序列化到存储介质(存储介质可以是文件或数据库)上保存,这样即使服务器重新启动了,也可以通过反序列化的方式,从指定的存储介质上反序列化session。通过序列化的方式保存session在Tomcat中可以通过配配置server.xml文件,加入session保存操作<Contextpath="/mldn"docBase="D:\mldnwebdemo">
<ManagerclassName="org.apache.catalina.session.PersistentManager"> debug=0 saveOnRestart="true" maxActiveSession="-1" minIdleSwap="-1" maxIdleSwap="-1" maxIdleBackup="-1"
<StoreclassName="org.apache.catalina.session.FileStore"directory="d:\temp"/>
</Manager></Context>配置server.xml文件,加入session保存操作<C属性作用属性作用:className:session的管理器操作类,Tomcat通过此接口完成序列化管理;debug:Session管理器的跟踪级别;saveOnRestart:配置服务器重新启动前对session的处理,可以配置true或false两中选项,如果为true则会在容器关闭前将有效的session保存,重新启动后重新载入;maxActiveSession:可以活动的session的最大数,如果设置为-1,则表示不受限制,超过最大限制会将session对象转移到SessionStore中;minIdleSwap:一个session不活动的最短时间,单位为秒,如果设置为-1,则表示不受限制,超过该时间会将session对象转移到SessionStore中;maxidleSwap:一个session不活动的最长时间,单位为秒,如果设置为-1,则表示不受限制,超过该时间会将session对象转移到SessionStore中,该session不在内存中保存;maxidleBackup:session的最长时间,单位为秒,如果设置为-1,则表示不受限制,超过该时间会将session对象备份到SessionStore之中,但该Session对象依然存在于内存之中。<Store>元素:定义实现持久化session的操作类及指定的文件存放位置,本程序将序列化的session保存在了“d:\temp”文件夹之中,每一个保存的session都是通过文件保存的,文件的命名规范是“sessionid.session”。属性作用属性作用:登陆及注销在各个的系统中几乎都会包括用户登陆验证及注销的功能,那么此功能就完全可以使用session实现,具体的思路是:当用户登陆成功之后,设置一个session范围的属性,之后在其他需要验证的页面中判断是否存在此session范围的属性,如果存在,则表示已经是正常登陆过的合法用户,如果不存在,则给出提示,并跳转回登陆页提示用户重新登陆,用户登陆之后可以进行注销的操作。登陆及注销在各个的系统中几乎都会包括用户登陆验证及注销的功能程序列表No.表达式描述1login.jsp完成登陆表单的显示,同时向页面本身进行数据提交,以完成登陆的验证,如果登陆成功(用户名和密码固定:lixinghua/mldn),则保存属性;如果登陆失败,则显示登陆失败的信息。2welcome.jsp此页面要求在用户登陆完成之后才可以显示登陆成功的信息,如果没有登陆,则要给出未登陆的提示,同时给出一个登陆的连接地址。3logout.jsp此功能完成登陆的注销,注销之后,页面要跳转回login.jsp,等待用户继续登陆。程序列表No.表达式描述1login.jsp完成登陆表单的显判断是否是新的用户<%@pagecontentType="text/html"pageEncoding="GBK"%><html><head><title>,MLDN高端Java培训</title></head><body><%
if(session.isNew()){ //用户是第一次访问%>
<h3>欢迎新用户光临!</h3><% }else{ //用户再次访问本页面%>
<h3>您已经是老用户了!</h3><% }%></body></html>判断是否是新的用户<%@pagecontentType=取得用户的操作时间在session对象中,可以通过getCreationTime()方法取得一个session的创建时间,也可以使用getLastAccessedTime()方法取得一个session的最后一次操作时间,那么通过这两种操作,就可以计算出一个session的操作时间。取得用户的操作时间在session对象中,可以通过getCr取得一个session的操作时间<%@pagecontentType="text/html;charset=GBK"%><%
longstart=session.getCreationTime(); //取得创建时间
longend=session.getLastAccessedTime(); //取得最后一次操作时间
longtime=(end-start)/1000; //得出操作的秒
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省巢湖市汇文学校2026届高一下生物期末联考试题含解析
- 2026广东深圳市宝安区冠群实验学校诚聘3人考试备考试题及答案解析
- 2026广东深圳市龙岗区城市建设投资集团有限公司招聘3人笔试模拟试题及答案解析
- 2026甘肃酒泉瓜州县沙河乡卫生院招聘考试备考试题及答案解析
- 2026年江西省新余市高职单招职业适应性测试考试题库附答案解析
- 保险理赔造假考勤制度
- 2025年街道考勤制度
- 员工考勤制度管理模板
- 员工上班时间及考勤制度
- 乡村幼儿园考勤制度范本
- 乳甲外科科室介绍
- 小学班主任班级管理心得分享范文
- 口腔科设备管理与维护规范
- DCC 不同品牌UQD性能和可靠性互换性验证测试 2025
- 非遗宋锦课件
- 施工变安装施工方案
- 实施指南(2025)《DZ-T 0483 - 2024 水热型地热资源开发利用技术要求》
- 安徽省单招考试真题及答案
- 变压器装配工职业技能考核试卷及答案
- 2025煤矿安全规程解读
- 烧伤进修汇报课件
评论
0/150
提交评论