版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、摘要第1章緒論 11.1 開發(fā)背景及意義 11.2 本系統(tǒng)使用的開發(fā)軟件簡介 2第2章招聘系統(tǒng)的概述與分析 32.1 可行性分析 32.2 系統(tǒng)需求分析 32.3 系統(tǒng)功能分析 4第3章網(wǎng)上招聘系統(tǒng)的設(shè)計 53.1 系統(tǒng)結(jié)構(gòu)設(shè)計 53.1.1 招聘系統(tǒng)的結(jié)構(gòu)和流程 53.1.2 ASP.NET的三層結(jié)構(gòu) 63.2 數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計 73.2.1 概念結(jié)構(gòu)設(shè)計 73.2.2 邏輯結(jié)構(gòu)設(shè)計 9第4章網(wǎng)上招聘系統(tǒng)的實現(xiàn) 134.1 用于操作數(shù)據(jù)庫的通用模塊 134.1.1 數(shù)據(jù)庫操作的基類 134.1.2 存儲過程 154.1.3 配置數(shù)據(jù)庫 164.2 管理員模塊的實現(xiàn) 174.2.1 登錄界面和
2、注冊界面 174.2.2 主界面和新聞管理界面 184.2.3 個人用戶管理界面和企業(yè)用戶管理界面 194.3 個人用戶模塊的實現(xiàn) 194.3.1 個人用戶主界面與基本信息頁面 194.3.2 查看招聘信息與在線提交簡歷 204.4 企業(yè)用戶模塊的實現(xiàn) 21結(jié)論 23參考文獻(xiàn) 24求職是應(yīng)屆大學(xué)生最關(guān)注的話題,求職的渠道有多種,但目前網(wǎng)絡(luò)招 聘憑借其信息量大、資源豐富、更新速度快、無地域限制的優(yōu)勢逐漸成為 招聘渠道的主流。大學(xué)生上網(wǎng)便捷,使得網(wǎng)絡(luò)招聘成為深受這群高級人才 歡迎的求職方式。論文首先簡要介紹本招聘系統(tǒng)的開發(fā)背景及意義,以及進(jìn)行開發(fā)所必 需的軟件,并對系統(tǒng)作了簡要的分析;然后說明本系
3、統(tǒng)的設(shè)計過程,包括 采用ASP.NET三層結(jié)構(gòu)設(shè)計方法,以及利用SQL Server 2000 進(jìn)行的數(shù)據(jù)庫設(shè)計;最后是具體的實現(xiàn)過程,其中用于數(shù)據(jù)庫操作的通用模塊的實 現(xiàn)是本系統(tǒng)的核心部分,包括了對數(shù)據(jù)庫操作的基類和存儲過程的實現(xiàn)。關(guān)鍵詞 ASP.NET,三層結(jié)構(gòu),SQL Server 數(shù)據(jù)庫,存儲過程第1章緒論近年來,隨著高校擴招,每年都有大量的畢業(yè)生走向社會的各個工作崗位,人才市場的活躍和大型企業(yè)對高素質(zhì)人才的需求,為網(wǎng)絡(luò)招聘的發(fā) 展提供了廣闊的空間。為了滿足市場對人才招聘解決方案的需求,網(wǎng)絡(luò)招 聘有效地解決了人才招聘的工作效率和效果提升中所面臨的問題。與其他 招聘方式相比,網(wǎng)絡(luò)招聘具有
4、信息量大、資源豐富、更新速度快、無地域 限制的優(yōu)勢,很快為大學(xué)生和企業(yè)所青睞。本網(wǎng)上招聘系統(tǒng),就是為了適應(yīng)現(xiàn)代大學(xué)生求職、招聘方式而做出的一種嘗試。采用 Microsoft Visual Studio 2005 的開發(fā)環(huán)境及 Windows 7 的操作系統(tǒng)為工作平臺,同時借助SQL Server 2000 這一強大的數(shù)據(jù)庫管理系統(tǒng)來實現(xiàn)。1.1 開發(fā)背景及意義目前網(wǎng)絡(luò)發(fā)展迅速,已遍及各個領(lǐng)域,大學(xué)生依托高校獨特的環(huán)境及 其掌握的先進(jìn)技術(shù)知識,成為網(wǎng)絡(luò)社會的重要一部分?,F(xiàn)在大學(xué)生面臨的 就業(yè)壓力與以往相比不可同日而語,各所高校都成立了自己的就業(yè)指導(dǎo)中 心,然而如果采用以往的招聘方式,跑很多現(xiàn)場的
5、招聘會,投遞文本的簡 歷,那樣無疑是一種費時費力(人力/財力)的做法。如果想在一場招聘會甚至一次招聘過程中就找到合適的工作,可能性比較低。針對這種情況, 網(wǎng)絡(luò)招聘方式的出現(xiàn),憑借其快速高效實惠無地域限制的優(yōu)勢,受到了廣 大大學(xué)畢業(yè)生的青睞,網(wǎng)絡(luò)求職已成為這一群體的首選。據(jù)介紹,在美國、日本和歐洲等互聯(lián)網(wǎng)普及程度高的發(fā)達(dá)國家,自上 世紀(jì)90年代初互聯(lián)網(wǎng)出現(xiàn)以來,網(wǎng)絡(luò)已經(jīng)成為人才進(jìn)行流動的最主要渠 道,而那些單純?yōu)槠髽I(yè)、個人提供單一集會式招聘服務(wù)的人才市場幾乎已 經(jīng)絕跡。由此可以看出,網(wǎng)絡(luò)招聘已經(jīng)成為招聘求職的一大重要手段。1.2 本系統(tǒng)使用的開發(fā)軟件簡介本系統(tǒng)使用的開發(fā)工具為Visual Stu
6、dio.NET 2005(VS 2005 ),它是Microsoft 為實現(xiàn).NET 技術(shù)而開發(fā)的一套工具組件,主要用于生成ASP.NET Web 應(yīng)用程序、XML Web Services 、桌面應(yīng)用程序和移動應(yīng)用 程序。提供了一個用于在Microsoft.Net框架上創(chuàng)建應(yīng)用程序的圖形集成開發(fā)環(huán)境(Integrated Development Environment, IDE),利用此 IDE 可以共享工具而且有助于創(chuàng)建混合語言解決方案,使程序可以使用不同的語 言共同開發(fā)。使用的開發(fā)語言為C#語言,是從 C語言和C+語言演變而來的一種簡單的、面向?qū)ο蟮暮皖愋桶踩男滦统绦蛟O(shè)計語言。C#幾乎
7、綜合了目前所有高級語言的優(yōu)點,主要特點是語法簡潔、面向?qū)ο笤O(shè)計、與web的緊密結(jié)合、完全的安全性和錯誤處理、易于使用的版本處理技術(shù)以及很好的靈活性和兼容性。因此,本系統(tǒng)選用C#作為軟件開發(fā)語言。使用的數(shù)據(jù)庫管理系統(tǒng)為SQL Server 2000 ,它是一個完全支持Web的數(shù)據(jù)庫產(chǎn)品,提供了對XML的核心支持,以及在In ternet上和防火墻外進(jìn)行查詢的能力。在邏輯結(jié)構(gòu)上由表、視圖、索引等數(shù)據(jù)庫對象組成, 其包括4個常見版本:企業(yè)版( Enterprise Edition )、標(biāo)準(zhǔn)版(Standard Edition )、個人版(Personal Edition )和開發(fā)者版(Develop
8、er Edition )。第2章招聘系統(tǒng)的概述與分析本系統(tǒng)是一種具有交互功能的人才信息系統(tǒng),實現(xiàn)一個互連網(wǎng)上的虛 擬招聘會,各個企業(yè)可以在網(wǎng)上發(fā)布招聘信息,然后求職者可以根據(jù)自己 的具體情況在線提交簡歷。它不但大大節(jié)省了企業(yè)在籌備現(xiàn)實招聘會的過 程中所需要的人力和財力,也更多地方便了求職者,尤其是異地求職者。 我們還可以利用數(shù)據(jù)庫的一些功能實現(xiàn)招聘和求職信息的搜索,使用戶體 會到互聯(lián)網(wǎng)和信息技術(shù)帶來的方便和快捷。2.1 可行性分析由于本系統(tǒng)每個數(shù)據(jù)內(nèi)容具有較強的關(guān)聯(lián)性,涉及的計算過程不是很PIII復(fù)雜。因此,比較適合于采用數(shù)據(jù)庫管理。現(xiàn)在使用的計算機都是以上的機器,在存儲量、速度方面都能滿足數(shù)
9、據(jù)庫運行的要求。在技術(shù)難 度方面,有導(dǎo)師的指導(dǎo)和相關(guān)參考文獻(xiàn),特別是能夠參考其他程序的功能,因此完全可以實現(xiàn)。2.2 系統(tǒng)需求分析需求分析是指開發(fā)人員要準(zhǔn)確理解用戶需求,進(jìn)行細(xì)致的調(diào)查分析, 將用戶非形式的需求陳述轉(zhuǎn)化為完整的需求定義,再由需求定義轉(zhuǎn)換到相 應(yīng)的形式功能規(guī)約(需求規(guī)格說明)的過程。需求分析所要完成的基本任 務(wù)是準(zhǔn)確地定義新系統(tǒng)的目標(biāo),滿足用戶需要,回答系統(tǒng)必須做什么的問 題。通過調(diào)查,要求系統(tǒng)需要有以下功能:(1) 良好的人機界面;(2) 由于該系統(tǒng)的使用對象多,要求有較好的權(quán)限管理;(3) 原始數(shù)據(jù)修改簡單方便;(4) 方便的數(shù)據(jù)查詢;(5) 在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡單
10、,數(shù)據(jù)穩(wěn)定性好;(6) 數(shù)據(jù)計算自動元成,盡量減少人工干預(yù)。根據(jù)使用該網(wǎng)站的用戶角色的不同可以分為下面三種用戶:系統(tǒng)管理員:負(fù)責(zé)管理網(wǎng)站上的各種信息,包括發(fā)布新聞、管理新聞、查看和刪除全部的個人和企業(yè)用戶;個人用戶:可以在線填寫個人基本情況、發(fā)布求職信息、瀏覽新聞、 查看求職和招聘信息、在線向自己滿意的公司遞交簡歷等。企業(yè)用戶:可以在線填寫企業(yè)基本情況、發(fā)布企業(yè)招聘信息、瀏覽新 聞、查看求職和招聘信息、在線查看和管理個人用戶遞交的簡歷等。2.3 系統(tǒng)功能分析網(wǎng)上招聘系統(tǒng)主要用于求職者與企業(yè)之間的雙向選擇,使雙方能夠通 過網(wǎng)絡(luò)平臺進(jìn)行交互,管理員負(fù)責(zé)管理整個系統(tǒng)的信息。系統(tǒng)的功能層次 如圖2-1
11、所示招聘系統(tǒng)個人用戶企業(yè)用戶公用功能圖2-1系統(tǒng)功能層次圖第3章網(wǎng)上招聘系統(tǒng)的設(shè)計該網(wǎng)絡(luò) 招聘系統(tǒng) 涉及兩類重要客戶角 色即供需 雙方,供方 為求職 人 員,需方為招聘單位或是用人部門,還包括第三部分的信息發(fā)布以及交流 功能。3.1 系統(tǒng)結(jié)構(gòu)設(shè)計招聘系統(tǒng)的總體結(jié)構(gòu)設(shè)計主要分為用戶管理、個人用戶、企業(yè)用戶和 管理員四個模塊,各個模塊又分為若干功能模塊。3.1.1 招聘系統(tǒng)的結(jié)構(gòu)和流程進(jìn)入該網(wǎng)站后,首先是登錄界面,已經(jīng)注冊的用戶可直接登錄,系統(tǒng) 將根據(jù)用戶選擇區(qū)分是個人用戶還是企業(yè)用戶,個人用戶又分普通用戶和 管理員,系統(tǒng)會根據(jù)用戶名的不同來區(qū)分這二者,并且將這三種不同的用戶分別鏈接到各自的主界面
12、下。沒有注冊的用戶可以單擊注冊轉(zhuǎn)到注冊頁 面,并選擇是個人用戶還是企業(yè)用戶最后轉(zhuǎn)到各自的用戶界面。1. 個人用戶的工作流程如圖3-1所示。圖3-1 個人用戶工作流程圖2. 企業(yè)用戶的工作流程如圖3-2所示圖3-2 企業(yè)用戶工作流程3.管理員的管理功能示意圖3-3所示圖3-3 管理員功能示意圖3.1.2 ASP.NET的三層結(jié)構(gòu)ASP.NET中可以采用三層結(jié)構(gòu)開發(fā)方法,“三層結(jié)構(gòu)”分別是業(yè)務(wù)邏輯層、Web UI層、數(shù)據(jù)訪問層。系統(tǒng)的層是對代碼的一種邏輯劃分,系 統(tǒng)并不一定要分三層,如果系統(tǒng)很簡單使用一層就可以,但如果系統(tǒng)很復(fù) 雜,也可能是多層。數(shù)據(jù)訪問層只包含對數(shù)據(jù)庫的操作,與其他業(yè)務(wù)邏輯 沒有
13、關(guān)系,也就是說其他層不會涉及任何數(shù)據(jù)處理,其他層的任務(wù)是設(shè)置 頁面、獲取數(shù)據(jù)、輸出數(shù)據(jù)。業(yè)務(wù)層最重要,所有的數(shù)據(jù)處理都在這里。在ASP.NET的三層架構(gòu)中,數(shù)據(jù)訪問層通過中間層來連接和操作, 前端給中間層傳遞參數(shù),并接收中間層的參數(shù)。一般稱中間層為組件,可用.cs文件編譯而成,中間層一般為.dll文件。其中的一個原則是上層調(diào)用下層而上層對下層是不可見的。設(shè)計時,Web UI層只調(diào)用邏輯層,取得頁面的數(shù)據(jù)傳到邏輯層,邏輯層負(fù)責(zé)把數(shù)據(jù)加工整理傳到數(shù)據(jù)訪問層和把 從數(shù)據(jù)訪問層取得的數(shù)據(jù)進(jìn)行加工,數(shù)據(jù)訪問層就只負(fù)責(zé)對數(shù)據(jù)庫進(jìn)行操 作。也可以將業(yè)務(wù)邏輯層看作上層對下層下達(dá)命令和調(diào)節(jié)行為的中間層。可以用圖
14、3-4來更直觀的表現(xiàn)這三層結(jié)構(gòu)框架:前端(Web UI)返回給用戶中間層(業(yè)務(wù)邏輯)與界面相關(guān)的ASPx,HTML 文件一用戶 操作丿中間的.cs文件編譯而成的控件后端(數(shù)據(jù)訪問)處理數(shù)據(jù)/返回數(shù)據(jù)SQL Server數(shù) 據(jù)庫圖3-4 ASP.NET 的三層結(jié)構(gòu)在本系統(tǒng)中,也用到了這種開發(fā)模式,分別為業(yè)務(wù)邏輯層 (Busi nessEmploy ), Web UI 層(User In terface )和數(shù)據(jù)庫層 (DataAccessEmploy )。三層架構(gòu)的應(yīng)用使得程序的可維護(hù)性增強,增加系統(tǒng)的清晰度,實現(xiàn)了對功能的開放以及對修改的封閉。它使得企業(yè)可以 專注于他們的專門領(lǐng)域,有利于發(fā)揮所
15、有人的優(yōu)勢并提高效率,同時也降 低了應(yīng)用程序的開發(fā)成本。3.2 數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計建立一個動態(tài)的網(wǎng)站,必然要通過數(shù)據(jù)庫實現(xiàn)客戶端與服務(wù)器端的交互以及對數(shù)據(jù)的處理。SQL是一種通用的數(shù)據(jù)庫查詢語言,利用SQL的數(shù)據(jù)定義語句,可實現(xiàn)數(shù)據(jù)表、字段或索引的創(chuàng)建、修改和刪除,利用數(shù) 據(jù)操縱語句,可實現(xiàn)數(shù)據(jù)的查詢、插入、更新或刪除等操作。3.2.1 概念結(jié)構(gòu)設(shè)計采用E-R模型的概念結(jié)構(gòu)設(shè)計方法。圖3-5 個人簡歷實體 E-R圖圖3-6招聘信息實體 E-R圖實體之間的聯(lián)系模型如下圖所示。用戶名N修改添加操作1N清空刪除N添加操作修改操作N查看用戶名N操作N回復(fù)用戶名管理員企業(yè)N站內(nèi)信息個人職位信息工作經(jīng)驗新聞
16、信息圖3-7實體之間聯(lián)系圖3.2.2邏輯結(jié)構(gòu)設(shè)計在SQL Server 2000 中運行服務(wù)管理器,在企業(yè)管理器中創(chuàng)建新的數(shù)據(jù)庫hr,然戶右鍵單擊表節(jié)點,進(jìn)入設(shè)計表結(jié)構(gòu)的界面,可以在該機界面 中加入表的列名以及各列的數(shù)據(jù)類型和長度。本系統(tǒng)定義的數(shù)據(jù)庫中包含以下六個表:新聞信息表news,個人用戶表person,企業(yè)用戶表 company,個人簡歷表 getJoblnfo,招聘信息 表giveJobInfo 和在線申請表 resume。以下簡單介紹一下這些表的結(jié)構(gòu):(1) 新聞信息表保存了該網(wǎng)站上所有新聞,包括新聞的標(biāo)題、內(nèi)容等, 主鍵是ID ;表3-1 表news的結(jié)構(gòu)列名數(shù)據(jù)類型長度說明Id
17、int4新聞編號titlevarchar100新聞標(biāo)題sourcevarchar30新聞來源publicDatedatetime8發(fā)布時間contenttext16新聞內(nèi)容pictureimage16新聞圖片hitsint4新聞點擊次數(shù)(2) 個人用戶表保存了所有個人用戶的用戶名、密碼、E-mail等基本用戶信息,主鍵是personID ;表3-2 表person的結(jié)構(gòu)列名數(shù)據(jù)類型長度說明pers onlDint4用戶編號Namevarchar50用戶名Passwordvarchar50用戶密碼Mailvarchar50電子郵箱(3) 企業(yè)用戶表保存了所有企業(yè)用戶的用戶名、密碼和E-mail等
18、基本信息,主鍵是 companyID ;表3-3 表company的結(jié)構(gòu)列名數(shù)據(jù)類型長度說明compa nyIDint4用戶編號Namevarchar50用戶名Passwordvarchar50用戶密碼Mailvarchar50電子郵箱(4) 個人簡歷表保存了用戶的個人基本信息如姓名、性別等,還有與求職有關(guān)的各種信息,如工作經(jīng)驗、所求職位等。它通過外鍵perso nID 和表person相關(guān)聯(lián),與表person是一對一的關(guān)系,也就是一個人只能登錄 一份簡歷;表3-4 表getJoblnfo 的結(jié)構(gòu)列名數(shù)據(jù)類型長度說明getJob In foIDint4求職信息編號pers onlDint4用戶
19、編號n amevarchar50用戶名sexvarchar5性別E-mailvarchar50電子郵件phonevarchar20電話addressvarchar50地址addrNumvarchar50郵政編碼educati onvarchar50教育程度stro ngtext16特長experie neetext16工作經(jīng)驗in troduct iontext16自我介紹typevarchar50工作類型workPositi onvarchar50工作職位workCityvarchar50工作城市wagevarchar50:期望工資othertext16其他publicTimedatetim
20、e8發(fā)布時間hitsint4單擊次數(shù)(5)招聘信息表giveJob Info保存了企業(yè)發(fā)布的招聘信息,包括工作需求、工作地點、招聘人數(shù)等信息。它通過外鍵companyID 和表company相連,一個企業(yè)和一條招聘信息相連,但是從里面可以發(fā)布不同的招聘職 位和相關(guān)要求;表3-5 表giveJobInfo 的結(jié)構(gòu)列名數(shù)據(jù)類型長度說明giveJobI nfolDint4招聘信息編號compa nyIDint4公司編號n amevarchar50公司名稱vocati onvarchar5公司類型E-mailvarchar50電子郵件phonevarchar20電話addressvarchar50地址
21、addrNumvarchar50郵政編碼workPositi onvarchar50工作職位giveNumvarchar50招收人數(shù)workCityvarchar50工作城市describetext16工作描述requesttext16工作要求publicTimedatetime8發(fā)布時間lookTimesint4單擊次數(shù)(6)在線申請表包括申請人的ID,姓名及企業(yè)的ID,名稱,以便企業(yè)用戶可以通過申請表中的perso nID 查看到申請人的個人簡歷。它通過外鍵personlD 和外鍵 companyID 分別與表 person 和表company 相聯(lián)系。表3-6 表resume 的結(jié)構(gòu)列名
22、數(shù)據(jù)類型長度說明resumelDint4提交簡歷編號pers onlDint4丨人編號compa nylDint4企業(yè)編號pers onN amevarchar50個人姓名compa ny Namevarchar50企業(yè)名稱CWorkPositio nvarchar50招聘職位PWorkPositi onvarchar50應(yīng)聘職位第4章網(wǎng)上招聘系統(tǒng)的實現(xiàn)本系統(tǒng)分為前臺管理和后臺管理。前臺管理包括瀏覽新聞、職位查詢、查看企業(yè)信息、維護(hù)個人信息和維護(hù)用戶信息等功能。后臺管理包括新聞 管理、企業(yè)信息管理和招聘信息管理、職位應(yīng)聘信息管理等功能。本章從 實現(xiàn)功能的角度分別就各個模塊的實現(xiàn)做出描述。4.1
23、 用于操作數(shù)據(jù)庫的通用模塊由于本系統(tǒng)在開發(fā)過程中要編寫涉及數(shù)據(jù)庫的大量相關(guān)操作,也有大 量方法的重復(fù)調(diào)用,為了便于開發(fā)和維護(hù),將這些數(shù)據(jù)庫的操作和方法調(diào) 用封裝成各自的類存放于業(yè)務(wù)邏輯層(Busi nessEmploy )中,添加新的命名空間namespace Busi nessEmploy。然后頁面的操作可以直接調(diào)用這些類中的方法,只是需要添加using Buis in essEmploy ,這體現(xiàn)了軟件工程中的代碼復(fù)用原則。4.1.1 數(shù)據(jù)庫操作的基類I.Base 類該類在Base.cs文件中定義,是所有數(shù)據(jù)庫操作有關(guān)的類的基類,它 定義了通用的數(shù)據(jù)庫操作的幾類函數(shù)。下面的函數(shù) Execu
24、teSql代表了一類執(zhí)行沒有返回值的SQL語句。如果界面中的操作函數(shù)要執(zhí)行一些無返回值的數(shù)據(jù)庫操作,如插入,刪除等 時,只需調(diào)用這個函數(shù),在參數(shù)strSQL中指定操作的字符串即可。protected static int ExecuteSql(string strSQL)SqlC onn ectio n myC n = new SqlC onn ecti on( strC onn);SqlComma nd myCmd = new SqlComma nd(strSQL, myC n);trymyC n. Ope n();myCmd.ExecuteN on Query();return 0;cat
25、ch (System.Data.SqlClie nt.SqlExcepti on e)throw new Excepti on( e.Message);fin allymyCmd.Dispose();myC n.Close();類似的函數(shù)還有ExecuteSqlEx()圭寸裝了返回值是DataReader類型的操作,如果以后有需要執(zhí)行返回值DataReader的操作時,只需調(diào)用這個函數(shù)而無需重寫代碼;函數(shù) ExecuteSql4Ds()圭寸裝了返回值是DataSet類型的操作;函數(shù) ExecuteSql4Value()圭寸裝了返回值是int類型的操作,比如返回某企業(yè)的所有應(yīng)聘者的個數(shù)等,只要調(diào)
26、用這個函數(shù)即可;函數(shù) ExecuteSql4ValueEx()與前一個函數(shù)的功能基本相同,只是返回值不同,上一個函數(shù)將 object強制轉(zhuǎn)換成int型返回,而這個函數(shù)直接返回object對象;函數(shù)ExecuteSqls()的功能是執(zhí)行多條無返回值的SQL數(shù)據(jù)庫腳本命令,如果都執(zhí)行成功就返回0。2.其他在業(yè)務(wù)邏輯層封裝的類還有以下幾個:Public class Compa ny:BasePublic class GetJob In fo:BasePublic class GiveJob In fo:BasePublic class News:BasePublic class Pers on:Ba
27、sePublic class Resume:BasePublic class Compa ny:Base它們都繼承自基類Base,當(dāng)不同的頁面需要執(zhí)行其中的功能時,只需通過調(diào)用這些封裝類內(nèi)部已經(jīng)實現(xiàn)的方法即可。與Base類的結(jié)構(gòu)相似,這里就不再列出代碼一一贅訴。4.1.2存儲過程存儲過程(Stored Procedure )是一組為了完成特定功能的SQL語句集,這里的 SQL語句集經(jīng)編譯后存儲在數(shù)據(jù)庫服務(wù)器中,用戶通過指定 存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行它,可以 在數(shù)據(jù)庫中存儲并運行功能強大的任務(wù),而不必在自己的.aspx文件中實現(xiàn)它們。存儲過程第一次執(zhí)行時會進(jìn)行語法
28、檢查和編譯,編譯好的版本保 存在高速緩存中供后續(xù)調(diào)用。存儲過程由前端應(yīng)用程序激活,在執(zhí)行重復(fù)任務(wù)時,其可以實現(xiàn)較快 的執(zhí)行速度并提高數(shù)據(jù)的一致性。由于存儲過程可以將一系列對數(shù)據(jù)庫的 操作放在數(shù)據(jù)庫服務(wù)器上執(zhí)行,因而可以降低對Web服務(wù)器的負(fù)載,提高了整個系統(tǒng)的性能。在SQL Server中,必須使用 transact-SQL 來創(chuàng)建存儲過程,一般可 以執(zhí)行一個或多個SQL語句,另外存儲過程還可以接受輸入?yún)?shù)或輸出參數(shù)。創(chuàng)建存儲過程的基本語法如下:CREAT PROCEDURE procedure. name ;n umberparameter1 data_type1,parameter2 da
29、ta_type2,parameter n data_type nAsSql_stateme nt其 中 procedure_name是存儲過程 的名字,parameterl , ,parametern 是參數(shù),data_type1 , ,data_typen 是對應(yīng)于參數(shù)的數(shù)據(jù) 類型,參數(shù)分為輸入?yún)?shù)和輸出參數(shù)兩種,如果某參數(shù)是輸出參數(shù),那么 要在定義時在數(shù)據(jù)類型后加上Output標(biāo)識,AS指明該存儲過程要執(zhí)行的動作,sql_statement 是包含在存儲過程中的SQL語句。在本系統(tǒng)的實現(xiàn)過程中,需要添加、更新、查詢以及刪除大量的數(shù)據(jù),使用存儲過程不但可以提高效率,同時也減少了對數(shù)據(jù)操作的編
30、碼,其中 用到的存儲過程有: AddNews,用來向數(shù)據(jù)庫的 news表中插入一條新聞; AddResume ,用來向resume 表中插入一條在線 申請信息; updateCBasel nfo ,用來更新一條企業(yè)的基本信息;updatePBasel nfo ,用來更新一條個人的基本信息;updatePResume ,用來更新一條申請信息到個人簡歷表getJobInfo中;updatePCareer ,用來在個人簡歷表getJob Info中更新一條個人的簡歷信息;updateCCareer ,用來在企業(yè)發(fā)布的招聘信息表giveJobI nfo中更新一條企業(yè)的招聘信息。4.1.3配置數(shù)據(jù)庫人才
31、庫和簡歷庫的管理是本系統(tǒng)的基礎(chǔ),核心模塊功能的實現(xiàn)都是建 立在數(shù)據(jù)庫操作之上的。1. 在 Web.co nfig 配置文件中配置應(yīng)用程序 中會用到的字符 串”strConnection ”該字符串用來指定到數(shù)據(jù)庫的連接,以后創(chuàng)建與數(shù)據(jù)庫的連接會用它作為構(gòu)造函數(shù)的參數(shù)。把它寫在里面而不是程序中,是為 了隨時可以移植應(yīng)用到別的服務(wù)器上,而無需重新編譯應(yīng)用程序。其部分代碼如下:vappSett in gsserver=(local) 字段表示數(shù)據(jù)庫服務(wù)器是本地服務(wù)器,database=hr 字段指定數(shù)據(jù)庫的名稱是hr。 配置語句定義了一個字符串,保存管理員用戶的用戶名,當(dāng)個人登錄時,都要 檢查該用戶
32、的用戶名是否為123456,也就是是否為管理員。也可以在這個字符串中指定多個用戶名,用逗號分割開,這樣就允許有多個管理員了。2. 創(chuàng)建連接:(以其中一個為例)使用SQLConnection對象打開連接:SqlC onn ectio n myCn=new SqlC onn ectio n(strC onn);myCn. ope n();使用SQLCommand 對象執(zhí)行SQL命令:SqlComma nd myCmd=new SqlComma nd(strSQL,myC n);使用SqlDataReader 對象來獲取數(shù)據(jù):SqlDataReader myReader = myCmd.Execut
33、eReader();if (myReader.Read()Return 0;elseThrow new Exceptio n (Value Un available ”關(guān)閉連接:Fi nallymyCmd.Dispose();myC n.Close();4.2 管理員模塊的實現(xiàn)管理員負(fù)責(zé)整個系統(tǒng)的個人用戶、企業(yè)用戶以及新聞信息的管理,主 要包括登錄界面、注冊界面、主界面、新聞管理界面、個人用戶管理界面 和企業(yè)用戶管理界面。從整體上達(dá)到對系統(tǒng)所有信息的統(tǒng)一管理。4.2.1登錄界面和注冊界面本系統(tǒng)中管理員用戶個人 信息也是 保存在普通 用戶個人用 戶信息 表中,和其他個人用戶一樣注冊和登錄,注冊頁
34、面的代碼保存在 Register.aspx 和Register.aspx.cs兩個文件中。管理員注冊需要填寫基本帳戶信息和 E-mail,將注冊表單提交后服務(wù)器就會對提交的內(nèi)容進(jìn)行驗 證,需要特別注意以下幾個驗證控件:(1) requiredfieldvalidator 控件:在這個表單里所有的輸入框都需要這 個驗證控件,它用來檢查輸入是否為空;(2) regularexpressionvalidator控件:用來檢查用戶輸入的信息是否滿足指定的格式,同前一個驗證控件一樣,所有的輸入框都需要用到這個 控件;(3) comparevalidator控件:用來驗證兩次輸入的密碼是否相同。用戶登錄需
35、要驗證用戶的用戶名和密碼,從而決定能對用戶可見和可 使用的系統(tǒng)資源。管理員和其他用戶的登錄界面是一樣的,都是根目錄下 的 default.aspx 和 default.aspx.cs 文件。422 主界面和新聞管理界面在本系統(tǒng)中,所有的用戶公用一個主界面,即Home.aspx 和 Home.aspx.cs ,管理員用戶也不例外,只是在該界面中對不同的用戶提供 不同的鏈接。提供給管理員用戶的鏈接有撰寫新聞、管理新聞、管理個人 用戶和管理企業(yè)用戶。Home.aspx中包含兩個frame,分別是頁面首部的Top.aspx 文件和下面的主窗口Main.aspx 文件,Top.aspx 描述了一些用戶都
36、公用的功能,也就是說Top上的所有鏈接對全部用戶都可見,其對應(yīng)的文件如下表所示:表4-1 Top導(dǎo)航條對應(yīng)的鏈接頁面超鏈接名稱鏈接文件.aspx代碼綁定文件 .aspx.cs首頁Default.aspxDefault.aspx.cs求職GetJob.aspxGetJob.aspx.cs招聘GiveJob.aspxGiveJob.aspx.cs新聞Main .aspxMai n.aspx.cs退出Logout.aspxLogout.aspx.cs主界面Ma in .aspx 也分為兩個 frame,左部對應(yīng)的文件是Left.aspx和它的后臺隱藏文件Left.aspx.cs,它對于每一種特定的用
37、戶提供不同的選項,其對應(yīng)的文件如下表所示:表4-2 Left導(dǎo)航條對應(yīng)的鏈接頁面用戶類型超鏈接名稱鏈接文件.aspx代碼綁定文件.aspx.cs管理員撰寫新聞WriteNews.aspxWriteNews.aspx.cs新聞管理NewsMa nage.aspxNewsMa nage.aspx.es個人用戶管理PersonMan age.aspxPers onMan age.aspx.cs企業(yè)用戶管理Compa nyMan age.aspxCompa nyMan age.aspx.cs個人用戶個人基本信息Pers on BaseI nfo.aspxPers on Basel nfo.aspx.e
38、s求職簡歷Resume.aspxResume.aspx.cs工作要求Career.aspxCareer.aspx.cs企業(yè)用戶企業(yè)基本信息Compa nyBase In fo.aspxCompa nyBase In fo.aspx.cs企業(yè)招聘信息Compa ny Job.aspxCompa ny Job.aspx.es企業(yè)收藏夾Compa ny Store.aspxCompa ny Store.aspx.cs區(qū)分一個個人用 戶是管理員還是普通用戶的方 法是判 斷他的用戶 名 是否在 Web.co nfig中指定的 Man ager 字符串中,Person 類中的函數(shù)lsSupervisor(
39、)完成了這個功能。423個人用戶管理界面和企業(yè)用戶管理界面在管理員主界面中,設(shè)置“管理個人用戶”超鏈接,在主窗口中顯示 個人用戶列表,該界面的文件是Pers nMa nage.aspx 。其中操作數(shù)據(jù)庫中的person表,通過調(diào)用Person類中的GetUser()方法返回所有用戶列表, 并將其保存在一個DataSet對象中,只需調(diào)用 ExecuteSql4Ds() 函數(shù)來直接返回查詢結(jié)果。當(dāng)刪除表中的某一行時,由于該表中的Perso nID 列是getJob Info 表中的一個外鍵,所以需要先在 getJobI nfo表中刪除所有相關(guān)的行,再刪除在person表中的相應(yīng)行。企業(yè)用戶管理與個
40、人用戶管理相似,只是操作的表是 company 。4.3 個人用戶模塊的實現(xiàn)個人用戶模塊主要實現(xiàn)個人可以在線填寫基本情況、發(fā)布求職信息、 查看招聘和求職信息以及向自己滿意的公司遞交簡歷等功能。主要界面是 填寫個人的基本信息界面、填寫個人簡歷界面以及在線提交簡歷界面,下面通過各個頁面來說明各種功能的實現(xiàn)。4.3.1個人用戶主界面與基本信息頁面?zhèn)€人用戶主界面與管理員主界面是公用一個文件,只不過左邊菜單欄 中可見的超鏈接不同,在其中可見的部分是“個人基本信息”、“求職簡歷” 和“工作要求”。個人基本信息界面用于個人用戶填寫,提交和查看個人基本信息,如 姓名,聯(lián)系方式等,界面效果如圖4-5所示。個人基
41、本信息圖4-1 個人基本信息頁面單擊提交按鈕 Submit ,用戶填寫的數(shù)據(jù)將被提交到數(shù)據(jù)庫中,這個提交的過程主要由負(fù)責(zé)響應(yīng)的“ Submit ”按鈕單擊事件的注冊函數(shù) btn_Replay_Click() 來處理。該函數(shù)先將用戶填寫的信息用一個ArrayList對象保存,然后調(diào)用GetJobI nfo 類的成員方法 updateMyBasel nfo() 將用戶更新的信息儲存到數(shù)據(jù)庫中,該方法利用一個存儲過程來完成更新。updatePBaseI nfo存儲過程的腳本如下:CREAT PROCEDURE dbo.updatePBasel nfopers onlD int,n ame varch
42、ar(10),sex varchar(5),email varchar(50),ph one varchar(20),address varchar(50),addrNum varchar(10)AsUpdate GetJob Info set n ame=n ame,sex=sex,E-mail=email,pho ne=ph one,address=address,addr num=addrNumWhere pers on ID=pers onlDGO4.3.2查看招聘信息與在線提交簡歷個人用戶可以查看企業(yè)發(fā)布的招聘信息,如果看到自己滿意的單位, 可以在線遞交簡歷。顯示招聘信息的頁面是 G
43、iveJob.aspx 和GiveJob.aspx.cs 文件,其中需要一個 DataGrid控件來顯示招聘信息列表 和一個按鈕提示搜索功能。單擊“搜索”按鈕會調(diào)用相應(yīng)函數(shù)bt_Click ,該函數(shù)通過調(diào)用GiveJobI nfo 類的成員函數(shù) SerchCompa nyl nfo來搜索關(guān)鍵字,把結(jié)果保存在 DataSet的對象返回,然后將它以數(shù)據(jù)查看的方式綁 定在DataGrid1對象上以顯示在界面上。具體代碼如下:Private void bt_Click (object sen der, System.Eve ntArgs e)DataSet ds=GiveJob In fo.Searc
44、hCompa nylnfo (tb_Search.Text.Trim (); this.DataGrid1.DataSource = ds.Tables O.DefaultView;this.DataGrid1.DataBi nd();GiveJob Info類的成員方法SearchCompa nyl nfo()用于對參數(shù)指定的關(guān)鍵字在數(shù)據(jù)庫中進(jìn)行匹配,其代碼如下:public static DataSet SearchCompa nyln fo(stri ng Msg)string str;str = select * from giveJob Info where compa ny Name like % + Msg + %or workPosition like % + Msg + % or workCity like % + Msg + % or requestlike % + Msg + %;DataSet myDs;myDs = ExecuteSql4Ds(str);return myDs;如果用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智慧餐廳推廣方案
- 智慧養(yǎng)老系統(tǒng)解決方案
- 2023年電子銀漿資金籌措計劃書
- 卡通襪子課件教學(xué)課件
- 武術(shù)課件制作教學(xué)課件
- 印染剪紙課件教學(xué)課件
- 誠子書課件教學(xué)課件
- 4.1 原電池 第2課時 課件高二上學(xué)期化學(xué)人教版(2019)選擇性必修1
- 酒店用品解決方案
- 不負(fù)人民課件教學(xué)課件
- 邯鄲市政府采購辦事指南
- 智能交通控制的課程設(shè)計
- 城市初期雨水污染治理
- 在護(hù)林員培訓(xùn)班上的講話護(hù)林員會議講話稿.doc
- 材料科學(xué)基礎(chǔ)-第7章-三元相圖
- (完整word版)高頻變壓器的設(shè)計
- 公路工程2018各項費用的計算程序及計算方式
- 戶外急救知識(必備)
- 新浙攝版(2020)五年級下冊信息技術(shù)全冊教案
- 中國中國鮮紅的太陽永不落-合唱簡譜-歌詞
- 房地產(chǎn)實現(xiàn)場勘查記錄表(4張表格)
評論
0/150
提交評論