javaservlet实现session创建存取以及url重写代码示例

javaservlet实现session创建存取以及url重写代码示例

ID:30776603

大小:87.60 KB

页数:7页

时间:2019-01-03

javaservlet实现session创建存取以及url重写代码示例_第1页
javaservlet实现session创建存取以及url重写代码示例_第2页
javaservlet实现session创建存取以及url重写代码示例_第3页
javaservlet实现session创建存取以及url重写代码示例_第4页
javaservlet实现session创建存取以及url重写代码示例_第5页
资源描述:

《javaservlet实现session创建存取以及url重写代码示例》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、javaServlet实现Session创建存取以及url重写代码示例Session对象的原理在于,服务器可以为客户端创建并维护一个所谓的Session对象,用于存放数据。在创建Session对象的同时,服务器将会为该Session对象产生一个唯一编号,这个编号称Z为SessionlD,服务器以Cookie的方式将SessionlD存放在客户端。当浏览器再次访问该服务器时,会将SessionlD作为Cookie信息带到服务器,服务器可以通过该SessionlD检索到以前的Session对象,并对其进行访问。需要注意的是,此时

2、的Cookie中仅仅保存了一•个SessionlD,而和对较多的会话数据保存在服务器端对应的Session对象中,由服务器来统一维护,这样一定程度保证了会话数据安全性,但增加了服务器端的内存开销。存放在客户端的用于保存SessionlD的Cookie会在浏览器关闭时清除。我们把用户打开一个浏览器访问某个应用开始,到关闭浏览器为止交互过程称为一个“会话”。在一个“会话”过程中,可能会向同一个应用发出了多次请求,这些请求将共享一个Session对彖,伙]为这些请求携带了相同的SessionlD信息。1.javaServlet实现

3、SessionjavaServlet用來演示Session的丁作原理代码1:1publicvoiddoGet(HttpServletRequestrequest,HttpServletResponserespon2throwsServletException,IOException{3response・setContentType("text/html");4PrintWriterout=response.getWriter();5Stringoption二request.getParameter("option");6if

4、("create”.equals(option)){7//获得HttpSession对象8HttpSessionsession=request.getSession();9//设置Session对象的最长不活动间隔10session.setMaxInactivelnterval(30);11//获取Session中的数据12Listlist=(List)session.getAttribute(Tist");13if(list==null){14list=newArrayList();15list.add(nheyH);16

5、//向Session中添加数据17session.setAttribute(nlistn,list);18}else{19list・add(”hey”);20}1out・printIn(list);2}elseif("invalidate"・equals(option)){3HttpSessionsession=request・getSession(false);4if(session!=null){5//使Session对象失效6session・invalida;7}8}该Servlet的url-paltern为/test

6、Session。当浏览器请求地址"•••/tst/testSession?option=create”时,Servlet调用request的getSession方法获得Session对彖,如果此时服务器端存在与请求信息中SessionlD(作为Cookie信息携带)对应的Session对象,贝lj返回这个Session对象,否则将会创建一个新的Session对象并将其产生的SessionlD以Cookie的形式通过响应信息送回。注意,Session对彖的setMaxlnactivelnterval方法用于设置最长不活动间隔,

7、单位是秒,如果出现在这个的时间段内Session对彖没冇被存取,则该Session对象将会失效。通常为了保证服务器的性能和出于安全性考虑,这个值要妥善的设置(Tomcat针对Session的Mcixlnactivelnterva1会有默认的设置)。若setMaxlnactivelnterva1设置为负值,则表示该Session永不过期。另外,Session对象分别通过setAttribute和getAttribute方法存取数据,数据以"名称-对象”对的形式存放。该请求对应的请求和响应的HTTP信息为:请求:1GET/tst

8、/testSession?option=createHTTP/1.12Accept:image/gif,image/x・xbitmap,image/jpeg^image/pjpeg,3application/x・shockwave-flashyapplication/x・silverlig

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。