hibernate
文章平均质量分 77
middlekingt
工作2年
展开
-
论hibernate中的session.flush()和transaction.commit()的差异
1、flush()方法进行清理缓存的操作,执行一系列的SQL语句,但不会提交事务;commit()方法会先调用flush()方法,然后提交事务. 提交事务意味着对数据库所做的更新会永久保持下来 所谓清理,是指Hibernate 按照持久化象的状态来同步更新数据库 2、Flush()后只是将Hibernate缓存中的数据提交到数据库,如果这时数据库处在一个事物当中,则数据库将这原创 2012-08-04 14:48:50 · 4143 阅读 · 0 评论 -
hibernate 自增变量的操作
最近初学Hibernate,遇到调用HibernateTemplate的save方法时,如果PO的ID字段没有手工设置无法保存的问题。 程序背景是,使用MySQL数据库,库表的ID字段设置为auto_increment,使用MyEclipse插件自动生成XX.hbm.xml文件以及相应的DAO,自动生成的DAO中用HibernateTemplate进行持久化的操作,如save();库表原创 2012-08-10 15:15:41 · 6145 阅读 · 0 评论 -
Hibernate之OID
在关系数据库表中,主键用来识别记录,并保证每天记录的唯一性。在Java语言中,通过比较两个变量所引用对象的内存地址是否相同,或者比较两百变量引用的对象之是否相同来判断两对象是否相等。Hibernate为了解决二者之间的不同,使用对象标识符(OID)来标识对象的唯一性。OID是关系数据库中主键在Java对象模型中的等价物。在运行时,hibernate根据OID来维持Java对象和数据库表中的对应关系转载 2012-09-15 21:35:40 · 1009 阅读 · 0 评论