Spring學習(5)---IOC容器的常用註解

1、@Component

創建bean的id值,無需指定創建的bean的id值,默認創建的bean的id值爲小寫的類名,也可以指定bean的id值

@Componen("person"),則指定一個bean的id值

2、@Respository

創建bean的id值,針對的是dao持久層bean的組件

@Respository("person"),則指定一個bean的id值

3、@Service

創建bean的id值,針對的是service服務層(業務層)bean的組件

@Service("person"),則指定一個bean的id值

4、@Controller

創建bean的id值,針對的是web表現層bean的組件

@Controller("person"),則指定一個bean的id值

5、@Value("屬性值")

定義在屬性字段上 針對的是基本類型和String類型,如果使用了這個註解,則該屬性的set方法可以省略不寫。

如    @Value("張三")
        private String name; 

6、@Autowired

定義在屬性字段上的 針對的是對象類型,如果定義在了那個對象類型的屬性身上會自動去spring容器中找該類型的實例對象給賦值。如果要允許null 值,可以設置它的required屬性爲false,如:@Autowired(required=false)

7、@Resource或者@Resource(name="xxxxx")  

默認根據名稱進行裝配,名稱可以通過name屬性進行指定,
如果沒有指定name屬性,當註解寫在字段上時,默認取字段名進行按照名稱查找。

如果註解寫在setter方法上默認取屬性名進行裝配。 當找不到與名稱匹配的bean時才按照類型進行裝配。但是需要注意的是,如果name屬性一旦指定,就只會按照名稱進行裝配。
    public Car getCar() {
        return car;
    }
    //表示當前的參數是來自Car類型的
    @Resource  
    public void setCar(Car car) {
        this.car = car;
    } 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章