藥品進銷存管理系統(tǒng)(論文畢業(yè)設(shè)計)分享_第1頁
藥品進銷存管理系統(tǒng)(論文畢業(yè)設(shè)計)分享_第2頁
藥品進銷存管理系統(tǒng)(論文畢業(yè)設(shè)計)分享_第3頁
藥品進銷存管理系統(tǒng)(論文畢業(yè)設(shè)計)分享_第4頁
藥品進銷存管理系統(tǒng)(論文畢業(yè)設(shè)計)分享_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 1 - / 43目目 錄錄摘摘 要要 .- - 3 3 - -第一章第一章 緒論緒論 .- - 5 5 - -1.1 開發(fā)背景 .- 5 -1.2 系統(tǒng)可行性分析 .- 6 -1.3 技術(shù)分析 .- 6 -第二章第二章 系統(tǒng)分析與設(shè)計系統(tǒng)分析與設(shè)計 .- - 9 9 - -2.1 系統(tǒng)需求分析 .- 9 -2.2 系統(tǒng)開發(fā)技術(shù)、環(huán)境、軟件的選擇 .- 11 -第三章第三章 數(shù)據(jù)庫設(shè)計與實現(xiàn)數(shù)據(jù)庫設(shè)計與實現(xiàn) .- - 1212 - -3.1 MYSQL 簡介 .- 12 -3.2 數(shù)據(jù)庫需求分析 .- 12 -3.3 數(shù)據(jù)庫邏輯設(shè)計 .- 13

2、 -3.4 數(shù)據(jù)庫結(jié)構(gòu)創(chuàng)建 .- 13 -第四章第四章 系統(tǒng)詳細設(shè)計系統(tǒng)詳細設(shè)計 .- - 1515 - -4.1 JSP 連接和打開數(shù)據(jù)庫 .- 15 -4.2 登錄界面 .- 16 -4.3 各項功能設(shè)計 .- 20 -第五章第五章 系統(tǒng)界面介紹系統(tǒng)界面介紹 .- - 2626 - -5.1 管理員模塊介紹 .- 26 -5.2 普通用戶功能介紹 .- 28 -第六章第六章 結(jié)論與展望結(jié)論與展望 .- - 2929 - -致致 謝謝 .- - 3030 - -參考文獻參考文獻 .- - 3131 - -附錄附錄 .- - 3232 - -真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。-

3、2 - / 43圖片清單圖片清單圖 1.1 B/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖 .- 7 -圖 1.2 C/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖 .- 7 -圖 2.1 系統(tǒng)功能模塊圖.- 10 -圖 3.1 藥品圖片實體 E-R 圖.- 13 -圖 3.2 用戶實體 E-R 圖.- 13 -圖 3.3 用戶、藥品之間關(guān)系 E-R 圖.- 13 -圖 3.4 用戶表 drug.- 14 -圖 4.1 網(wǎng)站首頁圖.- 16 -圖 4.2 管理員主界面.- 18 -圖 4.3 普通用戶主界面.- 18 -圖 4.4 藥品修改.- 21 -圖 4.5 藥品銷售.- 23 -圖 4.6 密碼修改.- 23 -圖 5

4、.1 管理員登錄界面.- 26 -圖 5.2 登錄后顯示 .- 26 -圖 5.3 藥品信息.- 26 -圖 5.4 藥品修改 .- 27 -圖 5.5 刪除藥品.- 27 -圖 5.6 添加藥品.- 27 -圖 5.7 修改密碼.- 27 -圖 5.8 添加用戶.- 27 -圖 5.9 普通用戶登錄.- 28 -圖 5.10 普通用戶登錄后顯示.- 28 -圖 5.11 藥品查詢.- 28 -圖 5.12 藥品銷售.- 28 -圖 5.13 密碼修改.- 28 -真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 3 - / 43基于基于 B/SB/S 模式藥品進銷存系統(tǒng)模式藥品進銷存系統(tǒng)摘

5、 要:本系統(tǒng)是基于 JSP 技術(shù)建立的藥品進銷存管理系統(tǒng),其目標是完成醫(yī)院對藥品的進、銷、存進行管理。該藥品進銷存管理系統(tǒng)是針對醫(yī)院醫(yī)藥管理方面而開發(fā)的一款以藥品管理為基礎(chǔ)(涉及到藥品的基本信息查詢和管理,藥品采購,藥品銷售,藥品存貨等)的藥品信息管理軟件,它代替了匯總信息量繁冗、效率低下的人工管理藥品的方式,代替了查詢、更新、維護更是困難重重的紙張登記時代,以廣泛的調(diào)查為基礎(chǔ),最大程度上滿足使用需求,同時輔助于其他自定義管理的醫(yī)院管理系統(tǒng)來提升醫(yī)院的管理水平,優(yōu)化資源,盡可能降低成本,統(tǒng)籌安排以實現(xiàn)最大效益化,真正意義上的實現(xiàn)了管理的科學化、高效化。系統(tǒng)采用 JSP 技術(shù),以 Tomcat

