use @autowired in abstract base class

后端 未结 5 1676
失恋的感觉
失恋的感觉 2021-02-05 13:12

As I know, field injection is not recommended. Should use constructor instead.

What I\'m trying to do here is using @Autowired in

5条回答
  •  感动是毒
    2021-02-05 13:53

    It works!!!! Constructor Autowired Qualifier Inheritance Injection

    Base abstract class DocumentoBase.

    @Qualifier("DocumentServiceBase")
    private DocumentService documentService;
    
    @Autowired
    public DocumentoBase(@Qualifier("DocumentServiceBase") DocumentService documentService){
        this.documentService = documentService;
    }
    

    Inherited class DocumentoController.

    @Qualifier("DocumentServiceImplv13")
    private DocumentService documentService;
    
    @Autowired
    public DocumentoController(@Qualifier("DocumentServiceImplv13") DocumentService documentService){
        super(documentService);
        this.documentService = documentService;
    }
    

提交回复
热议问题