hibernate之Session对象】的更多相关文章

一.持久化对象的状态        站在持久化的角度, Hibernate 把对象分为 4种状态: 持久化状态,临时状态,游离状态,删除状态.Session 的特定方法能使对象从一个状态转换到另一个状态.   •临时对象(Transient): –在使用代理主键的情况下, OID 通常为null –不处于 Session的缓存中 –在数据库中没有对应的记录 •持久化对象(也叫"托管")(Persist): –OID 不为null –位于 Session缓存中 –若在数据库中已经有和其对…
Session对象:数据库的核心对象 增删改查 ...java public class UserDao { public void addUser(User user) { //使用hibernate //得到配置信息 Configuration config = new Configuration().configure(); //创建sessionFactiory对象 SessionFactory sessionFactory = config.buildSessionFactory();…
1.session.save()方法 1).session.save()方法会使一个对象从临时状态转变为持久化状态. 2).session.save()方法会赋予持久化对象的OID属性一个ID值,以对应数据库该条数据. 3).在session.flush()被调用时,session.save()方法会发送一条insert SQL语句. 4).持久化对象的OID值不能被修改,尝试修改会抛出异常. 2.session.persist()方法 1).session.persist()和save()方法…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
//开启事务 transaction=session.beginTransaction(); 上面为开启事务 transaction.commit();这个为提交事务 从session对象中获取事务后进行提交 下面可以自动提交事务,并且可以不需要对于这个事务进行提交,但是不推荐这样进行使用这个方法 session.doWork(new Work() { //这里的connection对象就是jdbc中的对象 @Override public void execute(Connection con…
因为Hibernate是ORM(对象关系映射)的,所以程序员是不需要写Sql语句的.所有的操作都是通过对对象的操作. 1,原生Session 事务管理 Transaction tx = session.beginTransaction();//开启事务 tx.commit();//提交事务 查询数据 查询user表中主键值为1的数据 Object user = session.get(User.class, 1); 插入数据 向数据表中插入一条新数据 User user=new User();…
更改hibernate.cfg.xml的内容,常用配置有: <!--  把hibernate运行时的SQL语句显示到控制台  --> <property name="show_sql">true</property> <!--  输出到控制台的SQL语句是否排版  --> <property name="format_sql">true</property> <!--  生成具体的表结构,…
Hibernate中的Session 大家在看hibernate视频的时候一定都发现了,每次要操作数据库,总是要新建一个session对象,Hibernate在对资料库进行操作之前,必须先取得Session实例,相当于JDBC在对资料库操作之前,必须先取得Connection实例, Session是Hibernate操作的基础. Session三种状态 Session的生命周期绑定在一个物理的事务(tansaction)上面.(长的事务可能跨越多个数据库事物.) Session的主要功能是提供对…
引导目录: Hibernate 系列教程 目录 1. Java对象的三种状态 当应用通过调用Hibernate API与框架发生交互时,需要从持久化的角度关注应用对象的生命周期. 持久化声明周期是Hibernate中的一个关键概念,正确地理解生命周期,可以更好地了解Hibernate的实现原理,掌握Hibernate的正确用法. Hibernate框架通过Session来管理Java对象的状态,在持久化生命周期中,Java对象存在着如下三种状态: 瞬时状态(Transient) 通过new创建对…
目录导读: Hibernate 系列 学习笔记 目录 本篇目录: 为了区别不同的对象,有两种识别方法: 1. 内存地址识别(“==”号识别) 2. equals()和hashCode()识别 1. 以内存地址识别 如果两个对象的内存地址相同,毫无疑问,它们是相同的. 如果要比较的是对象携带的信息,使用内存地址识别就不可用,因为地址不同的对象,它们所代表的的信息可能是一样的. 例如有两个字符串,代码如下: public class CNBlogsTest { public static void…