6、為服務(wù)器、MySQL為數(shù)據(jù)庫系統(tǒng),建立了一個基于 B/S 模式的藥品進銷存管理系統(tǒng)。全文分為五章,按照軟件工程的流程,詳細地介紹了系統(tǒng)設(shè)計及開發(fā)的過程。第一章緒論,介紹了系統(tǒng)開發(fā)背景、可行性分析和采用的技術(shù);第二章系統(tǒng)設(shè)計與分析,包括系統(tǒng)的需求分析、設(shè)計思想、功能設(shè)計;第三章數(shù)據(jù)庫設(shè)計與實現(xiàn),包括數(shù)據(jù)庫的需求分析、邏輯設(shè)計及其數(shù)據(jù)表結(jié)構(gòu)創(chuàng)建;第四章系統(tǒng)詳細設(shè)計,詳細介紹了各功能的編碼設(shè)計和實現(xiàn),討論了系統(tǒng)編碼中的難點和重點問題;第五章系統(tǒng)界面介紹,詳細的介紹了系統(tǒng)每個功能頁面的內(nèi)容與操作。關(guān)鍵詞:JSP;數(shù)據(jù)庫;B/S 模式;進銷存真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 4 - /

7、 43Based on B / S model drugs Invoicing SystemAbstract:The system is based on JSP technology to build a pharmaceutical inventory management system, its goal is to complete the progress of medicine hospitals, sales and stock management. Inventory management system is the drug for the management of ho

8、spital medicine and the development of a basis for drug administration (basic information related to drug inquiry and management, drug procurement, drug sales, drug inventory, etc.) of drug information management software, It replaces the cumbersome summary of information, inefficient way of manual

9、management of drugs, instead of the query, update and maintain the registration of paper even more difficult times, to extensive investigation, based on the maximum extent to meet the application needs, while supporting the other custom management system to improve hospital management hospital manag

10、ement, optimize resources, reduce costs as much as possible to co-ordinate arrangements to achieve the maximum benefit of the true sense of the realization of the management of scientific and efficient. System uses JSP technology to Tomcat for the server, Mysql database system, the establishment of

11、which is based on B / S model drug inventory management system. Paper is divided into five chapters, in accordance with the software engineering process, detailed description of the system design and development process. The first chapter introduces the background of system development, feasibility

12、analysis and the use of technology; Chapter II system design and analysis, including system requirements analysis, design, functional design; database design and implementation of Chapter III, including demand analysis database , logic design and structure of the table to create; IV system detailed

13、design, detailed design of each function and implementation of the coding system is discussed in the difficult and key code issues; fifth chapter describes the system interface, described in detail system for each function and operation of the contents of the page. Keywords: JSP; database; B / S mod

14、e; Invoicing 真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 5 - / 43第一章 緒論Internet 是目前世界上最大的計算機互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個整體。作為 Internet 上一種先進的,易于被人們所接受的信息檢索手段,World Wide Web(簡稱 WWW)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫。據(jù)估計,目前 Internet 上已有上百萬個 Web 站點,其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂、體育等各個領(lǐng)域,其用戶群十分龐大,因此,建設(shè)一個好的 Web 站點對于一個機構(gòu)的發(fā)展十分重要。 近年來

15、,隨著網(wǎng)絡(luò)用戶要求的不斷提高及計算機科學的迅速發(fā)展,特別是數(shù)據(jù)庫技術(shù)在 Internet 中的廣泛應(yīng)用,Web 站點向用戶提供的服務(wù)將越來越豐富,越來越人性化。Web 數(shù)據(jù)庫在新的 Internet 環(huán)境中發(fā)生了很大的變化。就應(yīng)用而言呈現(xiàn)出多樣化的空間,如數(shù)字圖書館、電子出版物、電子商務(wù)、遠程教育系統(tǒng)等的出現(xiàn),給 web 數(shù)據(jù)庫技術(shù)提出了更多、更高的要求。隨著國內(nèi)高校校園網(wǎng)的建設(shè)的追捕完善,基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng)的開發(fā)正在蓬勃發(fā)展并發(fā)揮著較大的作用。例如,我國許多高校的網(wǎng)上招生系統(tǒng),學校的各種管理信息系統(tǒng),學校選課系統(tǒng),還有一些醫(yī)學院校開發(fā)出的網(wǎng)上診所、遠程診斷系統(tǒng)等等,都是基于校園網(wǎng)的應(yīng)用系統(tǒng)

16、。1.1 開發(fā)背景隨著計算機的普及和計算機科學技術(shù)的飛速發(fā)展,人們開始越來越多地利用計算機解決實際問題。進銷存管理是醫(yī)藥行業(yè)管理中的重要部分,面對大量的藥品進銷存信息 ,采用人力畜力將浪費大量時間,人力和物力,并且數(shù)據(jù)準確性低,數(shù)據(jù)匯總速度慢,所以針對醫(yī)藥行業(yè)由于每天銷售量很大,呆賬,錯帳時有發(fā)生且常出現(xiàn)開“空單”的現(xiàn)象 ,開發(fā)一個界面友好,易于操作的進銷存軟件成為醫(yī)藥企業(yè)的首選。通過計算機對企業(yè)信息流通過程中的數(shù)據(jù)進行自動化管理是開發(fā)本系統(tǒng)的主要目的。1.課題研究內(nèi)容和意義隨著社會的發(fā)展,越來越多的醫(yī)院都將普及計算機和網(wǎng)絡(luò)的應(yīng)用。眾所周知,醫(yī)院的藥品管理通常都比較繁瑣,需要耗費大量的人力、物

17、力資源,考慮到降低成本、提高醫(yī)院的管理水平,此次設(shè)計的藥品進銷存管理系統(tǒng)能夠基本實現(xiàn)醫(yī)院對此方面的需求,其將實現(xiàn)以下功能:課題主要研究以下內(nèi)容:(1)掌握采用 Internet 的 TCP/IP 協(xié)議,以 B/S 方式,JSP 編程技術(shù)。(2)掌握一種多任務(wù)多用戶操作系統(tǒng)。真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 6 - / 43(3)JSP 的動態(tài)網(wǎng)頁和 MYSQL 數(shù)據(jù)庫。(4)學會使用幾種開發(fā)工具。2.課題主要工作本文以開發(fā)一套藥品進銷存管理系統(tǒng)為例,詳細的說明了一個系統(tǒng)的開發(fā)過程和所涉及到的問題及解決方法。本文中所做的主要工作如下:(1)掌握 Windows XP+Myecl

