过滤器方式打开Hibernate_session
2010-09-21 21:19
330 查看
Opensessioninview 模式: 执行原理: •一进来就打开session ,进入servlet执行进入dao中获取数据。Dao 中的session对应当前的session ,所以要获取当前的session ,如 : Session session = sessionFactory.getCurrentSession(); •获取数据之后来到filter中执行china.doFilter(request,response)语句。 •来到jsp页面显示数据之后返回拦截器filter关闭session doFilter()方法的具体实现: Public void doFilter(HttpServletRequest request,HtppServletResponse response, …) { Session session = null; Transaction tx = null; Session = sessionFactory.getCurrentSession (); tx = session.beginTransation(); Chian.doFilter(request,response); Tx.commit(); Session.close(); } 使用过滤器方式: 好处: 在不同页面中需要或不需要数据,可以通过延迟关闭session来获取页面中所需要的数据。 缺点:导致session的开启和关闭的时间太长,占用线程,如果网络的并发量很大,等待线程的session会出现列队现象。 线程thread: 线程解决事物问题,两个SQL语句确定 打开session的两种方式: •Session session = sessionFactory.OpenSession(); •设置Hibernate.cfg.xml文件属性方式: <property name = “hibernate.current_session_context_class“ >thread</property> Hibernate 中的HQL查询 Hibernate 中的查询方式分为两种: •HQL查询 面向对象的查询方式,Can not transit Object . Attribute come scratch •对象查询(Criteria)
相关文章推荐
- getCurrentSession及openSession正确打开方式(既管治病,还管死活)(针对hibernate4.3.2版本)
- Hibernate获得session的方式
- hibernate获取session的两种方式分别是openSession() 方法和getCurrentSession() 方法。
- SSH全注解方式遇到问题sessionFactory or hibernateTemplate is required
- Hibernate中两种获取Session的方式
- 总结LocalSessionFactoryBean加载Hibernate映射方式
- hibernate中取得session的两种方式
- hibernate第三天——session的缓存与事务隔离级别,一对一关系,多种方式查询
- 利用过滤器对hibernate的session管理,实现session在线程范围内的共享
- Spring注解方式,异常 'sessionFactory' or 'hibernateTemplate' is required的解决方法 转载的
- Hibernate集成Spring SessionFactory生成方式
- Hibernate中两种获取Session的方式
- hibernate获取session的两种方式
- hibernate中session的产生方式(openSession、getCurrentSession)
- hibernate获取session的两种方式
- Hibernate-OpenSessionInView-session开启-关闭过滤器filter
- Hibernate中两种获取Session的方式 (转)
- Hibernate session 获取方式浅谈
- 1、Struts2和Hibernate的简单整合(带Session的管理方式)
- Hibernate入门(四)之hibernate中session的创建方式