@autowired
是spring3.0引入的註解,可以標註在類的屬性上,這樣spring容器就會採取bytype的方式來注入對應的bean。
@autowired
private instrument instrument;
如果spring容器中不存在乙個型別為instrument
的bean,那麼在啟動程式的時候就會報錯:nosuchbeandefinitionexception
。還有一種會報錯的情況,就是spring容器中存在多個型別為(is-a)instrument
的bean,丟擲的異常與上面一樣。因為spring容器此時不知道該使用哪乙個bean來注入到屬性中,這是乙個fail-fast的策略。那麼如何解決存在多個相同型別的bean的情況呢?可以使用@qualifier
註解。
@autowired
@qualifier("guitar")
private instrument instrument;
@qualifier
在這裡告訴spring容器如果存在多個型別為instrument
的bean,那麼就使用id為guitar的bean來注入instrument
這個屬性。@qualifier
的作用是縮小@autowire
的範圍。 Spring Bean裝配之Autowired註解
autowired public void setinjectiondao injectiondao injectiondao autowired required false public void setinjectiondao injectiondao injectiondao 預設情況下,如...
Spring 使用Spring建立物件
xmlversion 1.0 encoding utf 8 beans xmlns xmlns xsi xmlns p xsi schemalocation spring beans 4.1.xsd beans 2.編寫domain,dao,service 3.在spring中註冊元件 要sprin...
spring 註解使用
一 配置web.xml 1 問題 spring專案中有多個配置檔案mvc.xml dao.xml 2 解決 在web.xml中 contextconfiglocation web inf xml 表示xml檔案路徑 xml表示字尾名為xml的任意檔案 3 可以使用 逗號分隔 二 controller...