hibernate 的get()和load()方法区别
2016-02-19 16:19
225 查看
hibernate 的get()和load()方法区别:
1. 执行get()方法,会立即加载对象;
执行load()方法,若不使用该对象,则不会立即执行查询操作,
而是生成一个代理对象;
get()是立即检索,load是延迟检索;
2. 若数据表没有对应的记录,session也没有关闭,同时要使用该对象时,get返回null,
load 若不使用该对象的如何属性,没问题,若初始化了,则抛出异常;
3. load会抛出LasyInitializationException异常:
在初始化代理对象之前已经关闭了session。
1. 执行get()方法,会立即加载对象;
执行load()方法,若不使用该对象,则不会立即执行查询操作,
而是生成一个代理对象;
get()是立即检索,load是延迟检索;
2. 若数据表没有对应的记录,session也没有关闭,同时要使用该对象时,get返回null,
load 若不使用该对象的如何属性,没问题,若初始化了,则抛出异常;
3. load会抛出LasyInitializationException异常:
在初始化代理对象之前已经关闭了session。
相关文章推荐
- 为什么自定义ViewGroup ondraw方法不会被调用
- 关于友盟统计的MobClick类的用法
- select poll epoll
- Libimseti的用户推荐系统
- Redis数据库的安装配置方
- 用SQL语句添加删除修改字段
- 网格部件中设置条件标识
- Hadoop MapReduce 工作原理
- surface_matching
- 翻翻git之---编译器般高大上的WebView RichEditor (PS:家里两个小祖宗大爆照)
- HDU-2045
- MJExtension json解析第三方
- 翻翻git之---编译器般高大上的WebView RichEditor (PS:家里两个小祖宗大爆照)
- ANDROID_MARS学习笔记_S02_009_Animation_Interpolator
- 算法导论22.2-8
- eclipse安装插件的两种方式在线和离线
- learning Go
- memcache
- swift2.0笔记2
- 【开源】一个有趣的文字冒险游戏