@Autowired注解的使用


使用Spring時,通過Spring注入的Bean一般都被定義成private,並且要有getter和setter方法,顯得比較繁瑣,增加了代碼量,而且有時會搞忘造成錯誤。

可以使用@Autowired注解來減少代碼量。首先,在applicationContext中加入:

<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>

Spring使用這個BeanPostProcessor解析@Autowired注解。

然后,在變量上添加@Autowired注解,並去掉相應的getter和setter方法:

package com.school.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;

import com.school.dao.ClasDAO;
import com.school.entity.Clas;

public class ClasServiceImpl implements ClasService{
    
    @Autowired
    private ClasDAO clasDAO;
    
  ...
    
}

並且在applicationContext中將相應的<property></property>標簽去掉:

    <bean id="clasService" class="com.school.service.ClasServiceImpl">
    </bean> 

Spring啟動時,AutowiredAnnotationBeanPostProcessor會掃描所有的Bean,當發現其中有@Autowired注解時,就會找相應類型的Bean,並且實現注入。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM