04用戶登錄信息管理_第1頁(yè)
04用戶登錄信息管理_第2頁(yè)
04用戶登錄信息管理_第3頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、04用戶登錄信息管理青 島 理 工 大 學(xué)課程實(shí)驗(yàn)報(bào)告課程名稱軟件設(shè)計(jì)與體系結(jié)構(gòu)班級(jí)軟件122實(shí)驗(yàn)日期姓名賈蒙學(xué)號(hào)2實(shí)驗(yàn)成績(jī)實(shí)驗(yàn)名稱用戶登錄信息管理實(shí)驗(yàn)?zāi)康募耙笫煜と龑蛹軜?gòu)實(shí)驗(yàn)環(huán)境Win7, VS2010實(shí)驗(yàn)內(nèi)容1. 建立一個(gè)解決方案2. 按三層架構(gòu)模式添加工程3. 設(shè)定工程間的依賴關(guān)系4. 實(shí)現(xiàn)基本用戶信息的管理操作:增刪改查算法描述及實(shí)驗(yàn)步驟1. 選擇 文件-新建-項(xiàng)目2. 選擇 其它項(xiàng)目類型-Visual Studio解決方案3. 在解決方案所在的文件夾中創(chuàng)建以下文件夾: Bin:存放生成的可執(zhí)行文件 Documents:存放所用到的文檔 Library:存放用到的第三方控件 Setu

2、p:存放用于安裝的最終程序及其相關(guān)文件 UnitTest:存放測(cè)試代碼4.準(zhǔn)備以下文件放到相應(yīng)的文件夾中:在Library文件夾中建立SQLite文件夾,從SQLite的官方網(wǎng)站下載文件,解壓縮后將其中的4個(gè)文件、和拷貝到SQLite文件夾待用;在Bin文件夾下面創(chuàng)建Database文件夾,并利用sqliteadmin在其中創(chuàng)建一個(gè)SQLite數(shù)據(jù)庫(kù)文件(或用代碼創(chuàng)建),其中包含一個(gè)表:表中admin密碼為lcb,aaa密碼為123,bbb密碼為空在Bin文件夾下面創(chuàng)建配置文件:5.右鍵單擊右圖中的“解決方案MyFirstSolution(0個(gè)項(xiàng)目)”-添加-新建項(xiàng)目,建立如右圖所示5個(gè)Pro

3、ject;其中Common、DAL、Model和BLL項(xiàng)目類型為“類庫(kù)”,UI的項(xiàng)目類型為“Windows應(yīng)用程序”;右鍵單擊“”設(shè)定UI為“啟動(dòng)項(xiàng)目”,該項(xiàng)目名稱變?yōu)楹隗w顯示。6.添加引用(右鍵單擊“引用”-“添加引用”):BLL引用DAL和ModelDAL引用Common和Library文件夾中的3個(gè)dll文件: 、和引用Common和DALUI引用Common、BLL和Model,還必須將Library文件夾中的文件復(fù)制到Bin文件夾中添加引用的同時(shí),項(xiàng)目間的依賴關(guān)系也就發(fā)生了變化,隨之改變的是項(xiàng)目的編譯順序。7.填寫Common的代碼:修改的名稱為,并輸入其代碼實(shí)現(xiàn)Base64的編碼和

4、解碼功能添加IniClass類實(shí)現(xiàn)對(duì)INI文件的讀寫操作添加MyConfig類調(diào)用IniCalss類實(shí)現(xiàn)對(duì)配置文件的讀寫操作8.填寫DAL的代碼添加數(shù)據(jù)集UserDataSet,建立表Users,結(jié)構(gòu)同SQLite數(shù)據(jù)庫(kù)中的表Users將類改名為,并輸入它的代碼實(shí)現(xiàn)數(shù)據(jù)庫(kù)的操作:連接,查詢,修改9.填寫Model的代碼:修改類為,并填寫其代碼實(shí)現(xiàn)利用DAL提供的功能從數(shù)據(jù)庫(kù)中獲取數(shù)據(jù),并將需要保存的數(shù)據(jù)寫入數(shù)據(jù)庫(kù)(具體項(xiàng)目中,可以單個(gè)修改/保存,也應(yīng)該可以批量修改/保存)以屬性的形式向上層提供數(shù)據(jù)10.填寫B(tài)LL的代碼:修改類為類,并填寫代碼實(shí)現(xiàn)對(duì)用戶信息的管理:獲取數(shù)據(jù),校驗(yàn)密碼,修改密碼1

