在前面介紹了三層,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無效 出現這個原因大家都會去資料庫檢視相關命名的問題吧,是的,我也去做了,也檢視了七層的各...