以前我們在配置spring檔案的時候一般都是這麼寫
autowire有4種自動裝配的型別
byname 把與bean的屬性具有相同名字(或者id)的其他bean自動配置到bean對應的屬性中。
bytype 把與bean的屬性具有相同型別的其他bean自動配置到bean對應的屬性中。
constructor 把與bean的構造器入參具有相同型別的其他bean自動配置到bean對應的屬性中。
autodetect 首先嘗試使用constructor進行自動裝配。如果失敗在使用bytype進行裝配。
從spring2.5開始可以使用註解自動裝配。spring預設禁用註解配置,如使用,在spring的配置檔案中需要開啟註解。
此時,我們可以使用註解配置bean了。
@autowired
private string song;
其實註解@autowired就是配置檔案中 autowire的變形。@autowired可以用於屬性,方法,構造器上。另外 可以使用@qualifier來限定自動配置的註解的使用範圍。如
@autowired
@qualifier("test")
private string song;
@autowired有乙個屬性required,預設是true,表示自動裝配。當@autowired標註在每個構造器(過載)上的時候,只能有乙個
構造器的@autowired(required='true'),其餘的都是@autowired(required='flase')。
另外我們也可以借助@inject和@named來限定註解範圍。@inject和@autowired一樣,不過@inject沒有required的屬性。@named類似於spring的@qualifier。@inject和@named都是jsr-330中的註解。
@inject
@named("test")
private string song;
有些時候在專案中使用的是自動檢測bean的這種方法。比如
自動掃瞄該包下面的bean.其實他是查詢了以下註解:@component,@controller,@service,@repository,@configuration只要找到這些註解,spring就可以自動監測bean.
spring註解配置
匯入依賴 beans 建立person類 public class person public void setusername string username public string getpassword public void setpassword string password 建立p...
Spring註解配置
componentscan的value屬性和basepackages屬性等價。bean註解用於將當前方法的返回值作為bean物件放入spring容器中,預設id為方法名稱,也可以使用name屬性指定。如果方法有引數,也會在spring容器中查詢。propertysource使用properties檔...
spring事務註解配置
目前常用的spring事務配置就是兩種,使用tx命名空間和使用註解配置。在使用註解配置的時候,你只需要在spring的上下文配置下加入兩行 ok,配置完成,接下去你只在需要事務的方法或類上定義事務即可。這項配置告訴spring去檢查容器中所有不管在類層面還是方法層面配置了註解 transaction...