藥品進(jìn)銷存儲管理系統(tǒng)(一)_第1頁
藥品進(jìn)銷存儲管理系統(tǒng)(一)_第2頁
藥品進(jìn)銷存儲管理系統(tǒng)(一)_第3頁
藥品進(jìn)銷存儲管理系統(tǒng)(一)_第4頁
藥品進(jìn)銷存儲管理系統(tǒng)(一)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、藥品進(jìn)銷存儲管理系統(tǒng)一1引言面向?qū)ο缶幊蘰具有多方面的吸引力。對管理人員,它實(shí)現(xiàn)了更快和更廉價的開發(fā)與維護(hù)過程。對分析與設(shè)計(jì)人員,建模處理變得更加簡單,能生成明晰、易于維護(hù)的設(shè)計(jì)方案。對程序員,對象模型顯得如此高雅和粗淺。此外,面向?qū)ο蠊ぞ咭约皫斓暮甏笸κ咕幊坛蔀橐豁?xiàng)更使人愉悅的任務(wù)。每個人都可從中獲益,至少外表如此。java便是實(shí)現(xiàn)面向?qū)ο缶幊痰囊环N優(yōu)秀的語言。同人類任何語言一樣,java為我們提供了一種表達(dá)思想的方式。如操作得當(dāng),同其他方式相比,隨著問題變得愈大和愈復(fù)雜,這種表達(dá)方式的方便性和靈敏性會顯露無遺1。java汲取了+面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的

2、簡潔性和便于維護(hù)性。類的封裝性,繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計(jì)和應(yīng)用上。v形式作為如今軟件行業(yè)最為流行的一種設(shè)計(jì)形式,一旦和java相結(jié)合,所產(chǎn)生的作用是無庸質(zhì)疑的。面向?qū)ο蟮母拍罱Y(jié)合構(gòu)造明晰的模型-視圖-控制器三層構(gòu)造,使得軟件設(shè)計(jì)人員的思想得到進(jìn)一步的解放,v形式的一個更大的優(yōu)點(diǎn)在于明晰的構(gòu)造能使得軟件開發(fā)完成之后的維護(hù)和拓展變的更加輕松。v的優(yōu)點(diǎn)表如今以下幾個方面:1可以為一個模型在運(yùn)行時同時建立和使用多個視圖。變化-傳播機(jī)制可以確保所有相關(guān)的視圖及時得到模型數(shù)據(jù)變化,從而使所有關(guān)聯(lián)的視圖和控制器做到行為同

3、步。2視圖與控制器的可接插性,允許更換視圖和控制器對象,而且可以根據(jù)需求動態(tài)的翻開或關(guān)閉、甚至在運(yùn)行期間進(jìn)展對象交換。3模型的可移植性。因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個模型獨(dú)立地移植到新的平臺工作。需要做的只是在新平臺上對視圖和控制器進(jìn)展新的修改。4潛在的框架構(gòu)造??梢曰诖四P徒?yīng)用程序框架,不僅僅是用在設(shè)計(jì)界面的設(shè)計(jì)中。本文介紹了基于java的v形式的網(wǎng)上日志備忘系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),主要包括系統(tǒng)需求分析和系統(tǒng)的功能設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)以及主要的java類的設(shè)計(jì)和相關(guān)的xl文件的配置。本系統(tǒng)主要基于java和v形式,采用struts框架實(shí)現(xiàn)主要功能模塊的設(shè)計(jì),采用ysql數(shù)據(jù)庫實(shí)現(xiàn)數(shù)據(jù)構(gòu)造

4、設(shè)計(jì)。重點(diǎn)闡述了用戶登錄模塊、用戶日志管理模塊和后臺管理模塊的設(shè)計(jì)。2根底知識2.1java程序語言java是一種簡單的、面向?qū)ο蟮?、分布式的、可解釋的、鍵壯的、平安的、構(gòu)造中立的、可移植的、性能優(yōu)異的、多線程的、動態(tài)的語言。java的開發(fā)環(huán)境有不同的版本,如sun公司的javadevelperskit,簡稱jdk。后來微軟公司推出了支持java標(biāo)準(zhǔn)的irsftvisualj+java開發(fā)環(huán)境,簡稱vj+。如今流行的開發(fā)平臺有elipse和jbuilder等。主要具有平臺無關(guān)性、平安性、面向?qū)ο?、分布式、?qiáng)健性等特點(diǎn)12。2.2v設(shè)計(jì)形式v英文即del-vie-ntrller,即把一個應(yīng)用的輸

