我见过许多Spring启动示例,其中我们声明了一个扩展crudrepository并声明CRUUD方法的接口。在Service CLass中发布我们自动连接接口并从Service类调用crud方法。
由于我们没有在任何地方实现这个接口(在示例PersonRepo中扩展CrudRepo),春天如何实现呢? 例如:
interface PersonRepo extends CRUDRepository {
// method declaration
}
@Service
class PersonService{
@Autowire
PersonRepo perrepo;
void insert(){
perrepo.methodname();
}
}
答案 0 :(得分:0)
Spring介绍dynamic proxy。 实际上它会扫描包并获得扩展Crud Repository接口的所有接口。对于它们中的每一个,都会创建动态代理实例。在每次调用时,代理会检查调用哪个方法并使用适当的注释。代理用作bean,因此可以自动装配。