機房重構 七層登入

2021-09-26 16:11:44 字數 2688 閱讀 8856

在前面介紹了三層,ui層; bll層; dal層

這次總結下「七層」。 在還沒有學習七層的時候,那時候只是認為「七層」只是比三層多了四層而已,其實不然,七層它也是機房重構的登入部分。

其實在學習「機房重構的時候」,包括在寫任何程式的時候,沒有任何要求說必須使用七層架構,所以說,這就有了我們為什麼要用「七層架構」,和使用它的好處。

學過設計模式的小夥伴都知道,設計模式是為了讓**更加的規範,給**制定好乙個個模式和規則,告訴你寫**的規範和套路,怎樣寫**更能提高效率,較少冗餘和錯誤... 同理,「七層」的作用和設計模式大致相似,在軟體工程的學習後,我們有了一種「高內聚,低耦合,較少**冗餘和錯誤,提高程式的效率」等等...

對字段和資料進行封裝,是一種實體類,以供其他層呼叫。

顯示給使用者內容,與使用者進行互動,;為使用者提供可操作的功能的實現;為了資料庫收集使用者的各種資訊;

(不包含任何業務相關的邏輯處理)。

namespace entity   //實體層

set

}//使用者名字段

private string username;

public string uername

set

}//密碼字段

private string password;

public string password

set

}//等級

private string level;

public string level

set

}//狀態字段

private bool stat;

public bool stat

set

}}

idal層就是定義乙個統一通用的介面層,用來接觸b層,d層之間的耦合

//登入

public inte***ce iuseridal

d層的作用就是來訪問資料庫中的相應的資料,來進行增刪改查等操作。

(1)從資料來源載入資料(select)

(2)向資料來源寫入資料(insert / update)

(3)從資料來源刪除資料(delete)

public class dal : idal.iuseridal 

;//構造語句,匹配資料表

string sql = @"select * from user_info where userid=@userid and pwd=@password ";

datatable table = sqlheiper.executenonquery(sql,sqlparams,commandtype.text);

return table;

}

}

就是(簡單工廠模式)它的功能是建立介面物件,是b層與idal層之間的橋梁,解耦的功能;在這裡運用到了:

工廠+反射+配置檔案。

namespace factory   //工廠層   

}}

看b層的名字「業務邏輯層」,可以想象成乙個到處跑業務的人,是整個系統的核心,承擔了所有的業務的判斷,能上躥下跳,對資料業務邏輯進行處理,加以判斷。

public partial class loginbll

}else

}return flag;

}//密碼是否

public datatable gcbll(entity.userinfo userinfo)

}

用到了外觀模式,使複雜問題能夠簡單化,降低層之間的耦合;用外觀定義統一的介面,以供ui層呼叫。

public class ufacade

}

顯示給使用者內容,與使用者進行互動,;為使用者提供可操作的功能的實現;為了資料庫收集使用者的各種資訊;

(不包含任何業務相關的邏輯處理)。

public partial class loginui : form

private void label1_click(object sender, eventargs e)

private void butok_click(object sender, eventargs e)

if (txtpassword.text.trim()=="")

//例項化登入,然後再傳給外觀層

facade.ufacade facade = new facade.ufacade();

entity.userinfo user = new entity.userinfo();

user.userid = convert.toint32(txtuserid.text.trim());

user.password = txtpassword.text.trim();

//例項化外觀層

boolean flag = false;

facade.ufacade facade = new facade.ufacade();

//呼叫外觀的方法,返回給user

flag = facade.selectuser(user); //呼叫外觀的方法,返回給user.

if (flag != false)

else

C 機房重構 七層登入

兩個多星期的探索終於算是把登入敲通了,當 登入成功!顯示在我眼前的那一刻,我想那種快樂的感覺就好像我中了三百萬大獎一樣的激動吧!三層當時不是很明白,所以三層到七層走了不少彎路。出來混早晚是要還的,這話說的一點都沒錯。廢話不多說了,直接上料。這裡的七層是在三層的基礎上與設計模式相結合演化而來的,應用了...

重構 七層登入

七層是指哪七層?與三層相比多了哪幾層呢?各層之間的關係又是怎樣的呢?七層就是在三層的基礎上,新增了外觀層 也就是設計模式的外觀模式 抽象工廠加反射,介面層。外觀層主要是在ui層和bll層之間實現解耦 抽象工廠加反射主要是為了方便更換資料庫,同時把dal層中的類轉換成idal層中的介面,從而使bll層...

機房重構 七層 錯誤集錦

無法開啟登入所請求的資料庫 entity 登入失敗。使用者 sa 登入失敗。看這個部落格可以解決 出現這個問題的原因是資料庫配置的問題,需要開啟配置管理器,讓沒有啟動的專案都啟動,尤其是tcp ip。列名pwd無效 出現這個原因大家都會去資料庫檢視相關命名的問題吧,是的,我也去做了,也檢視了七層的各...