基本註釋自動裝配

介面:

public interface FooService {
    public int doSomething();
}

類:

@Service
public class FooServiceImpl implements FooService {
    @Override
    public int doSomething() {
        //Do some stuff here
        return 0;
    }
}

應該注意的是,類必須為 Spring 實現一個介面才能自動裝配該類。有一種方法允許 Spring 使用載入時編織自動裝配獨立類,但這超出了本示例的範圍。

你可以使用 @Autowired 註釋在 Spring IoC 容器例項化的任何類中訪問此 bean。

用法:

@Autowired([required=true])

@Autowired 註釋將首先嚐試按型別自動裝配,然後在模糊不清的情況下回退到 bean 名稱。

該註釋可以以幾種不同的方式應用。

建構函式注入:

public class BarClass() {
    private FooService fooService         

    @Autowired
    public BarClass(FooService fooService) {
        this.fooService = fooService;
    }
}

現場注入:

public class BarClass() {
    @Autowired
    private FooService fooService;
}

setter 注入:

public class BarClass() {
    private FooService fooService;

    @Autowired
    public void setFooService(FooService fooService) {
        this.fooService = fooService;
    }
}