Spring启动CRUD应用程序 - 找不到Bean错误

时间:2017-05-01 18:58:06

标签: java spring maven intellij-idea spring-boot

我正在使用spring-boot开发一个简单的CRUD应用程序。

我已完成大部分项目,但在尝试运行项目时遇到此错误。

  

说明

     

com.application.crud.GreetingController中的字段userDBOP需要a   bean类型' com.application.crud.myoperation.JdbcUserDAO'可能   找不到。

     

动作:

     

考虑定义类型的bean   ' com.application.crud.myoperation.JdbcUserDAO'在你的配置中。

在IntelliJ中,当我将鼠标悬停在导致错误的行上时,会显示以下消息

  

"无法自动装配。没有'JdbcUserDAO'的豆子找到类型。

即使我已经在我的' Beans.xml'文件(位于' src'目录下面:

<bean id="customerDAO" class="com.application.crud.myoperation.JdbcUserDAO">
    <property name="dataSource" ref="dataSource" />
</bean>

有谁能告诉我如何修复此错误?

1 个答案:

答案 0 :(得分:2)

这似乎是使用现有Spring Context配置Spring Boot应用程序的问题。 Spring documentation中有一节介绍此内容。

默认情况下,您需要使用@ImportResource注释指定应用程序上下文的位置。一个例子是:

@SpringBootApplication
@ImportResource("applicationContext.xml")
public class ExampleApplication {

    public static void main(String[] args) throws Exception {
        SpringApplication.run(ExampleApplication.class, args);
    }

}

注意如果文件位于类路径的其他位置,那么您需要正确引用该文件以便弹出它(例如@ImportResource({"classpath*:applicationContext.xml"})