我有CustomerRepository
。仅class
时,它就可以自动连接到其他类中。当我到达abstract class
时,它给了我一个错误:
Field customerRepository in com.xxx.service.CustomerService required a bean of type 'com.xxx.repository.CustomerRepository' that could not be found.
答案 0 :(得分:2)
出现此错误的原因是当您自动接线时,类spring将创建一个bean,但是如果spring无法实例化抽象对象
答案 1 :(得分:0)
如果某个类的某些方法或所有方法都是抽象的(没有实现),则将类定义为 Abstract class 是有意义的。和Abstract类无法在Java中实例化,这就是为什么您需要提供一个将扩展该特定抽象类的类的原因。
抽象ClassA(){}
@Component ClassB扩展了ClassA {}
因此,您无需自动装配ClassA,而需要自动装配ClassB