版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
PAGE36PAGE題目:員工信息查詢與更新系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)目錄摘要 4一、概述 5(一)課題的背景與意義 5(二)概念與內(nèi)容 5(三)開發(fā)方法 6二、系統(tǒng)分析 10(一)可行性分析 10(二) 務(wù)需求分析 10三、系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 11(一)數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn) 11(二)員工信息查詢與更新系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn) 16(三)員工信息查詢與更新系統(tǒng)前臺(tái)頁面設(shè)計(jì)與實(shí)現(xiàn) 18(四)員工信息查詢與更新系統(tǒng)后臺(tái)功能設(shè)計(jì)與實(shí)現(xiàn) 24四、系統(tǒng)測試 32(一)系統(tǒng)測試的必要性 32(二)系統(tǒng)測試的方案 32(三)系統(tǒng)測試的結(jié)果及改進(jìn) 33結(jié)論 33參考文獻(xiàn) 35致謝 36摘要21世紀(jì)是經(jīng)濟(jì)飛速發(fā)展的時(shí)代,許多企業(yè)如雨后春筍般涌現(xiàn),其中互聯(lián)網(wǎng)行業(yè)發(fā)展迅速,為現(xiàn)代的生活和工作都提供了便利條件,在企業(yè)快速發(fā)展的背后,就是人員的頻繁流動(dòng),人事信息管理成為企業(yè)關(guān)注的焦點(diǎn)。對(duì)于所有行業(yè)的企業(yè)管理來說,人事信息管理都是非常重要的一方面。人事信息管理的內(nèi)容比較復(fù)雜,涉及所有的人員及部門并且需要有條理的進(jìn)行管理。通過手動(dòng)管理人事信息難免會(huì)有出現(xiàn)失誤的時(shí)候,如何提高人事信息管理水平就成為現(xiàn)在每一所企業(yè)都要面臨的一個(gè)重要問題,如何解決這一問題是個(gè)重要課題,如果可以在計(jì)算機(jī)上使用人事信息管理系統(tǒng)來實(shí)現(xiàn)這些操作那么就可以大大提高工作人員的工作效率并且減少工作中可能出現(xiàn)的失誤,這樣就可以減少企業(yè)的人力成本,提高工作效率。關(guān)鍵詞:人事信息管理;高效;規(guī)范
一、概述(一)課題的背景與意義隨著我國經(jīng)濟(jì)的蓬勃發(fā)展,許多企業(yè)猶如雨后春筍般出現(xiàn)在祖國的神州大地上,這些企業(yè)是我國經(jīng)濟(jì)和社會(huì)發(fā)展的主要力量,并且其所扮演的角色日趨重要,人力資源是企業(yè)管理中的重要組成部分。高效的人力資源管理工作能夠有效提升企業(yè)的工作效率和經(jīng)濟(jì)效益,在當(dāng)前市場經(jīng)濟(jì)下企業(yè)面臨著嚴(yán)峻的挑戰(zhàn),企業(yè)必須做好人力資源管理工作,創(chuàng)新人力資源管理手段,對(duì)人力資源進(jìn)行科學(xué)、合理的配置,提升企業(yè)的核心競爭力,進(jìn)而讓企業(yè)在市場競爭中占據(jù)更加有力的地位?,F(xiàn)在正是我國互聯(lián)網(wǎng)蓬勃發(fā)展的時(shí)刻,企業(yè)管理也應(yīng)實(shí)現(xiàn)現(xiàn)代化管理與互聯(lián)網(wǎng)接軌,將企業(yè)的人事信息管理工作通過人事信息管理系統(tǒng)來實(shí)現(xiàn),人事信息管理系統(tǒng)比手工管理有許多的優(yōu)點(diǎn)可提高管理者的工作效率,降低企業(yè)的人力成本,如:容易保存,成本低,不容易出錯(cuò),方便查找,方便更新等?,F(xiàn)在軟件行業(yè)在研發(fā)人事管理系統(tǒng)過程中,并不缺少先進(jìn)的人事管理理念,然而,卻非常缺乏如何把先進(jìn)的管理理念轉(zhuǎn)化成適合企業(yè)特征的技術(shù)手段、途徑,沒有形成一套成熟、穩(wěn)定的研發(fā)人事系統(tǒng)的實(shí)踐及工作流程,很難合并成為系統(tǒng)化的人事管理信息系統(tǒng),電子化程度不高,管理效率低也就很難避免。系統(tǒng)數(shù)據(jù)無法進(jìn)行共享,信息難以提交給決策層?,F(xiàn)階段人事管理系統(tǒng)主要涉及檔案管理,交互性較差,因此,創(chuàng)建一套信息共享的人事數(shù)據(jù)庫管理系統(tǒng)勢在必行,所以我選擇了員工信息查詢與更新系統(tǒng)課題。(二)概念與內(nèi)容人事管理是現(xiàn)代企業(yè)管理的重要環(huán)節(jié),蘊(yùn)含了現(xiàn)代企業(yè)中非常重要的競爭力。企業(yè)資源管理計(jì)劃(EnterpriseResourcesPlannig,簡寫為ERP)中人事管理方面系統(tǒng)的研發(fā),就是要通過系統(tǒng)的建設(shè),對(duì)人事管理中相關(guān)業(yè)務(wù)流程進(jìn)行梳理和完善,依據(jù)系統(tǒng)、全面、準(zhǔn)確、及時(shí)的數(shù)據(jù)支撐和其綜合分析功能,開展企業(yè)人事優(yōu)化管理,全面發(fā)揮人力資源作為第一生產(chǎn)力的功效。每個(gè)員工無論職位高低,企業(yè)都需要收集、整理、更新、調(diào)整他們的職位、實(shí)力、工資等信息。人事信息管理系統(tǒng)有統(tǒng)一、規(guī)范、合理、實(shí)用的服務(wù),使用人事信息管理系統(tǒng)就可以高效、嚴(yán)謹(jǐn)、科學(xué)的管理人事信息,人事信息管理系統(tǒng)對(duì)于使用者來講包括員工基本信息查詢和管理員維護(hù)兩大模塊,員工基本信息查詢模塊是指員工用戶輸入自己的賬號(hào)密碼登錄系統(tǒng),可進(jìn)行基礎(chǔ)信息查詢、業(yè)務(wù)信息查詢、修改密碼的操作。管理員維護(hù)模塊是管理員通過輸入管理員賬號(hào)密碼登錄系統(tǒng),可進(jìn)行所有員工信息的查詢,添加,更新的操作。(三)開發(fā)方法1.開發(fā)語言PHP及開發(fā)工具PHP,一個(gè)嵌套的縮寫名稱,是英文超級(jí)文本預(yù)處理語言(PHP:HypertextPreprocessor)的縮寫。PHP是一種HTML內(nèi)嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語言,語言的風(fēng)格有類似于C語言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運(yùn)用,PHP獨(dú)特的語法混合了C、Java、Perl以及PHP自創(chuàng)新的語法。它可以比CGI或者Perl更快速的執(zhí)行動(dòng)態(tài)網(wǎng)頁。PHP最初是由勒多夫在1995年開始開發(fā)的;現(xiàn)在PHP的標(biāo)準(zhǔn)由thePHPGroup維護(hù)。PHP以PHPLicense作為許可協(xié)議,不過因?yàn)檫@個(gè)協(xié)議限制了PHP名稱的使用,所以和開放源代碼許可協(xié)議GPL不兼容。PHP語言優(yōu)勢:安全性高:PHP是開源軟件,每個(gè)人都可以看到所有的PHP的源代碼,程序代碼與Apache編譯在一起的方式讓它的安全設(shè)定更靈活。跨平臺(tái)特性:PHP幾乎支持所有的操作系統(tǒng)平臺(tái),平且支持Apache、IIS等多種Web服務(wù)器。支持廣泛的數(shù)據(jù)庫:可操作主流與非主流的數(shù)據(jù)庫。易學(xué)性:PHP嵌入在HTML語言中,以腳本語言為主,內(nèi)置豐富函數(shù),語法簡單、書寫容易、方便學(xué)習(xí)掌握。執(zhí)行速度快:占用資源少,代碼執(zhí)行速度快。免費(fèi):在流行的企業(yè)應(yīng)用LAMP平臺(tái)中,Linux、Apache、MySQL、PHP都是免費(fèi)軟件。模塊化:實(shí)現(xiàn)程序邏輯與用戶界面分離。支持面向?qū)ο笈c過程:支持面向?qū)ο蠛瓦^程兩種開發(fā)風(fēng)格,并可向下兼容。內(nèi)嵌Zend加速引擎,性能穩(wěn)定快速。PHP開發(fā)工具:集成開發(fā)環(huán)境是一種集成了軟件開發(fā)過程中所需主要工具的集成開發(fā)環(huán)境,其功能包括但不僅限于代碼高亮、代碼補(bǔ)全、調(diào)試、構(gòu)建、版本控制等。一些常見的PHPIDEs如下:ZendStudio:商業(yè)版,Zend官方出品,基于eclipseEclipsewithPDT:免費(fèi)Coda:商業(yè)版,針對(duì)Mac用戶NetBeans:免費(fèi),功能強(qiáng)大PHPStorm:商業(yè)版AptanaStudio:免費(fèi)PhpEd:商業(yè)版KomodoIDE/Edit:IDE為商業(yè)版,Edit可免費(fèi)使用AdobeDreamweaver:商業(yè)版除去集成開發(fā)環(huán)境,具備代碼高亮功能的常見文本編輯器因其輕巧靈活也常被選作開發(fā)工具,例如:Notepad++、Editplus、SublimeText、Everedit(國人開發(fā))等等。我使用的是SublimeText,SublimeText具有漂亮的用戶界面和強(qiáng)大的功能,例如代碼縮略圖,Python的插件,代碼段等。還可自定義鍵綁定,菜單和工具欄。SublimeText的主要功能包括:拼寫檢查,書簽,完整的PythonAPI,Goto功能,即時(shí)項(xiàng)目切換,多選擇,多窗口等等。SublimeText是一個(gè)跨平臺(tái)的編輯器,同時(shí)支持Windows、Linux、MacOSX等操作系統(tǒng)。2.開發(fā)框架及前端框架ThinkPHP是為了簡化企業(yè)級(jí)應(yīng)用開發(fā)和敏捷WEB應(yīng)用開發(fā)而誕生的。最早誕生于2006年初,2007年元旦正式更名為ThinkPHP,并且遵循Apache2開源協(xié)議發(fā)布。ThinkPHP從誕生以來一直秉承簡潔實(shí)用的設(shè)計(jì)原則,在保持出色的性能和至簡的代碼的同時(shí),也注重易用性。并且擁有眾多原創(chuàng)功能和特性,在社區(qū)團(tuán)隊(duì)的積極參與下,在易用性、擴(kuò)展性和性能方面不斷優(yōu)化和改進(jìn)。ThinkPHP是一個(gè)快速、兼容而且簡單的輕量級(jí)國產(chǎn)PHP開發(fā)框架,誕生于2006年初,原名FCS,2007年元旦正式更名為ThinkPHP,遵循Apache2開源協(xié)議發(fā)布,從Struts結(jié)構(gòu)移植過來并做了改進(jìn)和完善,同時(shí)也借鑒了國外很多優(yōu)秀的框架和模式,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu)和MVC模式,融合了Struts的思想和TagLib(標(biāo)簽庫)、RoR的ORM映射和ActiveRecord模式。Bootstrap是Twitter推出的全球最受歡迎的前端組件庫,用于開發(fā)響應(yīng)式布局、移動(dòng)設(shè)備優(yōu)先的WEB項(xiàng)目,它由Twitter的設(shè)計(jì)師MarkOtto和JacobThornton合作開發(fā),是一個(gè)CSS/HTML框架Bootstrap是一套用于HTML、CSS和JS開發(fā)的開源工具集。利用我們提供的Sass變量和大量mixin、響應(yīng)式柵格系統(tǒng)、可擴(kuò)展的預(yù)制組件、基于jQuery的強(qiáng)大的插件系統(tǒng)。3.數(shù)據(jù)庫mysql及管理工具M(jìn)ySQL是WEB應(yīng)用方面最好的RDBMS(RelationalDatabaseManagementSystem:關(guān)系數(shù)據(jù)庫管理系統(tǒng))之一,由瑞典MySQLAB公司開發(fā),目前屬于Oracle公司。MySQL軟件提供了一個(gè)非??焖伲嗑€程,多用戶,強(qiáng)大的SQL(結(jié)構(gòu)化查詢語言)數(shù)據(jù)庫服務(wù)器。MySQLServer適用于關(guān)鍵任務(wù),重載生產(chǎn)系統(tǒng)以及嵌入大規(guī)模部署的軟件。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL是開源的,所以你不需要支付額外的費(fèi)用。MySQL支持大型的數(shù)據(jù)庫??梢蕴幚頁碛猩锨f條記錄的大型數(shù)據(jù)庫。MySQL使用標(biāo)準(zhǔn)的SQL數(shù)據(jù)語言形式。MySQL可以運(yùn)行于多個(gè)系統(tǒng)上,并且支持多種語言。這些編程語言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。MySQL對(duì)PHP有很好的支持,PHP是目前最流行的Web開發(fā)語言。MySQL支持大型數(shù)據(jù)庫,支持5000萬條記錄的數(shù)據(jù)倉庫,32位系統(tǒng)表文件最大可支持4GB,64位系統(tǒng)支持最大的表文件為8TB。MySQL是可以定制的,采用了GPL協(xié)議,你可以修改源碼來開發(fā)自己的MySQL系統(tǒng)。SQLyog是一款功能最強(qiáng)大的MySQL管理工具,它綜合了MySQL工作臺(tái)、phpMyAdmin和其他MySQL前端及MySQLGUI工具的特點(diǎn)。該款應(yīng)用程序可以同時(shí)連接任意數(shù)量級(jí)的MySQL服務(wù)器,用于測試和生產(chǎn)。所有流程僅需登錄MySQLroot以收集數(shù)據(jù),用戶無需安裝在MySQL服務(wù)器上。4.開發(fā)系統(tǒng)環(huán)境PHP開發(fā)環(huán)境涉及操作系統(tǒng)、Web服務(wù)器和數(shù)據(jù)庫。LNMP代表的就是:Linux系統(tǒng)下Nginx+MySQL+PHP這種網(wǎng)站服務(wù)器架構(gòu)。Linux是一類Unix計(jì)算機(jī)操作系統(tǒng)的統(tǒng)稱,是目前最流行的免費(fèi)操作系統(tǒng)。代表版本有:debian、centos、ubuntu、fedora、gentoo等。Linux是現(xiàn)在應(yīng)用十分廣泛的開源操作系統(tǒng),由于Linux的高穩(wěn)定性及其他優(yōu)點(diǎn),世界上大部分的Web服務(wù)器都架設(shè)在該系統(tǒng)上。Nginx是一個(gè)高性能的Web和反向代理服務(wù)器,它具有有很多非常優(yōu)越的特性:作為Web服務(wù)器:相比Apache,Nginx使用更少的資源,支持更多的并發(fā)連接,體現(xiàn)更高的效率,這點(diǎn)使Nginx尤其受到虛擬主機(jī)提供商的歡迎。能夠支持高達(dá)50,000個(gè)并發(fā)連接數(shù)的響應(yīng),感謝Nginx為我們選擇了epollandkqueue作為開發(fā)模型.作為負(fù)載均衡服務(wù)器:Nginx既可以在內(nèi)部直接支持Rails和PHP,也可以支持作為HTTP代理服務(wù)器對(duì)外進(jìn)行服務(wù)。Nginx用C編寫,不論是系統(tǒng)資源開銷還是CPU使用效率都比Perlbal要好的多。作為郵件代理服務(wù)器:Nginx同時(shí)也是一個(gè)非常優(yōu)秀的郵件代理服務(wù)器(最早開發(fā)這個(gè)產(chǎn)品的目的之一也是作為郵件代理服務(wù)器),Last.fm描述了成功并且美妙的使用經(jīng)驗(yàn)。Nginx安裝非常的簡單,配置文件非常簡潔(還能夠支持perl語法),Bugs非常少的服務(wù)器:Nginx啟動(dòng)特別容易,并且?guī)缀蹩梢宰龅?*24不間斷運(yùn)行,即使運(yùn)行數(shù)個(gè)月也不需要重新啟動(dòng)。你還能夠在不間斷服務(wù)的情況下進(jìn)行軟件版本的升級(jí)。MySQL是一個(gè)開放源碼的小型關(guān)系數(shù)據(jù)庫管理系統(tǒng),由于其體積小、速度快、總體成本低等優(yōu)點(diǎn),目前被廣泛應(yīng)用于Internet的中小型網(wǎng)站中。MySQL是一個(gè)真正的多用戶、多線程的SQL數(shù)據(jù)庫服務(wù)器。由于MySQL源代碼的開放性和穩(wěn)定性,并且可與PHP完美結(jié)合,很多站點(diǎn)使用它們進(jìn)行Web開發(fā)。二系統(tǒng)分析(一)可行性分析技術(shù)可行性分析:我們開發(fā)的網(wǎng)頁程序?yàn)镻HP+MYSQL,BOOTSTRAP網(wǎng)頁布局,PHP+MYSQL是目前最流行的WEB開發(fā)模式,技術(shù)成熟,它們是開源的并且完全免費(fèi)的,使用時(shí)不需要支付任何費(fèi)用,前端頁面采用BOOTSTRAP框架搭建頁面,快速美觀,而且會(huì)使用js+jq技術(shù)使頁面更加的豐富、生動(dòng)。服務(wù)器可行性分析:服務(wù)器我們選用阿里云的LINUX服務(wù)器,自己配置NGINX,MYSQL,PHP,搭建好運(yùn)行環(huán)境,阿里云服務(wù)器相對(duì)香港和美國的服務(wù)器更加的安全、穩(wěn)定,而且費(fèi)用也合理。安全性:系統(tǒng)安全問題主要包括用戶認(rèn)證,加密傳輸與用戶權(quán)限這兒方面,利用數(shù)字證書、HTTP協(xié)議、COM+安全管理等技術(shù),可以很好地解決這些問題。網(wǎng)站安全性措施我們采用防火墻技術(shù)和在線檢測。防火墻技術(shù),它增加了針對(duì)主機(jī)的侵檢測和防護(hù)功能,加強(qiáng)了對(duì)來自內(nèi)部攻擊防范,可以實(shí)施全方位的安全策略。也保證系統(tǒng)性能消除了結(jié)枃性瓶頸間題,提高了系統(tǒng)性能,擴(kuò)展系統(tǒng)隨系統(tǒng)擴(kuò)充提供了安全防護(hù)無限擴(kuò)充的能綜以上分析,我認(rèn)為本系統(tǒng)是可行的。務(wù)需求分析1.業(yè)務(wù)功能分析員工信息查詢與更新系統(tǒng)的主要業(yè)務(wù)是管理企業(yè)員工的檔案信息,當(dāng)企業(yè)招進(jìn)新員工時(shí)就需要在員工信息查詢與更新系統(tǒng)上增加該員工的人事信息、部門、崗位及工資待遇等相應(yīng)信息,當(dāng)企業(yè)的某員工升職時(shí)就需要在員工信息查詢與更新系統(tǒng)上調(diào)整該員工的崗位及工資等信息,當(dāng)企業(yè)的某員工離職后就需要在員工信息查詢與更新系統(tǒng)上刪除該員工相關(guān)信息,平時(shí)管理者也可以在員工信息查詢與更新系統(tǒng)上查詢員工的所有信息資料。2.頁面展示分析員工信息查詢與更新系統(tǒng)總共有13個(gè)頁面,分別是:登錄頁面,系統(tǒng)默認(rèn)頁面,員工信息列表頁面(在員工信息列表頁面可根據(jù)員工的工號(hào)、姓名、職位來查詢員工信息),增加員工信息頁面,修改員工信息頁面,部門信息列表頁面(在部門信息列表頁面可根據(jù)部門名稱來查詢部門信息),增加部門信息頁面,修改部門信息頁面,業(yè)務(wù)信息列表頁面(在業(yè)務(wù)信息列表頁面可根據(jù)業(yè)務(wù)名稱來查詢業(yè)務(wù)信息),增加業(yè)務(wù)信息頁面,修改業(yè)務(wù)信息頁面,重置密碼頁面和更新密碼頁面。3.后臺(tái)功能分析員工信息查詢與更新系統(tǒng)后臺(tái)功能有系統(tǒng)登錄,員工信息的增加、刪除、修改、查詢,部門信息的增加、刪除、修改、查詢,業(yè)務(wù)信息的增加、刪除、修改、查詢,系統(tǒng)賬號(hào)密碼的重置與更新,系統(tǒng)賬號(hào)的密碼出于安全性考慮,全部進(jìn)行MD5加密,同時(shí)登錄頁面也需要設(shè)置驗(yàn)證碼驗(yàn)證。三、系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(一)數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)1.數(shù)據(jù)庫的設(shè)計(jì)規(guī)則:數(shù)據(jù)庫的設(shè)計(jì)是系統(tǒng)開發(fā)中非常重要的一個(gè)環(huán)節(jié),設(shè)計(jì)合理的表名、字段名、字段類型等可以使我們的系統(tǒng)變得更加的強(qiáng)壯和易開發(fā)。為避免出現(xiàn)數(shù)據(jù)庫設(shè)計(jì)混亂的現(xiàn)象出現(xiàn),我們?cè)谠O(shè)計(jì)數(shù)據(jù)庫時(shí)需要遵循數(shù)據(jù)庫的設(shè)計(jì)規(guī)則。數(shù)據(jù)庫設(shè)計(jì)規(guī)則—命名規(guī)則在設(shè)計(jì)數(shù)據(jù)庫時(shí)使用到的所有名稱都需要是有意義且與系統(tǒng)實(shí)際業(yè)務(wù)相同含義的單詞或拼音,這樣方便開發(fā)人員的理解和區(qū)分,數(shù)據(jù)庫的名字應(yīng)該是整個(gè)系統(tǒng)項(xiàng)目的名稱一致,各數(shù)據(jù)表的名稱則應(yīng)該與具體存儲(chǔ)信息一致,如存儲(chǔ)員工信息的表名staff,這樣當(dāng)開發(fā)者看到表名staff時(shí)就立即明白表中存儲(chǔ)的是員工的信息,表中的字段名在起名時(shí)也應(yīng)該與實(shí)際數(shù)據(jù)相對(duì)應(yīng),方便理解和使用。數(shù)據(jù)庫設(shè)計(jì)規(guī)則—字段類型選擇在選擇字段的類型時(shí)需要注意尤其是經(jīng)常需要計(jì)算或查詢的字段,應(yīng)該盡量選擇正確數(shù)據(jù)類型的最小字段類型,盡量選擇簡單的數(shù)據(jù)類型,可以使用整型數(shù)據(jù)的字段就盡量不要使用字符類型的字段來存儲(chǔ),還需要注意避免使用null類型,需要?jiǎng)?chuàng)建索引的字段就不要設(shè)置為null類型。數(shù)據(jù)庫設(shè)計(jì)規(guī)則—存儲(chǔ)引擎選擇一般情況可以選擇MyISAM存儲(chǔ)引擎,如果需要事務(wù)支持必須使用InnoDB存儲(chǔ)引擎。MyISAM存儲(chǔ)引擎B-tree索引有一個(gè)很大的限制:參與一個(gè)索引的所有字段的長度之和不能超過1000字節(jié)。另外MyISAM數(shù)據(jù)和索引是分開,而InnoDB的數(shù)據(jù)存儲(chǔ)是按聚簇(cluster)索引有序排列的,主鍵是默認(rèn)的聚簇(cluster)索引,因此MyISAM雖然在一般情況下,查詢性能比InnoDB高,但I(xiàn)nnoDB的以主鍵為條件的查詢性能是非常高的。數(shù)據(jù)庫設(shè)計(jì)規(guī)則—表設(shè)計(jì)數(shù)據(jù)表的設(shè)計(jì)應(yīng)該遵循三大范式。第一范式:確保每列的原子性.,如果每列(或者每個(gè)屬性)都是不可再分的最小數(shù)據(jù)單元(也稱為最小的原子單元),則滿足第一范式.;(只要是關(guān)系型數(shù)據(jù)庫都滿足1NF)第二范式:如果一個(gè)關(guān)系滿足第一范式,并且除了主鍵以外的其它列,都依賴于該主鍵,則滿足第二范式.;第三范式:如果一個(gè)關(guān)系滿足第二范式,并且除了主鍵以外的其它列都不依賴于主鍵列,則滿足第三范式。2.數(shù)據(jù)庫的設(shè)計(jì):員工信息查詢與更新系統(tǒng)共需要5個(gè)數(shù)據(jù)表,分別是員工表,部門表,業(yè)務(wù)表,系統(tǒng)賬號(hào)表,角色表。員工表Staff的實(shí)現(xiàn),詳情見表1。表SEQ表格\*ARABIC1字段名字段類型備注StaffIdInt員工ID(主鍵)StaffNochar(6)員工工號(hào)StaffNamechar(10)員工姓名StaffPositionchar(20)員工職位StaffSexchar(2)員工性別StaffPhonechar(12)員工電話StaffEducationchar(20)員工教育水平StaffWageInt員工工資StaffBranchInt員工部門ID(外鍵)StaffBusinessInt員工業(yè)務(wù)ID(外鍵)StaffStatusInt員工狀態(tài)StaffOriginchar(50)員工籍貫StaffBirthdaydate員工出生日期StaffAddresschar(50)員工住址StaffNotechar(200)備注Is_delInt是否刪除AddTimedate添加時(shí)間EditTimedate更新時(shí)間部門表Branch的實(shí)現(xiàn),詳情見表2。表2字段名字段類型備注BranchIdInt部門ID(主鍵)BranchNochar(6)部門編號(hào)BranchNamechar(20)部門名稱BranchManagerint部門經(jīng)理ID(外鍵)BranchNotechar(200)備注Is_delInt是否刪除AddTimedate添加時(shí)間EditTimedate更新時(shí)間業(yè)務(wù)表Business的實(shí)現(xiàn),詳情見表3。表3字段名字段類型備注BusinessIdInt業(yè)務(wù)ID(主鍵)BusinessNochar(6)業(yè)務(wù)編號(hào)BusinessNamechar(20)業(yè)務(wù)名稱BusinessNotechar(200)備注Is_delInt是否刪除AddTimedate添加時(shí)間EditTimedate更新時(shí)間系統(tǒng)賬號(hào)表User的實(shí)現(xiàn),詳情見表4。表4字段名字段類型備注UserIdInt賬號(hào)ID(主鍵)UserNamechar(10)賬號(hào)Passwordchar(32)登錄密碼StaffIdInt員工ID(外鍵)LastLoginTimedatetime登錄時(shí)間UserNotechar(200)備注Is_delInt是否刪除AddTimedate添加時(shí)間EditTimedate更新時(shí)間角色表Role的實(shí)現(xiàn),詳情見表5。表5字段名字段類型備注RoleIdInt角色I(xiàn)D(主鍵)RoleNamechar(10)角色名稱RoleNotechar(200)備注Is_delInt是否刪除AddTimedate添加時(shí)間EditTimedate更新時(shí)間ER圖,如下圖3-1。圖3-SEQ圖\*ARABIC1ER圖3.數(shù)據(jù)庫的實(shí)現(xiàn):使用SQLyog鏈接MySQL數(shù)據(jù)庫,具體操作見圖3-2。圖3-SEQ圖\*ARABIC2輸入服務(wù)器的IP,數(shù)據(jù)庫的用戶名和密碼,遠(yuǎn)程訪問數(shù)據(jù)庫操作。創(chuàng)建數(shù)據(jù)表,具體操作見圖3-3。圖SEQ圖\*ARABIC3-3使用SQLyog工具遠(yuǎn)程操作數(shù)據(jù)庫,因?yàn)閿?shù)據(jù)表少,所以直接手動(dòng)創(chuàng)建數(shù)據(jù)表,按此方法依次創(chuàng)建好所有數(shù)據(jù)表。(二)員工信息查詢與更新系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)1.員工信息查詢與更新系統(tǒng)的業(yè)務(wù)與功能設(shè)計(jì),詳情見圖3-4。圖3-SEQ圖\*ARABIC42.員工信息查詢與更新系統(tǒng)的業(yè)務(wù)與功能實(shí)現(xiàn)在代碼實(shí)現(xiàn)中使用的是ThinkPHP框架來搭建的系統(tǒng)。ThinkPHP是一個(gè)快速、簡單的基于MVC和面向?qū)ο蟮妮p量級(jí)PHP開發(fā)框架,遵循Apache2開源協(xié)議發(fā)布,從誕生以來一直秉承簡潔實(shí)用的設(shè)計(jì)原則,在保持出色的性能和至簡的代碼的同時(shí),尤其注重開發(fā)體驗(yàn)和易用性,并且擁有眾多的原創(chuàng)功能和特性,為WEB應(yīng)用開發(fā)提供了強(qiáng)有力的支持。ORM:簡潔輕巧的ORM實(shí)現(xiàn),配合簡單的CURD以及AR模式,讓開發(fā)效率無處不在。查詢語言:內(nèi)建豐富的查詢機(jī)制,包括組合查詢、復(fù)合查詢、區(qū)間查詢、統(tǒng)計(jì)查詢、定位查詢、動(dòng)態(tài)查詢和原生查詢,讓你的數(shù)據(jù)查詢簡潔高效。擴(kuò)展機(jī)制:系統(tǒng)支持包括類庫擴(kuò)展、驅(qū)動(dòng)擴(kuò)展、應(yīng)用擴(kuò)展、模型擴(kuò)展、控制器擴(kuò)展、標(biāo)簽庫擴(kuò)展、模板引擎擴(kuò)展、Widget擴(kuò)展、行為擴(kuò)展和模式擴(kuò)展在內(nèi)的強(qiáng)大靈活的擴(kuò)展機(jī)制,讓你不再受限于核心的不足和無所適從,隨心DIY自己的框架和擴(kuò)展應(yīng)用,如下圖3-5。圖3-SEQ圖\*ARABIC5(三)員工信息查詢與更新系統(tǒng)前臺(tái)頁面設(shè)計(jì)與實(shí)現(xiàn)1.所有頁面的設(shè)計(jì)員工信息查詢與更新系統(tǒng)經(jīng)過需求分析已得出共有13個(gè)頁面。登錄頁面設(shè)計(jì)效果,如圖3-6。圖3-SEQ圖\*ARABIC6系統(tǒng)默認(rèn)頁面設(shè)計(jì)效果,如圖3-7。默認(rèn)頁面顯示員工信息查詢與更新系統(tǒng)的環(huán)境信息圖3-SEQ圖\*ARABIC7員工信息列表頁面設(shè)計(jì)效果,如圖3-8。員工信息查詢與刪除功能都在該頁面操作圖3-SEQ圖\*ARABIC8增加員工信息頁面設(shè)計(jì)效果,如圖3-9。圖3-SEQ圖\*ARABIC9修改員工信息頁面設(shè)計(jì)效果,如圖3-10。圖3-SEQ圖\*ARABIC10部門信息列表頁面設(shè)計(jì)效果,如圖3-11。部門信息查詢與刪除功能都在該頁面操作圖3-SEQ圖\*ARABIC11增加部門信息頁面設(shè)計(jì)效果,如圖3-12。圖3-SEQ圖\*ARABIC12修改部門信息頁面設(shè)計(jì)效果,如圖3-13。圖3-SEQ圖\*ARABIC13業(yè)務(wù)信息列表頁面設(shè)計(jì)效果,如圖3-14。業(yè)務(wù)信息查詢與刪除功能都在該頁面操作圖3-SEQ圖\*ARABIC14增加業(yè)務(wù)信息頁面設(shè)計(jì)效果,如圖3-15。圖3-SEQ圖\*ARABIC15修改業(yè)務(wù)信息頁面設(shè)計(jì)效果,如圖3-16。圖3-SEQ圖\*ARABIC16重置密碼頁面設(shè)計(jì)效果,如圖3-17。圖3-SEQ圖\*ARABIC17更新密碼頁面設(shè)計(jì)效果,如圖3-18。圖3-SEQ圖\*ARABIC182.所有頁面的實(shí)現(xiàn)效果,如圖3-19、圖3-20。圖3-SEQ圖\*ARABIC19圖3-SEQ圖\*ARABIC20(四)員工信息查詢與更新系統(tǒng)后臺(tái)功能設(shè)計(jì)與實(shí)現(xiàn)1.系統(tǒng)代碼中的類我們使用StarUML來設(shè)計(jì)StarUML(簡稱SU),是一種創(chuàng)建UML類圖,生成類圖和其他類型的統(tǒng)一建模語言(UML)圖表的工具。StarUML是一個(gè)開源項(xiàng)目之一發(fā)展快、靈活、可擴(kuò)展性強(qiáng)(zj)。類圖是面向?qū)ο笙到y(tǒng)建模中最常用和最重要的圖,是定義其它圖的基礎(chǔ)。類圖主要是用來顯示系統(tǒng)中的類、接口以及它們之間的靜態(tài)結(jié)構(gòu)和關(guān)系的一種靜態(tài)模型。類圖的3個(gè)基本組件:類名、屬性、方法。類的幾個(gè)主要關(guān)系:實(shí)現(xiàn),關(guān)聯(lián),泛化,聚合,組合,依賴。0在StarUML中默認(rèn)打開的“toolbox”工具中就是類相關(guān)的一下基礎(chǔ)功能組件,以及組件的功能簡介基礎(chǔ)組件中有類實(shí)例,以及描述類的各個(gè)功能組件。如圖3-21所示。圖3-SEQ圖\*ARABIC21下面我們就使用StarUML來設(shè)計(jì)所有的類。員工信息查詢與更新系統(tǒng)的實(shí)現(xiàn)共有9個(gè)類,分別是:StaffModel、StaffControlor、BaseDao、BranchModel、BranchControlor、BusinessModel、BusinessControlor、UserModel、UserControlor,類圖如下類圖1:類圖SEQ類圖\*ARABIC1登錄功能的設(shè)計(jì)系統(tǒng)用戶在頁面輸入賬號(hào)和密碼,UserControlor接收到用戶輸入的信息后調(diào)用BaseDao類中的select()方法,查詢數(shù)據(jù)庫中是否有相應(yīng)user信息并返回給UserControlor類,UserControlor類根據(jù)返回的信息判斷用戶是否輸入正確,如輸入錯(cuò)誤給出相應(yīng)提示,如輸入正確則進(jìn)入系統(tǒng),如下時(shí)序圖1所示。時(shí)序圖1系統(tǒng)默認(rèn)頁展示設(shè)計(jì)判斷用輸入的賬號(hào)密碼正確后,再調(diào)用UserControlor的getAllInfo()方法來獲取當(dāng)前系統(tǒng)的環(huán)境信息,將所有信息返回到html頁面上呈現(xiàn)出來,如下時(shí)序圖2所示。時(shí)序圖2員工信息列表頁設(shè)計(jì)先訪問StaffControlor的getStaffList()方法,再調(diào)用BaseDao的select()方法,返回Staff的數(shù)組信息,來得到員工信息列表,在頁面上展示,如下時(shí)序圖3所示。員工信息列表的查詢也是這樣相同的調(diào)用流程,只是查詢的條件不同。時(shí)序圖3增加員工設(shè)計(jì)先訪問StaffControlor的addStaff()方法,再調(diào)用BaseDao的insert()方法,返回Blooen類型的是否添加成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖4所示。時(shí)序圖4修改員工設(shè)計(jì)先訪問StaffControlor的editStaff()方法,再調(diào)用BaseDao的update()方法,返回Blooen類型的是否修改成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖5所示。時(shí)序圖5部門列表頁設(shè)計(jì)先訪問BranchControlor的getBranchList()方法,再調(diào)用BaseDao的select()方法,返回Branch的數(shù)組信息,來得到部門信息列表,在頁面上展示,如下時(shí)序圖6所示。部門信息列表的查詢也是這樣相同的調(diào)用流程,只是查詢的條件不同。時(shí)序圖6增加部門設(shè)計(jì)先訪問BranchControlor的addBranch()方法,再調(diào)用BaseDao的insert()方法,返回Blooen類型的是否添加成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖7所示。時(shí)序圖7修改部門設(shè)計(jì)先訪問BranchControlor的editBranch()方法,再調(diào)用BaseDao的update()方法,返回Blooen類型的是否修改成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖8所示。時(shí)序圖8業(yè)務(wù)列表頁設(shè)計(jì)先訪問BusinessControlor的getBusinessList()方法,再調(diào)用BaseDao的select()方法,返回Business的數(shù)組信息,來得到業(yè)務(wù)信息列表,在頁面上展示,如下時(shí)序圖9所示。業(yè)務(wù)信息列表的查詢也是這樣相同的調(diào)用流程,只是查詢的條件不同。時(shí)序圖9增加業(yè)務(wù)設(shè)計(jì)先訪問BusinessControlor的addBusiness()方法,再調(diào)用BaseDao的insert()方法,返回Blooen類型的是否添加成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖10所示。時(shí)序圖10修改業(yè)務(wù)設(shè)計(jì)先訪問BusinessControlor的editBusiness()方法,再調(diào)用BaseDao的update()方法,返回Blooen類型的是否修改成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖11所示。時(shí)序圖11重置密碼設(shè)計(jì)先訪問UserControlor的resetPassword()方法,再調(diào)用BaseDao的update()方法,返回Blooen類型的是否重置成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖12所示。時(shí)序圖12更新密碼設(shè)計(jì)先訪問UserControlor的editPassword()方法,再調(diào)用BaseDao的update()方法,返回Blooen類型的是否修改成功,在頁面給出相應(yīng)的提示,如下時(shí)序圖13所示。時(shí)序圖132.系統(tǒng)代碼中類的實(shí)現(xiàn),如下圖3-22、圖3-23所示。圖3-SEQ圖\*ARABIC22圖3-SEQ圖\*ARABIC23四、系統(tǒng)測試(一)系統(tǒng)測試的必要性寫的代碼質(zhì)量再高,也難免有bug,而單元測試可以有效地發(fā)現(xiàn)這些bug,提高你的代碼質(zhì)量,而如果是采取測試驅(qū)動(dòng)開發(fā)的,更能影響到你對(duì)整個(gè)系統(tǒng)的設(shè)計(jì),這樣設(shè)計(jì)出來的系統(tǒng)的可測試性會(huì)大大提高.很多開發(fā)人員寫完代碼就提交了,有的可能會(huì)簡單寫個(gè)測試代碼(而非單元測試)來檢驗(yàn)下代碼是否能正常工作,當(dāng)調(diào)用者調(diào)用這些方法(函數(shù)或接口)時(shí),經(jīng)常會(huì)發(fā)現(xiàn)有問題,由于這代碼可能不是他寫的,找bug就浪費(fèi)了時(shí)間,有的隱藏的bug甚至在線上系統(tǒng)中才發(fā)現(xiàn).造成的損失和影響有時(shí)就會(huì)很嚴(yán)重.(二)系統(tǒng)測試的方案至此系統(tǒng)的所有功能開發(fā)完成,在給企業(yè)使用前還需要進(jìn)行測試,來驗(yàn)證開發(fā)是否完善,系統(tǒng)的測試從以下幾方面來進(jìn)行,詳情見表6。表6功能測試用戶輸入與操作期望結(jié)果登錄測試管理員賬號(hào)登錄輸入賬號(hào)與密碼登錄成功,有系統(tǒng)所有權(quán)限員工賬號(hào)登錄輸入賬號(hào)與密碼登錄成功員工管理測試管理員賬號(hào)查看員工列表,分別用工號(hào)、姓名、職位查詢,添加一條員工信息,刪除一條員工信息,編輯一條員工信息可查看員工列表,可用工號(hào)、姓名、職位來進(jìn)行查詢員工信息,添加員工信息成功,修改員工信息成功,刪除已離職員工信息成功員工賬號(hào)查看自己信息只能查看到自己的信息,不能看到其他員工信息部門管理測試管理員賬號(hào)查看部門列表,根據(jù)名稱查詢部門信息,添加一條部門信息,刪除一條部門信息,編輯一條部門信息可查看部門列表,根據(jù)名稱查詢部門,添加部門信息成功,修改部門信息
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年豐城新高焦化有限公司本部(第2批次)招聘4人備考題庫附答案
- 2025年聊城臨清市衛(wèi)健系統(tǒng)事業(yè)單位公開招聘工作人員筆試考試題庫附答案
- 2025宿遷市泗陽縣招聘合同制和公益性崗位工作人員38人(公共基礎(chǔ)知識(shí))綜合能力測試題附答案
- 2025年湖北省建設(shè)科技與建筑節(jié)能辦公室統(tǒng)一組織公開招聘工作人員(公共基礎(chǔ)知識(shí))測試題附答案
- 2025年湖北省教育科學(xué)研究院專項(xiàng)公開招聘3人考試參考題庫附答案
- 2026廣西北海市第三人民醫(yī)院招聘筆試備考題庫及答案解析
- 2026上海復(fù)旦大學(xué)環(huán)境科學(xué)與工程系招聘王戎課題組科研助理崗位2人筆試備考試題及答案解析
- 2026青海省海西州德令哈市司法局招聘1人筆試備考試題及答案解析
- 2025秋人教版道德與法治八年級(jí)上冊(cè)9.1社會(huì)責(zé)任我擔(dān)當(dāng)教學(xué)設(shè)計(jì)
- 2026湖南長沙市天心區(qū)實(shí)驗(yàn)小學(xué)教師招聘筆試備考試題及答案解析
- 2024-2025學(xué)年山東省濱州市北鎮(zhèn)中學(xué)鴻蒙班九年級(jí)下學(xué)寒假開學(xué)考試數(shù)學(xué)試題
- 園林綠化服務(wù)方案(3篇)
- 2025年流產(chǎn)家屬簽字協(xié)議書
- 2025年《中醫(yī)護(hù)理適宜技術(shù)臨床應(yīng)用指南》
- 下頜阻生齒拔除病例匯報(bào)
- 生物樣本資源庫建設(shè)計(jì)劃及管理工作方案
- DBJ04-T 491-2025 建設(shè)工程消防設(shè)計(jì)審查驗(yàn)收文件歸檔標(biāo)準(zhǔn)
- DB45∕T 2419-2021 鉆孔管波探測技術(shù)規(guī)程
- 2025年學(xué)校食堂從業(yè)人員食品安全知識(shí)培訓(xùn)考試試題(附答案)
- GB/T 45752-2025礦用車載滅火系統(tǒng)安全技術(shù)要求
- 安置房舉行活動(dòng)方案
評(píng)論
0/150
提交評(píng)論