get()与load()的区别
l 查找时,都会优先从session的缓存中查找.
l 查找不存在对应记录时,表现不一样.load方法查找不到时不会报错,get查找不到时会报错.
l Load返回的是代理对象,等到真正要用到对象的内容时才发起SQL语句.get直接发起SQL语句从数据库中取出,不会延迟.
Update()方法
1 用来更新detached对象,更新完成之后成为persistent.
2 更新transient对象会报错. 更新自己设定id(前提是id在数据库中存在)的transient对象可以.
3 持久化的对象只要设定不同字段就会发生更新
4 更新部分更改的字段(三种方法)
l XML设定property标签的update=true|false属性,
annotation设定@Column(updatable=false)属性,这种方式少用,不灵活.
l XML设定class标签的dynamic-update=”true”属性,
同一个session中可以,跨session不行.跨session时的实现方法不过可以用session的merge().merge方法会先从数据库load,将得到的和数据库中的进行对比,再update更改过的字段.
分享到:
相关推荐
hibernate3.3.2
Hibernate3.3.2_项目源码Hibernate3.3.2_项目源码Hibernate3.3.2_项目源码Hibernate3.3.2_项目源码Hibernate3.3.2_项目源码Hibernate3.3.2_项目源码
hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2hibernate3.3.2...
hibernate3.3.2官方完整版,内含java调用完整教程
Hibernate 3.3.2,Hibernate 3.5.5,hibernate-release-4.3.6.Final
Hibernate3.3.2+Spring2.5.5+Struts2.1.6+Extjs3.0.0_Annotations方式快速开发框架资料。
对应hibernate3.jar,是从Hibernate官方发布版本(hibernate-distribution-3.3.2.GA-dist.zip)的\project\core\src\main\java\目录下获取。
hibernate3.3.2GA 中文参考手册+英文API
hibernate3.3.2中文帮助文档
适应于那些使用SSH开发的项目,此资料从官网下载,望对下载者有所帮助
Hibernate3.3.2 api chm 版本 方便使用
尚学堂_Hibernate3.3.2_项目源码,尚学堂_Hibernate3.3.2_项目源码
hibernate3.3.2jar包 12个
hibernate3.3.2+spring2.5.6+struts2.1.6整合包,hibernate3.3.2+spring2.5.6+struts2.1.6整合包+anntations
Hibernate3.3.2jar包
Struts2.1.6 Spring2.5.6 Hibernate3.3.2_jar
Hibernate 3.3.2 API DOCS 文档 HTML格式
Hibernate框架
Struts2.1.6 Spring2.5.6 Hibernate3.3.2
hibernate3.3.2_参考文档,包括xml映射方式和annotation映射方式。