springMVC的@service("serviceName")註解

一、@service("serviceName"): 表示給當前類命名一個別名,方便注入到其餘類中;java

二、@service:不加的話,默認別名就是當前類名,可是首字母小寫spring

三、這些註解都是Bean,Spring容器託管ui

四、配置自動掃描便可spa

<context:annotation-config/>

<context:component-scan base-package=」com.eric.spring」>
  • @Scope註解能夠改變其做用範圍
  • spring中的Bean默認都是單例

五、@Autowired 與@Resource的區別:.net

(1)@Resourcecode

  • @Resource(這個註解屬於J2EE的)
  • @Resource的做用至關於@Autowired
  • @Resource默認按 byName自動注入
  • 若是註解寫在setter方法上默認取屬性名進行裝配
  • 當找不到與名稱匹配的bean時才按照類型進行裝配
  • 若是name屬性一旦指定,就只會按照名稱進行裝配
  • Spring將@Resource註解的name屬性解析爲bean的名字,type屬性則解析爲bean的類型
  • 若是使用name屬性,則使用byName的自動注入策略
  • 若是使用type屬性時則使用byType自動注入策略
  • 若是name屬性、type屬性都不,經過反射機制使用byName自動注入策略

(2)兩者均可以用來裝配beancomponent

(3)均可以寫在字段上,或寫在setter方法上xml

(4)@Autowired對象

  • @Autowired默認按類型裝配
  • 這個註解是屬業spring
  • 默認狀況下必需要求依賴對象必須存在
  • 若是要容許null值,@Autowired(required=false)
  • @Qualifier註解(qualifier的意思是合格者)
  • @Qualifier註解 應對單接口多個類實現的狀況
  • @Qualifier的參數名稱必須爲咱們以前定義@Service註解的名稱之一
@Autowired
    @Qualifier("service")//@Qualifier的參數名稱必須爲咱們以前定義@Service註解的名稱之一
    EmployeeService employeeService;
相關文章
相關標籤/搜索