




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 Java權(quán)限管理系統(tǒng)設(shè)計(jì)方案Java權(quán)限管理系統(tǒng)設(shè)計(jì)方案摘 要隨著科技的迅速發(fā)展,各種管理系統(tǒng)已應(yīng)用到社會(huì)的各個(gè)領(lǐng)域。各個(gè)大小企業(yè)無論規(guī)模如何,都充分意識(shí)到傳統(tǒng)的手工管理模式已經(jīng)逐漸不能適應(yīng)時(shí)代的發(fā)展,為了更好的發(fā)展,紛紛開發(fā)適合自己的管理系統(tǒng)。通過java權(quán)限管理系統(tǒng)這個(gè)平臺(tái),可以實(shí)現(xiàn)用戶權(quán)限管理的信息化、網(wǎng)絡(luò)化、系統(tǒng)化、規(guī)范化,使工作人員從繁雜的數(shù)據(jù)查詢和統(tǒng)計(jì)中解脫出來,減少工作量。由于權(quán)限管理涉及面很廣,幾乎每個(gè)系統(tǒng)都會(huì)用到,所以我所做的這個(gè)系統(tǒng)就以某酒店食材采購作為實(shí)例進(jìn)行設(shè)計(jì),主要功能是以食材分類管理、食材管理、入庫管理、出庫管理、庫存信息瀏覽等為依據(jù),分為采購員、負(fù)責(zé)人、經(jīng)理和管
2、理員4個(gè)種類的權(quán)限。本系統(tǒng)前臺(tái)主要使用JSP作為開發(fā)語言,后臺(tái)使用Mysql作為數(shù)據(jù)庫管理系統(tǒng),開發(fā)環(huán)境是MyEclipse,服務(wù)器采用tomcat,開發(fā)出的一個(gè)基于Web技術(shù)的B/S結(jié)構(gòu)的java權(quán)限管理系統(tǒng)。關(guān)鍵詞:java權(quán)限管理;JSP;B/S結(jié)構(gòu)java rights management systemABSTRACT With the rapid development of technology, various management systems have been applied to all areas of society. Regardless of the size
3、 of various size enterprises are fully aware of the traditional manual management mode has gradually adapt to the development of the times, in order to better develop, have developed their own management systems. Through this platform java rights management system, users can achieve the rights manag
4、ement information, networking, systematic, standardized, so that the staff from the complex data queries and statistics freed, reduce the workload. Due to rights management involves a wide, almost every system will be used, so I did this system in order to purchase food as an example of a hotel desi
5、gn, the main function is to produce category management, food management, storage management, a database management, inventory information is based browsing, divided into four types of permissions buyer, the person in charge, managers and administrators. The system mainly uses JSP foreground as a de
6、velopment language, background using Mysql as database management system, development environment is MyEclipse, server using tomcat, developed a Web-based technology, B / S structure of the java rights management system.Keywords: Java rights management;JSP;B/S structureii目 錄摘 要iABSTRACTii1 緒論11.1 課題
7、背景11.2 目的和意義11.3 開發(fā)工具及技術(shù)11.3.1 MyEclipse11.3.2 Tomcat11.3.3 Mysql21.3.4 JSP21.3.5 JavaScript21.4 軟硬件需求32 需求分析42.1 需求調(diào)研42.2 可行性分析42.2.1 技術(shù)的可行性42.2.2 經(jīng)濟(jì)的可行性42.2.3 操作可行性42.2.4 法律的可行性52.2.5 小結(jié)52.3 總體設(shè)計(jì)原則52.4 系統(tǒng)用戶用例圖72.4.1 管理員用例圖72.4.2 員工用例圖72.5 功能模塊需求分析82.6 設(shè)計(jì)的基本思想92.7 性能需求102.7.1 系統(tǒng)的安全性102.7.2 數(shù)據(jù)的完整性10
8、2.8 界面需求103 系統(tǒng)分析與概要設(shè)計(jì)113.1 數(shù)據(jù)庫的分析與設(shè)計(jì)113.1.1 數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)123.1.2 數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)153.1.3 數(shù)據(jù)庫的連接原理163.2 中文亂碼問題處理174 詳細(xì)設(shè)計(jì)194.1 詳細(xì)設(shè)計(jì)概述194.2 系統(tǒng)所有功能模塊詳細(xì)設(shè)計(jì)介紹194.2.1 員工信息管理194.2.2 食材信息管理204.2.2 統(tǒng)計(jì)信息管理214.3 系統(tǒng)模塊實(shí)現(xiàn)214.3.1 底層數(shù)據(jù)庫224.3.2 創(chuàng)建數(shù)據(jù)庫224.3.3 數(shù)據(jù)庫的連接224.4 數(shù)據(jù)庫操作Bean224.4.1 說明224.4.2 代碼實(shí)現(xiàn)235 系統(tǒng)功能實(shí)現(xiàn)255.1 系統(tǒng)登陸頁面實(shí)現(xiàn)255
9、.2 管理員功能模塊275.3 食材管理模塊285.3.1 食材信息錄入285.3.2 食材信息管理295.3.3 食材信息刪除315.4 采購管理315.4.1 采購申請(qǐng)?zhí)砑?15.4.2 采購審批管理325.4.3 采購確認(rèn)管理335.5 食材分類管理335.5.1 分類信息錄入335.5.2 分類信息查詢345.6 統(tǒng)計(jì)355.7 安全退出系統(tǒng)356 系統(tǒng)測試366.1 系統(tǒng)測試目的與意義366.2 測試過程366.2.1 測試實(shí)例的研究與選擇366.2.2 測試環(huán)境與測試條件376.2.3 主頁面的登錄模塊測試376.2.4 系統(tǒng)評(píng)價(jià)386.3 其他錯(cuò)誤38結(jié) 論39參考文獻(xiàn)40外文原
10、文42外文翻譯491 緒論1.1 課題背景計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,給信息時(shí)代的人們帶來了很大的方便。如今在Internet上,隨處都可以看到種類繁多的信息管理系統(tǒng),比如,企業(yè)辦公化自動(dòng)管理系統(tǒng),電子商務(wù)系統(tǒng),企業(yè)教務(wù)管理系統(tǒng)等等。隨著信息技術(shù)的日益發(fā)展已深入到社會(huì)的各個(gè)角落,各個(gè)大的企業(yè),都充分意識(shí)到傳統(tǒng)的手工管理模式已經(jīng)逐漸不能適應(yīng)時(shí)代的發(fā)展,為了更好的發(fā)展,紛紛開發(fā)適合自己的管理系統(tǒng)。不只是大企業(yè),各種類型的小企業(yè)也是如此,以前管理大多為手工管理,效率低、易出錯(cuò)、手續(xù)繁瑣,而且耗費(fèi)大量的人力,物力,財(cái)力,現(xiàn)在他們都希望有一個(gè)適合自己的管理系統(tǒng)。通過調(diào)研,我發(fā)現(xiàn)某一酒店需要一個(gè)權(quán)限管理系統(tǒng),能
11、夠?qū)崿F(xiàn)食材類別管理,食材管理,食材出入庫管理,庫存管理等功能。通過此系統(tǒng),可以對(duì)用戶權(quán)限管理的各項(xiàng)情況實(shí)行電腦化管理,這樣可以提高工作效率,也使得用戶權(quán)限管理所需的各項(xiàng)信息能方便快速進(jìn)行錄入,查詢,刪除和更新,對(duì)相應(yīng)關(guān)鍵數(shù)據(jù)也能夠方便地統(tǒng)計(jì)結(jié)果。 1.2 目的和意義長久以來,用戶權(quán)限管理的管理工作大多數(shù)都采用的是傳統(tǒng)的手工方式來記錄相關(guān)信息,這種管理方式存在很多缺點(diǎn),比如說酒店的食材管理,食材入庫出庫,食材信息的錄入,查詢,更新,分析都要完全依賴管理人員的手工記錄和人工分析。對(duì)于小規(guī)模企業(yè)來說還勉強(qiáng)可以接受,但對(duì)于規(guī)模大一點(diǎn)的企業(yè)來說,人工記錄是相當(dāng)麻煩的。為滿足企業(yè)發(fā)展需求,我決定采用編程語
12、言JSP開發(fā)基于B/S架構(gòu)的java權(quán)限管理系統(tǒng),java權(quán)限管理系統(tǒng)是涉及信息科學(xué)、數(shù)據(jù)計(jì)算和計(jì)算機(jī)技術(shù)的復(fù)雜的人機(jī)交互系統(tǒng)。通過此系統(tǒng),可以對(duì)用戶權(quán)限進(jìn)行智能化管理,有效地記錄并查詢各種食材類型以及出入庫等情況,為某酒店食材的管理提供了諸多方便。1.3 開發(fā)工具及技術(shù)此次設(shè)計(jì)主要采用MyEclipse加Tomcat后臺(tái)服務(wù)器進(jìn)行,設(shè)計(jì)過程中頁面主要使用JSP技術(shù)完成,下面對(duì)MyEclipse、Tomcat和Mysql數(shù)據(jù)庫進(jìn)行簡要介紹。1.3.1 MyEclipseMyEclipse,是一個(gè)十分優(yōu)秀的用于開發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支
13、持也十分廣泛,尤其是對(duì)各種開元產(chǎn)品的支持十分不錯(cuò)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。1.3.2 Tomcat Tomcat是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場
14、合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apahce服務(wù)器,可利用它響應(yīng)對(duì)HTML頁面的訪問請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。1.3.3 Mysql Mysql使用C和C+編寫,并使用了多種編譯器進(jìn)行測試,保證源代碼的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng);為多種編程語言提供了API;
15、支持多線程,充分利用CPU資源;提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑;可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來說,Mysql提供的功能已經(jīng)綽綽有余,而且由于Mysql是開放源碼軟件,因此可以大大降低總體擁有成本。1.3.4 JSPJSP技術(shù)使用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動(dòng)態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計(jì)和顯示分離,支持可重用的基于組件的設(shè)計(jì),使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 Web服務(wù)器在遇到訪問J
16、SP網(wǎng)頁的請(qǐng)求時(shí),首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML代碼一起返回給食材。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)頁所需要的功能。JSP與Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回給食材端就是一個(gè)HTML文本,因此客戶端只要有瀏覽器就能瀏覽。JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被食材端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返回給食材端的瀏覽器。Servlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的
17、簡單易用,完全的面向?qū)ο?,具有平臺(tái)無關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。JSP技術(shù)的優(yōu)點(diǎn):(1)一次編寫,到處運(yùn)行。除了系統(tǒng)之外,代碼不用做任何更改。 (2)系統(tǒng)的多平臺(tái)支持?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境中開發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。相比ASP/.net的局限性是顯而易見的。 (3)強(qiáng)大的可伸縮性。從只有一個(gè)小的Jar文件就可以運(yùn)行Servlet/JSP,到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,消息處理,一臺(tái)服務(wù)器到無數(shù)臺(tái)服務(wù)器,Java顯示了一個(gè)巨大的生命力。 (4)多樣化和功能強(qiáng)大的開發(fā)工具支持。Java已經(jīng)有了許多非常優(yōu)
18、秀的開發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下。(5)支持服務(wù)器端組件。web應(yīng)用需要強(qiáng)大的服務(wù)器端組件來支持,開發(fā)人員需要利用其他工具設(shè)計(jì)實(shí)現(xiàn)復(fù)雜功能的組件供web頁面調(diào)用,以增強(qiáng)系統(tǒng)性能。JSP可以使用成熟的JAVA BEANS 組件來實(shí)現(xiàn)復(fù)雜商務(wù)功能。 內(nèi)部對(duì)象說明:request 食材端請(qǐng)求,此請(qǐng)求會(huì)包含來自GET/POST請(qǐng)求的參數(shù); response網(wǎng)頁傳回食材端的響應(yīng);pageContext網(wǎng)頁的屬性是在這里管理;session 與請(qǐng)求有關(guān)的會(huì)話;application servlet正在執(zhí)行的內(nèi)容;out用來傳送響應(yīng)的輸出流;config代碼片
19、段配置對(duì)象;page JSP網(wǎng)頁本身;exception針對(duì)錯(cuò)誤網(wǎng)頁,未捕捉的例外。1.3.5 JavaScriptJavaScript是一種基于對(duì)象和事件驅(qū)動(dòng)并具有相對(duì)安全性的食材端腳本語言。同時(shí)也是一種廣泛用于食材端Web開發(fā)的腳本語言,常用來給HTML網(wǎng)頁添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript的一個(gè)重要功能就是面向?qū)ο蟮墓δ埽ㄟ^基于對(duì)象的程序設(shè)計(jì),可以用更直觀、模塊化和可重復(fù)使用的方式進(jìn)行程序開發(fā)。在HTML基礎(chǔ)上,使用Javascript可以開發(fā)交互式Web網(wǎng)頁。Javascript的出現(xiàn)使得網(wǎng)頁和用戶之間實(shí)現(xiàn)了一種實(shí)時(shí)性的、動(dòng)態(tài)的、交互性的關(guān)系,使網(wǎng)頁包含更多活
20、躍的元素和更加精彩的內(nèi)容。在本系統(tǒng)中很多地方使用了javascript技術(shù),比如說,檢驗(yàn)用戶輸入數(shù)據(jù)的有效性,是否重復(fù),是否為空等等。1.4 軟硬件需求硬件需求:CPU:Pentium以上計(jì)算機(jī)內(nèi)存: 512M以上軟件需求:操作系統(tǒng)版本:Windows XP /vista/Win7開發(fā)工具:MyEclipse 6.0.1后臺(tái)服務(wù)器:Apache Tomcat 6.0開發(fā)語言:Java瀏覽器:IE6.02 需求分析2.1 需求調(diào)研需求調(diào)研是系統(tǒng)開發(fā)的開始階段,它的輸出“系統(tǒng)需求分析報(bào)告”是設(shè)計(jì)階段的輸入,需求調(diào)研的質(zhì)量對(duì)于一個(gè)系統(tǒng)來說,是一個(gè)極其重要的階段,它的質(zhì)量在一定程度上來說決定了一個(gè)系統(tǒng)
21、的交付結(jié)果。怎樣從客戶中聽取用戶需求、分析用戶需求就成為調(diào)研人員最重要的任務(wù)。為此,我走訪了一些酒店,經(jīng)過一系列的調(diào)查與談話中發(fā)現(xiàn),現(xiàn)行的權(quán)限管理工作還是存在著很多不足之處,手工記錄的方式不易保存,容易丟失,同樣也不利于數(shù)據(jù)的查詢和統(tǒng)計(jì)分析。根據(jù)酒店的實(shí)際情況及調(diào)查結(jié)果,發(fā)現(xiàn)實(shí)現(xiàn)用戶權(quán)限管理的網(wǎng)絡(luò)化、信息化是十分有必要的,因此設(shè)計(jì)了本套權(quán)限管理系統(tǒng)。2.2 可行性分析可行性分析也稱為可行性研究,是在調(diào)研的基礎(chǔ)上,針對(duì)新系統(tǒng)的開發(fā)是否具備必要性和可能性,對(duì)新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟(jì)、社會(huì)等方面進(jìn)行分析和研究??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。開發(fā)任何一個(gè)系統(tǒng),
22、都會(huì)受到時(shí)間和資源上的限制。因此,在每一個(gè)項(xiàng)目開發(fā)之前,都要進(jìn)行可行性分析,可以減少項(xiàng)目的開發(fā)風(fēng)險(xiǎn),避免人力、物力和財(cái)力的浪費(fèi),保證新系統(tǒng)的開發(fā)成功。下面就技術(shù)、經(jīng)濟(jì)、操作和法律四個(gè)方面來介紹。2.2.1 技術(shù)的可行性本系統(tǒng)開發(fā)工具是MyEclipse和Mysql數(shù)據(jù)庫,開發(fā)語言是Java,主要使用了J2EE的技術(shù),java是一種面向?qū)ο缶幊陶Z言,簡單易學(xué)而且靈活方便。大三時(shí)就學(xué)習(xí)了java課程,大四期間也系統(tǒng)地了解了J2EE的知識(shí),java權(quán)限管理系統(tǒng)總體上開發(fā)難度不高,數(shù)據(jù)庫的設(shè)計(jì)和操作是本系統(tǒng)設(shè)計(jì)的核心。在大學(xué)期間學(xué)習(xí)過軟件工程,軟件測試,UML統(tǒng)一建模語言等課程,每個(gè)學(xué)期也會(huì)完成對(duì)應(yīng)的
23、課程設(shè)計(jì),具備一定的系統(tǒng)分析、設(shè)計(jì)和測試能力。根據(jù)java權(quán)限管理系統(tǒng)的系統(tǒng)功能、性能及實(shí)現(xiàn)系統(tǒng)的各種約束條件,根據(jù)新系統(tǒng)目標(biāo)來衡量所需的技術(shù)是否具備,本系統(tǒng)是一個(gè)數(shù)據(jù)庫管理和查詢的系統(tǒng),現(xiàn)有的技術(shù)已較為成熟,硬件、軟件的性能要求、環(huán)境條件等各項(xiàng)條件良好,估計(jì)利用現(xiàn)有技術(shù)條件應(yīng)完全可以達(dá)到該系統(tǒng)的功能目標(biāo)。同時(shí),考慮給予的開發(fā)期限也較為充裕,預(yù)計(jì)系統(tǒng)是可以在規(guī)定期限內(nèi)完成開發(fā)的。因此,完成系統(tǒng)實(shí)現(xiàn)在技術(shù)上完全具有可行性。2.2.2 經(jīng)濟(jì)的可行性如今是信息化時(shí)代,信息化管理可以使權(quán)限管理工作更加系統(tǒng)化、快速化、全面化。這樣可以為企業(yè)帶來較高的工作效益和經(jīng)濟(jì)效益,在提高工作效率的基礎(chǔ)上,可以考慮減
24、少用戶權(quán)限管理人員的數(shù)量,本系統(tǒng)對(duì)計(jì)算機(jī)配置的要求不高,企業(yè)機(jī)房更換下來的低配置電腦都可以完全滿足需要,再者,企業(yè)在管理工作上的高效率和便捷性遠(yuǎn)遠(yuǎn)超過了開發(fā)本系統(tǒng)的成本,所以在經(jīng)濟(jì)上具有完全的可行性。2.2.3 操作可行性本系統(tǒng)操作簡單,輸入信息頁面大多數(shù)都是下拉框的選擇形式,在某些頁面,信息可以自動(dòng)生成,無需輸入,時(shí)間的輸入也是用的日歷控件,操作簡便,對(duì)操作人員的要求很低,只需對(duì)WINDOWS操作熟練,加之對(duì)本系統(tǒng)的操作稍加培訓(xùn)即可工作,而且本系統(tǒng)可視性非常好,所以在技術(shù)上不會(huì)有很大難度。2.2.4 法律的可行性本java權(quán)限管理系統(tǒng)是自行開發(fā)的管理系統(tǒng),是很有實(shí)際意義的系統(tǒng),開發(fā)環(huán)境軟件和
25、使用的數(shù)據(jù)庫都是開源代碼,開發(fā)這個(gè)系統(tǒng)不同于開發(fā)普通的系統(tǒng)軟件,不存在侵權(quán)等問題,即法律上是可行的。2.2.5 小結(jié)可行性分析的任務(wù)是明確應(yīng)用項(xiàng)目開發(fā)的必要性和可行性。本節(jié)主要對(duì)系統(tǒng)開發(fā)的可行性進(jìn)行具體的分析,從用戶方角度考慮本系統(tǒng)是否可行,主要通過有力的數(shù)據(jù)和軟件運(yùn)行環(huán)境方面作為依據(jù)。通過技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性以及法律可行性等方面的分析說明本系統(tǒng)的技術(shù)成熟、完備,測試手段可靠,具有良好的市場拓展,它追求的是簡單、易學(xué)、易懂、易用。綜上所述,開發(fā)一個(gè)java權(quán)限管理系統(tǒng)與人工記錄的方式相比具有速度更快,操作更準(zhǔn)確,節(jié)省開支等有利之處,具有一定的開發(fā)前景,具有開發(fā)的價(jià)值。因此,建立一
26、個(gè)java權(quán)限管理系統(tǒng)是必要可行的。2.3 總體設(shè)計(jì)原則本系統(tǒng)為了設(shè)計(jì)、實(shí)現(xiàn)和后期維護(hù)的方便,以及系統(tǒng)用戶使用的便利,所以必須采取一定的設(shè)計(jì)原則。其主要設(shè)計(jì)原則有:簡單性:在實(shí)現(xiàn)系統(tǒng)的功能的同時(shí),盡量讓系統(tǒng)操作簡單易懂,這對(duì)于一個(gè)系統(tǒng)來說是非常重要的。針對(duì)性:本系統(tǒng)設(shè)計(jì)是針對(duì)java權(quán)限管理系統(tǒng)的實(shí)例即某酒店食材的采購需求定向開發(fā)設(shè)計(jì),所以具有專業(yè)突出和很強(qiáng)的針對(duì)性。實(shí)用性:要求本系統(tǒng)能夠滿足權(quán)限管理系統(tǒng)的需求,因此具有良好的實(shí)用性。一致性:頁面整體設(shè)計(jì)風(fēng)格以及命名規(guī)則的一致性:整體頁面布局和用圖用色風(fēng)格及變量、類名和其他元素的命名規(guī)則保持一致。功能一致性:完成同樣的功能應(yīng)該盡量使用同樣的元素
27、。 元素風(fēng)格一致性:界面元素的美觀風(fēng)格、擺放位置在同一個(gè)界面和不同界面之間都應(yīng)該是一致的。變量命名規(guī)則的一致性:變量應(yīng)該用統(tǒng)一的規(guī)則進(jìn)行命名,做到任意變量均能從上下文推斷其義。先進(jìn)性:本系統(tǒng)采用JSP技術(shù)、MySQL等被廣泛采用系統(tǒng)開發(fā)技術(shù)和數(shù)據(jù)庫,因此本設(shè)計(jì)具有良好的先進(jìn)性,具體表現(xiàn)在其具有良好的可擴(kuò)展性,可開發(fā)性。Java Servlet 與 JSP 的相關(guān)功能JSP和Servlet的區(qū)別到底在應(yīng)用上有哪些體現(xiàn),很多人搞不清楚。簡單的說,SUN首先發(fā)展出Servlet,其功能比較強(qiáng)勁,體系設(shè)計(jì)也很先進(jìn),只是,它輸出HTML語句還是采用了老的CGI方式,是一句一句輸出,所以,編寫和修改HTM
28、L非常不方便。JavaServer Pages(JSP)是一種實(shí)現(xiàn)普通靜態(tài)HTML和動(dòng)態(tài)HTML混合編碼的技術(shù),JSP并沒有增加任何本質(zhì)上不能用Servlet實(shí)現(xiàn)的功能。但是,在JSP中編寫靜態(tài)HTML更加方便,不必再用println語句來輸出每一行HTML代碼。更重要的是,借助內(nèi)容和外觀的分離,頁面制作中不同性質(zhì)的任務(wù)可以方便地分開:比如,由頁面設(shè)計(jì)者進(jìn)行HTML設(shè)計(jì),同時(shí)留出供Servlet程序員插入動(dòng)態(tài)內(nèi)容的空間。后來SUN推出了類似于ASP的鑲嵌型的JSP,把JSP TAG鑲嵌到HTML語句中,這樣,就大大簡化和方便了網(wǎng)頁的設(shè)計(jì)和修改。新型的網(wǎng)絡(luò)語言如ASP,PHP,JSP都是鑲嵌型的
29、SCRIPT語言。 這是JSP和Servlet區(qū)別的運(yùn)作原理層面。從網(wǎng)絡(luò)三層結(jié)構(gòu)的角度看JSP和Servlet的區(qū)別,一個(gè)網(wǎng)絡(luò)項(xiàng)目最少分三層:data layer(數(shù)據(jù)層),business layer(業(yè)務(wù)層), presentation layer(表現(xiàn)層)。當(dāng)然也可以更復(fù)雜。Servlet用來寫business layer是很強(qiáng)大的,但是對(duì)于寫presentation layer就很不方便。JSP則主要是為了方便寫presentation layer而設(shè)計(jì)的。當(dāng)然也可以寫business layer。寫慣了ASP,PHP,CGI的朋友,經(jīng)常會(huì)不自覺的把presentation layer
30、和business layer混在一起。根據(jù)SUN自己的推薦,JSP中應(yīng)該僅僅存放與presentation layer有關(guān)的東東,也就是說,只放輸出HTML網(wǎng)頁的部分。而所有的數(shù)據(jù)計(jì)算,數(shù)據(jù)分析,數(shù)據(jù)庫聯(lián)結(jié)處理,統(tǒng)統(tǒng)是屬于business layer,應(yīng)該放在Java BEANS中。通過JSP調(diào)用Java BEANS,實(shí)現(xiàn)兩層的整合。實(shí)際上,微軟前不久推出的DNA技術(shù),簡單說,就是ASP+COM/DCOM技術(shù)。與JSP+BEANS完全類似,所有的presentation layer由ASP完成,所有的business layer由COM/DCOM完成。通過調(diào)用,實(shí)現(xiàn)整合。為什么要采用這些組件
31、技術(shù)呢?因?yàn)閱渭兊腁SP/JSP語言是非常低效率執(zhí)行的,如果出現(xiàn)大量用戶點(diǎn)擊,純SCRIPT語言很快就到達(dá)了他的功能上限,而組件技術(shù)就能大幅度提高功能上限,加快執(zhí)行速度。另外一方面,純SCRIPT語言將presentation layer和business layer混在一起,造成修改不方便,并且代碼不能重復(fù)利用。如果想修改一個(gè)地方,經(jīng)常會(huì)牽涉到十幾頁CODE,采用組件技術(shù)就只改組件就可以了。Servlet是一個(gè)早期的不完善的產(chǎn)品,寫business layer很好,寫presentation layer就很臭,并且兩層混雜。所以,推出JSP+BEAN,用JSP寫presentation la
32、yer,用BEAN寫business layer。SUN自己的意思也是將來用JSP替代Servlet。這是技術(shù)更新方面JSP和Servlet的區(qū)別??墒?,這不是說,學(xué)了Servlet沒用,實(shí)際上,你還是應(yīng)該從Servlet入門,再上JSP,再上JSP+BEAN。強(qiáng)調(diào)的是:學(xué)了JSP,不會(huì)用Java BEAN并進(jìn)行整合,等于沒學(xué)。大家多花點(diǎn)力氣在JSP+BEAN上。我們可以看到,當(dāng)ASP+COM和JSP+BEAN都采用組件技術(shù)后,所有的組件都是先進(jìn)行編譯,并駐留內(nèi)存,然后快速執(zhí)行。所以,大家經(jīng)常吹的Servlet/JSP先編譯駐內(nèi)存后執(zhí)行的速度優(yōu)勢就沒有了。那么,為什么還用JSP+BEAN?因?yàn)?/p>
33、Java實(shí)在前途遠(yuǎn)大。微軟分拆后,操作系統(tǒng)將群雄并起,應(yīng)用軟件的開發(fā)商必定要找一個(gè)通用開發(fā)語言進(jìn)行開發(fā),Java一統(tǒng)天下的時(shí)機(jī)就到了。如果微軟分拆順利,從中分出的應(yīng)用軟件公司將成為Java的新領(lǐng)導(dǎo)者。目前的Java大頭SUN和IBM都死氣沉沉,令人失望。希望新公司能注入新活力。不過,新公司很有可能和舊SUN展開Java標(biāo)準(zhǔn)大戰(zhàn),雙方各自制定標(biāo)準(zhǔn),影響Java跨平臺(tái)。簡單分析了一下JSP和Servlet的區(qū)別和Java Web開發(fā)方面的發(fā)展?,F(xiàn)在的機(jī)器速度越來越快,Java的速度劣勢很快就可以被克服。2.4 系統(tǒng)用戶用例圖2.4.1 管理員用例圖管理員負(fù)責(zé)管理整個(gè)系統(tǒng),涉及到員工管理、食材管理、
34、入庫管理、出庫管理、庫存管理、統(tǒng)計(jì)管理和系統(tǒng)設(shè)置這七大功能模塊,能夠及時(shí)動(dòng)態(tài)地掌握用戶權(quán)限管理的各項(xiàng)情況。如圖2.1所示:員工管理食材管理入庫管理管理出庫管理管理員庫存管理 統(tǒng)計(jì)管理系統(tǒng)設(shè)置圖2.1 管理員用例圖2.4.2 員工用例圖員工有采購員、負(fù)責(zé)人、經(jīng)理三類,采購員對(duì)食材采購提出采購申請(qǐng),負(fù)責(zé)人對(duì)采購申請(qǐng)進(jìn)行審批,經(jīng)理對(duì)負(fù)責(zé)人的審批進(jìn)行確認(rèn),確認(rèn)以后,采購員才能對(duì)食材進(jìn)行采購。如圖2.2所示:采購申請(qǐng)采購員采購審批負(fù)責(zé)人員工 采購確認(rèn)經(jīng)理 圖2.2 員工用例圖2.5 功能模塊需求分析本系統(tǒng)最大的特點(diǎn)是頁面簡潔大方,使用操作簡單,友好的操作信息提示。本系統(tǒng)將實(shí)現(xiàn)以下基本功能:(1)用戶管理
35、:主要對(duì)系統(tǒng)內(nèi)的用戶進(jìn)行管理。功能如下:員工信息錄入、查詢、刪除等操作。(2)采購管理:對(duì)用戶權(quán)限進(jìn)行管理。具體功能如下:采購申請(qǐng)、采購審批(部門負(fù)責(zé)人可見)、采購確認(rèn)(經(jīng)理可見)。(3)食材管理: 對(duì)采購中所涉及到的食材進(jìn)行管理。具體功能如下:食材的添加、修改、刪除等功能。(4)庫存管理:對(duì)食材的數(shù)量進(jìn)行管理。如: 入庫、出庫等功能。(5)采購統(tǒng)計(jì):統(tǒng)計(jì)一段時(shí)間內(nèi)的食材出庫情況、入庫情況等,具體功能如下入庫統(tǒng)計(jì)、出庫統(tǒng)計(jì)、采購食材的金額統(tǒng)計(jì)。暫定統(tǒng)計(jì)以月為單位。(6)系統(tǒng)設(shè)置:退出系統(tǒng)。(7)用戶權(quán)限管理:系統(tǒng)中設(shè)置采購員、負(fù)責(zé)人、經(jīng)理和管理員四種權(quán)限。(8)具有較強(qiáng)的安全性,避免用戶的惡意
36、操作。管理員功能模塊如圖2.3所示: 圖2.3 管理員功能模塊圖用戶功能模塊圖如圖2.4所示: 圖2.4 用戶功能模塊圖2.6 設(shè)計(jì)的基本思想設(shè)計(jì)思想遵循以下幾點(diǎn):1. 采用B/S模式進(jìn)行開發(fā),其優(yōu)點(diǎn)是后臺(tái)與前臺(tái)處理層次分明,而且符合眾多已經(jīng)習(xí)慣網(wǎng)頁方式的用戶。2. 采用面向?qū)ο蟮拈_發(fā)與設(shè)計(jì)理念。運(yùn)用面向?qū)ο蠹夹g(shù)的前提是對(duì)整體系統(tǒng)的高度和準(zhǔn)確抽象,通過它可以保證系統(tǒng)良好的框架,進(jìn)而帶來產(chǎn)品較強(qiáng)的穩(wěn)定性和運(yùn)行效率。3. 采用模塊化設(shè)計(jì)。模塊化設(shè)計(jì)要求將整個(gè)系統(tǒng)劃分成基于小的模塊,有利于代碼的重載,簡化設(shè)計(jì)和實(shí)現(xiàn)過程。4. 簡單方便的系統(tǒng)界面。設(shè)計(jì)簡單友好的系統(tǒng)界面,方便用戶較快的適應(yīng)系統(tǒng)的操作。
37、5速度優(yōu)先原則。由于此工具最重要的評(píng)測標(biāo)準(zhǔn)就是速度,因此在設(shè)計(jì)過程中,具體過程盡量做到資源占用少,速度快。6設(shè)計(jì)既要突出重點(diǎn),又要細(xì)致周到。要符合設(shè)計(jì)需求,在有可能改進(jìn)的地方進(jìn)行擴(kuò)充,使系統(tǒng)更適應(yīng)用戶的需要。2.7 性能需求2.7.1 系統(tǒng)的安全性java權(quán)限管理系統(tǒng)在管理權(quán)限上要嚴(yán)格進(jìn)行控制,想登陸java權(quán)限管理系統(tǒng)進(jìn)行操作,必須有某些操作權(quán)限,沒有權(quán)限的用戶不能通過任何方式登錄系統(tǒng)查看系統(tǒng)的任何信息和數(shù)據(jù),以確保系統(tǒng)的嚴(yán)密性和安全性。2.7.2 數(shù)據(jù)的完整性1.各種記錄、信息的完整性,信息記錄內(nèi)容不能為空。2.各種數(shù)據(jù)間相互聯(lián)系的正確性。3.相同數(shù)據(jù)在不同記錄中的一致性。2.8 界面需求
38、界面設(shè)計(jì)目前已經(jīng)成為評(píng)價(jià)軟件質(zhì)量的一條重要指標(biāo),一個(gè)好的用戶界面可以增加用戶使用系統(tǒng)的信心和興趣,提高工作效率,JSP技術(shù)是用JAVA語言作為腳本語言的,JSP網(wǎng)頁為整個(gè)服務(wù)器端的JAVA庫單元提供了一個(gè)接口來服務(wù)于HTTP的應(yīng)用程序。 創(chuàng)建動(dòng)態(tài)頁面非常方便。用戶界面是指軟件系統(tǒng)與用戶交互的接口,通常包括輸出、輸入、人-機(jī)對(duì)話的界面格式等。1.輸出設(shè)計(jì)輸出是由計(jì)算機(jī)對(duì)輸入的原始信息進(jìn)行加工處理,形成高質(zhì)量的有效信息,并使之具有一定的格式,提供管理者使用,這是輸出設(shè)計(jì)的主要職責(zé)和目標(biāo)。系統(tǒng)設(shè)計(jì)的過程正好和實(shí)施過程相反,并不是從輸入設(shè)計(jì)到輸出設(shè)計(jì),而是從輸出設(shè)計(jì)到輸入設(shè)計(jì),這是因?yàn)檩敵霰砀裰苯优c使
39、用者相聯(lián)系,設(shè)計(jì)的出發(fā)點(diǎn)應(yīng)當(dāng)是保證輸出表格方便地為使用者服務(wù),正確及時(shí)反映和組成用于各部門的有用信息。輸出設(shè)計(jì)的原則是考慮既要全面反映不同管理層的各項(xiàng)需要,又要言簡意賅,不要將用戶需要和不需要的都提供給用戶。2.輸入設(shè)計(jì)輸入數(shù)據(jù)的收集和錄入是比較費(fèi)事的,需要大量的人力和一定設(shè)備,并且容易出錯(cuò)。如果輸入系統(tǒng)的數(shù)據(jù)有錯(cuò)誤,則處理后的輸出將擴(kuò)大這些錯(cuò)誤,因此輸入數(shù)據(jù)的正確性對(duì)于整個(gè)系統(tǒng)質(zhì)量的好壞是具有決定性意義的。輸入設(shè)計(jì)的原則有如下幾點(diǎn):1)輸入量應(yīng)保持在能滿足處理要求的最低限度。設(shè)計(jì)中可采用設(shè)置字段初值,下拉式數(shù)據(jù)窗口等方式盡量減少用戶鍵盤輸入量。輸入量越少,錯(cuò)誤率就越少,數(shù)據(jù)準(zhǔn)備時(shí)間也減少。2
40、)輸入的準(zhǔn)備及輸入過程應(yīng)盡量容易進(jìn)行,從而減少錯(cuò)誤的發(fā)生。3)應(yīng)盡量早對(duì)輸入數(shù)據(jù)進(jìn)行檢查(盡量接近原數(shù)據(jù)發(fā)生點(diǎn)),以便使錯(cuò)誤及時(shí)得到更正。4)輸入數(shù)據(jù)盡早地用其處理所需的形式被記錄,以避免數(shù)據(jù)由一種介質(zhì)轉(zhuǎn)移到另一種介質(zhì)時(shí)需要轉(zhuǎn)錄而可能發(fā)生的錯(cuò)誤。3 系統(tǒng)分析與概要設(shè)計(jì)3.1 數(shù)據(jù)庫的分析與設(shè)計(jì)數(shù)據(jù)庫是一個(gè)單位或是一個(gè)應(yīng)用領(lǐng)域的通用數(shù)據(jù)處理系統(tǒng),它存儲(chǔ)的是屬于企業(yè)和事業(yè)部門、團(tuán)體和個(gè)人的有關(guān)數(shù)據(jù)的集合。數(shù)據(jù)庫中的數(shù)據(jù)是從全局觀點(diǎn)出發(fā)建立的,按一定的數(shù)據(jù)模型進(jìn)行組織、描述和存儲(chǔ)。其結(jié)構(gòu)基于數(shù)據(jù)間的自然聯(lián)系,從而可提供一切必要的存取路徑,且數(shù)據(jù)不再針對(duì)某一應(yīng)用,而是面向全組織,具有整體的結(jié)構(gòu)化特征。
41、數(shù)據(jù)庫中的數(shù)據(jù)是為眾多用戶所共享其信息而建立的,已經(jīng)擺脫了具體程序的限制和制約。不同的用戶可以按各自的用法使用數(shù)據(jù)庫中的數(shù)據(jù);多個(gè)用戶可以同時(shí)共享數(shù)據(jù)庫中的數(shù)據(jù)資源,即不同的用戶可以同時(shí)存取數(shù)據(jù)庫中的同一個(gè)數(shù)據(jù)。數(shù)據(jù)共享性不僅滿足了各用戶對(duì)信息內(nèi)容的要求,同時(shí)也滿足了各用戶之間信息通信的要求。數(shù)據(jù)是一切系統(tǒng)設(shè)計(jì)的基礎(chǔ),通俗地說,數(shù)據(jù)庫設(shè)計(jì)就像高樓大廈的根基一樣,如果設(shè)計(jì)的不合理、不完善,將在系統(tǒng)開發(fā)過程中,甚至到后期的系統(tǒng)維護(hù)、功能變更和功能擴(kuò)充時(shí),引起較多問題,嚴(yán)重時(shí)甚至要重新設(shè)計(jì),重做大量已完成工作。數(shù)據(jù)庫設(shè)計(jì)(Database Design)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模
42、式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶的應(yīng)用需求(信息要求和處理要求)。在數(shù)據(jù)庫領(lǐng)域內(nèi),常常把使用數(shù)據(jù)庫的各類系統(tǒng)統(tǒng)稱為數(shù)據(jù)庫應(yīng)用系統(tǒng)。計(jì)算機(jī)信息系統(tǒng)以數(shù)據(jù)庫為核心,在數(shù)據(jù)庫管理系統(tǒng)的支持下,進(jìn)行信息的收集、整理、存儲(chǔ)、檢索、更新、加工、統(tǒng)計(jì)和傳播等操作。數(shù)據(jù)庫已經(jīng)成為現(xiàn)在信息系統(tǒng)等計(jì)算機(jī)系統(tǒng)的基礎(chǔ)與核心部分。數(shù)據(jù)庫設(shè)計(jì)的好壞直接影響到整個(gè)系統(tǒng)的質(zhì)量和效率。數(shù)據(jù)庫的設(shè)計(jì)一般經(jīng)過規(guī)劃、需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)5個(gè)步驟。(1)需求分析調(diào)查和分析用戶的業(yè)務(wù)活動(dòng)和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們?cè)跇I(yè)務(wù)活動(dòng)中交流的情況,確定用戶對(duì)數(shù)據(jù)庫系統(tǒng)的
43、使用要求和各種約束條件等,形成用戶需求規(guī)約。(2)概念設(shè)計(jì)對(duì)用戶要求描述的現(xiàn)實(shí)世界(可能是一個(gè)工廠、一個(gè)商場或者一個(gè)學(xué)校等),通過對(duì)其中諸處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個(gè)概念模型應(yīng)反映現(xiàn)實(shí)世界各部門的信息結(jié)構(gòu)、信息流動(dòng)情況、信息間的互相制約關(guān)系以及各部門對(duì)信息儲(chǔ)存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)據(jù)庫在計(jì)算機(jī)上的具體實(shí)現(xiàn)細(xì)節(jié),用一種抽象的形式表示出來。以擴(kuò)充的實(shí)體(E-R模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實(shí)世界各部門所含的各種實(shí)體及其屬性、實(shí)體間的聯(lián)系以及對(duì)信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多
44、個(gè)用戶的局部視圖集成為一個(gè)全局視圖,即用戶要描述的現(xiàn)實(shí)世界的概念數(shù)據(jù)模型。(3)邏輯設(shè)計(jì)主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時(shí),可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計(jì)的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”。(4)物理設(shè)計(jì)根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲(chǔ)結(jié)構(gòu)和存取方法等依賴于具體計(jì)算機(jī)結(jié)構(gòu)的各項(xiàng)物理設(shè)計(jì)措施,對(duì)具體的應(yīng)用任務(wù)選定最合適的物理存儲(chǔ)結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計(jì)的結(jié)果就是所謂“物理數(shù)據(jù)庫”。3.1.1 數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)
45、概念設(shè)計(jì)是指在數(shù)據(jù)分析的基礎(chǔ)上自底向上的建立整個(gè)系統(tǒng)的數(shù)據(jù)庫概念結(jié)構(gòu),從用戶的角度進(jìn)行視圖設(shè)計(jì),然后將視圖集成,最后對(duì)集成的結(jié)構(gòu)分析優(yōu)化得到最后結(jié)果。數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)采用實(shí)體聯(lián)系(E-R)模型設(shè)計(jì)方法。E-R模型法的組成元素有:實(shí)體、屬性、聯(lián)系,E-R模型用E-R圖表示,是提示用戶工作環(huán)境中所涉及的事物,屬性則是對(duì)實(shí)體特性的描述。概念設(shè)計(jì)的目標(biāo)是產(chǎn)生反映企業(yè)組織信息要求的數(shù)據(jù)庫概念結(jié)構(gòu),即概念模式。概念模式是獨(dú)立于數(shù)據(jù)庫邏輯結(jié)構(gòu),獨(dú)立于支持?jǐn)?shù)據(jù)庫的DBMS,不依賴于計(jì)算機(jī)系統(tǒng)的,根據(jù)以上對(duì)數(shù)據(jù)庫的需求分析,并結(jié)合系統(tǒng)概念模型的特點(diǎn)及建立方法,建立E-R模型圖。E-R圖所用模型如圖3.1所示
46、:實(shí)體間關(guān)系屬性實(shí)體 圖3.1 E-R圖所用模型圖(1)食材類別信息實(shí)體E-R圖如圖3.2所示:類別介紹類別名稱食材類別 圖3.2 食材類別信息實(shí)體E-R圖(2)食材信息實(shí)體E-R圖如圖3.3所示:單位規(guī)格產(chǎn)地名稱備注信息食材信息 圖3.3 食材信息實(shí)體E-R圖(3)入庫信信息實(shí)體E-R圖如圖3.4所示:總金額經(jīng)手人入庫時(shí)間單據(jù)號(hào)備注信息入庫信息 圖3.4 入庫信息實(shí)體E-R圖(4)出庫信息實(shí)體E-R圖如圖3.5所示:總金額經(jīng)手人出庫時(shí)間單據(jù)號(hào)備注信息出庫信息 圖3.5 出庫信息實(shí)體E-R圖(5)管理員信息實(shí)體E-R圖如圖3.6所示:登陸賬號(hào)登陸密碼用戶ID管理員圖3.6 管理員信息實(shí)體E-R
47、圖(6)用戶信息實(shí)體E-R圖如圖3.7所示:聯(lián)系方式住址年齡權(quán)限登錄帳號(hào)性別姓名登錄密碼用戶 圖3.7 用戶信息實(shí)體E-R圖(7)采購信息實(shí)體E-R圖如圖3.8所示:經(jīng)手人備注明細(xì)總金額狀態(tài)采購時(shí)間單據(jù)號(hào)用戶 圖3.8 采購信息實(shí)體E-R圖3.1.2 數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)我們知道,數(shù)據(jù)庫概念模型獨(dú)立于任何特定的數(shù)據(jù)庫管理系統(tǒng),因此,需要根據(jù)具體使用的數(shù)據(jù)庫管理系統(tǒng)的特點(diǎn)進(jìn)行轉(zhuǎn)換。即轉(zhuǎn)化為按計(jì)算機(jī)觀點(diǎn)處理的邏輯關(guān)系模型,E-R模型向關(guān)系數(shù)據(jù)庫模型轉(zhuǎn)換應(yīng)遵循下列原則:*每一個(gè)實(shí)體要轉(zhuǎn)換成一個(gè)關(guān)系。*所有的主鍵必須定義非空(NOT NULL)。*對(duì)于二元聯(lián)系應(yīng)按照一對(duì)多、弱對(duì)實(shí)、一對(duì)一、多對(duì)多等聯(lián)系
48、來定義外鍵。根據(jù)E-R模型,用戶權(quán)限管理系統(tǒng)建立了以下邏輯數(shù)據(jù)結(jié)構(gòu),下面是各數(shù)據(jù)表的詳細(xì)說明。(1)食材類別表主要是記錄了食材類別基本信息。表結(jié)構(gòu)如表3.1所示: 表3.1 食材類別表(t_catelog)列名數(shù)據(jù)類型長度允許空是否主鍵 說明idint4否是 編號(hào)namevarchar20否否 類別名稱jieshaovarchar30否否 類別介紹(2)食材信息表主要是記錄了食材的基本信息,表結(jié)構(gòu)如表3.2所示:表3.2 食材信息表(t_goods)列名數(shù)據(jù)類型長度允許空是否主鍵 說明idInt4否是 編號(hào)catelog_idInt4否否 類別編號(hào)namevarchar20否否 食材名稱cha
49、ndivarchar20否否 產(chǎn)地danweivarchar30否否 單位guigevarchar40否否 規(guī)格beizhuvarchar50否否 備注信息(3)入庫信息表主要是記錄用戶權(quán)限管理的入庫的基本信息,表結(jié)構(gòu)如表3.3所示:表3.3 入庫信息表(t_ruku)列名數(shù)據(jù)類型長度允許空是否主鍵說明idInt4否是編號(hào)danjuhaovarchar4否否單據(jù)號(hào)shijianvarcharDate否否入庫時(shí)間zongjiagevarchar30否否總價(jià)格jingshourenvarchar20否否經(jīng)手人beizhuvarchar50否否備注信息(4)出庫信息表主要是記錄用戶權(quán)限管理的出庫的基
50、本信息,表結(jié)構(gòu)如表3.4所示:表3.4 出庫信息表(t_chuku)列名數(shù)據(jù)類型長度允許空是否主鍵說明idInt4否是編號(hào)danjuhaovarchar4否否單據(jù)號(hào)shijianvarcharDate否否出庫時(shí)間zongjiagevarchar30否否總價(jià)格jingshourenvarchar20否否經(jīng)手人beizhuvarchar50否否備注信息(5)管理員信息表主要記錄的管理員的賬號(hào)信息,包括用戶名和密碼,表結(jié)構(gòu)如表3.5所示:表3.5 管理員信息表(t_admin)列名數(shù)據(jù)類型長度允許空是否主鍵說明userIdint4否是編號(hào)userNamevarchar20否否用戶名userPwvar
51、char10否否密碼3.1.3 數(shù)據(jù)庫的連接原理采用JDBC連接數(shù)據(jù)庫的方式,只需在工程中導(dǎo)入對(duì)應(yīng)數(shù)據(jù)庫的jar包,就可以方便的對(duì)數(shù)據(jù)庫進(jìn)行連接,在程序中,用Class.forName()方法來加載驅(qū)動(dòng)程序,在用DriverManager()的getConnection()方法就可以創(chuàng)建一個(gè)數(shù)據(jù)庫連接。程序采用的是DAO模式來操作數(shù)據(jù)庫,DAO(Data Access Object,數(shù)據(jù)訪問對(duì)象),是Java編程中的一種經(jīng)典模式,已被廣泛應(yīng)用,也是J2EE架構(gòu)中持久層框架的基礎(chǔ)知識(shí),基于分層次式的軟件架構(gòu)來實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的訪問操作。DAO模式的主要思想就是從抽象數(shù)據(jù)源獲取與操縱數(shù)據(jù)的方法。抽象數(shù)據(jù)的含義就是編寫應(yīng)用程序的程序員不必關(guān)心數(shù)據(jù)庫的物理位置,已經(jīng)是何種數(shù)據(jù)庫,只需使用封裝數(shù)據(jù)庫中表示記錄的數(shù)據(jù)對(duì)象即可。其思想如圖3.9所示:使用封裝DataSourceBusinessObjectDataAccessObject創(chuàng)建/使用獲取/修改DataTransferObject圖3.9 DAO模式類圖 圖中BussinessObject是業(yè)務(wù)對(duì)象,是使用D
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 購房補(bǔ)充合同范本
- 城市垃圾處理站承包合同協(xié)議書
- 股權(quán)合伙合同協(xié)議
- 單位實(shí)習(xí)生勞動(dòng)合同范本
- 簡易短期借款合同文本
- 度工業(yè)用地使用權(quán)轉(zhuǎn)讓合同書
- 農(nóng)業(yè)技術(shù)合作協(xié)議合同范本
- 軟件租賃與服務(wù)合同
- 校園欺凌心理安全課件
- 木工產(chǎn)業(yè)智能制造與產(chǎn)業(yè)升級(jí)路徑探索實(shí)踐考核試卷
- 中央2025年全國婦聯(lián)所屬在京事業(yè)單位招聘93人筆試歷年參考題庫附帶答案詳解
- CentOS 7系統(tǒng)配置與管理(Linux 試題庫) 習(xí)題答案 (楊海艷 第2版)
- 手機(jī)直連衛(wèi)星的可用頻率分析
- 中國氫內(nèi)燃機(jī)行業(yè)發(fā)展環(huán)境、市場運(yùn)行格局及前景研究報(bào)告-智研咨詢(2024版)
- 2025年春新人教版歷史七年級(jí)下冊(cè)課件 第16課-明朝的對(duì)外關(guān)系
- 施工單位工程質(zhì)量自評(píng)報(bào)告三篇
- 2025年人教版英語五年級(jí)下冊(cè)教學(xué)進(jìn)度安排表
- 同等學(xué)力英語申碩考試詞匯(第六版大綱)電子版
- 部編四下語文《口語交際:轉(zhuǎn)述》公開課教案教學(xué)設(shè)計(jì)【一等獎(jiǎng)】
- 醫(yī)院檢驗(yàn)科實(shí)驗(yàn)室生物安全程序文件SOP
- 2023靜脈治療護(hù)理技術(shù)操作標(biāo)準(zhǔn)解讀
評(píng)論
0/150
提交評(píng)論