Spring Boot - abstract class how to autowire

Spring Boot - abstract class how to autowire

因為公司的Code Review 使得我使用的工廠模式,繼承抽象類別,不能使用@Component

這樣原本我使用的 private final XXXRepository xxxRepository 就無法使用 

後來網路上找到一個文章可解這個問題

https://www.baeldung.com/spring-autowired-abstract-class

使用

public abstract class BallService {

    private LogRepository logRepository;

    @Autowired
    public final void setLogRepository(LogRepository logRepository) {
        this.logRepository = logRepository;
    }
}

則可以解決這個問題