我的问题几乎与此问题完全相同,但不一样,因为我没有使用Spring Boot。
Can't Autowire @Repository annotated interface in Spring Boot
所以我不能@EnableJpaRepositories
在我的情况下没有Spring Boot Runner。我在Web应用程序中有SpringMVC控制器。
我在常规的老式SpringMVC应用程序中独立使用Spring Data。
我收到了错误
Caused by: No qualifying bean of type 'com.myapp.dao.QuestionsDAO' available:
expected at least 1 bean which qualifies as autowire candidate.
Spring Data的DAO接口,注意@Repository:
@Repository
public interface QuestionsDAO extends JpaRepository<Question, Long> {
public String findById(Long id);
}
服务应该使用此DAO,自动连接:
组件
public class SchedulingService {
@Autowired
QuestionsDAO questionsDAO;
public String findLabelById(Long id) {
return questionsDAO.findById(id);
}
}
已启用组件扫描,适用于其他所有内容。
<context:component-scan base-package="com.myapp" />
春季数据只允许使用Spring Boot吗?
答案 0 :(得分:1)
注释*****-****-*****-5457
*****-****-*****-*4-D57
*****-****-*****-*4-D;5.7
*****-****-*****-**-g5.37
*******.*********.(*******){*dh i8}
####.####.####.**5D-45
****.****.****.**5D-45
**
12
来自Spring Data,它与Spring Boot无关。因此,使用@EnableJpaRepositories
和@Configuration
注释一个类就足够了。
如果您想在XML中执行此操作,则必须添加
@EnableJpaRepositories
您也不需要在界面上使用<jpa:repositories base-package="com.acme.repositories" />
注释,该注释还有其他用途。