`
nenty
  • 浏览: 109203 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Session与Java对象

阅读更多
Session与Java对象
实体对象的三种状态

1.临时状态 ( transient )----对象刚new创建时,还没被持久化,不处于session缓存中。

2.持久化状态 ( persistent )---已被持久化,加入到session缓存中(调用session的相关方法时)

3.游离状态 ( detached )----已被持久化,但不在处于session的缓存中。

当实体对象被加入到 session 缓存中,就在 session 和实体对象之间建立了一种联系,以后可以从 session 缓存中读取实体对象出来。

如下说明Customer对象的状态变化过程
代码 Customer的生命周期 Customer对象的状态
Tx =session.beginTransaction();
Custome c1=
newCustomer(“Tom”,new HashSet()); 开始生命周期 临时状态
Session.save(c1); 处于生命周期 转变为持久化状态
Long id = c1.getId();
C1=null;
Customer c2=
(Customer)session.load(Customer.class,id) 处于生命周期 处于持久化状态
Session.close(); 处于生命周期 转变为游离状态
System.out.println(c2.getName()); 处于生命周期 处于有理状态
C2=null; 结束生命周期(JVM回收) 结束生命周期

session 缓存的作用:
1 减少访问 DB 的频率

2 保证缓存中的对象与 DB 同步(在清理缓存时,一次更新变化的对象属性到 DB )

清理session 缓存的时间:
1 事务对象调用 commit ( )

2 session 调用 find ( ) 或 iterate ( ) 时,如缓存中持久化对象属性变化则清理,以便保持得到最新数据

3 程序显示调用session.flush ( ) 方法时。


分享到:
评论

相关推荐

    Jsp九大内置对象,request,session,application

    熟练使用这些内置对象是开发JSP应用程序的基本要求,尤其是对于request、session和application对象更是必须要掌握的。 会使用对象所具有的方法,能熟练使用每一种对象的几种常用方法。希望对大家有用。。。

    session对象存储

    掌握怎样使用session对象存储和用户有关的数据

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    Java EJB中有、无状态SessionBean的两个例子

    Java EJB中有、无状态SessionBean的两个例子,的无状态SessionBean可,会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;  在有状态SessionBean中,用累加...

    jsp内置对象

    session 会话对象 request 请求对象 pageContext 页面上下文对象 application 应用程序对象 exception 异常对象 说明:有几种对象看起来和ASP的内置对象差不多,功能也类似,这是因为这些内置对象的构建基础是标准化...

    session中的bean监听

    Bean监听:它只监听javabean对象往session中保存和session中移出的过程。 bean监听不需要专门写一个监听器,它是将需要监听的javabean对象实现我们的接口HttpSessionBindingListener 从使用上它不同于前面两个...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    hibernate session.doc

    delete()方法用于从数据库中删除与Java对象对应的记录。如果传入的参数是持久化对象,Session就计划执行一个delete语句。如果传入的参数是游离对象,先使游离对象被Session关联,使它变为持久化对象,然后计划执行一...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    Java9种内置对象

    out:向页面输出 ...session:封装了用户浏览器和服务器的会话, 可以记录每个浏览器的运行状态 application:代表整个应用(web...pageContext:页面的管家,从对象中可以取得其他所有的内置对象 config:取得jsp网页的配置信息

    Java SessionBean状态判断的例子.rar

    Java SessionBean状态判断的例子,代码包中的两个实例,分别对无状态SessionBean和有状态SessionBean进行了演示,请注意,Home对象是EJB对象的制作生成库,该方法生成EJB对象,value参数用于计数器的初始化,在无状态...

    7、JAVA培训之JSP基础05_session对象笔记[整理].pdf

    7、JAVA培训之JSP基础05_session对象笔记[整理].pdf

    监听session的创建到销毁

    这是一个用springMVC的项目 是一个监听器 用于监听session的创建、销毁、移除。会触发相应的事件处理

    java源码包---java 源码 大量 实例

     Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...

    JAVA上百实例源码以及开源项目源代码

     Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥...

    【动力节点Java学院】Servlet视频教程之Session

    动力节点推出的Java视频教程首先简单介绍了Cookie,及在...还讲解了Session对象的创建及Session域;其次详细讲解了Session的工作原理;然后讲解了Session的失效;最后讲解了Cookie禁用后如何使用Session进行会话跟踪。

    Java Web程序设计入门课件-Session对象.pptx

    Java Web程序设计入门

    Java源码包100个设计实例.zip

    Java存储与读取对象.rar Java局域网通信——飞鸽传书源代码.rar JAVA帮助视图组件库 Help GUI 1.1源代码.rar JAVA开发的打字软件源程序.rar Java开发的简单WEB服务器源码.rar Java数据压缩与传输实例 Java数组倒置 ...

Global site tag (gtag.js) - Google Analytics