5、入、處理、輸出流程按照del、vie、ntrller的方式進(jìn)展別離,這樣一個應(yīng)用被分成三個層模型層、視圖層、控制層。視圖(vie)代表用戶交互界面,對于eb應(yīng)用來說,可以概括為htl界面,但有可能為xhtl、xl和applet3。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個應(yīng)用可能有很多不同的視圖,v設(shè)計(jì)形式對于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的懇求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型(del)處理。比方一個訂單的視圖只承受來自模型的數(shù)據(jù)并顯示給用戶,以及將用戶界面的輸入數(shù)據(jù)和懇求傳遞給控制和模型。模型(del):就是業(yè)務(wù)流程、狀態(tài)的處理以及

6、業(yè)務(wù)規(guī)那么的制定。業(yè)務(wù)流程的處理過程對其它層來說是黑箱操作,模型承受視圖懇求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說是v最主要的核心。v設(shè)計(jì)形式告訴我們,把應(yīng)用的模型按一定的規(guī)那么抽取出來,抽取的層次很重要,這也是判斷開發(fā)人員是否優(yōu)秀的設(shè)計(jì)根據(jù)。抽象與詳細(xì)不能隔得太遠(yuǎn),也不能太近。v并沒有提供模型的設(shè)計(jì)方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和進(jìn)步重用性。我們可以用對象編程來做比喻,v定義了一個頂級類,告訴它的子類你只能做這些,但沒法限制你能做這些。這點(diǎn)對編程的開發(fā)人員非常重要。業(yè)務(wù)模型還有一個很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對象的數(shù)據(jù)保存持續(xù)化。比方將一

7、張訂單保存到數(shù)據(jù)庫,從數(shù)據(jù)庫獲取訂單。我們可以將這個模型單獨(dú)列出,所有有關(guān)數(shù)據(jù)庫的操作只限制在該模型中??刂茖?ntrller)可以理解為從用戶接收懇求,將模型與視圖匹配在一起,共同完成用戶的懇求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶懇求。控制層并不做任何的數(shù)據(jù)處理。例如,用戶點(diǎn)擊一個連接,控制層承受懇求后,并不處理業(yè)務(wù)信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應(yīng)多個視圖,一個視圖可能對應(yīng)多個模型。2.3jspjavaserverpage基于文本的eb組件,

8、在htl代碼中嵌入java代碼來實(shí)現(xiàn)動態(tài)內(nèi)容的輸出的一項(xiàng)技術(shù)。1利于將創(chuàng)立內(nèi)容和表示內(nèi)容的代碼別分開來;2標(biāo)簽技術(shù)更容易使人理解和使用,組件重用;3動態(tài)內(nèi)容與靜態(tài)內(nèi)容的別離;4本質(zhì)上還是servlet,在效勞器端被轉(zhuǎn)換成servlet;5合適多層eb應(yīng)用開發(fā)體系構(gòu)造。2.4struts框架struts是采用javaservlet/javaserverpages技術(shù),開發(fā)eb應(yīng)用程序的開放源碼的fraerk。采用struts能開發(fā)出基于v(del-vie-ntrller)設(shè)計(jì)形式的應(yīng)用構(gòu)架4。struts有如下的主要功能:包含一個ntrllerservlet,能將用戶的懇求發(fā)送到相應(yīng)的atin對

9、象5。jsptag庫,并且在ntrllerservlet中提供關(guān)聯(lián)支持,幫助開發(fā)員創(chuàng)立交互式表單應(yīng)用。提供了一系列實(shí)用對象:xl處理、通過javarefletinapis自動處理javabeans屬性、國際化的提示和消息6。struts優(yōu)點(diǎn):1集中式的、基于xl的配置方式,防止了java硬編碼;2提供了frbean的方式封裝用戶懇求的參數(shù),使其在懇求階段方便使用;3自定義了很多有用的標(biāo)簽,如beantags可以方便操作bean中的內(nèi)容;htltags可以讓你輕松初始化表單域等內(nèi)容;4增加了表單驗(yàn)證功能。3系統(tǒng)設(shè)計(jì)3.1需求分析本系統(tǒng)的用戶可分為管理員,注冊用戶和普通用戶即未注冊用戶三類。考慮到

10、系統(tǒng)的平安性,本系統(tǒng)共分成兩個界面:一個界面用于注冊登錄,主要進(jìn)展根本資料的修改、日志分類和日志內(nèi)容的管理以及查詢等,進(jìn)入方式為主頁默認(rèn)顯示;另外一個界面用于后臺管理員登錄,主要負(fù)責(zé)審核用戶權(quán)限、系統(tǒng)新聞維護(hù)、公告維護(hù)等。從總體上看,系統(tǒng)主要需要實(shí)現(xiàn)了以下功能:對管理員來說,包括用戶管理、新聞維護(hù)、公告維護(hù)。l用戶管理:管理員可以通過進(jìn)入用戶管理模塊對用戶進(jìn)展相關(guān)的操作。首先從查詢頁面輸入查詢條件,結(jié)果在查詢模塊下方分頁顯示,管理員可以在查詢結(jié)果中對用戶進(jìn)展相關(guān)操作。主要包括用戶信息的閱讀,注冊用戶的權(quán)限的審批和停用,用戶的刪除。l新聞維護(hù):管理員可以對前臺首頁的本站新聞進(jìn)展維護(hù),包括新聞的添