5、1.填寫UI的內(nèi)容:添加Form的界面元素添加Form_Load的代碼根據(jù)配置文件的內(nèi)容設(shè)置界面元素需要的話,實(shí)現(xiàn)自動(dòng)登錄功能添加Button_Click點(diǎn)擊事件的處理代碼檢驗(yàn)登錄帳號(hào)和密碼記錄登錄狀態(tài)到配置文件中調(diào)試過程及實(shí)驗(yàn)結(jié)果總結(jié) 本次試驗(yàn)主要考察的是三層架構(gòu)開發(fā)模式,即表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層。通過本次試驗(yàn)對(duì)三層架構(gòu)開發(fā)模式有了新的認(rèn)識(shí),不再是僅僅局限于課本上枯燥的知識(shí),本次實(shí)驗(yàn)后有了更加生動(dòng)的認(rèn)識(shí)。附錄UI部分代碼:using System;using ;using ;using ;using ;using ;using ;using ;namespace public par

6、tial class Form1 : Form private String count = null; private String pass = null; private int autoLogin=1; " MyConfig opIni; public Form1() InitializeComponent(); private void login_Click(object sender, EventArgs e) = = if opIni = new MyConfig; ; ; (1); else opIni = new MyConfig; ("");

7、 (""); (0); UserManager um = new UserManager; if ) ("登錄成é功|"); else ("登錄失骸敗悒); private void Form1_Load(object sender, EventArgs e) opIni = new MyConfig; = (); = (); = (); oString(); return pass; Common的代碼1. base64編碼using System;using ;using ;namespace public class CodeP

8、rocess public string EncodeBase64(string code) byte bytes = string str = (bytes); return str; public string DecodeBase64(string code) byte outputb = (code); string orgStr = return orgStr; 2. 讀取ini文件using System;using ;using ;using class IniClass private string fileName; DllImport("kernel32"

9、;) private static extern int GetPrivateProfileInt( string lpAppName, string lpKeyName, int nDefault, string lpFileName ); DllImport("kernel32") private static extern int GetPrivateProfileString( string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize

10、, string lpFileName ); DllImport("kernel32") private static extern bool WritePrivateProfileString( string lpAppName,string lpKeyName,string lpString, string lpFileName ); public void IniFile(string filename) fileName = filename; public int GetInt(string section, string key, int def) return

11、 GetPrivateProfileInt(section, key, def, fileName); public string GetString(string section, string key, string def) StringBuilder temp = new StringBuilder(1024); GetPrivateProfileString(section, key, def, temp, 1024, fileName); return (); public void WriteInt(string section, string key, int iVal) Wr

12、itePrivateProfileString(section, key, (), fileName); public void WriteString(string section, string key, string strVal) WritePrivateProfileString(section, key, strVal, fileName); public void DelKey(string section, string key) WritePrivateProfileString(section, key, null, fileName); public void DelSe

13、ction(string section) WritePrivateProfileString(section, null, null, fileName); 3. 操作INI文件using System;using ;using ;namespace public class MyConfig String filename ; String loginName; String loginPassword; int autologin; String ConnectString; CodeProcess cp = new CodeProcess(); public MyConfig(Stri

14、ng filename) = filename; public string getLoginName() IniClass ini = new IniClass(); (filename); = ("Login", "LoginName", "沒?找ò到"); return loginName; public string getLoginPassword() IniClass ini = new IniClass(); (filename); = ("Login", "LoginPasswo

15、rd", "沒?找ò到"); return (loginPassword); /return loginPassword; public int getAutoLogin() IniClass ini = new IniClass(); (filename); = ("Login", "AutoLogin", 1); return autologin; public string getConnectString() IniClass ini = new IniClass(); (filename); = ("Database", "ConnectString", ""); return ConnectString; public void setLoginName(String name) IniClass ini = new IniClass(); (filename); ("Login", "LoginName", name); public void setLoginPassWord(String pass) IniClass ini

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論