18、ipse+JSP+Tomcat 系統(tǒng)的一般原理;(2)闡述整個個性化頁面生成系統(tǒng)的系統(tǒng)結(jié)構(gòu)及工作原理;分析了系統(tǒng)實現(xiàn)中的特殊性、難點和重點;(3) 設(shè)計實現(xiàn)用戶登錄、藥品查詢、藥品添加、藥品銷售等 JSP 頁面 ;(4) 分析并解決實現(xiàn)中的若干技術(shù)問題; (5) 建立完整的藥品進銷存管理系統(tǒng),進行測試并分析結(jié)果。1.2 系統(tǒng)可行性分析(1)技術(shù)可行性本設(shè)計在 windows xp 系統(tǒng)中采用現(xiàn)在較流行的 JSP 編程語言設(shè)計,采用MySQL 建立藥品信息數(shù)據(jù)庫, 利用 Tomcat 服務(wù)器運行程序,以及 JDBC 技術(shù)訪問數(shù)據(jù)庫。對于軟件技術(shù)要求,現(xiàn)在的程序設(shè)計語言已非常成熟,采用 B/S 模

19、式,利用 JSP 技術(shù),使用 MySQL 中提供的數(shù)據(jù)庫。所以在技術(shù)上完全可行。(2)經(jīng)濟可行性當前許多中小型藥房都使用人工管理方式(即紙和筆)來管理藥品的進銷存,這樣的管理方式既困難又浪費時間和成本,并且容易出現(xiàn)漏賬、差賬的情況,因此中小藥房應(yīng)該向大型企業(yè)那樣采用先進的管理方式,提高藥房效率、降低運營成本。(3)操作可行性界面設(shè)計時充分考慮管理人員的習慣,使得操作簡單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計準確;制表靈活;適應(yīng)力強;容易擴充。所以系統(tǒng)操作上完全可行。1.3 技術(shù)分析本系統(tǒng)結(jié)構(gòu)為 B/S 模式,采用 JSP 技術(shù)。網(wǎng)頁制作技術(shù)采用 HTML,采用JavaScript 和 CSS 技術(shù),

20、使得操作方便、快捷,而且界面美觀、大方。1.B/S 和 C/S 模式1)兩種模式的簡介:B/S(Browser/Server,瀏覽器/服務(wù)器)模式又稱 B/S 結(jié)構(gòu)。它是隨著Internet 技術(shù)的興起,對 C/S 模式應(yīng)用的擴展。在這種結(jié)構(gòu)下,軟件應(yīng)用的業(yè)務(wù)邏輯完全在應(yīng)用服務(wù)器端實現(xiàn),用戶表現(xiàn)完全在 Web 服務(wù)器實現(xiàn),客戶端只需要真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 7 - / 43瀏覽器即可進行業(yè)務(wù)處理,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。這種結(jié)構(gòu)更成為當今應(yīng)用軟件的首選體系結(jié)構(gòu)。B/S 模式最大的好處是運行維護比較簡便,能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LA

21、N,WAN,Internet/Intranet 等)訪問和操作共同的數(shù)據(jù);最大的缺點是對企業(yè)外部網(wǎng)絡(luò)環(huán)境依賴性太強,由于各種原因引起企業(yè)外網(wǎng)中斷都會造成系統(tǒng)癱瘓。典型的 B/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖 1.1 所示。C/S (Client/Server,客戶機/服務(wù)器)模式又稱 C/S 結(jié)構(gòu),是軟件系統(tǒng)體系結(jié)構(gòu)的一種,為客戶機和服務(wù)器兩層,客戶機不是毫無運算能力的輸入、輸出設(shè)備,而是據(jù)有了一定的數(shù)據(jù)處理和數(shù)據(jù)存儲能力,通過把應(yīng)用軟件的計算和數(shù)據(jù)合理地分配在客戶機和服務(wù)器兩端,可以有效地降低網(wǎng)絡(luò)通信量和服務(wù)器運算量。C/S 模式簡單地講就是基于企業(yè)內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng)。與B/S(Browser/

22、Server,瀏覽器/服務(wù)器)模式相比,C/S 模式的應(yīng)用系統(tǒng)最大的好處是不依賴企業(yè)外網(wǎng)環(huán)境,即無論企業(yè)是否能夠上網(wǎng),都不影響應(yīng)用。典型的C/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖 1.2 所示。2)兩種模式的比較:(1)投入成本比較:B/S 結(jié)構(gòu)軟件一般只有初期一次性投入成本,而 C/S 結(jié)構(gòu)的軟件則不同,隨著應(yīng)用范圍的擴大,投資會連綿不絕。(2)硬件投資保護比較:應(yīng)用范圍擴大,系統(tǒng)負載上升時,C/S 結(jié)構(gòu)軟件的一般解決方案是購買更高級的中央服務(wù)器,原服務(wù)器放棄不用,這是由于 C/S 軟件的兩層結(jié)構(gòu)造成的,這類軟件的服務(wù)器程序必須部署在一臺計算機上;而 B/S 結(jié)構(gòu)則不同,隨著服務(wù)器負載的增加,可以平

