`
85977328
  • 浏览: 1898901 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaEE中的session应用

阅读更多

在服务器上,通过Session来区分每一个上网用户

用户只要一连接到服务器,则立刻分配一个Session给用户


Session主要方法:
1  服务器上通过Session来分别不同的用户-->Session ID
任何连接到服务器上的用户,服务器都会位之分配唯一的一个不会重复的Session ID
Session ID是由服务器统一管理的,人为不能控制
方法:session.getID();
长度:32

2  判断是否是新的Session
public boolean isNew();
判断当前的Session是否是新建立的Session

3  Session的属性设置
设置属性:public void setAttribute(String name,Object value)
取得属性:public Object getAttribute(String name)
删除属性:pbulic void removeAttribute(String name)
4  登陆验证
通过Session能够对用户是否登陆做出验证
public void putValue(String name,Object)-->setAttribute
public Object getValue(String name)-->getAttribute
public removeValue(String name)-->removeAttribute
此三个方法已经过时,不建议再使用

注销用户:让用户的Session失效
如果Session失效,则在Session所保留的全部操作也会消失
public void invalidate()使Session失效(手工)
如果Session长时间不被使用,则也会自动失效
5  得到Session的创建时间
public long getCreationTime()
此方法返回long类型,通过new Date()可以取得一个完成时间
取得用户最后操作的时间:public long getLastAccessedTime();

6  总结
Session将信息保存在服务器上,而Cookie保存在客户端上
Session比Cookie更安全,Session比Cookie更占资源
开发原则:Session要尽量少用--尽量少向Session中保存信息
session使用了Cookie的机制,如果Cookie被禁用,则Session也无法使用,因为客户端的session ID以cookie形式,保存在了客户端的内存当中,这个时候我们可以通过url重写,来保证session的有效性.

重写url的方法如下

resp.encodeURL(request.getRequestURL().toString());  

重写完URL之后,跳转的时候,看看浏览器的地址变化吧^-^

具体内容在我另一篇文章中

http://phl.iteye.com/blog/699574

 

分享到:
评论
7 楼 85977328 2010-06-27  
showr 写道
感觉网站最好不要依赖session

session 在做 多服务器负载的时候

会有点麻烦

直接用 cookie + 第三方缓存 比较的好...

自己在两个公司呆过后得出的结论,纯属个人体会 ...

能具体说说是什么样的技术吗?
我还真没英国过第三方的缓存呢^-^
6 楼 85977328 2010-06-27  
gundumw100 写道
如何url重写?

重写url的方法在我另一篇文章中

http://phl.iteye.com/blog/699574
5 楼 罗卜头 2010-06-27  
回楼上,response有自带的方法的
4 楼 gundumw100 2010-06-27  
如何url重写?
3 楼 yuantong 2010-06-27  
“session使用了Cookie的机制,如果Cookie被禁用,则Session也无法使用,因为客户端的session ID以cookie形式,保存在了客户端的内存当中,这个时候我们可以通过url重写,来保证session的有效性.”
  ——学习了
2 楼 罗卜头 2010-06-27  
我也跟楼上的同样的想法
1 楼 showr 2010-06-27  
感觉网站最好不要依赖session

session 在做 多服务器负载的时候

会有点麻烦

直接用 cookie + 第三方缓存 比较的好...

自己在两个公司呆过后得出的结论,纯属个人体会 ...

相关推荐

    javaee-Session持久化小结

    这篇名为"javaee-Session持久化小结"的文章可能涵盖了如何在JavaEE应用中实现Session的创建、管理和持久化。 首先,Session的创建通常是通过HttpSession接口的`getSession()`方法完成的。当用户首次访问服务器时,...

    SharePreference类似于JavaEE中的session

    总结起来,SharePreferences是Android开发中存储轻量级偏好设置的重要工具,而JavaEE的session则是Web应用中实现会话跟踪的核心机制。理解并熟练掌握这两种技术,对于进行Android和JavaEE开发至关重要。通过阅读博文...

    JavaEE程序设计与应用开发源代码.rar

    7. **JNDI(Java Naming and Directory Interface)**:JNDI提供了一个命名和目录服务,用于查找和管理JavaEE应用中的资源,如数据源、邮件服务器等。 8. **JTA(Java Transaction API)**:JTA定义了跨多个资源的...

    JavaEE 程序设计与应用开发 源代码 郭克华主编

    3. **EJB(Enterprise JavaBeans)**:EJB是JavaEE的核心组件,分为Session Beans(负责业务逻辑)、Message-driven Beans(处理消息队列)和Entity Beans(持久化数据)。学习EJB有助于理解企业级应用的架构设计。 ...

    JavaEE开发技术与案例教程第2版-课件和代码.rar

    3. **EJB**:EJB是JavaEE中的企业组件模型,用于构建分布式、事务处理和安全的应用。EJB3.0引入了更轻量级的Session Beans和Message Driven Beans,使得EJB使用起来更加简单。教程会介绍如何创建和部署EJB,以及它们...

    JavaEE程序设计与应用开发3.11作业答案

    虽然EJB在现代JavaEE开发中使用较少,但了解基本概念,如Session Beans和Message-driven Beans,对于全面理解JavaEE是必要的。 JPA(Java Persistence API)和JDBC(Java Database Connectivity)是数据库操作的...

    Javaee 中文开发文档

    在学习过程中,你可以通过《JavaEE中文开发文档》的CHM文件深入研究每一个主题,理解其概念、API用法以及实际应用案例。CHM文件是一种常见的帮助文档格式,其中包含了丰富的索引和搜索功能,方便快速查找所需信息。...

    JavaEE程序设计与应用开发8.11作业答案

    在大型企业应用中,理解如何使用JMS处理消息传递是非常重要的。 在"homework0811"这个压缩包中,可能包含了完成作业所需的源代码、配置文件以及测试数据。通过分析和运行这些文件,你可以更深入地理解JavaEE开发的...

    javaee中文文档

    通过阅读这个中文文档,你可以了解到JavaEE的架构、组件、配置以及如何在实际项目中应用这些技术。同时,文档中的英文描述可以帮助你提高专业英语水平,理解国际上广泛使用的术语和编程习惯。 在学习过程中,应注重...

    JavaEE程序设计与应用开发源代码

    JavaEE,全称为Java Platform, Enterprise Edition,是Java平台针对企业级应用开发的一个标准和框架。...通过对这些源码的深入学习,开发者可以提升自己的JavaEE应用开发能力,更好地理解和应对企业级应用中的挑战。

    javaEE 中文API.chm

    JavaEE(Java Platform, Enterprise Edition)是Java技术在企业级应用开发中的标准,它提供了一系列框架和服务,用于构建分布式、多层的企业级应用程序。这个"javaEE 中文API.chm"文件显然是一份中文版的JavaEE API...

    javaee中核心jar包

    在JavaEE中,核心的jar包扮演着至关重要的角色,它们包含了运行JavaEE应用程序所需的基础组件和服务。下面将详细阐述这些核心jar包的重要性及其包含的关键知识点: 1. **Servlet API**:Servlet是JavaEE中的基础...

    JavaEE期末复习模拟题

    13. **容器**:JavaEE应用通常运行在应用服务器容器中,如Tomcat、Jetty、Glassfish和WildFly,这些容器负责管理应用的生命周期、提供服务和执行规范。 在复习JavaEE时,理解这些概念和技术的原理以及它们如何协同...

    JavaEE企业级应用开发 EJB3.0

    JavaEE企业级应用开发EJB3.0是Java平台在企业级软件开发中的一个重要组成部分,它为构建可扩展、高效且可移植的应用程序提供了一套完整的框架。本篇将深入探讨JavaEE的核心概念、优势、架构,以及EJB3.0在其中扮演的...

    《轻量级JavaEE企业应用实战》配套资源第五版

    在本书中,你会学习如何配置Hibernate,创建实体类,定义映射文件,以及使用Session接口进行CRUD操作。 4. **整合开发**:将这三个框架整合在一起,可以构建出强大的企业级应用。Struts 2负责前端展示,Spring 3...

    经典javaee企业应用实战光盘源代码

    这个“经典javaee企业应用实战光盘源代码”涵盖了几个关键的技术点,包括Java Persistence API (JPA)、Enterprise JavaBeans (EJB) 和JavaServer Faces (JSF)。下面将对这些技术进行详细解释,并探讨它们在实际项目...

    JavaEE程序设计与应用开发4.10作业答案

    JavaEE程序设计与应用开发是计算机科学领域中的一个重要分支,主要关注使用Java语言进行企业级应用程序的构建。在这个4.10作业中,我们可能涉及了JavaEE平台的关键技术,包括Servlet、JSP、EJB、JDBC以及MVC设计模式...

    javaee中文api

    JavaEE(Java Platform, Enterprise Edition)是Java平台上用于构建企业级应用的标准规范,它由一组技术模块组成,涵盖了网络服务、分布式计算、数据库交互、安全、事务管理等多个方面。JavaEE中文API则提供了这些...

    JAVAEE 中英对照

    6. **EJB (Enterprise JavaBeans)**: EJB是JAVAEE中的企业级组件模型,用于构建可复用的、分布式的、事务处理的服务器端应用程序。EJB包括三种类型:Session Beans、Message-driven Beans和Entity Beans,分别对应...

Global site tag (gtag.js) - Google Analytics