`
yw404109794
  • 浏览: 4309 次
  • 性别: Icon_minigender_1
  • 来自: 冥王星
文章分类
社区版块
存档分类
最新评论

servlet生命周期 和 Hibernate持久化的状态

阅读更多
<一>servlet 生命周期:

1,加载和实例化:当Web Clinet请求一个url的时候,Tomcat就会通过用户请求url获得相应的serlvet ,然后对servlet进行加载和实例化(创建一个HttpservletRequest和HttpServletResponse对象并将clinet的请求信息封装到这个对象中!



2,初始化,通过配置文件,获得该servlet的初始配置信息!对于没个Servlet周期 init();方法只会被调用一次!而且初始化方法出错将会抛出 ServletException的异常!



3,请求处理。servlet容器 调用 HttpServlet的 service 方法,并吧 HttpservletRequest和HttpServletResponse参数传递给 HttpServlet!然后HttpServlet将会调用HttpservletRequest获得相关信息,紧接着便会调用HttpServletResponse方法生成数据源并发给WebClinet。当 service方法执行出错时将会抛出ServletException异常或者UnavailableException异常。如果UnavailableException异常指示了该实例永久不可用,Servlet容器将调用实例的destroy()方法,释放该实例。此后对该实例的任何请求,都将收到容器发送的HTTP 404(请求的资源不可用)响应。如果UnavailableException异常指示了该实例暂时不可用,那么在暂时不可用的时间段内,对该实例的任何请求,都将收到容器发送的HTTP 503(服务器暂时忙,不能处理请求)响应。

4,服务终止,当Tomcat检测到一个Servlet实例被移去的时候,便会调用destory();方法,便于java垃圾回收装置,释放资源。



<二>hibernate 持久态的三个状态:

hibernate的持久态分为三个状态,瞬时态(Transient),持久态(Persistent),和游离态(Detached)。瞬时态和游离态又成为(VO),持久态称为(PO)。

瞬时态:

瞬时对象在内存孤立存在,它是携带信息的载体,不和数据库的数据有任何关联关系,在Hibernate中,可通过session的save()或saveOrUpdate()方法将瞬时对象与数据库相关联,并将数据对应的插入数据库中,此时该瞬时对象转变成持久化对象。

持久态:

    处于该状态的对象在数据库中具有对应的记录,并拥有一个持久化标识。如果是用hibernate的delete()方法,对应的持久对象就变成瞬时对象,因数据库中的对应数据已被删除,该对象不再与数据库的记录关联。

     当一个session执行close()或clear()、evict()之后,持久对象变成脱管对象,此时持久对象会变成脱管对象,此时该对象虽然具有数据库识别值,但它已不在HIbernate持久层的管理之下。

        1. 和session实例关联;

       2. 在数据库中有与之关联的记录。

游离态:

当与某持久对象关联的session被关闭后,该持久对象转变为脱管对象。当脱管对象被重新关联到session上时(如调用update()、saveOrUpdate()等方法时),并再次转变成持久对象。

       1. 本质上与瞬时对象相同,在没有任何变量引用它时,JVM会在适当的时候将它回收;

        2.   比瞬时对象多了一个数据库记录标识值。





分享到:
评论

相关推荐

    Hibernate_3.2.0_符合Java习惯的关系数据库持久化

    HIBERNATE - 符合Java习惯的关系数据库持久化 Hibernate参考文档 3.2 -------------------------------------------------------------------------------- 目录 前言 1. 翻译说明 2. 版权声明 1. Hibernate...

    Hibernate+中文文档

    21.3. 级联生命周期(Cascading lifecycle) 21.4. 级联与未保存值(Cascades and unsaved-value) 21.5. 结论 22. 示例:Weblog 应用程序 22.1. 持久化类 22.2. Hibernate 映射 22.3. Hibernate 代码 23. ...

    hibernate3.2中文文档(chm格式)

    HIBERNATE - 符合Java习惯的关系数据库持久化 Hibernate参考文档 3.2 -------------------------------------------------------------------------------- 目录 前言 1. 翻译说明 2. 版权声明 1. Hibernate...

    HibernateAPI中文版.chm

    HIBERNATE - 符合Java习惯的关系数据库持久化 Hibernate参考文档 3.2 -------------------------------------------------------------------------------- 目录 前言 1. 翻译说明 2. 版权声明 1. Hibernate...

    Hibernate中文详细学习文档

    21.3. 级联生命周期(Cascading lifecycle) 21.4. 级联与未保存值(Cascades and unsaved-value) 21.5. 结论 22. 示例:Weblog 应用程序 22.1. 持久化类 22.2. Hibernate 映射 22.3. Hibernate 代码 23. ...

    Hibernate 中文 html 帮助文档

    21.3. 级联生命周期(Cascading lifecycle) 21.4. 级联与未保存值(Cascades and unsaved-value) 21.5. 结论 22. 示例:Weblog 应用程序 22.1. 持久化类 22.2. Hibernate 映射 22.3. Hibernate 代码 23. 示例:...

    hibernate 体系结构与配置 参考文档(html)

    为持久化字段声明访问器(accessors)和是否可变的标志(mutators)(可选) 4.2. 实现继承(Inheritance) 4.3. 实现equals()和hashCode() 4.4. 动态模型(Dynamic models) 4.5. 元组片断映射(Tuplizers) 5. 对象/...

    Hibernate参考文档

    21.3. 级联生命周期(Cascading lifecycle) 21.4. 级联与未保存值(Cascades and unsaved-value) 21.5. 结论 22. 示例:Weblog 应用程序 22.1. 持久化类 22.2. Hibernate 映射 22.3. Hibernate 代码 23. 示例:...

    J2EE应用开发详解

    191 11.4.2 会话Bean的组成 195 11.4.3 会话Bean的生命周期 196 11.4.4 创建无状态会话Bean 197 11.4.5 创建有状态会话Bean 198 11.5 消息驱动Bean和消息服务 199 11.5.1 JMS 200 11.5.2 消息驱动Bean的生命周期 202...

    java视频教程Day01 免费

    19. Servlets Life Cycle (Servlet生命周期) 20. Resources Accessing(Servlet资源获取) 21. Persistent States in HttpServlets(Servlet状态持久化) 22. Filter Programming (Filter编程) 23. Web ...

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    10.3.1 持久化上下文和持久化单元 382 10.3.2 实体类的要求 382 10.3.3 实体的状态 383 10.3.4 管理实体的方法 384 10.4 实体的基本映射387 10.4.1 映射实体类的属性 387 10.4.2 将实体映射到多个表 394 10.4.3 映射...

    从J2SE到J2EE知识点介绍

    3. 生命周期及状态转换 84 4. 线程调度 85 5. 线程同步 92 三. Jsp 101 (一) myeclipse上配置Tomcat服务器 101 (二) Jsp+servlet+bean版HelloWorld概览 105 (三) Jsp基本页面标签 116 1. 标签 116 2. contentType...

    java面试题

    Hibernate持久化:Hibernate根据定义的映射规则将对象持久化保存到数据库,这就实现了对象的持久化。 Spring由那几个模块组成? 答:Spring主要由7个模块组成: 1:Spring核心容器:提供了Spring框架的基本功能 2...

    Java Web程序设计教程

    3.3.3servlet的生命周期 49 3.3.4load-on-startupservlet 50 3.4自定义标签库 51 3.5预处理用户请求:filter 53 3.6使用listener 56 3.7项目实战——用户登录 59 本章小结 62 课后练习 63 第4章sql与jdbc ...

    用jsp开发与实现教学管理系统

    3. Servlet的生命周期……………………………………………………………………………… 3 第三章 JSP技术概述 1. JSP技术的产生背景……………………………………………………………………………… 4 2. JSP技术的...

    达内java培训目录

    Servlet/JSP Servlet生命周期及Servlet服务器、Tomcat部署配置、JSP语法、自定义标记、JSTL和EL表达式、JSP 新特性、Java Web 设计模式。 透彻理解Servlet核心原理;熟练掌握Servlet API;透彻理解JSP引擎工作原理;...

    用Java开发与实现教学管理系统动态网站

    3. Servlet的生命周期……………………………………………………………………………… 3 第三章 JSP技术概述 1. JSP技术的产生背景……………………………………………………………………………… 4 2. JSP技术的...

    Java语言基础下载

    Servlet的生命周期 557 Java Servlet API 560 Web上使用的HTTP Servlet 560 处理HTTP Servlet的关键方法 560 其它相关接口的说明 561 HTTP协议基本概念及其特点 563 获取Cookie 565 HTTP响应报头--Response 566 会话...

Global site tag (gtag.js) - Google Analytics