23、滑地增加服務(wù)器的個數(shù),然后在各個服務(wù)器之間做負載均衡。有效地保護了原有硬件投資。(3)數(shù)據(jù)安全性比較:由于 C/S 結(jié)構(gòu)軟件的數(shù)據(jù)分布特性,客戶端所發(fā)生的火災(zāi)、盜搶、病毒、等都成了可怕的數(shù)據(jù)殺手。另外,對于集團級的異地軟件應(yīng)用,C/S 結(jié)構(gòu)的軟件必圖 1.1 B/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖圖 1. 2 C/S 模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 8 - / 43須在各地安裝多個服務(wù)器,并在多個服務(wù)器之間進行數(shù)據(jù)同步。如此一來,每個數(shù)據(jù)點上的數(shù)據(jù)安全都影響了整個應(yīng)用的數(shù)據(jù)安全。所以,對于集團級的大型應(yīng)用來講,C/S 結(jié)構(gòu)軟件的安全性是令人無法接受的。對于 B

24、/S 結(jié)構(gòu)的軟件來講,由于其數(shù)據(jù)集中存放于總部的數(shù)據(jù)庫服務(wù)器,客戶端不保存任何業(yè)務(wù)數(shù)據(jù)和數(shù)據(jù)庫連接信息,也無需進行什么數(shù)據(jù)同步,所以這些安全問題也就自然不存在了。(4)數(shù)據(jù)一致性比較:在 C/S 結(jié)構(gòu)軟件的解決方案里,對于異地經(jīng)營的大型集團都采用各地安裝區(qū)域級服務(wù)器,然后再進行數(shù)據(jù)同步的模式。這些服務(wù)器每天必須同步完畢之后,總部才可得到最終的數(shù)據(jù)。由于局部網(wǎng)絡(luò)故障造成個別數(shù)據(jù)庫不能同步不說,即使同步上來,各服務(wù)器也不是一個時點上的數(shù)據(jù),數(shù)據(jù)永遠無法一致,不能用于決策。對于 B/S 結(jié)構(gòu)的軟件來講,其數(shù)據(jù)是集中存放的,客戶端發(fā)生的每一筆業(yè)務(wù)單據(jù)都直接進入到中央數(shù)據(jù)庫,不存在數(shù)據(jù)一致性的問題。(5

25、)服務(wù)響應(yīng)及時性比較:C/S 結(jié)構(gòu)軟件,由于其應(yīng)用是分布的,需要對每一個使用節(jié)點進行程序安裝,所以,即使非常小的程序缺陷都需要很長的重新部署時間,重新部署時,為了保證各程序版本的一致性,必須暫停一切業(yè)務(wù)進行更新(即休克更新),其服務(wù)響應(yīng)時間基本不可忍受。而 B/S 結(jié)構(gòu)的軟件不同,其應(yīng)用都集中于總部服務(wù)器上,各應(yīng)用結(jié)點并沒有任何程序,一個地方更新則全部應(yīng)用程序更新,可以做到快速服務(wù)響應(yīng)。(6)網(wǎng)絡(luò)應(yīng)用限制比較:C/S 結(jié)構(gòu)軟件僅適用于局域網(wǎng)內(nèi)部用戶或?qū)拵в脩?1M 以上);而 B/S 結(jié)構(gòu)軟件可以適用于任何網(wǎng)絡(luò)結(jié)構(gòu)(包括 28.8K 撥號入網(wǎng)方式),特別適于寬帶不能到達的地方(例如雙匯集團的某

26、些分公司,僅靠電話上網(wǎng)即可正常使用軟件系統(tǒng))。2.JSP 技術(shù)JavaServer Pages 技術(shù)(JSP)是太陽微系統(tǒng)公司(Sun Microsystems Inc.)在 Web 服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)以及開發(fā)工具供應(yīng)商間廣泛支持與合作下,整合并平衡了已經(jīng)存在的對 Java 編程環(huán)境(例如 Java Servlets 和 JavaBeans)進行支持的技術(shù)和工具后產(chǎn)生的一種新的、開發(fā)基于 Web 應(yīng)用程序的方法。JSP 動態(tài)網(wǎng)站開發(fā)技術(shù)主要有以下一些特點:1、能夠在任何 Web 或應(yīng)用程序服務(wù)器上運行;2、分離了應(yīng)用程序的邏輯和頁面顯示;3、能夠進行快速的開發(fā)和測試;4、簡化了開發(fā)基

27、于 Web 的交互式應(yīng)用程序的過程。真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 9 - / 43真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 10 - / 43第二章 系統(tǒng)分析與設(shè)計本章主要從系統(tǒng)的目標設(shè)計、功能設(shè)計和設(shè)計思想等幾個方面闡述了系統(tǒng)的需求分析,最后通過需求分析給出了系統(tǒng)功能模塊設(shè)計與開發(fā)的環(huán)境、技術(shù)和工具。2.1 系統(tǒng)需求分析系統(tǒng)需求分析是系統(tǒng)分析和設(shè)計的一個重要階段,他對系統(tǒng)提出了完整、準確、清晰、具體的要求。1.需求概述系統(tǒng)主要完成藥品進銷存管理系統(tǒng)的各項功能。管理可以對密碼進行修改,查詢藥品信息,對新進藥品進行添加操作;普通用戶可以查詢藥品相關(guān)信息,通過輸入要

