Session常用方法

  1. save()方法 将一个临时对象转化为辞旧话对象
  2. load()方法 VS get()方法
    1. 都是根据OID从数据库中加载一个持久化对象
    2. 区别1: 假如数据库中不存在与OID对应的记录,load方法会抛出异常,而get()方法返回null;
    3. 区别2: load方法默认采用延迟加载策略, get方法采用立即检索策略
  3. update()方法: 将一个游离对象转化为持久化对象
  4. saveOrUpdate()方法: 包含save()和 update() 方法
  5. merge()方法: 合并对象
    1.   取得两次相同对象时,update 会异常,merge()成功执行
    2.  1     public void testMerge(){
       2         Session session = sessionFactory.openSession();    //生成一个新的session
       3         session.beginTransaction();    //开启事物
       4
       5         Student stu = (Student) session.get(Student.class, Integer.valueOf(1));
       6         stu.setName("lisi");
       7
       8         session.save(stu);
       9
      10         session.getTransaction().commit();    //提交事务
      11         session.close();                    //关闭session
      12
      13         Session session1 = sessionFactory.openSession();    //生成一个新的session
      14         session1.beginTransaction();    //开启事物
      15         Student stu1 = (Student) session1.get(Student.class, Integer.valueOf(1));
      16         stu.setName("lisi1");
      17 //        session1.update(stu);        //异常
      18         session1.merge(stu);        //成功执行
      19
      20         session1.getTransaction().commit();    //提交事务
      21         session1.close();                    //关闭session
      22     }
  6. delete()方法: 删除对象
时间: 2024-10-10 23:14:38

Session常用方法的相关文章

session常用方法解析:

save(): Session 的 save() 方法使一个临时对象转变为持久化对象: Session 的 save() 方法完成以下操作: –--把 News 对象加入到 Session 缓存中, 使它进入持久化状态; –--选用映射文件指定的标识符生成器, 为持久化对象分配唯一的 OID. 在 使用代理主键的情况下, setId() 方法为 News 对象设置 OID 使无效的; –--计划执行一条 insert 语句:在 flush 缓存的时候 Hibernate 通过持久化对象的 OID

Hibernate中session常用方法

1.session.save(实体类) 保存2.session.get(实体类的字节码文件,变量id)3.session.update(实体类)4.session.delete(实体类)5.查询使用query对象来查询Query q = session.createQuery(hql)什么是hqlhql是hibernate的查询语言 ( from 实体类) 不需要写selcet相对于sql语句,在hql语句中 涉及到表中信息的,都使用实体类和类中的属性代替List<实体类> 变量 = q.li

Session实例

Session常用方法(一) session对象用来保存一些在与每个用户回话期间需要保存的数据信息,这样就方便了回话期间的一些处理程序.如可以用session变量记住用户的用户名,以后就不必在其他的网页中重复输入了.session对象的信息保存在服务器中,但ID保存在客户机的Cookie中,如果客户机不支持Cookie则转为URL重写,一般在使用session对象时不必考虑其实现的细节问题. 当用户关闭了所有某个web服务器上的网页时,则此服务器与客户机的session对象以及其变量会自动消失.

session学习

四大作用域 作用域 通信对象 有效范围 page pageContext 当前页面有效 request request 一次请求周期:从http请求发起,到服务器处理结束,返回响应的整个过程(转发) session session 一个会话周期:从用户打开浏览器访问服务器开始,到用户关闭浏览器的整过程,可以有多个request application application 从启动应用到关闭应用的整个过程,可以有多个session 都有的方法 void setAttribute(String n

05_request对象操作session详解

在django中操作session django中的session默认情况下是存储在服务器的数据库中的,在表中会根据sessionid,即session_key数据,然后再把这个sessionid 放到cookie中发送给浏览器存储,浏览器下次再向服务器发送请求的时候会自动的把所有cookie信息都发送给服务器,服务器再从cookie中获取sessionid然后再从数据库中获取session数据.但是我们在操作session的时候,这些细节根本不用管,我们只需要通过request.session

JSP学习笔记

一,JSP简介 JSP---Java Server Pages 拥有servlet的特性与优点(本身就是一个servlet) 直接在HTML中内嵌JSP代码 JSP程序由JSP Engine先将它转换成Servlet代码,接着将它编译成类文件载入执行 只有当客户端第一次请求JSP时,才需要将其转换.编译 优点: 优良的性能 优于CGI,PHP,ASP 平台无关性 操作系统无关,Web服务器无关 可扩展性 tag的扩展机制,简化页面开发 二,JSP基本语法 JSP传统语法 Declaration

javaSE、javaEE、Android知识点总结

上学时候的一些学习总结,如有错误请大家指出,欢迎指出,共同学习. 1. 什么是WebView? WebView是一个使用WebKit引擎的浏览器组件,用来加载网页. 2. WebView中加载网页的两种方式? loadUrl(url) 通过url地址加载互联网或本地网页 如:loadUrl("http://www.baidu.com"); loadUrl("file:///android_asset/html/index.html"); loadData(data,

Hibernate学习笔记(二)

1.Hibernate.cfg.xml常用配置 hibernate.show_sql   是否把Hibernate运行时的sql语句输出到控制台,值true.false hibernate.format_sql 输出到控制台的sql语句是否格式化,值true.false hbm2ddl.auto   sql语句生成策略,值create.update.create-dorp.validate hibernate.default_schema 默认的数据库 hibernate.dialect 配置数

Hibernate学习5—Hibernate操作对象2

第二节:Session 常用方法讲解 2)load和get()方法: 数据库中不存在与OID 对应的记录,Load()方法会抛出异常: load方法默认采用延迟加载,load出来的对象是一个代理类.开始并没有值,只有用到它的属性等的时候,才会去发出sql语句. 而get方法一开始就发出sql语句. 如果说获取一个对象是为了删除它,可以用load,因为只要获取个引用就行了. 如果说获取一个对象是为了访问它的属性,建议用get: @Test public void testLoadClass() {