gpt4 book ai didi

java - Spring错误: No qualifying bean of type [org. hibernate.SessionFactory]发现依赖关系

转载 作者:行者123 更新时间:2023-12-02 03:37:58 27 4
gpt4 key购买 nike

让我首先发布 full stack trace .

基本上,我有这个 DAO 类:

package nl.alli.persistence.util;

import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

/**
* Created by thijm on 13-5-2016.
*/
@Component
public class Dao {
@Autowired
private SessionFactory sessionFactory;

public SessionFactory getSessionFactory() {
return sessionFactory;
}
}

我正在尝试将 spring 与 hibernate 5 结合使用来 Autowiring SessionFactory。

我的 spring.xml 看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

<!--&lt;!&ndash; Register Annotation-based Post Processing Beans &ndash;&gt;-->
<!--<context:annotation-config />-->

<!--&lt;!&ndash; Scan context package for any eligible annotation configured beans. &ndash;&gt;-->
<!--<context:component-scan base-package="nl.alli" />-->
<context:annotation-config/>
<bean id="myDataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://url.url"/>
<property name="password" value="tdjfkladsf"/>
<property name="username" value="jaskdf"/>
</bean>

<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.MySQLDialect
</value>
</property>
</bean>

<bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
<property name="sessionFactory" value="mySessionFactory"/>
</bean>



<!--<bean id="BjornJansonDataCollectorBean" class="nl.alli.pvoutput.BjornJansonDataCollector"/>-->
<!--<bean id="PVOutputDataCollector" class="nl.alli.pvoutput.PVoutputDataCollector"/>-->
<!--<bean id="PVOutputDataServiceImplBean" class="nl.alli.persistence.PVOutputDataServiceImpl"/>-->
<!--<bean id="PVOutputDataDaoImplBean" class="nl.alli.persistence.PVOutputDataDaoImpl"/>-->
<!--<bean id="DaoBean" class="nl.alli.persistence.util.Dao"/>-->
</beans>

甚至 IntelliJ 也能看到 private SessionFactory sessionFactoryspring.xml 中的 bean 之间的链接。我不知道是什么导致了异常,如果有人能帮助我那就太好了。

提前致谢!

最佳答案

发生此错误的主要原因是 Spring beans 不是从 Spring XML 文件创建的,这意味着您的 spring.xml 没有加载到内存中。

以下是解决您的问题的一些建议:

  1. 检查您是否从 web.xml 正确加载 spring.xml

  2. 理想情况下,您应该将所有 Bean 从 spring.xml 文件移动到 applicationContext.xml 文件

关于java - Spring错误: No qualifying bean of type [org. hibernate.SessionFactory]发现依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37214527/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com