SpringMVC4+Hibernate4运行报错Could not obtain transaction-synchronized Session for current thread

    xiaoxiao2023-03-24  4

    查了一下相关资料,整理如下:

    原因:Hibernate4 No Session found for current thread原因

    解决方法:

    1.  在spring 配置文件中加入

     程序代码 <tx:annotation-driven transaction-manager="transactionManager"/> 并且在处理业务逻辑的类上采用注解  程序代码 @Service public class CustomerServiceImpl implements CustomerService {       @Transactional     public void saveCustomer(Customer customer) {         customerDaoImpl.saveCustomer(customer);     }     ... } 另外在 hibernate 的配置文件中,也可以增加这样的配置来避免这个错误:  程序代码 <property name="current_session_context_class">thread</property>

    解决方法二:http://zhidao.baidu.com/link?url=BNyi8By29DMOXBCiNLeTa7WTTxlf4Q4IbQkrYO6lv6MFNMxv5zkBIx723t4JkezOaNcxc9ARhDIeXxtRZbID_0jYKonThVemDs1VkBUFmpK

    我也出现了这个问题,但是我在web.xml中增加了filter就可以了。也许你的问题不是这个,但我的这个问题是这么解决的。 <filter> <filter-name>SpringOpenSessionInViewFilter</filter-name> <filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class> </filter> <filter-mapping> <filter-name>SpringOpenSessionInViewFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>以上亲测,都可以解决!
    转载请注明原文地址: https://ju.6miu.com/read-1201865.html
    最新回复(0)