hibernate
只是买一双鞋
这个作者很懒,什么都没留下…
展开
-
级联操作和inverse
级联操作 在映射文件中的关联元素中都有一个cascade属性,用来指定如果操纵与当前对象关联的其他对象。eg: cascade="all"none: 在保存,更新,删除当前对象的时候忽略其他关联的对象。是cascade的默认值save-update: 当通过Session的save(),update(),saveOrUpdate()方法来保存或者更新当前对象的时候级联保存所有关联的临原创 2014-11-30 08:22:27 · 806 阅读 · 0 评论 -
Hibernate对象的状态:
Hibernate对象的状态: 1)瞬时态Transient 由new操作符创建,且尚未与HibernateSession关联的对象。处于瞬时态的java对象成为临时对象。特点:不处于Session的缓存中,即不被任何一个Session实例关联。 在数据库中没有对应的记录。 2)持久态Persistent 已经被持久化,加入到Session的缓存原创 2014-11-30 08:09:59 · 352 阅读 · 0 评论 -
hibernate中的对象映射配置文件
初学者会混淆各种hibernate间不同映射关系的配置原创 2014-11-29 20:12:52 · 470 阅读 · 0 评论 -
Session缓存:
Session缓存: session缓存是由一系列的Java集合构成的。当一个对象被加入到Session缓存中,这个对象的引用就加入到了java的集合中,以后即使应用程序中的引用变量不再引用该对象,只要Session缓存不被清空,这个对象一直处于生命周期中。 Session缓存的作用: 1)减少访问数据库的频率。 2)保证缓存中的对象与数据库中的相关记录保持同步。 S原创 2014-11-30 08:16:37 · 711 阅读 · 0 评论 -
hibernate与jdbc的区别
JDBC与Hibernate比较1,JDBC: java中嵌入SQL,不便于维护 Hibernate: 无须编写SQL语句;由Hibernate通过读取映射文件在运行时自动生成SQL save(student)->insert into customer values(?,?,?);2,JDBC:查询数据,需要手动封装成对象;保存对象,xu8y原创 2014-11-29 20:40:57 · 390 阅读 · 0 评论 -
什么是事务
一、什么是事务 通俗的理解,事务是一组原子操作单元,从数据库角度说,就是一组SQL指令,要么全部执行成功,若因为某个原因其中一条指令执行有错误,则撤销先前执行过的所有指令。更简答的说就是:要么全部执行成功,要么撤销不执行。 事务必须服从ISO/IEC所制定的ACID原则。原子性(atomicity)一致性(consistency)隔离性(isolation)持久性(转载 2014-12-06 22:31:36 · 7363 阅读 · 0 评论 -
hibernate中load()与get()的区别
load默认为延迟加载,在用到对象中的其它属性数据时才查询数据库,但是万一数据库中不存在该记录,抛ObjectNotFoundException,即在使用该对象时,数据库中不存在该数据库时抛异常,而不是在创建这个对象时。由于session中的缓存对于hibernate来说是个相当廉价的资源,所以load时会先查一下session缓存看看该id对应的对象是否存在,不存在则创建代理(load时候查询一原创 2014-12-07 21:22:21 · 553 阅读 · 0 评论 -
Hibernate中的save()和saveOrUpdate()的区别
摘自hibernate说明文档:saveOrUpdate()做下面的事:如果对象已经在本session中持久化了,不做任何事如果关联另一个与本session关联的对象拥有相同的持久化表示(identitifer),抛出一个异常如果对象没有持久化标识(identitier)属性,对其调用save()如果对象的持久化标识(identifier)表明其是一个新实例化的对象,对其调用s原创 2014-12-07 23:32:17 · 1539 阅读 · 0 评论