28、銷售的藥品編號來對藥品的銷售進行管理。(1)運行環(huán)境:系統(tǒng)基本運行環(huán)境為 Windows 環(huán)境,安裝 Myeclipse,安裝 tomcat 6.0,安裝 MYSQL ,配置好 JDBC,即可在瀏覽器下可以瀏覽。(2)條件與限制:由于系統(tǒng)較小,且在 Windows 系統(tǒng)下開發(fā),故在 Windows 環(huán)境下基本沒有什么限制,只要運行環(huán)境配置正確即可。2.系統(tǒng)設(shè)計目標本系統(tǒng)主要完成以下功能:(1)管理員可以通過登錄界面輸入用戶名和密碼進行身份驗證后登錄主頁面,可以對密碼進行修改,查詢藥品信息,對新進藥品進行添加操作,通過輸入藥品編號對已經(jīng)入庫的藥品進行修改操作。 (2)普通用戶通過登錄界面輸入用戶

29、名和密碼進行身份驗證后登錄主頁面,可以查詢藥品相關(guān)信息,通過輸入要銷售的藥品編號來對藥品的銷售進行管理,查詢相關(guān)的信息,以及藥品的剩余量。3.系統(tǒng)功能需求根據(jù)系統(tǒng)設(shè)計目標,本系統(tǒng)有兩種角色:管理員、普通用戶。每個角色對應(yīng)一個模塊,因此從功能上可以分為對應(yīng)的倆個模塊,每個模塊實現(xiàn)對應(yīng)角色的功能。具體功能模塊圖如圖 2.1 示。真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 11 - / 43圖 2. 1 系統(tǒng)功能模塊圖4.系統(tǒng)設(shè)計思想系統(tǒng)采用 B/S 模式。以數(shù)據(jù)庫服務(wù)器、WEB 服務(wù)器、客戶瀏覽器構(gòu)成一個三層的 B/S 模式體系,具體編程技術(shù)選用 JSP。為什么采用 B/S 模式呢?從第一

30、章緒論中 1.3 節(jié) C/S 和 B/S 模式的介紹中,我們可以很容易得出本系統(tǒng)采用 B/S 模式比較好。本系統(tǒng)應(yīng)用主要針對現(xiàn)代社會需求設(shè)計,考慮到醫(yī)院的藥品數(shù)量較多,而 B/S 模式最大的好處是運行維護比較簡便,能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如 LAN, WAN, Internet/Intranet 等)訪問和操作共同的數(shù)據(jù),因此系統(tǒng)更適合用 B/S 模式構(gòu)建。另外從投入成本比較、硬件投資保護比較、數(shù)據(jù)安全性比較、數(shù)據(jù)一致性比較、服務(wù)響應(yīng)及時性比較、網(wǎng)絡(luò)應(yīng)用限制比較等方面也很容易得出就此系統(tǒng)而言B/S 模式比 C/S 模式優(yōu)越。選用 JSP 的原因很多,主要有以下幾個方

31、面:(1)JSP 通過 JDBC(Java DataBase Connectivity),即 JAVA 數(shù)據(jù)庫連接技術(shù),可以造 JAVA 應(yīng)用程序中與關(guān)系型數(shù)據(jù)庫建立連接,并執(zhí)行相關(guān)操作,它提供了程序開發(fā)人員實時存取各類數(shù)據(jù)庫(如 Access、Oracle、SQL Server)的能力,可以輕松地完成對各類數(shù)據(jù)庫的查詢,存取等操作。(2)在服務(wù)器端,JSP 引擎解釋 JSP 標識和腳本,生成所請求的內(nèi)容(例如,通過訪問 JavaBeans 組件,使用 JDBC 技術(shù)訪問數(shù)據(jù)庫或者包含文件),并且將結(jié)果以HTML(或者 XML)頁面的形式發(fā)送回瀏覽器。這既有助于作者保護自己的代碼,又能保證任何

32、基于 HTML 的 Web 瀏覽器的完全可用性。(3)由于 JSP 頁面的內(nèi)置腳本語言是基于 Java 的,而且所有的 JSP 頁面都被編譯成為 Java Servlets,所以 JSP 頁面具有 Java 技術(shù)的所有好處,包括健壯的存儲管理和安全性。作為 Java 平臺的一部分,JSP 擁有 Java 編程語言“一次編寫,各處運行”的特點。(4)使用普通的文本編輯器即可進行編輯設(shè)計,無須編譯,容易編寫,可在服務(wù)器端直接執(zhí)行。真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 12 - / 432.2 系統(tǒng)開發(fā)技術(shù)、環(huán)境、軟件的選擇做好系統(tǒng)需求分析之后,我們應(yīng)該選擇系統(tǒng)開發(fā)的環(huán)境和合適的技術(shù)去

33、實現(xiàn)系統(tǒng)的功能,還要選擇好合適的支持該技術(shù)的軟件工具。1.開發(fā)技術(shù)網(wǎng)頁開發(fā)離不開 HTML 技術(shù),HTML 制作靜態(tài)的網(wǎng)頁的框架和頁面,再加上CSS 技術(shù)和 JavaScript 這樣的腳本語言,使得網(wǎng)頁漂亮、個性。因為系統(tǒng)采用 B/S 模式,因此必須選擇一種網(wǎng)頁編程技術(shù),像JSP,PHP,ASP 這樣的技術(shù)。因為 JSP 技術(shù)有很多優(yōu)點(在 1.3 JSP 技術(shù)中已經(jīng)介紹) ,因此選擇 JSP 技術(shù)為網(wǎng)頁編程。系統(tǒng)是要和數(shù)據(jù)庫連接的,因此考慮數(shù)據(jù)庫技術(shù)。采用 JSP 技術(shù),部署好服務(wù)器,配置好 ODBC(Open Database Connectivity,開放數(shù)據(jù)庫互連)的 DSN,就可以

