Hibernate的get和load的区别
来源:互联网 发布:戴尔笔记本连不上网络 编辑:程序博客网 时间:2024/05/22 03:49
Hibernate的get和load的区别
load()方法是假定你所读取的对象是肯定存在的...而get则是尝试访问..如果没有则返回null.而load就会抛出Exception cant load ...
个人认为这两个方法唯一的区别就是为了实现不同的业务需要...从src上看性能是一样的
get是直接查询数据库,如果查不到就返回null,并不存在如楼上说的隐患吧?
Load会首先从内存中装载,如果以前没有装载或查询出来,才开 始查询数据库,某些情况下效率会高一点。但如果类是通过代理映射的,load()方法会返回一个对象,这是一个未初始化的代理,并且直到你调用该对象的某 方法时才会去访问数据库,如果数据库中并不存在这条数据,而你去使用它的方法必然会抛出异常,所以你得在使用到这个对象的各处捕获异常,使用起来相对麻 烦。但这是使用了代理的情况,如果没有使用代理,只是简单的load,那查不到数据就会抛出异常了。
个人认为这两个方法唯一的区别就是为了实现不同的业务需要...从src上看性能是一样的
get是直接查询数据库,如果查不到就返回null,并不存在如楼上说的隐患吧?
Load会首先从内存中装载,如果以前没有装载或查询出来,才开 始查询数据库,某些情况下效率会高一点。但如果类是通过代理映射的,load()方法会返回一个对象,这是一个未初始化的代理,并且直到你调用该对象的某 方法时才会去访问数据库,如果数据库中并不存在这条数据,而你去使用它的方法必然会抛出异常,所以你得在使用到这个对象的各处捕获异常,使用起来相对麻 烦。但这是使用了代理的情况,如果没有使用代理,只是简单的load,那查不到数据就会抛出异常了。
本文引用地址:http://cnpoint.com/framwwork/2006/1128/content_4680.htm
- Hibernate的get和load的区别
- Hibernate的get和load的区别
- Hibernate的get和load的区别
- hibernate的load和get的区别
- hibernate的load()和get()的区别
- hibernate的load()和get()的区别
- Hibernate中load和get的区别
- Hibernate load()和get()的区别
- Hibernate get()和load() 的区别
- Hibernate中get和load的区别
- Hibernate中get和load的区别
- Hibernate之get和load的区别
- hibernate的get() load() 和find()区别
- hibernate load 和 get 的一点区别
- hibernate中get和load的区别
- Hibernate中get和load的区别
- hibernate 中get()和load()的区别
- hibernate load和get的区别
- HTML调色原理
- java基础:字符串分割的两种方法
- Effective C++之14
- 浅谈C++程序员的学习
- Matlab中绘制度长方体3D图形
- Hibernate的get和load的区别
- HTML清单标记
- 浅谈hibernate性能优化的几点建议
- HTML字体标记
- 规避网络游戏的外挂检测机制
- HTML内容排版标记
- Analysis包中的源码详解
- HTML文件标记
- 在asp.net中使用xml文件的两种类型及用法