报错: java.lang.ClassNotFoundException: org.hibernate.engine.transaction.spi.TransactionContext

在整合spring和hibernate时出现了这个问题。

两种可能

1.hibernate是5.0版本,而spring是4.0版本。5.0版本的hibernate中的相应包中把那个类给取消了。而在spring中配置时,我们最多只能配置到hibernate4,所以就出现了上述问题。

解决很简单,去网上下载hibernate4.0版本的hibernate-core-4.3.8.Final.jar,用这个文件替换中5.0中的那个。现在再运行,就能正常工作了。

2.spring-hibernate.xml中,hibernate指定包名或java文件名写错,导致找不到该文件。

我的错误是2,直接复制一个hibernate4的配置文件,忘记将其中的hibernate4改为hibernate5,导致找不到相应文件。


你可能感兴趣的:(hibernate)