SH配置中,hibernate不会自动释放session conn程序卡死
2012-06-29 16:57
127 查看
在实际应用过程中,发现一个问题,其表现形式为:
在访问数据库时,在多次(8)访问过后就出现容器不在继续访问。
有点像挂起。
研究发现,没有配置OpenSessionInViewFilter这个拦截器。
至于为什么,网上大把。主要就是提出没有配置这个,hibernate没有自动flush的功能。
下面把配置方式放上来。在web.xml文件中添加
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
-----------------------------------------------------------------------------------------------
Spring 配置文件
<!-- 事务管理 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 配置事务拦截器 -->
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="transactionAttributes">
<!-- 下面定义事务传播属性-->
<props>
<prop key="*">PROPAGATION_REQUIRED</prop>
<prop key="save*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<!-- 定义BeanNameAutoProxyCreator -->
<bean id="beanNameAutoProxyCreator"
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>*DAO</value>
</list>
</property>
<property name="interceptorNames">
<list>
<idref local="transactionInterceptor"/>
</list>
</property>
<property name="proxyTargetClass" value="true"/>
</bean>
在访问数据库时,在多次(8)访问过后就出现容器不在继续访问。
有点像挂起。
研究发现,没有配置OpenSessionInViewFilter这个拦截器。
至于为什么,网上大把。主要就是提出没有配置这个,hibernate没有自动flush的功能。
下面把配置方式放上来。在web.xml文件中添加
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
-----------------------------------------------------------------------------------------------
Spring 配置文件
<!-- 事务管理 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 配置事务拦截器 -->
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
<property name="transactionManager">
<ref bean="transactionManager"/>
</property>
<property name="transactionAttributes">
<!-- 下面定义事务传播属性-->
<props>
<prop key="*">PROPAGATION_REQUIRED</prop>
<prop key="save*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
<!-- 定义BeanNameAutoProxyCreator -->
<bean id="beanNameAutoProxyCreator"
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>*DAO</value>
</list>
</property>
<property name="interceptorNames">
<list>
<idref local="transactionInterceptor"/>
</list>
</property>
<property name="proxyTargetClass" value="true"/>
</bean>
相关文章推荐
- 配置hibernate根据实体类自动建表功能
- Hibernate使用MyExclipse10自动生成配置文件报错
- Android禁止程序自动旋转的配置
- 自动生成hibernate配置文件和对象关系映射文件
- 为什么状态栏上的GPS图标在GPS程序退出后不会自动消失
- 为微信小程序开发做准备,在Centos 6.8下利用letsencrypt.sh脚本为nginx 配置免费https证书
- 详解hibernate自动创建表的配置
- MyEclipse自动生成Hibernate配置文件时的一个错误
- hibernate.hbm2ddl.auto—Hibernate自动建表的配置
- eclipse中开发android程序时,打开layout配置文件自动关闭的问题
- oc-内存管理之自动释放--我自动释放了我使用的所有对象,但程序占用内存还是偏高,为什么?
- 结构程序Hibernate自动创建表
- 配置vim编写C/C++程序时自动缩进
- myeclipse10 自动生成hibernate配置文件
- linux配置monit自动监控程序运行状态
- 配置hibernate根据实体类自动建表功能
- 配置hibernate根据实体类自动建表功能
- lnmp和lamp优化研究,参考的是阿里云的sh自动安装的配置优化
- 在MyEclipse中利用XDoclet自动生成Hibernate配置和映射文件
- hibernate配置文件 自动生成表