操作步驟:
1.將所有的類在beans.xml 中建立
2.對有依賴的類完成注入
2.1.為每乙個依賴類建立相應的getter和setter 方法
2.2.建構函式注入
2.3.自動注入(不常用)
開發中一般都是使用byname。
autowire="default",byname:根據名稱來注入(setuserdao,名稱為userdao);
bytype:根據型別注入(存在多個相同型別的物件就會丟擲異常,不知道要注入那個);no:不注入。
雖然自動注入可以減少配置,但是通過bean檔案無法很好的了解整個類的結果,所以不建議使用autowire。
2.4.屬性注入
1111
2222
3333
3.單例和多例(預設是單例)
3.1.當屬性值的狀態不會發生變化的時候我們用單例。(如:dao,service)
3.2.對於action而言,裡面的屬性值得狀態會根據不同的執行緒得到不同的值,所以應該使用多例(action)。
beans.xml
<?xml version="1.0" encoding="utf-8"?>
user.class
package com.spring.model;
public class user
private int id;
private string username;
public int getid()
public void setid(int id)
public string getusername()
public void setusername(string username)
@override
public string tostring()
public user(int id, string username)
}iuserdao.class
package com.spring.dao;
import com.spring.model.user;
public inte***ce iuserdao
userdao.class
package com.spring.dao;
import com.spring.model.user;
public class userdao implements iuserdao
@override
public user load(int id)
@override
public void add(user user)
}server層類似於dao層,此處省略......
useraction.class
package com.spring.action;
import com.spring.model.user;
import com.spring.service.iuserservice;
public class useraction
public void setuser(user user)
public iuserservice getuserservice()
public void setuserservice(iuserservice userservice)
public int getid()
public void setid(int id)
public void add()
public void delete()
public void load()
}testspring.calss
package com.spring.test;
import org.junit.test;
import org.springframework.beans.factory.beanfactory;
import org.springframework.context.support.classpathxmlapplicationcontext;
import com.spring.action.useraction;
import com.spring.model.helloworld;
import com.spring.model.user;
public class testspring
@test
public void testuser()
}執行結果:
新增了user [id=1, username=我叫spring]
專案結構圖:
spring 之 ioc 依賴注入
關於bean的名稱,這裡有條預設的規則,就是類的名稱,然後第乙個字母小寫 依賴注入 xml方式 通過setter方法注入依賴 元素的 property 子元素指明了使用它們的set方法來注入。可以注入任何東西,從基本型別到集合類,甚至是應用系統的bean。這種方式的缺點是你無法在其它地方重用這個pe...
Spring 學習筆記 IOC 依賴注入
簡述 spring 學習 ioc 依賴注入 1 直接使用原始類建立bean 2 使用工廠方法建立bean 3 使用工廠類建立bean 1 setter injection 2 constructor injection 建構函式注入 1 inner beans 2 collections map 3...
Spring 依賴注入(IoC) 控制反轉
依賴注入 dependecy injection 和控制反轉 inversion of control 是同乙個概念,具體的講 當某個角色需要另外乙個角色協助的時候,在傳統的程式設計過程中,通常由呼叫者來建立被呼叫者的例項。但在spring中 建立被呼叫者的工作不再由呼叫者來完成,因此稱為控制反轉。...