Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在春季休眠SessionFactory_Java_Hibernate_Spring - Fatal编程技术网

Java 在春季休眠SessionFactory

Java 在春季休眠SessionFactory,java,hibernate,spring,Java,Hibernate,Spring,我正在使用Hibernate3和Spring3。我正在尝试使用Spring启动hibernate事务。 下面是我的配置 <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation" value="classpath:hibernate.cfg.xml" /> </

我正在使用Hibernate3和Spring3。我正在尝试使用Spring启动hibernate事务。 下面是我的配置

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="configLocation" value="classpath:hibernate.cfg.xml" />
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
我在hibernate配置xml中有以下行

<property name="hibernate.current_session_context_class">thread</property>

这有什么不对吗?当前会话上下文类的值是线程以外的值吗?

问题已经解决了

SessionFactory SessionFactory=新配置().configure().buildSessionFactory()

当您使用Spring事务管理时,似乎需要使用在applicationContext.xml中配置的sessionFactory(使用依赖项注入)

下面的代码解决了这个问题

private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sessionFactory)
{
   this.sessionFactory = sessionFactory;
}
在applicationContext.xml中:

<bean id="BookService" class="hibernate.BookServiceImpl">
   <property name="sessionFactory" ref="sessionFactory" />
</bean>

private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sessionFactory)
{
   this.sessionFactory = sessionFactory;
}
<bean id="BookService" class="hibernate.BookServiceImpl">
   <property name="sessionFactory" ref="sessionFactory" />
</bean>