34、通過編程控制數(shù)據(jù)庫的數(shù)據(jù)管理。2.JSP 的開發(fā)工具和運行環(huán)境及配置方案1)JSP 的開發(fā)工具:(1)jdk1.5.exe (2)tomcat 6.0(3)myeclipse(4)數(shù)據(jù)庫 mysql (5)輔助工具:MySQL-Front Dreamweaver2)JSP 的運行環(huán)境(1)JSP 系統(tǒng)運行的系統(tǒng)環(huán)境是 Windows 98/ME/2000/XP(2)J2SDK:Java2 的軟件開發(fā)工具,是 Java 應(yīng)用程序的基礎(chǔ)。JSP 是基于 Java技術(shù)的,所以配置 JSP 環(huán)境之前必須要安裝 J2SDK。 (3)Tomcat 服務(wù)器:Apache 組織開發(fā)的一種 JSP 引擎,本身具

35、有 Web 服務(wù)器的功能,可以作為獨立的 Web 服務(wù)器來使用。但是,在作為 Web 服務(wù)器方面,Tomcat處理靜態(tài) HTML 頁面時不如 Apache 迅速,也沒有 Apache 健壯,所以我們一般將Tomcat 與 Apache 配合使用,讓 Apache 對網(wǎng)站的靜態(tài)頁面請求提供服務(wù),而Tomcat 作為專用的 JSP 引擎,提供 JSP 解析,以得到更好的性能。并且 Tomcat本身就是 Apache 的一個子項目,所以 Tomcat 對 Apache 提供了強有力的支持。對于初學者來說,Tomcat 是一個很不錯的選擇。 (4)MySQL:作為本次系統(tǒng)開發(fā)的主要數(shù)據(jù)庫。沒有數(shù)據(jù)庫的

36、支持,JSP 系統(tǒng)將無法運行。它是系統(tǒng)開發(fā)的基本工具。3)JSP 環(huán)境的配置方案采用 J2SDKTomcat,在這種方案里 Tomcat 既作為 JSP 引擎又作為 Web 服務(wù)真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 13 - / 43器,配置比較簡單。真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 14 - / 43第三章 數(shù)據(jù)庫設(shè)計與實現(xiàn)本章簡單介紹了 MYSQL ,然后著重闡述了數(shù)據(jù)庫的需求分析,邏輯設(shè)計及優(yōu)化和數(shù)據(jù)庫表的創(chuàng)建,詳細地介紹了系統(tǒng)數(shù)據(jù)庫的分析、設(shè)計及其實現(xiàn)的過程。3.1 MYSQL 簡介MySQL 是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典 MySQLAB

37、 公司,在2008 年 1 月 16 號被 Sun 公司收購。MySQL 被廣泛地應(yīng)用在 Internet 上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了 MySQL 作為網(wǎng)站數(shù)據(jù)庫。 MySQL 數(shù)據(jù)庫主要有以下特點。1、可移植性使用 C 和 C+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性。2、可擴展性和靈活性MySQL 可以支持 UNIX、Linux 和 SUNOS 以及 Windows 等多種操作系統(tǒng)平臺。在一個操作系統(tǒng)中實現(xiàn)的應(yīng)用可以很方便地移植到其他操作系統(tǒng)。MySQL 作為開源性質(zhì)的 數(shù)據(jù)庫

38、服務(wù)器,可以為那些想要增加獨特需求的用戶提供完全定制的功能。3、強大的數(shù)據(jù)保護功能MySQL 有一個非常靈活且安全的權(quán)限和密碼系統(tǒng)。為確保只有獲授權(quán)用戶才能進入該數(shù)據(jù)庫服務(wù)器,所有的密碼傳輸均采用加密形式,同時也提供了 SSH和 SSI。支持,以實現(xiàn)安全和可靠的連接。MySQL 強大的數(shù)據(jù)加密和解密功能,可以保證敏感數(shù)據(jù)不受未經(jīng)授權(quán)的訪問。4、支持大型的數(shù)據(jù)庫雖然對于用 PHP 編寫的網(wǎng)頁來說,只要能夠存放數(shù)百條以上的記錄數(shù)據(jù)就是夠了,但 MySQL 可以方便地支持上千萬條記錄的數(shù)據(jù)庫。作為一個開放源代碼的數(shù)據(jù)庫,MySQL 可以針對不同的應(yīng)用進行相應(yīng)的修改。5、超強的穩(wěn)定性MySQL 擁有一

39、個非??焖俣曳€(wěn)定的基于線程的內(nèi)存分配系統(tǒng),可以持續(xù)使用而不必擔心其穩(wěn)定性。線程是輕量級的進程,它可以靈活地為用戶提供服務(wù),而不占用過多的系統(tǒng)資源。用多線程和 C 語言實現(xiàn)的 MySQL 能很容易地充分利用CPU。6、強大的查詢功能真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 15 - / 43MySQL 支持查詢的 select 和 where 語句的全部運算符和函數(shù),并且可以在同一查詢中混用來自不同數(shù)據(jù)庫的表,從而使得查詢變得快捷、方便。3.2 數(shù)據(jù)庫需求分析系統(tǒng)中的實體有:藥品、用戶。關(guān)系有:管理員或普通用戶管理藥品。(1)藥品實體 E-R 圖如圖 3.1 示。(2) 用戶實體 E

