前言:本站為你精心整理了藥品進(jìn)銷(xiāo)存儲(chǔ)管理范文,希望能為你的創(chuàng)作提供參考價(jià)值,我們的客服老師可以幫助你提供個(gè)性化的參考范文,歡迎咨詢(xún)。

1引言
面向?qū)ο缶幊蹋∣OP)具有多方面的吸引力。對(duì)管理人員,它實(shí)現(xiàn)了更快和更廉價(jià)的開(kāi)發(fā)與維護(hù)過(guò)程。對(duì)分析與設(shè)計(jì)人員,建模處理變得更加簡(jiǎn)單,能生成清晰、易于維護(hù)的設(shè)計(jì)方案。對(duì)程序員,對(duì)象模型顯得如此高雅和淺顯。此外,面向?qū)ο蠊ぞ咭约皫?kù)的巨大威力使編程成為一項(xiàng)更使人愉悅的任務(wù)。每個(gè)人都可從中獲益,至少表面如此。Java便是實(shí)現(xiàn)面向?qū)ο缶幊痰囊环N優(yōu)秀的語(yǔ)言。同人類(lèi)任何語(yǔ)言一樣,Java為我們提供了一種表達(dá)思想的方式。如操作得當(dāng),同其他方式相比,隨著問(wèn)題變得愈大和愈復(fù)雜,這種表達(dá)方式的方便性和靈活性會(huì)顯露無(wú)遺[1]。Java吸取了C++面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類(lèi)中,利用類(lèi)的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡(jiǎn)潔性和便于維護(hù)性。類(lèi)的封裝性,繼承性等有關(guān)對(duì)象的特性,使程序代碼只需一次編譯,然后通過(guò)上述特性反復(fù)利用。程序員只需把主要精力用在類(lèi)和接口的設(shè)計(jì)和應(yīng)用上。
MVC模式作為現(xiàn)在軟件行業(yè)最為流行的一種設(shè)計(jì)模式,一旦和Java相結(jié)合,所產(chǎn)生的作用是無(wú)庸質(zhì)疑的。面向?qū)ο蟮母拍罱Y(jié)合結(jié)構(gòu)清晰的模型-視圖-控制器三層結(jié)構(gòu),使得軟件設(shè)計(jì)人員的思想得到進(jìn)一步的解放,MVC模式的一個(gè)更大的優(yōu)點(diǎn)在于清晰的結(jié)構(gòu)能使得軟件開(kāi)發(fā)完成之后的維護(hù)和拓展變的更加輕松。MVC的優(yōu)點(diǎn)表現(xiàn)在以下幾個(gè)方面:(1)可以為一個(gè)模型在運(yùn)行時(shí)同時(shí)建立和使用多個(gè)視圖。變化-傳播機(jī)制可以確保所有相關(guān)的視圖及時(shí)得到模型數(shù)據(jù)變化,從而使所有關(guān)聯(lián)的視圖和控制器做到行為同步。(2)視圖與控制器的可接插性,允許更換視圖和控制器對(duì)象,而且可以根據(jù)需求動(dòng)態(tài)的打開(kāi)或關(guān)閉、甚至在運(yùn)行期間進(jìn)行對(duì)象替換。(3)模型的可移植性。因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個(gè)模型獨(dú)立地移植到新的平臺(tái)工作。需要做的只是在新平臺(tái)上對(duì)視圖和控制器進(jìn)行新的修改。(4)潛在的框架結(jié)構(gòu)。可以基于此模型建立應(yīng)用程序框架,不僅僅是用在設(shè)計(jì)界面的設(shè)計(jì)中。
本文介紹了基于Java的MVC模式的網(wǎng)上日志備忘系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),主要包括系統(tǒng)需求分析和系統(tǒng)的功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)以及主要的Java類(lèi)的設(shè)計(jì)和相關(guān)的XML文件的配置。本系統(tǒng)主要基于Java和MVC模式,采用struts框架實(shí)現(xiàn)主要功能模塊的設(shè)計(jì),采用Mysql數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)。重點(diǎn)闡述了用戶(hù)登錄模塊、用戶(hù)日志管理模塊和后臺(tái)管理模塊的設(shè)計(jì)。
2基礎(chǔ)知識(shí)2.1JAVA程序語(yǔ)言
Java是一種簡(jiǎn)單的、面向?qū)ο蟮摹⒎植际降摹⒖山忉尩摹㈡I壯的、安全的、結(jié)構(gòu)中立的、可移植的、性能優(yōu)異的、多線程的、動(dòng)態(tài)的語(yǔ)言。Java的開(kāi)發(fā)環(huán)境有不同的版本,如sun公司的JavaDevelopersKit,簡(jiǎn)稱(chēng)JDK。后來(lái)微軟公司推出了支持Java規(guī)范的MicrosoftVisualJ++Java開(kāi)發(fā)環(huán)境,簡(jiǎn)稱(chēng)VJ++。現(xiàn)在流行的開(kāi)發(fā)平臺(tái)有Eclipse和JBuilder等。主要具有平臺(tái)無(wú)關(guān)性、安全性、面向?qū)ο蟆⒎植际健⒔研缘忍攸c(diǎn)[1][2]。
2.2MVC設(shè)計(jì)模式
MVC英文即Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層——模型層、視圖層、控制層。
視圖(View)代表用戶(hù)交互界面,對(duì)于Web應(yīng)用來(lái)說(shuō),可以概括為HTML界面,但有可能為XHTML、XML和Applet[3]。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個(gè)應(yīng)用可能有很多不同的視圖,MVC設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶(hù)的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型(Model)處理。比如一個(gè)訂單的視圖只接受來(lái)自模型的數(shù)據(jù)并顯示給用戶(hù),以及將用戶(hù)界面的輸入數(shù)據(jù)和請(qǐng)求傳遞給控制和模型。
模型(Model):就是業(yè)務(wù)流程、狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過(guò)程對(duì)其它層來(lái)說(shuō)是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說(shuō)是MVC最主要的核心。MVC設(shè)計(jì)模式告訴我們,把應(yīng)用的模型按一定的規(guī)則抽取出來(lái),抽取的層次很重要,這也是判斷開(kāi)發(fā)人員是否優(yōu)秀的設(shè)計(jì)依據(jù)。抽象與具體不能隔得太遠(yuǎn),也不能太近。MVC并沒(méi)有提供模型的設(shè)計(jì)方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。我們可以用對(duì)象編程來(lái)做比喻,MVC定義了一個(gè)頂級(jí)類(lèi),告訴它的子類(lèi)你只能做這些,但沒(méi)法限制你能做這些。這點(diǎn)對(duì)編程的開(kāi)發(fā)人員非常重要。
業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對(duì)象的數(shù)據(jù)保存(持續(xù)化)。比如將一張訂單保存到數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)獲取訂單。我們可以將這個(gè)模型單獨(dú)列出,所有有關(guān)數(shù)據(jù)庫(kù)的操作只限制在該模型中。
控制層(Controller)可以理解為從用戶(hù)接收請(qǐng)求,將模型與視圖匹配在一起,共同完成用戶(hù)的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個(gè)分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶(hù)請(qǐng)求。控制層并不做任何的數(shù)據(jù)處理。例如,用戶(hù)點(diǎn)擊一個(gè)連接,控制層接受請(qǐng)求后,并不處理業(yè)務(wù)信息,它只把用戶(hù)的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶(hù)。因此,一個(gè)模型可能對(duì)應(yīng)多個(gè)視圖,一個(gè)視圖可能對(duì)應(yīng)多個(gè)模型。
2.3JSP(JAVASERVERPAGE)
基于文本的WEB組件,在HTML代碼中嵌入JAVA代碼來(lái)實(shí)現(xiàn)動(dòng)態(tài)內(nèi)容的輸出的一項(xiàng)技術(shù)。
1)利于將創(chuàng)建內(nèi)容和表示內(nèi)容的代碼分離開(kāi)來(lái);
2)標(biāo)簽技術(shù)更容易使人理解和使用,組件重用;
3)動(dòng)態(tài)內(nèi)容與靜態(tài)內(nèi)容的分離;
4)本質(zhì)上還是servlet,在服務(wù)器端被轉(zhuǎn)換成servlet;
5)適合多層WEB應(yīng)用開(kāi)發(fā)體系結(jié)構(gòu)。
2.4Struts框架
Struts是采用JavaServlet/JavaServerPages技術(shù),開(kāi)發(fā)Web應(yīng)用程序的開(kāi)放源碼的framework。采用Struts能開(kāi)發(fā)出基于MVC(Model-View-Controller)設(shè)計(jì)模式的應(yīng)用構(gòu)架[4]。
Struts有如下的主要功能:包含一個(gè)controllerservlet,能將用戶(hù)的請(qǐng)求發(fā)送到相應(yīng)的Action對(duì)象[5]。JSPtag庫(kù),并且在controllerservlet中提供關(guān)聯(lián)支持,幫助開(kāi)發(fā)員創(chuàng)建交互式表單應(yīng)用。提供了一系列實(shí)用對(duì)象:XML處理、通過(guò)JavareflectionAPIs自動(dòng)處理JavaBeans屬性、國(guó)際化的提示和消息[6]。
Struts優(yōu)點(diǎn):
1)集中式的、基于XML的配置方式,避免了Java硬編碼;
2)提供了Formbean的方式封裝用戶(hù)請(qǐng)求的參數(shù),使其在請(qǐng)求階段方便使用;
3)自定義了很多有用的標(biāo)簽,如Beantags可以方便操作Bean中的內(nèi)容;HTMLtags可以讓你輕松初始化表單域等內(nèi)容;
4)增加了表單驗(yàn)證功能。
3系統(tǒng)設(shè)計(jì)3.1需求分析
本系統(tǒng)的用戶(hù)可分為管理員,注冊(cè)用戶(hù)和普通用戶(hù)(即未注冊(cè)用戶(hù))三類(lèi)。考慮到系統(tǒng)的安全性,本系統(tǒng)共分成兩個(gè)界面:一個(gè)界面用于注冊(cè)登錄,主要進(jìn)行基本資料的修改、日志分類(lèi)和日志內(nèi)容的管理以及查詢(xún)等,進(jìn)入方式為主頁(yè)默認(rèn)顯示;另外一個(gè)界面用于后臺(tái)管理員登錄,主要負(fù)責(zé)審核用戶(hù)權(quán)限、系統(tǒng)新聞維護(hù)、公告維護(hù)等。
從總體上看,系統(tǒng)主要需要實(shí)現(xiàn)了下列功能:
對(duì)管理員來(lái)說(shuō),包括用戶(hù)管理、新聞維護(hù)、公告維護(hù)。
l用戶(hù)管理:管理員可以通過(guò)進(jìn)入用戶(hù)管理模塊對(duì)用戶(hù)進(jìn)行相關(guān)的操作。首先從查詢(xún)頁(yè)面輸入查詢(xún)條件,結(jié)果在查詢(xún)模塊下方分頁(yè)顯示,管理員可以在查詢(xún)結(jié)果中對(duì)用戶(hù)進(jìn)行相關(guān)操作。主要包括用戶(hù)信息的瀏覽,注冊(cè)用戶(hù)的權(quán)限的審批和停用,用戶(hù)的刪除。
l新聞維護(hù):管理員可以對(duì)前臺(tái)首頁(yè)的本站新聞進(jìn)行維護(hù),包括新聞的添加,修改和刪除。
l公告維護(hù):管理員對(duì)首頁(yè)公告進(jìn)行更新。
對(duì)用戶(hù)來(lái)說(shuō),包括用戶(hù)注冊(cè)、用戶(hù)登陸、瀏覽新聞和共享文章,以及登陸后日志分類(lèi)維護(hù),日志內(nèi)容維護(hù)等。
l用戶(hù)注冊(cè):非注冊(cè)用戶(hù)要取得系統(tǒng)的使用權(quán)必須先進(jìn)行用戶(hù)注冊(cè)。用戶(hù)通過(guò)進(jìn)入注冊(cè)對(duì)自己的基本信息進(jìn)行填寫(xiě),提交后經(jīng)過(guò)管理員審核完成,正式獲得系統(tǒng)的使用權(quán)。
l用戶(hù)登陸:注冊(cè)完成并且經(jīng)過(guò)審核的用戶(hù)須登陸后才能進(jìn)入日志維護(hù)頁(yè)面。該模塊實(shí)現(xiàn)了用戶(hù)的登陸和錯(cuò)誤驗(yàn)證。
l瀏覽新聞和共享文章:普通用戶(hù)(包括注冊(cè)和非注冊(cè)用戶(hù))進(jìn)入首頁(yè)都能對(duì)新聞和注冊(cè)用戶(hù)的公開(kāi)權(quán)限的文章進(jìn)行瀏覽,通過(guò)點(diǎn)擊標(biāo)題能夠查看詳細(xì)內(nèi)容。
l日志分類(lèi)維護(hù):此模塊主要對(duì)日志分類(lèi)進(jìn)行維護(hù)。如果是第一次進(jìn)入系統(tǒng),寫(xiě)日志之前必須先添加日志分類(lèi)。本模塊主要實(shí)現(xiàn)了分類(lèi)的即時(shí)添加和刪除。
l日志內(nèi)容維護(hù):注冊(cè)用戶(hù)登陸后在日志維護(hù)主頁(yè)面點(diǎn)擊分類(lèi),頁(yè)面顯示出此分類(lèi)下的所有日志,在日志標(biāo)題右邊能對(duì)日志進(jìn)行刪除和修改,點(diǎn)擊日志標(biāo)題能瀏覽日志全文,在日志顯示模塊上方點(diǎn)擊日志,進(jìn)入日志頁(yè)面。
需求分析用例圖如圖3-1。
圖3-1需求分析用例圖
3.2功能劃分3.2.1前臺(tái)功能模塊劃分
圖3-3后臺(tái)功能模塊圖
3.2.2后臺(tái)功能模塊劃分
3.3數(shù)據(jù)庫(kù)設(shè)計(jì)3.3.1數(shù)據(jù)庫(kù)需求分析
根據(jù)系統(tǒng)的需求,主要數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)如下。
l管理員信息,包括的數(shù)據(jù)項(xiàng)有:用戶(hù)名、口令等。
l用戶(hù)信息,包括的數(shù)據(jù)項(xiàng)有:用戶(hù)名、密碼、真實(shí)姓名、性別、聯(lián)系方式、E-mail地址、電話(huà)、用戶(hù)簡(jiǎn)介等。
l日志信息,包括的數(shù)據(jù)項(xiàng)有:日志編號(hào)、標(biāo)題、內(nèi)容、時(shí)間、更新時(shí)間、人、所屬分類(lèi)等。
l日志類(lèi)別信息,包括的數(shù)據(jù)項(xiàng)有:類(lèi)別編號(hào)、類(lèi)別名、創(chuàng)建用戶(hù)名。
l新聞信息,包括的數(shù)據(jù)項(xiàng)有:新聞編號(hào)、標(biāo)題、內(nèi)容、更新時(shí)間、轉(zhuǎn)載地址等。
l公告信息,包括的數(shù)據(jù)項(xiàng)有:公告編號(hào)、標(biāo)題、內(nèi)容、更新時(shí)間等。
為了從多方面來(lái)保障用戶(hù)個(gè)人信息和日志信息的安全性、可信性,本系統(tǒng)還應(yīng)該建立一套機(jī)制,這套機(jī)制至少應(yīng)該包括用戶(hù)和后臺(tái)管理的賬號(hào)的安全機(jī)制、后臺(tái)數(shù)據(jù)庫(kù)的安全機(jī)制、用戶(hù)使用過(guò)程的控制和驗(yàn)證機(jī)制。
3.3.2數(shù)據(jù)庫(kù)物理設(shè)計(jì)
本系統(tǒng)數(shù)據(jù)庫(kù)主要使用POWERDESIGNER進(jìn)行邏輯設(shè)計(jì)和物理設(shè)計(jì)。該軟件能很直觀將實(shí)體之間的關(guān)系清晰的表述出來(lái)。數(shù)據(jù)庫(kù)的物理設(shè)計(jì)如圖3-4。
圖3-4數(shù)據(jù)庫(kù)的物理設(shè)計(jì)
3.3.3數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)
由于本系統(tǒng)是為網(wǎng)上日志備忘系統(tǒng)而設(shè)計(jì)的,因此數(shù)據(jù)庫(kù)名稱(chēng)定為diary。根據(jù)需求分析設(shè)計(jì)了如下圖所示的數(shù)據(jù)庫(kù)結(jié)構(gòu)圖3-5。具體的用戶(hù)數(shù)據(jù)表詳細(xì)信息見(jiàn)附錄一。
圖3-5數(shù)據(jù)庫(kù)結(jié)構(gòu)
3.4系統(tǒng)結(jié)構(gòu)
因?yàn)楸鞠到y(tǒng)的實(shí)現(xiàn)主要是基于Java的MVC設(shè)計(jì)模式,所以整個(gè)軟件在架構(gòu)被分成了三部分,也就是MVC中的三個(gè)表現(xiàn)層:模型層,控制層和視圖層。下面分別就這三個(gè)表現(xiàn)層對(duì)系統(tǒng)結(jié)構(gòu)進(jìn)行說(shuō)明。
首先是視圖層。視圖層簡(jiǎn)單的理解就是用戶(hù)的操作界面和程序在處理完用戶(hù)提交的請(qǐng)求之后返回給用戶(hù)的結(jié)果顯示界面。本系統(tǒng)的視圖層主要是用JSP頁(yè)面來(lái)實(shí)現(xiàn)的。JSP是JAVA的一個(gè)網(wǎng)絡(luò)應(yīng)用組件,它通過(guò)動(dòng)態(tài)JSP代碼和HTML語(yǔ)句的相互嵌套,經(jīng)服務(wù)器編譯之后在瀏覽器上顯示處理結(jié)果[7][8]。本系統(tǒng)的JSP頁(yè)面可分為兩類(lèi):完整的JSP頁(yè)面和功能單一的JSP代碼段。完整的JSP頁(yè)面基本上規(guī)劃好了整個(gè)頁(yè)面的顯示格局,具有獨(dú)立顯示結(jié)果的功能;而功能單一的JSP代碼段是為了保證代碼的清晰性和可重用性而獨(dú)立出來(lái)的只具有單一功能的代碼段,它不能被獨(dú)立顯示出來(lái),而只能通過(guò)在完整的JSP頁(yè)面中使用JSP動(dòng)作語(yǔ)句INCLUDE使之成為JSP頁(yè)面的一個(gè)功能塊[9]。本系統(tǒng)的JSP頁(yè)面都放在webcontent文件夾下,并且根據(jù)各自功能而命名,如日記修改JSP文件叫editDiary.jsp、分類(lèi)編輯JSP文件叫editKind.jsp。
其次是控制層。由于主要使用Struts框架來(lái)實(shí)現(xiàn)MVC模式的設(shè)計(jì),控制層主要是在webcontent下WEB-INF文件夾中的web.xml和struts-config.xml(見(jiàn)附錄)來(lái)實(shí)現(xiàn)整個(gè)系統(tǒng)的邏輯跳轉(zhuǎn)(具體內(nèi)容見(jiàn)附錄)。當(dāng)然在這之前必須把struts的外部jar包放到web-inf下的lib文件夾中,這樣在寫(xiě)java類(lèi)時(shí)直接繼承struts的相關(guān)類(lèi)便可實(shí)現(xiàn)商業(yè)邏輯了。
再次是模型層。一個(gè)好的項(xiàng)目必然有一個(gè)好的軟件結(jié)構(gòu),在建立JAVA類(lèi)之前,根據(jù)項(xiàng)目不同的功能先建立各自的類(lèi)包很關(guān)鍵,這樣能使在開(kāi)發(fā)的時(shí)候不會(huì)因?yàn)檎也坏较嚓P(guān)的類(lèi)而暈頭轉(zhuǎn)向[10]。本系統(tǒng)一共建立了6個(gè)包,分別是my.bean,my.dao,my.action,my.form,my.util,my.base。下面分別對(duì)各個(gè)包里面類(lèi)的作用進(jìn)行簡(jiǎn)單的介紹。
My.bean:主要是存放Javabean類(lèi),主要包括和數(shù)據(jù)庫(kù)中數(shù)據(jù)表的字段相對(duì)應(yīng)的屬性和賦值取值方法。為數(shù)據(jù)操作對(duì)象對(duì)數(shù)據(jù)進(jìn)行操作時(shí)提供盛放數(shù)據(jù)的容器。
My.dao:數(shù)據(jù)操作對(duì)象包。沒(méi)個(gè)類(lèi)中都對(duì)應(yīng)相關(guān)數(shù)據(jù)表的所有數(shù)據(jù)增刪查改操作方法。
My.action:嚴(yán)格來(lái)說(shuō)這個(gè)包里的類(lèi)應(yīng)該屬于控制層。和struts-config.xml文件聯(lián)合作用。該包的類(lèi)全部繼承自struts包中的Action類(lèi)。通過(guò)復(fù)寫(xiě)execute()方法來(lái)實(shí)現(xiàn)業(yè)務(wù)邏輯。
My.form:表單類(lèi),所有從頁(yè)面提交的表單,通過(guò)struts-config.xml文件關(guān)聯(lián)后都能和此包中的類(lèi)進(jìn)行自動(dòng)匹配。本包中類(lèi)的結(jié)果類(lèi)似于bean,只不過(guò)所有屬性都是和表單中的參數(shù)名對(duì)應(yīng)的。在創(chuàng)建相應(yīng)的賦值取值方法之外,如果表單需要驗(yàn)證的話(huà),必須復(fù)寫(xiě)父類(lèi)的validate()方法實(shí)現(xiàn)表單的驗(yàn)證。
My.util:實(shí)用工具類(lèi)。輔助類(lèi)包,主要放一些重復(fù)使用次數(shù)較多的類(lèi)文件。如數(shù)據(jù)庫(kù)連接類(lèi)Conn。
My.base:基本類(lèi)。里面存放和struts驗(yàn)證機(jī)制和國(guó)際化相關(guān)聯(lián)的properties文件和用來(lái)解決頁(yè)面顯示亂碼問(wèn)題的過(guò)濾器CharacterEncodingFilter類(lèi)文件。(struts-config.xml和web.xml文件見(jiàn)附錄三)
系統(tǒng)需要的Mysql數(shù)據(jù)庫(kù)驅(qū)動(dòng)類(lèi)和struts外部包放在WebContent目錄下的WEB-INF中的lib文件夾下。
源程序的文件結(jié)構(gòu)視圖如圖3-6。
圖3-6源程序的文件結(jié)構(gòu)視圖
4主要功能模塊概述
4.1用戶(hù)注冊(cè)模塊4.1.1流程分析
如果用戶(hù)要使用為系統(tǒng)提供的日志功能,那么在使用之前必須先注冊(cè)。注冊(cè)方式很簡(jiǎn)單在首頁(yè)登陸模塊內(nèi)點(diǎn)擊進(jìn)入注冊(cè)頁(yè)面。頁(yè)面中的用戶(hù)信息用戶(hù)名和密碼為必填項(xiàng)。若此兩項(xiàng)信息未正確填寫(xiě)將返回到注冊(cè)頁(yè)面并且顯示錯(cuò)誤信息。執(zhí)行入庫(kù)操作之前先查詢(xún)用戶(hù)名是否已經(jīng)存在,若已存在則返回注冊(cè)頁(yè)面顯示錯(cuò)誤提示。為保障系統(tǒng)的安全性,用戶(hù)在注冊(cè)成功之后,需等待管理員審批。在審批通過(guò)之后方能成為正式用戶(hù),使用該系統(tǒng)相關(guān)功能。用戶(hù)注冊(cè)過(guò)程活動(dòng)圖如圖4-1。
圖4-1用戶(hù)注冊(cè)過(guò)程
藥品監(jiān)管風(fēng)險(xiǎn)點(diǎn) 藥品質(zhì)量論文 藥品營(yíng)銷(xiāo)論文 藥品監(jiān)管論文 藥品質(zhì)量管理 藥品實(shí)訓(xùn)總結(jié) 藥品監(jiān)管 藥品經(jīng)營(yíng)管理 藥品信息 藥品畢業(yè)論文 紀(jì)律教育問(wèn)題 新時(shí)代教育價(jià)值觀