11、加,修改和刪除。l公告維護(hù):管理員對首頁公告進(jìn)展更新。對用戶來說,包括用戶注冊、用戶登陸、閱讀新聞和共享文章,以及登陸后日志分類維護(hù),日志內(nèi)容維護(hù)等。l用戶注冊:非注冊用戶要獲得系統(tǒng)的使用權(quán)必須先進(jìn)展用戶注冊。用戶通過進(jìn)入注冊對自己的根本信息進(jìn)展填寫,提交后經(jīng)過管理員審核完成,正式獲得系統(tǒng)的使用權(quán)。l用戶登陸:注冊完成并且經(jīng)過審核的用戶須登陸后才能進(jìn)入日志維護(hù)頁面。該模塊實(shí)現(xiàn)了用戶的登陸和錯誤驗(yàn)證。l閱讀新聞和共享文章:普通用戶包括注冊和非注冊用戶進(jìn)入首頁都能對新聞和注冊用戶發(fā)布的公開權(quán)限的文章進(jìn)展閱讀,通過點(diǎn)擊標(biāo)題可以查看詳細(xì)內(nèi)容。l日志分類維護(hù):此模塊主要對日志分類進(jìn)展維護(hù)。假如是第一次進(jìn)

12、入系統(tǒng),寫日志之前必須先添加日志分類。本模塊主要實(shí)現(xiàn)了分類的即時添加和刪除。l日志內(nèi)容維護(hù):注冊用戶登陸后在日志維護(hù)主頁面點(diǎn)擊分類,頁面顯示出此分類下的所有日志,在日志標(biāo)題右邊能對發(fā)布日志進(jìn)展刪除和修改,點(diǎn)擊日志標(biāo)題能閱讀日志全文,在日志顯示模塊上方點(diǎn)擊發(fā)布日志,進(jìn)入日志發(fā)布頁面。需求分析用例圖如圖3-1。圖3-1需求分析用例圖3.2功能劃分3.2.1前臺功能模塊劃分圖3-3后臺功能模塊圖3.2.2后臺功能模塊劃分3.3數(shù)據(jù)庫設(shè)計(jì)3.3.1數(shù)據(jù)庫需求分析根據(jù)系統(tǒng)的需求,主要數(shù)據(jù)項(xiàng)和數(shù)據(jù)構(gòu)造如下。l管理員信息,包括的數(shù)據(jù)項(xiàng)有:用戶名、口令等。l用戶信息,包括的數(shù)據(jù)項(xiàng)有:用戶名、密碼、真實(shí)姓名、性

13、別、聯(lián)絡(luò)方式、e-ail地址、 、用戶簡介等。l日志信息,包括的數(shù)據(jù)項(xiàng)有:日志編號、標(biāo)題、內(nèi)容、發(fā)布時間、更新時間、發(fā)布人、所屬分類等。l日志類別信息,包括的數(shù)據(jù)項(xiàng)有:類別編號、類別名、創(chuàng)立用戶名。l新聞信息,包括的數(shù)據(jù)項(xiàng)有:新聞編號、標(biāo)題、內(nèi)容、更新時間、轉(zhuǎn)載地址等。l公告信息,包括的數(shù)據(jù)項(xiàng)有:公告編號、標(biāo)題、內(nèi)容、更新時間等。為了從多方面來保障用戶個人信息和日志信息的平安性、可信性,本系統(tǒng)還應(yīng)該建立一套機(jī)制,這套機(jī)制至少應(yīng)該包括用戶和后臺管理的賬號的平安機(jī)制、后臺數(shù)據(jù)庫的平安機(jī)制、用戶使用過程的控制和驗(yàn)證機(jī)制。3.3.2數(shù)據(jù)庫物理設(shè)計(jì)本系統(tǒng)數(shù)據(jù)庫主要使用perdesigner進(jìn)展邏輯設(shè)計(jì)和

