Servlet中session的应用
跟踪用户信息的Servlet对象为javax.servlet.HttpSession,创建该对象的方法是使用HttpServletRequest的getSession().具体格式为:
HttpSession session=request.getSession(true);
该方法如果参数值为true,表示会话存在时返回会话对象,当会话不存在时就创建一个新的会话;如果参数值为false,表示当会话存在时就返回会话对象,当会话不存在时就返回null.
HttpSession是Java平台对session机制的实现规范,因为它仅仅是个接口,具体到每个web应用服务器的提供商,除了对规范支持之外,仍然会有一些规范里没有规定的细微差异。
一般情况下,session都是存储在内存里,当服务器进程被停止或者重启的时候,内存里的session也会被清空,如果设置了session的持久化特性,服务器就会把session保存到硬盘上,当服务器进程重新启动或这些信息将能够被再次使用。复制严格说来不算持久化保存,因为session实际上还是保存在内存里,不过同样的信息被复制到各个cluster内的服务器进程中,这样即使某个服务器进程停止工作也仍然可以从其他进程中取得session。cookie生存时间的设置则会影响浏览器生成的cookie是否是一个会话cookie。默认是使用会话cookie。有兴趣的可以用它来试验我们在第四节里提到的那个误解。 HttpSession类它提供了setAttribute()和getAttribute()方法存储和检索对象。HttpSession提供了一个会话ID关键字,一个参与会话行为的客户端在同一会话的请求中存储和返回它。servlet引擎查找适当的会话对象,并使之对当前请求可用。HttpServletRequest 接口提供了以下方法来获取HttpSession实例。
public HttpSession getSession() :该方法取得请求所在的会话。
public HttpSession getSession(Boolean create):返回当前请求的会话。如果当前请求不属于任何会话,而且create参数为true,则创建一个会话,否则返回null。此后所有来自同一个的请求都属于这个会话,通过它的getSession返回的是当前会话。
public void setAttribute(String name,Object value) 将value对象以name名称绑定到会话
public object getAttribute(String name) 取得name的属性值,如果属性不存在则返回null
public void removeAttribute(String name) 从会话中删除name属性,如果不存在不会执行,也不会抛处错误.
public Enumeration getAttributeNames() 返回和会话有关的枚举值 public void invalidate() 使会话失效,同时删除属性对象
public Boolean isNew() 用于检测当前客户是否为新的会话
public long getCreationTime() 返回会话创建时间
public long getLastAccessedTime() 返回在会话时间内web容器接收到客户最后发出的请求的时间
public int getMaxInactiveInterval() 返回在会话期间内客户请求的最长时间.秒
public void setMaxInactiveInterval(int seconds) 允许客户客户请求的最长时间
ServletContext getServletContext() 返回当前会话的上下文环境,ServletContext对象可以使Servlet与web容器进行通信
public String getId() 返回会话期间的识别号
- 大小: 45.1 KB
- 大小: 14.2 KB
分享到:
相关推荐
本文将基于提供的文件内容,深入探讨Servlet中Session的工作原理、如何实现Session的跟踪机制以及Session在实际应用中的作用。 #### Session概述 在Web应用程序中,HTTP协议本身是一种无状态的协议,这意味着...
登录验证是Web应用程序开发中的重要环节,用于确保只有合法用户...通过深入理解Servlet和Session的工作原理,以及如何在实际项目中应用它们,你将能够提升你的Web开发技能,并为构建更安全的Web应用程序打下坚实基础。
在实际应用中,可能还需要重载`doPost()`等其他方法以处理不同类型的HTTP请求。 这个案例不仅教授了如何在Servlet中使用Session,还涉及了HTTP请求和响应的处理,以及Servlet的生命周期方法。通过实践这个案例,...
本文将深入探讨JSP和Servlet中的session概念,以及它们如何在Web应用程序中实现状态管理。HTTP协议本身是无状态的,这意味着每次客户端(浏览器)向服务器发送请求时,服务器无法识别请求是否来自同一个会话。为了...
3. **Session**:在Web应用中,Session用于跟踪用户状态。在这个购物车案例中,当用户选择添加图书到购物车时,系统会创建一个Session对象,并将图书信息存储在其中。这样,即使用户浏览不同的页面,系统也能通过...
Session是Web应用程序中用来跟踪用户状态的一种机制。在用户与服务器交互的过程中,由于HTTP协议无状态性,服务器无法识别多次请求是否来自同一个用户。为了解决这个问题,我们可以使用Session技术。现在,我们详细...
这个实例不仅有助于理解JSP、Tomcat、MySQL、Servlet和Session的基本概念,还能帮助开发者掌握如何将它们集成到实际项目中,构建出具有用户会话管理功能的Web应用。通过阅读和实践,你可以更深入地理解MVC模式,提高...
而Session则是一种在Web应用中维持用户会话状态的技术。 【描述】:“本资源使用数据库加载!含有分页!”这部分描述表明学习资料可能包含如何在Servlet中与数据库进行交互的内容,比如使用JDBC进行数据查询和操作...
**文件上传**和**文件下载**是Web应用中的常见功能。Servlet API提供了`Part`接口处理多部分形式的数据,如文件上传,而文件下载通常涉及设置响应头以指示文件类型和大小,以及提供下载内容的输出流。 总结来说,...
Servlet不仅能够生成动态内容,还能进行会话管理,其中最常用的就是Cookie和Session。本文将深入探讨Servlet如何管理和利用这两种技术进行会话跟踪。 **Cookie管理** Cookie是一种客户端存储机制,用于在用户的...
在Web开发中,Servlet是Java平台上的一个标准接口,用于处理HTTP请求。Session技术则是Servlet中的一种重要概念,它在用户会话管理中扮演着关键角色...在实际应用中,可以根据项目需求和规模选择最合适的会话管理策略。
【描述】中的知识点主要围绕JSP、Servlet和JavaBean这三大核心技术在构建网上交易系统中的应用。JSP(JavaServer Pages)是一种动态网页技术,它允许开发者在HTML代码中嵌入Java代码,从而实现动态内容的生成。...
本教程将聚焦于如何在JSP应用中使用Servlet和Session对象来实现在不同页面间的数据共享,尤其适用于JBuilder开发环境。 **一、JSP与Servlet简介** JSP是一种服务器端技术,它允许开发者使用HTML或者XML模板来嵌入...
在现代互联网应用中,会话跟踪技术是一个至关重要的概念,它确保了网站能够识别在连续的多个页面访问过程中,来自同一个用户的请求。其中,Session和Cookie是两种常用的会话跟踪技术。Java Servlet技术作为Java EE的...
HTTP Session是Web应用中常用的一种技术,用于存储用户特定的信息,比如登录状态、购物车内容等。在BIRT中,可能我们需要将用户的某些信息或者特定的报告参数保存在Session中,以便在生成报告时使用。例如,我们可以...
Listener监听Web应用中特定事件,如Session创建、销毁、请求到达等。 八、Servlet 3.0新特性 自Servlet 3.0版本起,引入了注解配置,允许直接在Servlet类上声明映射和初始化参数,减少了`web.xml`的依赖。例如: ``...
在Java Web开发中,`JSP` 和 `Servlet` 是两个关键组件,它们共同构建了动态Web应用程序。而`过滤器(Filter)`是Servlet API的一部分,它提供了一种机制来拦截请求和响应,实现诸如登录验证、字符编码转换、性能...
对于登录功能,Servlet会验证用户输入的凭证,如果匹配成功,则创建一个会话(session),存储用户的登录状态;否则,返回错误消息。注册功能可能涉及插入新用户数据到数据库,通常需要防止SQL注入等安全问题。 总...
【跨服务器session应用详解】 在Web开发中,session机制是一种至关重要的技术,它允许服务器在多个请求之间跟踪用户的状态,从而实现动态交互和个性化服务。本文将深入探讨session的工作原理,以及如何在Java Web...
Session 不像 Cookie 拥有路径的问题,可以在同一个应用程序下共享同一个 Session,前提是同一个客户端。Session 的生命周期与浏览器的会话相关,关闭浏览器时 Session 才会销毁。 Cookies 介绍 Cookies 是一种...