Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.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/5/spring-mvc/2.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
Spring 弹簧数据:Can';t Autowire@Repository JpaRepository接口:“自动连接”;至少需要1个符合autowire候选资格的bean“;_Spring_Spring Mvc_Spring Data - Fatal编程技术网

Spring 弹簧数据:Can';t Autowire@Repository JpaRepository接口:“自动连接”;至少需要1个符合autowire候选资格的bean“;

Spring 弹簧数据:Can';t Autowire@Repository JpaRepository接口:“自动连接”;至少需要1个符合autowire候选资格的bean“;,spring,spring-mvc,spring-data,Spring,Spring Mvc,Spring Data,我的问题和这个差不多,但不一样,因为我没有使用Spring Boot。 所以我不能做@enableJPareposities我的例子中没有Spring Boot Runner。我在Web应用程序中安装了SpringMVC控制器 我在一个普通的老式SpringMVC应用程序中独立使用Spring数据 我发现了错误 Caused by: No qualifying bean of type 'com.myapp.dao.QuestionsDAO' available: expected at le

我的问题和这个差不多,但不一样,因为我没有使用Spring Boot。 所以我不能做
@enableJPareposities
我的例子中没有Spring Boot Runner。我在Web应用程序中安装了SpringMVC控制器

我在一个普通的老式SpringMVC应用程序中独立使用Spring数据

我发现了错误

Caused by: No qualifying bean of type 'com.myapp.dao.QuestionsDAO' available: 
expected at least 1 bean which qualifies as autowire candidate.
Spring数据的DAO接口,注意@Repository:

@Repository
public interface QuestionsDAO extends JpaRepository<Question, Long> {

    public String findById(Long id);

}
组件扫描已启用,适用于所有其他功能

<context:component-scan base-package="com.myapp" />


Spring数据只允许与Spring Boot一起使用吗?

注释
@EnableJpaRepositories
来自Spring数据,与Spring Boot无关。因此,用
@Configuration
@EnableJpaRepositories
注释一个类就足够了

如果您想在XML中实现它,您必须添加

<jpa:repositories base-package="com.acme.repositories" />


您的界面上也不需要
@Repository
注释,该注释还有另一个用途。

但我确实需要一些Spring注释,否则Autowire将无法工作?您是否建议将@Component用于存储库接口?否,
@EnableJpaRepositories
将解决此问题。它将扫描已配置的包,并检查扩展其中一个Spring数据接口的所有接口。因此,您不需要对接口本身进行任何注释。
<jpa:repositories base-package="com.acme.repositories" />