14、物理設(shè)計(jì)。該軟件能很直觀將實(shí)體之間的關(guān)系明晰的表述出來。數(shù)據(jù)庫的物理設(shè)計(jì)如圖3-4。圖3-4數(shù)據(jù)庫的物理設(shè)計(jì)3.3.3數(shù)據(jù)庫邏輯設(shè)計(jì)由于本系統(tǒng)是為網(wǎng)上日志備忘系統(tǒng)而設(shè)計(jì)的,因此數(shù)據(jù)庫名稱定為diary。根據(jù)需求分析設(shè)計(jì)了如以下圖所示的數(shù)據(jù)庫構(gòu)造圖3-5。詳細(xì)的用戶數(shù)據(jù)表詳細(xì)信息見附錄一。圖3-5數(shù)據(jù)庫構(gòu)造3.4系統(tǒng)構(gòu)造因?yàn)楸鞠到y(tǒng)的實(shí)現(xiàn)主要是基于java的v設(shè)計(jì)形式,所以整個軟件在架構(gòu)被分成了三局部,也就是v中的三個表現(xiàn)層:模型層,控制層和視圖層。下面分別就這三個表現(xiàn)層對系統(tǒng)構(gòu)造進(jìn)展說明。首先是視圖層。視圖層簡單的理解就是用戶的操作界面和程序在處理完用戶提交的懇求之后返回給用戶的結(jié)果顯示界面。本

15、系統(tǒng)的視圖層主要是用jsp頁面來實(shí)現(xiàn)的。jsp是java的一個網(wǎng)絡(luò)應(yīng)用組件,它通過動態(tài)jsp代碼和htl語句的互相嵌套,經(jīng)效勞器編譯之后在閱讀器上顯示處理結(jié)果78。本系統(tǒng)的jsp頁面可分為兩類:完好的jsp頁面和功能單一的jsp代碼段。完好的jsp頁面根本上規(guī)劃好了整個頁面的顯示格局,具有獨(dú)立顯示結(jié)果的功能;而功能單一的jsp代碼段是為了保證代碼的明晰性和可重用性而獨(dú)立出來的只具有單一功能的代碼段,它不能被獨(dú)立顯示出來,而只能通過在完好的jsp頁面中使用jsp動作語句inlude使之成為jsp頁面的一個功能塊9。本系統(tǒng)的jsp頁面都放在ebntent文件夾下,并且根據(jù)各自功能而命名,如日記修改

16、jsp文件叫editdiary.jsp、分類編輯jsp文件叫editkind.jsp。其次是控制層。由于主要使用struts框架來實(shí)現(xiàn)v形式的設(shè)計(jì),控制層主要是在ebntent下eb-inf文件夾中的eb.xl和struts-nfig.xl見附錄來實(shí)現(xiàn)整個系統(tǒng)的邏輯跳轉(zhuǎn)詳細(xì)內(nèi)容見附錄。當(dāng)然在這之前必須把struts的外部jar包放到eb-inf下的lib文件夾中,這樣在寫java類時直接繼承struts的相關(guān)類便可實(shí)現(xiàn)商業(yè)邏輯了。再次是模型層。一個好的工程必然有一個好的軟件構(gòu)造,在建立java類之前,根據(jù)工程不同的功能先建立各自的類包很關(guān)鍵,這樣能使在開發(fā)的時候不會因?yàn)檎也坏较嚓P(guān)的類而暈頭轉(zhuǎn)向

17、10。本系統(tǒng)一共建立了6個包,分別是y.bean,y.da,y.atin,y.fr,y.util,y.base。下面分別對各個包里面類的作用進(jìn)展簡單的介紹。y.bean:主要是存放javabean類,主要包括和數(shù)據(jù)庫中數(shù)據(jù)表的字段相對應(yīng)的屬性和賦值取值方法。為數(shù)據(jù)操作對象對數(shù)據(jù)進(jìn)展操作時提供盛放數(shù)據(jù)的容器。y.da:數(shù)據(jù)操作對象包。沒個類中都對應(yīng)相關(guān)數(shù)據(jù)表的所有數(shù)據(jù)增刪查改操作方法。y.atin:嚴(yán)格來說這個包里的類應(yīng)該屬于控制層。和struts-nfig.xl文件結(jié)合作用。該包的類全部繼承自struts包中的atin類。通過復(fù)寫exeute()方法來實(shí)現(xiàn)業(yè)務(wù)邏輯。y.fr:表單類,所有從頁面

18、提交的表單,通過struts-nfig.xl文件關(guān)聯(lián)后都能和此包中的類進(jìn)展自動匹配。本包中類的結(jié)果類似于bean,只不過所有屬性都是和表單中的參數(shù)名對應(yīng)的。在創(chuàng)立相應(yīng)的賦值取值方法之外,假如表單需要驗(yàn)證的話,必須復(fù)寫父類的validate()方法實(shí)現(xiàn)表單的驗(yàn)證。y.util:實(shí)用工具類。輔助類包,主要放一些重復(fù)使用次數(shù)較多的類文件。如數(shù)據(jù)庫連接類nn。y.base:根本類。里面存放和struts驗(yàn)證機(jī)制和國際化相關(guān)聯(lián)的prperties文件和用來解決頁面顯示亂碼問題的過濾器haraterendingfilter類文件。struts-nfig.xl和eb.xl文件見附錄三系統(tǒng)需要的ysql數(shù)據(jù)庫驅(qū)動類和struts外部包放在ebntent目錄下的eb-inf中的lib

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論