40、-R 圖如圖 3.2 示。(3)用戶和藥品之間關(guān)系的 E-R 圖。用戶和藥品之間是 1 對 n 的管理關(guān)系,也就是說一名用戶可以管理多個藥品;而一種藥品也可以被管理員和普通用戶兩種用戶管理。E-R 圖如圖 3.3 示。3.3 數(shù)據(jù)庫邏輯設(shè)計數(shù)據(jù)庫的邏輯設(shè)計就是把 E-R 圖轉(zhuǎn)化為所選用 DBMS 產(chǎn)品所支持的數(shù)據(jù)模型。本系統(tǒng)數(shù)據(jù)庫系統(tǒng)為 MYSQL ,因此將 E-R 模型轉(zhuǎn)化為關(guān)系數(shù)據(jù)模型即可。由圖 3.1 中 E-R 模型可得到以下關(guān)系模式(以下關(guān)系模式中下劃線表示主鍵): 藥品(藥品編號,藥品通用名,藥品化學名,批準文號,產(chǎn)品類別,劑型,規(guī)格,專利號,成分,用法用量,主治功能,生產(chǎn)廠家,進

41、價,售價,數(shù)量,生產(chǎn)日期,過期日期,采購負責人,售出負責人,有效期) ;用戶(用戶 ID,用戶名,密碼,用戶類型) ;圖 3. 3 用戶、藥品之間關(guān)系 E-R 圖圖 3. 2 用戶實體 E-R 圖圖 3. 1 藥品圖片實體 E-R 圖真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 16 - / 433.4 數(shù)據(jù)庫結(jié)構(gòu)創(chuàng)建數(shù)據(jù)庫采用 MYSQL,通過 SQL 語句在 MySQL Command line client 中可以方便的建立數(shù)據(jù)庫以及數(shù)據(jù)表,也可以通過 MySQL-Front 建立數(shù)據(jù)庫及數(shù)據(jù)表。分別建立藥品信息表(drug)、用戶表(user) 。 下邊僅以創(chuàng)建用戶表為例:(在

42、MySQL Command line client 中輸入)CREATE TABLE user ( user_id char(6) NOT NULL COMMENT 用戶 ID, user_name char(10) NOT NULL COMMENT 用戶名稱, user_password char(6) NOT NULL COMMENT 用戶密碼, user_type char(8) NOT NULL COMMENT 用戶類型, user_else char(50) DEFAULT NULL, PRIMARY KEY (user_id) ENGINE=InnoDB DEFAULT CHARS

43、ET=utf8 COMMENT=用戶表;創(chuàng)建后表的結(jié)構(gòu)如右邊圖 3.4 所示。用戶表存用戶編碼、用戶名、密碼、用戶類型。藥品信息表存貯藥品編碼、藥品通用名、進價、售價、售出人等信息。圖 3. 4 用戶表 DRUG真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 17 - / 43第四章 系統(tǒng)詳細設(shè)計本章詳細介紹了系統(tǒng)的編碼實現(xiàn)過程。按照功能模塊分別介紹了管理員模塊和普通用戶模塊的設(shè)計,著重介紹了系統(tǒng)編碼實現(xiàn)中的難點和重點。4.1 JSP 連接和打開數(shù)據(jù)庫JSP 和數(shù)據(jù)庫連接有多種方式。本系統(tǒng)采用 JDBC 連接數(shù)據(jù)庫,通過DriverManager 類連接數(shù)據(jù)源。DriverManager

44、的類路徑為 java.sql.DriverManager,它主要完成驅(qū)動程序的裝載和建立新的數(shù)據(jù)庫連接。java.sql.DriverManager 的常用方法如下: 1.getConnection(String URL):參數(shù) URL 表示數(shù)據(jù)庫鏈接地址,該方法輸出 Connection 對象。 2.getConnection(String URL,String username,String password):參數(shù) URL 表示數(shù)據(jù)庫連接地址,參數(shù) username 表示登錄數(shù)據(jù)庫用戶名,參數(shù)password 表示登錄數(shù)據(jù)庫口令。該方法輸出 Connection 對象。在 MyEclip

45、se 中新建 web 工程,選擇 JavaEE5.0 規(guī)范,工程名為 jdbc.將JDBC 驅(qū)動 mysql-connector-java-5.0 驅(qū)動包復(fù)制到 D:medicineWebRootWEB-INFlib 目錄下。在該工程中新建包,包名為 common。在包中新建一個 Java 類,類名為 ConnectToDb,在類中編寫以下代碼:package common;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class ConnectToDb

46、private Connection conn = null;private String dburl = jdbc:mysql:/localhost:3306/medicine?user=root&password=root&useUnicode=true&characterEncoding=GBK;private String dbdriver = com.mysql.jdbc.Driver;public ConnectToDb() try Class.forName(dbdriver); catch (ClassNotFoundException cnfe) System.out.pri

47、ntln(cnfe.getMessage(); 真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 18 - / 43protected Connection getConn() try conn = DriverManager.getConnection(dburl, root, 123); catch (SQLException sqle) System.out.println(sqle.getMessage();return conn; 在 MyEclipse 中運行該類,即可連接上數(shù)據(jù)庫。4.2 登錄界面本系統(tǒng)首頁界面為登錄界面,登陸界面主要是 2 個文本框分別輸入用戶名和密碼,一個下

48、拉框選擇登陸類型,首頁界面如圖 4.1 示。界面 JSP 程序如下示。藥品信息管理系統(tǒng)-管理首頁 藥品信息管理系統(tǒng) 圖 4. 1 網(wǎng)站首頁圖真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 19 - / 43 *用戶登錄* 用戶名 *6 個字符 密 碼 *6 個字符 類 型 普通用戶 管理員 *用戶類型 真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 20 - / 43   Copyright© 萬成鳳 tel1.管理員登錄后主界面管理員主界面包括藥品信息修改、查詢、添加、刪除、添加用戶等圖標。首頁界面如圖 4.2 示。2.用戶登錄后主界面用

49、戶主界面包括藥品信息查詢、銷售、刪除、修改密碼。首頁界面如圖 4.3示。3.登陸服務(wù)器訪問驗證 先讀取用戶提交的用戶名、密碼和用戶類型,并且去掉空格,然后對密碼進行加密。根據(jù)用戶類型在對應(yīng)的表中查找是否有符合的數(shù)據(jù),沒有查找到就給用戶提示,返回首頁,以便用戶重新登陸。如果找了符合的數(shù)據(jù),設(shè)置session(“username”)為用戶名,session(user)為用戶姓名,根據(jù)用戶登錄類型設(shè)置 session(pass)。圖 4. 3 普通用戶主界面圖 4. 2 管理員主界面真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 21 - / 43package servlet.login;im

50、port java.io.*;import javax.servlet.*;import javax.servlet.http.*;import java.sql.ResultSet;import java.sql.SQLException;import beans.User;import common.*;public class Login extends HttpServlet protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException

51、 this.doPost(req, resp);protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding(GBK);resp.setCharacterEncoding(UTF-8);resp.setContentType(text/html;charset=UTF-8);PrintWriter out = resp.getWriter();HttpSession session = req

52、.getSession(); String user_id = req.getParameter(user_id);String password = req.getParameter(password);String type = req.getParameter(type);if (.equals(user_id) | null = user_id) out.println(用戶 ID 為空!);resp.setHeader(Refresh, 1;URL=index.JSP);else if (.equals(password) | null = password) out.println

53、(用戶密碼為空!);resp.setHeader(Refresh, 1;URL=index.jsp); else OperateDB opdb = new OperateDB();StringBuffer sql = new StringBuffer(SELECT * FROM user + WHERE user_name = + user_id + AND 真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 22 - / 43+ user_type= + type + AND user_password=+ password + );ResultSet rs = opdb.executeQu

54、ery(sql.toString();try if (rs.next() User user = new User();user.setUser_id(rs.getInt(1);user.setUser_name(rs.getString(2);user.setUser_password(password);user.setUser_type(type);user.setUser_else(null);if(user.getUser_type().equalsIgnoreCase(common)user.setUser_type(普通用戶);elseuser.setUser_type(超級用戶

55、);session.setAttribute(user,user);session.setAttribute(user_id, user_id);resp.sendRedirect(user/loginsuccess.jsp); else out.println();resp.setHeader(Refresh, 2;URL=index.jsp); catch (SQLException e) e.printStackTrace();使用 Session 對象存儲特定的用戶會話所需的信息。當用戶在應(yīng)用程序的頁之間跳轉(zhuǎn)時,存儲在 Session 對象中的變量不會清除;而用戶在應(yīng)用程序中訪問頁時,

56、這些變量始終存在。也可以使用 Session 方法顯式地結(jié)束一個會話和真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 23 - / 43設(shè)置空閑會話的超時期限。4.3 各項功能設(shè)計1.管理員功能模塊設(shè)計 管理員可以通過登錄界面輸入用戶名和密碼進行身份驗證后登錄主頁面,可以對密碼進行修改,查詢藥品信息,對新進藥品進行添加操作,通過輸入藥 品編號對已經(jīng)入庫的藥品進行修改操作。 1)查詢功能設(shè)計這個模塊很簡單,只是從數(shù)據(jù)庫中把和用戶有關(guān)的藥品信息數(shù)據(jù)讀取出來,以表格形式顯示在網(wǎng)頁上即可。使用 SQL 查詢語句,調(diào)用 OperateDB 類即可很容易把藥品的信息數(shù)據(jù)讀取出來,以表格形式在網(wǎng)頁上顯示

57、??梢酝ㄟ^藥品編碼、藥品通用名、藥品化學名查詢到藥品信息。主要代碼如下:String drug_name= req.getParameter(checkname); String cmethod = req.getParameter(method);OperateDB opdb = new OperateDB(); StringBuffer sql= new StringBuffer(); if(cmethod.equals(cid) sql.append(SELECT * FROM drug WHERE drug_id =+ drug_name +);else if(cmethod.equa

58、ls(cname) sql.append(SELECT * FROM drug WHERE drug_name like %+ drug_name +%);else if(cmethod.equals(ccname) sql.append(SELECT * FROM drug WHERE drug_cname like %+ drug_name +%);2)藥品信息修改此功能是管理員輸入要修改藥品的編碼,確定,在表格中修改藥品信息,提交即可。網(wǎng)頁界面如圖4.4 示。主要代碼如下:public class Update extends HttpServletprotected void 圖 4.

59、4 藥品修改真誠為您提供優(yōu)質(zhì)參考資料,若有不當之處,請指正。- 24 - / 43doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException this.doPost(req, resp);protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding(GBK);resp.s

60、etCharacterEncoding(UTF-8);resp.setContentType(text/html;charset=UTF-8);PrintWriter out = resp.getWriter(); HttpSession session = req.getSession(); String drug_id = req.getParameter(drug_id);StringBuffer sql = new StringBuffer(SELECT * FROM drug WHERE drug_id = + drug_id +);OperateDB opdb = new Oper

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論