hibernate延迟加载与立即加载
延迟加载为什么需要保证是同一个session?配置拦截器或者过滤器的作用是什么?是否为了保证同一个session在最后才关闭?立即加载是不是不需要考虑这些也不用写拦截器或...
延迟加载为什么需要保证是同一个session? 配置拦截器或者过滤器的作用是什么?是否为了保证同一个session在最后才关闭?立即加载是不是不需要考虑这些 也不用写拦截器或过滤器?另外事务的作用是什么呢? 哪位大侠 帮小弟回答一下 谢了
展开
2个回答
展开全部
延迟加载也称为懒加载,是Hibernate3关联关系对象默认的加载方式,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。简单理解为,只有在使用的时候,才会发出sql语句进行查询。
延迟加载的有效期是在session打开的情况下,当session关闭后,会报异常。当调用load方法加载对象时,返回代理对象,等到真正用到对象的内容时才发出sql语句。
(具体可以搜索一下Hibernate的一些文档介绍)。
拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。例如:在你购买商品后,去购物车进行付款时,拦截器或者过滤器会起作用来验证是否已登录,若未登录则转向登陆界面。过滤器和拦截器的作用,我个人感觉差不多。
立即加载和拦截器的使用不存在必要的关系,拦截器有自己的作用,就看你想用不想用他了。
事务:首先应该理解这个词在SQL里面是什么意思?
事务就是一组简单的逻辑单元,事务的四个特性:原子性、一致性、隔离性、持久性。
事务的分类:显示、隐式、自动提交。
事务的创建:开始事务:begin transcation、
提交事务:commit transaction、
回滚事务:rollback transaction。
希望能帮到您!
延迟加载的有效期是在session打开的情况下,当session关闭后,会报异常。当调用load方法加载对象时,返回代理对象,等到真正用到对象的内容时才发出sql语句。
(具体可以搜索一下Hibernate的一些文档介绍)。
拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。例如:在你购买商品后,去购物车进行付款时,拦截器或者过滤器会起作用来验证是否已登录,若未登录则转向登陆界面。过滤器和拦截器的作用,我个人感觉差不多。
立即加载和拦截器的使用不存在必要的关系,拦截器有自己的作用,就看你想用不想用他了。
事务:首先应该理解这个词在SQL里面是什么意思?
事务就是一组简单的逻辑单元,事务的四个特性:原子性、一致性、隔离性、持久性。
事务的分类:显示、隐式、自动提交。
事务的创建:开始事务:begin transcation、
提交事务:commit transaction、
回滚事务:rollback transaction。
希望能帮到您!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询