基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn).doc_第1頁
基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn).doc_第2頁
基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn).doc_第3頁
基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn).doc_第4頁
基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn).doc_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

湖北大學本科畢業(yè)論文(設計)目 錄緒論(1)1 課題概述(1)1.1 課題背景(1)1.2 課題主要研究意義(1)2 相關開發(fā)技術和工具綜述(2)2.1 B/S模式(2)2.2 JSP的優(yōu)點及其對象的簡介(2)2.2.1 JSP的優(yōu)點(2)2.2.2 JSP的九大隱式對象簡介(3)2.3 Mysql(4)2.3.1 Mysql的優(yōu)點(4)2.3.2 Mysql的缺點(4)2.4 MVC模式(4)3 求職招聘網(wǎng)站系統(tǒng)的需求分析(5)4 求職招聘網(wǎng)站的設計方案(6)4.1 求職招聘網(wǎng)站的系統(tǒng)流程(6)4.2 求職招聘網(wǎng)站的數(shù)據(jù)庫的設計(6)4.3 求職招聘網(wǎng)站的三層模式的設計(8)4.3.1 求職招聘網(wǎng)站的數(shù)據(jù)層設計(8)4.3.2 求職招聘網(wǎng)站的業(yè)務處理層設計(8)4.3.3 求職招聘網(wǎng)站的表示層設計(10)4.4 本系統(tǒng)MVC模式中三層之間的交互舉例(11)5 結束語(12)參考文獻(14)III 基于JSP的求職招聘網(wǎng)站系統(tǒng)設計與實現(xiàn)摘要隨著現(xiàn)代社會的快速發(fā)展,各種崗位的人才需求也逐漸增多。傳統(tǒng)的求職招聘模式已經(jīng)不能滿足現(xiàn)代社會的需求,網(wǎng)上求職招聘方式不再拘泥于時間和空間的限制,為求職招聘雙方提供了便捷、實用的溝通手段。求職招聘網(wǎng)站系統(tǒng)是利用互聯(lián)網(wǎng)提供的豐富的超媒體資源,依托現(xiàn)有的硬件設施和實施手段,運用信息化服務方法為求職者和用人單位搭建一個開放、穩(wěn)定、公平的求職招聘平臺,同時解決企業(yè)、用人單位和求職者實時通話的渠道難題。本系統(tǒng)采用的B/S模式的三層體系結構,利用JSP技術,JDBC技術,Mysql數(shù)據(jù)庫,Apache Tomcat服務器等技術實現(xiàn),充分實現(xiàn)信息共享與交流,利用互聯(lián)網(wǎng)的優(yōu)勢,安全、高效率、低成本的處理求職招聘工作?!娟P鍵詞】Web技術 JSP技術 數(shù)據(jù)庫設計 MVC模式Design and implementation of job recruitment website system based on JSPAbstractWith the rapid development of modern society, various positions is gradually increasing demand for qualified personnel. The traditional recruitment and selection model has been unable to meet the needs of modern society, the online recruitment and selection system is no longer confined to time and space constraints, provides a convenient, practical means of communication. Job recruitment and selection website system uses the Internet to provide rich hypermedia resources, relying on the existing hardware facilities and means of implementation, the use of information service method for job seekers and employers to build an open, stable, fair employment platform, solving problems and channels with employers and job-seekers enterprises, real-time communication.Three layer system structure by using the BS model of the system, and use JSP technology, JDBC technology, Mysql database, Apache Tomcat server technology, the full realization of information sharing and exchange, the advantage of the Internet, job security, high efficiency, low processing cost of recruitment.【keyword】Web technology JSP Database design MVC model緒論隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已經(jīng)進入人類社會的各個領域并發(fā)揮著越來越重要的作用。Web技術作為一種網(wǎng)絡技術,在此期間得到迅速發(fā)展。網(wǎng)絡給人們帶來了許多方便,可以足不出戶就了解到很多資訊,也可以通過網(wǎng)絡來管理很多東西。我們每天的工作與生活都和網(wǎng)絡息息相關,面對面的交流已經(jīng)逐漸被網(wǎng)絡交流所取代,大家上網(wǎng)聊天,遠程工作,網(wǎng)上購物等等,網(wǎng)絡上的活動越來越頻繁,再加上招聘會時間的固定性,越來越多的人選擇在招聘信息網(wǎng)站上申請賬號,更新自己的個人簡歷,尋找合適自己的工作崗位,而企業(yè)也經(jīng)常在一些主流招聘網(wǎng)站上發(fā)布自己公司需要的職位信息列表,不需要經(jīng)常開展大型的招聘會就可以找到適合的人才,這樣既找到了合適的人才,又降低了成本縮短了時間,因此廣泛受到企業(yè)的喜愛。所以由此可見,招聘求職信息網(wǎng)站的建立是十分必要的,可以使求職與招聘變得非常方便。1 課題概述1.1 課題背景找工作難是如今大學畢業(yè)生不得不面臨的困難,大學畢業(yè)生缺少經(jīng)驗,社會實踐少,迫切希望能找到一份適合自己的工作。盡管各地具有規(guī)模級的現(xiàn)場招聘幾乎每個星期都會舉行,這也吸引了大量的畢業(yè)生前去尋找合適自己的工作,這雖然解決大部分畢業(yè)生的就業(yè),但同時也消耗了許多人力以及物力,也浪費了許多畢業(yè)生為了找工作而奔波忙碌所耗費的時間和精力。隨著科學技術水平的不斷前進,尤其是近些年來由于世界各地大范圍的普及計算機,計算機的應用已經(jīng)慢慢地不斷滲透到非數(shù)值化管理的很多部分,而不是原先最簡單的科學計算。目前,網(wǎng)絡已走進千家萬戶,大多數(shù)人都知道通過網(wǎng)絡進行求職和招聘1。利用現(xiàn)代化的網(wǎng)絡技術管理人才求職、企業(yè)招聘信息,突破了時間和空間的限制,無論是對于個人求職、企業(yè)招聘都減少了人力、物力和財力的投入,提高了工作效率。在這種情形下,開發(fā)一套基于B/S結構的網(wǎng)絡求職招聘系統(tǒng)是十分必要而且有意義的事情 。 網(wǎng)絡招聘成為目前深受求職招聘者喜愛的一種便捷式求職招聘形式,互聯(lián)網(wǎng)技術給求職招聘者提供豐富的網(wǎng)絡資源,為他們創(chuàng)造一種良好的求職招聘平臺,具備了人才中介機構的普遍功能。對求職者而言,網(wǎng)站給他們提供了快捷、方便的尋找工作崗位平臺,對招聘單位而言,求職招聘網(wǎng)站給他們提供了尋找人才信息的平臺。 1.2 課題主要研究意義時代在發(fā)展,社會在不斷進步,網(wǎng)絡已經(jīng)悄無聲息的走入了人們的生活,網(wǎng)絡生活給人們帶來了許多方便,人們可以不用出門就了解到很多有用的信息,也可以通過網(wǎng)絡來進行各種各樣的日常工作和活動。如今大家每天都要登陸網(wǎng)絡,瀏覽各種網(wǎng)站,獲取許多有用的信息。而招聘會的展開,需要準備很多東西,費時費力。因此開展一次招聘會是很不容易的,而且時間間隔也會很長通常只有在春季和秋季開展招聘會,而且耗時耗力,很不方便,而且有些求職者可能會因為各種因素導致他趕不上招聘會而導致招聘失敗,這樣對應聘者很不公平,沒有機會施展自己的才能,在這樣的因素下,導致了招聘求職信息網(wǎng)站如雨后春筍般出現(xiàn)在網(wǎng)絡上,而且應用率極高,求職者可以放下時間地點等不可抗拒因素的限制,輕松自由的瀏覽各種自己感興趣的職位,申請該職位的面試機會,而招聘求職信息網(wǎng)站也方便了企業(yè)進行招聘活動,補充了新鮮血液,更有利與企業(yè)用戶更快的找到適合自己公司職位的人才,節(jié)省了許多人力物力,招聘求職信息網(wǎng)站的建立,使公司的招聘變得簡單,為公司發(fā)展帶來了有利的意義。2 相關開發(fā)技術和工具綜述2.1 B/S模式B/S結構(Browser/Server,瀏覽器/服務器模式),是WEB興起后的又一種網(wǎng)絡結構模式,在本機這邊只需要有一個瀏覽器即可。這樣客戶端的模式就得到了統(tǒng)一,服務器解決系統(tǒng)功能實現(xiàn)的核心部分,這樣就把客戶端和服務器完全的分離開來??蛻魴C上只要安裝一個瀏覽器(Browser),如Internet Explorer或Netscape Navigator,服務器安裝Sybase、或 SQL Server等數(shù)據(jù)庫。瀏覽器通過Web 服務器同數(shù)據(jù)庫進行數(shù)據(jù)交互。常用的web服務器有tomcat、JBOSS等。相對與C/S結構,B/S最大的優(yōu)點就是只要有一臺能上網(wǎng)的電腦就能使用,這樣就大大減少了時間和空間的使用??蛻舳瞬恍枰S護和安全,與傳統(tǒng)的C/S結構相比在時間成本和空間成本都得到大大的降低。在服務器端的更新和功能擴展,客戶端訪問服務器即可。B/S結構得到廣泛的使用,同時在B/S結構上可以使用AJAX技術(一種用于創(chuàng)建更好更快以及交互性更強的 Web 應用程序的技術),因此AJAX技術也得到了進一步的發(fā)展,可以實現(xiàn)異步加載,客戶端的部分處理功能是其的最大特點,服務器端和客戶端實現(xiàn)同步,交互性得到提高。2.2 JSP的優(yōu)點及其對象的簡介2.2.1 JSP的優(yōu)點在Web應用開發(fā)中,可提供選擇的動態(tài)頁面語言技術有很多,如PHP、ASP、JSP等,在這些動態(tài)頁面語言中,JSP憑借其自身的優(yōu)點成為開發(fā)人員最喜歡的語言之一。JSP程序容易上手,如果有HTML和Java的基本知識,那么學習JSP程序就沒有任何難度。在Java領域,開源的項目越來越多,這些開源項目是全世界Java愛好者心血的結晶,在JSP程序中可以非常方便地使用這些開源工具。在開源項目的支持下,JSP更是其他動態(tài)語言不能相比的。開發(fā)者從對Java的熱愛延伸到對JSP的熱愛,同時JSP也是J2EE體系中最重要,而且又是最基礎的一個組成部分,如果要體驗J2EE帶了的開發(fā)效率和優(yōu)勢,JSP會是非常有效的入門方式。JSP編譯器指引與指令元件有五種型態(tài).在JSP1.0之后,大部分的JSP是包含在以作為結束的單一標簽里.新的JSP1.1規(guī)格已經(jīng)發(fā)表了,它同時也與XML相容。五種JSP的編譯器指引如下所示:1.編譯器指引2.預定義3.運算式4.程序代碼5.注解JSP頁面除了比普通HTML頁面多一些Java代碼外,兩者具有基本相同的結構。Java代碼是通過符號加入到HTML代碼中間的,在這個字符串的前面和后面都是一些通過HTML代碼輸出的文本。首先是JSP指令,標簽為。它描述的是頁面的基本信息,如所使用的語言、是否維持會話狀態(tài)、是否使用緩沖等。JSP指令由結束。JSP頁面中JAVA語言是唯一被支持的語言。接下來的是JSP聲明,標簽為。JSP聲明可以看成是定義類這一層次的變量和方法的地方。JSP聲明由結束。位于之間的代碼塊是描述JSP頁面處理邏輯的Java代碼。最后,位于之間的代碼稱為JSP表達式,JSP表達式提供了一種將JSP生成的數(shù)值嵌入HTML頁面的簡單方法。JSP程序要能正常執(zhí)行,除了必須安裝支撐JSP解釋引擎的服務器軟件外,還需要JDK來做最后程序編譯的操作。當一個JSP程序在客戶端被請求執(zhí)行時,服務器端會將JSP程序通過JSP引擎自動轉(zhuǎn)化為相對應的servlet,這servlet程序會被JDK的JAVA虛擬機編譯成可執(zhí)行文件,在服務器端執(zhí)行,并將執(zhí)行結果通過servlet返回給客戶端。JSP程序的編譯操作只會被執(zhí)行一次,客戶端訪問相同的JSP,之前被編譯好的servlet再次被服務器端使用,這樣JSP程序的執(zhí)行效率變的更高。如圖1.1所示,可以更清楚的了解JSP的執(zhí)行與編譯方式:圖2.1 JSP編譯與執(zhí)行方式2.2.2 JSP的九大隱式對象簡介JSP的9大隱式對象,為我們操縱數(shù)據(jù)提供了極大的方便。在同一頁面之間的數(shù)據(jù)訪問,不同頁面之間的數(shù)據(jù)共享。(1) request對象:通過對用戶提交的信息進行封裝,封裝的信息可以通過該對象的相應方法進行訪問和獲取,該對象實現(xiàn)HttpServletRequest的接口。(2) response對象:當服務器端收到客戶端的請求信息,該對象對請求信息進行動態(tài)響應,并客戶端發(fā)送響應數(shù)據(jù),該對象實現(xiàn)HttpServletResponse的接口。(3) session對象:session對象在第一個JSP頁面被訪問時由服務器自動創(chuàng)建,完成會話期管理??蛻粼L問頁面,開啟連接服務器,客戶關閉頁面,斷開服務器連接,這個過程稱為會話??蛻粼L問一個服務器時,服務器端必須知道這個用戶是否是同一用戶,這時就必須用到session對象。這樣可以避免服務器向同一用戶不停的發(fā)送信息,減輕服務器壓力。當用戶斷開連接,重新連接服務器時,產(chǎn)生一個新的session對象。(4) application對象:application對象相當于服務器中的一個全局變量,在同一個網(wǎng)站不同的頁面之前的訪問時,application對象所存取的信息都是相同的。在服務器關閉之前,所有的用戶都共享這個application對象。(5) out對象:out對象用于在JSP頁面輸出,客戶端獲取服顯示務器端返回的信息。(6) Page對象:Page對象只存在于當前頁面,在頁面的關閉時,Page對象死亡。在當前頁面可以調(diào)用關鍵字this,實際上Page對象是當前頁面轉(zhuǎn)換后的Servlet類實例。(7) Config對象:實現(xiàn)ServletConfig 的接口,該對象主要是對當前JSP頁面信息進行配置。常用的方法有getInitParameter(String paramNarne) 及getInitParameternarnes() 等方法。在程序開發(fā)當中,JSP頁面信息是默認的,一般不需要配置。(8) Exception對象:實現(xiàn)java.lang.Throwable的接口,只有當頁面是錯誤處理頁面,Exception對象存儲頁面的錯誤和異常信息。當page的isErrorPage屬性為true時,該對象才可以使用。常用的方法有getMessage()獲取信息和printStackTrace()打印信息等。(9) pageContext對象:javax.servlet.jsp.PageContext的實例,該對象代表該JSP頁面上下文,使用該對象可以訪問頁面中的共享數(shù)據(jù)。常用的方法有getServletContext()和getServletConfig()等。2.3 Mysql2.3.1 Mysql的優(yōu)點MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。而2009年,SUN又被Oracle收購.Mysql已停止更新和維護,前景不是很好.目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。Mysql體積小,運行的速度很快,占用的資源小,維護的成本也很低。作為一個開源的數(shù)據(jù)庫,Mysql還是很有市場地位。2.3.2 Mysql的缺點與其他的大型數(shù)據(jù)庫例如Oracle、DB2、SQL Server等相比,MySQL還是存在著不足,在百萬級訪問上面還是能力稍弱,功能也不完善。但是作為一款開源的數(shù)據(jù)庫,其在市場上還是很受歡迎。對于中小規(guī)模的數(shù)據(jù)處理,MySQL還是能夠滿足一定的市場需求。2.4 MVC模式MVC是Model View Controller的縮寫,分別代表程序中的業(yè)務邏輯、視圖顯示、控制器。一種軟件設計典范,用于組織代碼用一種業(yè)務邏輯和數(shù)據(jù)顯示分離的方法,這個方法的假設前提是如果業(yè)務邏輯被聚集到一個部件里面,而且界面和用戶圍繞數(shù)據(jù)的交互能被改進和個性化定制而不需要重新編寫業(yè)務邏輯MVC被獨特的發(fā)展起來用于映射傳統(tǒng)的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。VC開始是存在于Desktop程序中的,M是指數(shù)據(jù)模型,V是指用戶界面,C則是控制器,MVC模式的使用主要是使數(shù)據(jù)層和用戶界面相分開??刂破魇怯脕砜刂茢?shù)據(jù)層和用戶界面層的同步。模型表示企業(yè)數(shù)據(jù)和業(yè)務規(guī)則。在MVC的三個部件中,模型擁有最多的處理任務。由于應用于模型的代碼只需寫一次就可以被多個視圖重用,所以減少了代碼的重復性。JavaBean則負責數(shù)據(jù)的處理,也就是模型(Model即M)的角色??刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求。所以當單擊Web頁面中的超鏈接和發(fā)送HTML表單時,控制器本身不輸出任何東西和做任何處理。它只是接收請求并決定調(diào)用哪個模型構件去處理請求,然后用確定用哪個視圖來顯示模型處理返回的數(shù)據(jù)。Servlet用來處理請求的事務,充當控制器(Controller即C)的角色,Servlet負責響應用戶對業(yè)務邏輯的請求并根據(jù)用戶的請求行為,決定將哪個JSP頁面發(fā)送給客戶。初始的請求由Servlet來處理,Servlet調(diào)用商業(yè)邏輯和數(shù)據(jù)處理代碼,并創(chuàng)建Bean來表示相應的結果(模型)。然后Servlet確定哪個頁面適合于表達這些特定的結果,并將請求轉(zhuǎn)發(fā)到相應的頁面(JSP頁面即為視圖),由Servlet確定哪個業(yè)務邏輯適用,應該用哪個JSP頁面相應結果(Servlet就是控制器)。3 求職招聘系統(tǒng)的需求分析本招聘求職信息網(wǎng)站分為個人用戶、企業(yè)用兩個角色,個人用戶和企業(yè)用戶之間的關系相當密切,互相進行信息查詢,層層遞進的關系,下面就分別闡述一下每個用戶的功能:(1) 個人用戶1 注冊:注冊分為個人用戶注冊和企業(yè)用戶注冊,在用戶類型中選擇用戶類型,注冊的信息分別存入兩個數(shù)據(jù)表中,并且在注冊界面有相關聯(lián)的系統(tǒng)驗證,其中包括用戶名、郵箱地址、密碼、重復密碼。2 更新詳情模塊:本模塊用于顯示已經(jīng)登陸的用戶的詳細信息,用戶通過這個模塊可以了解到自己已經(jīng)上傳的個人基本信息,并且可以通過再次編輯進行更新個人基本信息,這樣可以實時的修改自己的基本資料,方便快捷,靈活度很高。3 更新簡歷模塊:本模塊是用來更新自己的個人簡歷信息,可以上傳自己的個人簡歷,而且沒有格式限制,任何格式皆可。4 查看招聘信息模塊:本模塊是對招聘信息進行查詢。在本模塊你可以查看到最新的招聘信息,方便了用戶了解企業(yè)動態(tài),支持在線應聘。(2) 企業(yè)用戶1 企業(yè)用戶是本系統(tǒng)中另一個比較重要的用戶,該用戶可以進行一系列的招聘活動,主要的功能有注冊、新建招聘信息、使招聘信息過期、查看應聘人員、下載應聘人員簡歷等功能。2 招聘信息模塊:本模塊用于新建招聘求職信息,通過此模塊可以將新的招聘信息添加到數(shù)據(jù)庫中。3 招聘信息模塊:本模塊用于把已經(jīng)超出招聘時間的信息刪除,從而滿足企業(yè)對特定時間需要招聘的人員的需求。4 應聘人員模塊:本模塊用于把已經(jīng)申請了本職位的人員進行整理,存入數(shù)據(jù)庫中。5 應聘者簡歷模塊:本模塊用于把申請本職位的人員簡歷自動導入到系統(tǒng)中去,并實時進行下載更新。4 求職招聘系統(tǒng)的設計方案根據(jù)上面所提出的需求分析,可以設計出相應的幾個功能模塊。下面具體設計本系統(tǒng)的解決方案。4.1 求職招聘系統(tǒng)的系統(tǒng)流程圖4.1展示了該系統(tǒng)所有功能模塊之間的邏輯關系。本系統(tǒng)主要由個人用戶和企業(yè)用戶組成。個人用戶和企業(yè)用戶實現(xiàn)實時同步,個人用戶更新信息,企業(yè)用戶查看應聘信息同步跟新,各個功能之間存在依賴關系。圖4.1 系統(tǒng)功能模塊關系圖4.2 求職招聘系統(tǒng)的數(shù)據(jù)庫的設計前面已經(jīng)詳細分析了本系統(tǒng)所要的功能和系統(tǒng)流程,下面開始設計本系統(tǒng)的數(shù)據(jù)庫。本招聘網(wǎng)站系統(tǒng)使用MySQL開源數(shù)據(jù)庫進行開發(fā),通過對實際功能需求的詳細研究,對表字段、主鍵的設置、數(shù)據(jù)字段的類型做了嚴格細致的分析,決定將每個類別的信息均獨自建立一個表,這樣設計減少了數(shù)據(jù)庫中表由于字段過多而導致過于復雜,因而得出了這套數(shù)據(jù)庫建立方案9。用戶的需求具體體現(xiàn)在簡歷的查詢、更新、保存和刪除,這就要求數(shù)據(jù)庫結構能充分滿足實際功能需求。收集基本數(shù)據(jù)、分析數(shù)據(jù)結構以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)設計,為后面的具體軟件系統(tǒng)設計打下基礎。在仔細分析求職招聘系統(tǒng)需要的基礎上,針對需求,設計如下所示的表:表4.1數(shù)據(jù)表表名功能說明business保存行業(yè)信息。company記錄公司的信息。education 求職者受教育的信息。jobexpe記錄工作經(jīng)驗信息。jobhunter記錄應聘者信息。Business表記錄行業(yè)信息,busId記錄行業(yè)的ID號,并且是唯一的。busName記錄行業(yè)名稱。busIntro記錄行業(yè)簡介。該表主要作用于用戶查詢工作信息時,提供行業(yè)信息查詢。該表字段如表4.2:表4.2 business信息表表名表(business)列名數(shù)據(jù)類型(精度范圍)空/非空約束條件busIdint(11)非空PRIMARY KEYbusNamevarchar(20)非空busIntrovarchar(200)非空Company表記錄企業(yè)用戶注冊后,進行公司信息的存儲。comId記錄公司的ID,由數(shù)據(jù)庫自動生成。comName記錄公司名稱,comProperty記錄地址,comGuimo 記錄規(guī)模,ccomFund注冊資金,comIntro公司簡介,comCity公司所在城市,在comRegist,jsp頁面獲取注冊信息。該表字段如表4.3:表4.3company信息表表名表(company)列名數(shù)據(jù)類型(精度范圍)空/非空約束條件comId int(11)非空NOT NULLcomName varchar(200)非空comPropertyvarchar(200)非空comGuimo int(200)comFund doublecomIntro varchar(200)comCity varchar(20)Education表主要存儲用戶的學歷,畢業(yè)院校,教育經(jīng)歷。在數(shù)據(jù)庫中,eduId由數(shù)據(jù)庫自動生成,cjhName默認有四條數(shù)據(jù):小學,中學,大專,本科。字段如下表4.4:表4.4 education 信息表表名表(education )列名數(shù)據(jù)類型(精度范圍)空/非空約束條件eduId int(11)非空NOT NULLcjhName varchar(20)非空NOT NULeduDescribe varchar(200)非空Jobexpe記錄工作信息。jhId記錄工作需求數(shù),jeId記錄工作ID,jhSex記錄工作需求者的性別,jhBirth記錄年齡限制,jobContent記錄工作介紹。在searchJob.jsp提交查詢信息后,顯示jobexpe表的信息。表字段如下表4.5:表4.5 jobexpe信息表表名表(jobexpe )列名數(shù)據(jù)類型(精度范圍)空/非空約束條件jhId int(11)非空FOREIGN KEY jeId int(11) 非空PRIMARY KEYjhSexvarchar(20)非空jhBirth varchar(20)jobContent varchar(20)Jobhunter記錄的是用戶簡歷信息。manId是用戶ID,由數(shù)據(jù)庫自動生成。manName記錄用戶姓名,manSex用戶性別,manBirth用戶出生年月,manEmail用戶聯(lián)系郵箱。該表字段如下表4.6:表4.6 jobhunter信息表表名表(jobhunter )列名數(shù)據(jù)類型(精度范圍)空/非空約束條件manId int(11)非空FOREIGN KEY manName int(11) 非空PRIMARYKEYmanSex varchar(20)非空manBirth varchar(20)manEmail varchar(20)4.3 求職招聘系統(tǒng)的MVC模式的設計前面已經(jīng)介紹過MVC模式的結構和優(yōu)點了,下面開始設計本系統(tǒng)的三層架構,即數(shù)據(jù)層、業(yè)務邏輯層和表示層。4.3.1 求職招聘系統(tǒng)的數(shù)據(jù)層設計為了實現(xiàn)MVC模式的設計思想,將數(shù)據(jù)層、業(yè)務邏輯層和表示層分離,將不同的數(shù)據(jù)庫查詢分開。連接數(shù)據(jù)庫的類為DBHelper:連接數(shù)據(jù)庫:public static Connection getConnection(String driver, String url,String user, String password) throws Exception / 加載驅(qū)動Class.forName(driver);/ 返回連接return DriverManager.getConnection(url, user, password);public static Connection getConn() throws Exception String driver = readConfig(driver);String url = readConfig(url);String user = readConfig(user);String password = readConfig(password);return getConnection(driver, url, user, password);4.3.2 求職招聘系統(tǒng)的應用層設計對于管理數(shù)據(jù)庫來說數(shù)據(jù)層已經(jīng)足夠了,但是要處理更復雜的商務規(guī)則,或者需要更加面向?qū)ο蟮姆椒▉碓L問數(shù)據(jù)庫,這時候,數(shù)據(jù)層只能提供基本功能,而不能提供描述對象與其他對象之間關系的屬性。因此,需要創(chuàng)建另一些類來提供這些功能,并且把商務邏輯層與數(shù)據(jù)層分開。應用層是基于數(shù)據(jù)層之上的,并且有提供實體的完整的面向?qū)ο蟮拿枋龅念悾灿胁僮魉鼈兊姆椒?。它能隱藏數(shù)據(jù)層的詳細信息,并能防止直接訪問被保護的記錄。本系統(tǒng)的應用層可以分為實體類和Servlet類:實體類主要提供JAVABEAN,Servlet類提供業(yè)務邏輯,以下均為示例。Business類,該類定義了與行業(yè)各種數(shù)據(jù),如行業(yè)名稱,行業(yè)介紹,行業(yè)編號。下面列出該類中的方法的定義和描述: public int getBusId() return busId;,獲取行業(yè)編號public void setBusId(int busId) this.busId = busId;,設置行業(yè)編號public String getBusName() return busName;,獲取行業(yè)名稱public void setBusName(String busName) this.busName = busName;,設置行業(yè)名稱public String getBusIntro() return busIntro;,獲取行業(yè)介紹public void setBusIntro(String busIntro)this.busIntro = busIntro;,設置行業(yè)介紹Company類,該類定義了與招聘公司信息各種數(shù)據(jù)庫,例如公司名稱,編號等。下面列出該類中的部分方法的定義和描述: public String getComPost() return comPost;public void setComPost(String comPost) Post = comPost;public int getRoleid() return roleid;public void setRoleid(int roleid) this.roleid = roleid;AddbusinessServlet類,定義與行業(yè)相關信息的數(shù)據(jù)庫操作,如添加,修改,刪除等。利用Servlet相關功能,post和get方法。protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException / TODO Auto-generated method stubString busName=request.getParameter(text);String busIntro=request.getParameter(textarea);BusinessDaoImpl dao=new BusinessDaoImpl();Business business=new Business();business.setBusIntro(busIntro);business.setBusName(busName);Boolean flag=dao.addBusiness(business);String mes=添加成功!;if(flag=true)request.getSession().setAttribute(mes, mes);request.getRequestDispatcher(admin/jsp/addbusinessAdmin.jsp).forward(request, response);4.3.3 網(wǎng)上書店系統(tǒng)的表示層設計所謂的表示層,是指提供給用戶所使用的界面及各種功能函數(shù)。Index.jsp:首頁面,首頁面實現(xiàn)企業(yè)注冊,個人注冊,用戶登陸等連接,如4.9圖所示圖4.9 首頁面addbusinessAdmin.jsp:企業(yè)用戶注冊頁面,填寫企業(yè)注冊信息,如4.10圖所示圖4.10 企業(yè)注冊頁面indexAdmin.jsp:個人登陸界面,用戶名,密碼,如圖4.11所示圖4.11 個人用戶登陸界面4.4 本系統(tǒng)三層模式中三層之間的交互舉例上面4.3節(jié)中闡述了本系統(tǒng)的三層模式中數(shù)據(jù)層、業(yè)務處理層和表示層的實現(xiàn),但只是列出了數(shù)據(jù)層和應用層所涉及的類和類中的方法,并對它們進行了簡單的描述,至于表示層也只是列出了它需要的一些頁面及這些頁面的描述。例如用戶修改密碼。首先是表示層changePassword.jsp,代碼如下:修改密碼用戶名 姓名 新密碼 輸入錯誤,8-20位字母數(shù)字確認新密碼 確認密碼錯誤 其次是業(yè)務處理層,修改密碼的Servlet為 changePasswordServlet,在表示層提交信息后交到Servlet中的doPost()方法執(zhí)行,代碼如下:protected void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException request.setCharacterEncoding(utf-8);String jhPhone = request.getParameter(jhPhone);String jhName = request.getParameter(jhName);String jhPassword = request.getParameter(jhPassword);JobHunterDao dao = new JobHunterDaoImpl();dao.updatePwd(jhPassword, jhPhone, jhName);System.out.println(修改成功);在應用層中調(diào)用了JobHunterDaoImpl類中updatePwd()方法的進行數(shù)據(jù)層操作,數(shù)據(jù)層代碼如下:public boolean updatePwd(String jhPassword, String jhPhone, String jhName) String sql = update jobhunter jhPassword=? where jhPhone=? And jhName=?; Object param = jhPassword, jhPhone, jhName ;int i = DBHelper.update(sql, param);if (i 0)return true;return false;上面這個例子,從表示層到應用層,再到數(shù)據(jù)層,完全體現(xiàn)了MVC模式的設計思想,表示層包含表示代碼、數(shù)據(jù)驗證、用戶交互圖形界面。該層提供用戶在客戶端輸入數(shù)據(jù),同過圖形界面自帶的數(shù)據(jù)檢驗功能,如用戶輸入內(nèi)容的合法性等。業(yè)務邏輯層主要是實現(xiàn)數(shù)據(jù)之間的依賴關系,如專業(yè)算法、行業(yè)信息等等。該層用于指定數(shù)據(jù)之間的規(guī)則,溝通數(shù)據(jù)層和顯示層。通過業(yè)務邏輯層,從數(shù)據(jù)層獲取數(shù)據(jù)傳遞到表示層,或者是從表示層獲取用戶提交的信息存儲到數(shù)據(jù)層。為表示層提供服務,為數(shù)據(jù)層提供鏈接。數(shù)據(jù)處理層主要包括數(shù)據(jù)存儲代碼和數(shù)據(jù)讀取代碼。數(shù)據(jù)持久層主要包括數(shù)據(jù)存取服務,負責與數(shù)據(jù)庫管理系統(tǒng)(如數(shù)據(jù)庫)進行訪問,為數(shù)據(jù)訪問提供方法。 這樣做的好處是,只要下一層向上一層提供的接口不便,下一層具體的實現(xiàn)內(nèi)容的改變是不會影響到上一層的實現(xiàn)的,所以這樣便于代碼的維護和軟件功能的擴展。5 結束語通過本次畢業(yè)設計的制作和開發(fā),通過所學知識的有機應用,在有限的時間和更加有限的知識儲備前提下,通過對數(shù)據(jù)庫的簡單增刪改查實現(xiàn)了招聘網(wǎng)站最最基本的功能。但與大型商業(yè)招聘網(wǎng)站相比,本系統(tǒng)在實用性上存在著無法回避的問題。希望在今后當中對本系統(tǒng)進行完善和改進。總之,此次畢業(yè)設計對我可謂影響深遠、意義重大,可以說在畢業(yè)設計的過程中,是我整個大學生涯中過的最緊張的時期,但也是我自從上大學來感到最充實的時期,也是我學的知識和經(jīng)驗最多的時期。在這個過程中我主要學會堅持,還要有耐心和恒心。在這個行業(yè)中,不僅鍛煉人的思考方式,還鍛煉著人的性格。我相信在老師的嚴格要求下,在以后的社會實踐中定能不斷的提升自己。16參考文獻1 梁平,彭林園我國人力資源網(wǎng)絡招聘的文獻述評J科技信息:2011年02期2 熊軍人才招聘網(wǎng)站的優(yōu)勢、不足及改進措施J人才資源開發(fā)2006年05期3 Yuen J S P, Thng

溫馨提示

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

最新文檔

評論

0/150

提交評論