01 Spring 理論推導 入門案例

2021-10-25 07:47:32 字數 2315 閱讀 4147

userdao介面

userdaomysqlimpl實現類

userdaooracleimpl實現類

userservice業務介面

userservice業務實現類

1.以前的**:

​ 這種**控制權在service層上,使用者每改變一次請求,就必須改變一次原**。

private userdao userdao =

newuserdaomysqlimpl()

;//第一種實現方法

private userdao userdao =

newuserdaooracleimpl()

;//第二種實現方法..

....

..

2.控制反轉優化的**

​ 將控制權放到使用者手裡,使用者根據自己的需求來改變userdao。

private userdao userdao;

public

void

setuserdao

(userdao userdao)

3.ioc本質編寫實體類hello

public

class

hello';

}public string getname()

public

void

setname

(string name)

}

新建beans.xml配置檔案

<?xml version="1.0" encoding="utf-8"?>

xmlns

=""xmlns:xsi

=""xsi:schemalocation

="/spring-beans.xsd"

>

"hello"

class

="com.nuc.pojo.hello"

>

name

="name"

value

="springstart"

>

property

>

bean

>

beans

>

編寫測試類

public

class

hellotest

}

依賴注入: 使用 set 方法進行注入,如果去掉實體類的set方法,bean中的**會報錯

"hello"

class

="com.nuc.pojo.hello"

>

name

="name"

value

="springstart"

>

property

>

bean

>

編寫beans.xml檔案

把之前的 userdao、mysqlimpl ; userservice 交給spring管理

<?xml version="1.0" encoding="utf-8"?>

xmlns

=""xmlns:xsi

=""xsi:schemalocation

="/spring-beans.xsd"

>

"userdao"

class

="com.nuc.dao.userdaoimpl"

>

bean

>

"mysqlimpl"

class

="com.nuc.dao.mysqlimpl"

>

bean

>

"userservice"

class

="com.nuc.service.userserviceimpl"

>

name

="userdao"

ref="mysqlimpl"

>

property

>

bean

>

beans

>

修改測試方法

public

class

springtest

}

spring優化之後的**之後如果使用者需求更改,只需要修改xml中的資料即可,大大降低了**的耦合

01 Spring環境搭建

環境 springsource tool 3.9.9 eclipse4.10.0 按照我的步驟來基本上大方向不錯的話只需要解決幾個差異的小問題即可。我們需要先找到符合自己eclipse版本的spring環境,檢視eclipse版本資訊help about eclipse ide 然後會跳到這個頁面,...

Spring01 概述及IOC理論推導

ioc理論推導 ioc本質 一句話概括 spring是乙個輕量級的控制反轉 ioc 和面向切面 aop 的容器 框架 先寫乙個userdao介面 public inte ce userdao 再去寫dao的實現類 public class userdaoimpl implements userdao...

軟體測試理論01

瀑布就是線性的,開發流程不可逆,如果加入一些小型的迭代工作 每個階段都進行小更新 那麼此模型更趨近於完美。需求分析 概要設計 詳細設計 編碼 單元測試 整合測試 系統測試 驗收測試 解釋 v模型就是瀑布模型的變種,所以在每個階段加入迭代工作,會更加完美 開發乙個v 需求分析 概要設計 詳細設計 編碼...