歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類(lèi) > DOC文檔下載  

藥品進(jìn)銷(xiāo)存管理系統(tǒng)

  • 資源ID:73926253       資源大小:1.67MB        全文頁(yè)數(shù):39頁(yè)
  • 資源格式: DOC        下載積分:16積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要16積分
郵箱/手機(jī):
溫馨提示:
用戶(hù)名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢(xún)和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類(lèi)文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

藥品進(jìn)銷(xiāo)存管理系統(tǒng)

目 錄摘 要- 3 -第一章 緒論- 5 -1.1 開(kāi)發(fā)背景- 5 -1.2 系統(tǒng)可行性分析- 6 -1.3 技術(shù)分析- 6 -第二章 系統(tǒng)分析與設(shè)計(jì)- 9 -2.1 系統(tǒng)需求分析- 9 -2.2 系統(tǒng)開(kāi)發(fā)技術(shù)、環(huán)境、軟件的選擇- 11 -第三章 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)- 12 -3.1 MYSQL 簡(jiǎn)介- 12 -3.2 數(shù)據(jù)庫(kù)需求分析- 12 -3.3 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)- 13 -3.4 數(shù)據(jù)庫(kù)結(jié)構(gòu)創(chuàng)建- 13 -第四章 系統(tǒng)詳細(xì)設(shè)計(jì)- 15 -4.1 JSP連接和打開(kāi)數(shù)據(jù)庫(kù)- 15 -4.2 登錄界面- 16 -4.3 各項(xiàng)功能設(shè)計(jì)- 20 -第五章 系統(tǒng)界面介紹- 26 -5.1 管理員模塊介紹- 26 -5.2 普通用戶(hù)功能介紹- 28 -第六章 結(jié)論與展望- 29 -致 謝- 30 -參考文獻(xiàn)- 31 -附錄- 32 -圖片清單圖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 藥品圖片實(shí)體E-R圖- 13 -圖3.2 用戶(hù)實(shí)體E-R圖- 13 -圖3.3 用戶(hù)、藥品之間關(guān)系E-R圖- 13 -圖3.4 用戶(hù)表 drug- 14 -圖4.1 網(wǎng)站首頁(yè)圖- 16 -圖4.2 管理員主界面- 18 -圖4.3 普通用戶(hù)主界面- 18 -圖4.4 藥品修改- 21 -圖4.5 藥品銷(xiāo)售- 23 -圖4.6 密碼修改- 23 -圖5.1 管理員登錄界面- 26 -圖5.2登錄后顯示- 26 -圖5.3 藥品信息- 26 -圖5.4藥品修改- 27 -圖5.5 刪除藥品- 27 -圖5.6 添加藥品- 27 -圖5.7 修改密碼- 27 -圖5.8 添加用戶(hù)- 27 -圖5.9 普通用戶(hù)登錄- 28 -圖5.10 普通用戶(hù)登錄后顯示- 28 -圖5.11 藥品查詢(xún)- 28 -圖5.12 藥品銷(xiāo)售- 28 -圖5.13 密碼修改- 28 -基于B/S模式藥品進(jìn)銷(xiāo)存系統(tǒng)摘 要:本系統(tǒng)是基于JSP技術(shù)建立的藥品進(jìn)銷(xiāo)存管理系統(tǒng),其目標(biāo)是完成醫(yī)院對(duì)藥品的進(jìn)、銷(xiāo)、存進(jìn)行管理。該藥品進(jìn)銷(xiāo)存管理系統(tǒng)是針對(duì)醫(yī)院醫(yī)藥管理方面而開(kāi)發(fā)的一款以藥品管理為基礎(chǔ)(涉及到藥品的基本信息查詢(xún)和管理,藥品采購(gòu),藥品銷(xiāo)售,藥品存貨等)的藥品信息管理軟件,它代替了匯總信息量繁冗、效率低下的人工管理藥品的方式,代替了查詢(xún)、更新、維護(hù)更是困難重重的紙張登記時(shí)代,以廣泛的調(diào)查為基礎(chǔ),最大程度上滿(mǎn)足使用需求,同時(shí)輔助于其他自定義管理的醫(yī)院管理系統(tǒng)來(lái)提升醫(yī)院的管理水平,優(yōu)化資源,盡可能降低成本,統(tǒng)籌安排以實(shí)現(xiàn)最大效益化,真正意義上的實(shí)現(xiàn)了管理的科學(xué)化、高效化。系統(tǒng)采用JSP技術(shù),以Tomcat為服務(wù)器、MySQL為數(shù)據(jù)庫(kù)系統(tǒng),建立了一個(gè)基于B/S模式的藥品進(jìn)銷(xiāo)存管理系統(tǒng)。全文分為五章,按照軟件工程的流程,詳細(xì)地介紹了系統(tǒng)設(shè)計(jì)及開(kāi)發(fā)的過(guò)程。第一章緒論,介紹了系統(tǒng)開(kāi)發(fā)背景、可行性分析和采用的技術(shù);第二章系統(tǒng)設(shè)計(jì)與分析,包括系統(tǒng)的需求分析、設(shè)計(jì)思想、功能設(shè)計(jì);第三章數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn),包括數(shù)據(jù)庫(kù)的需求分析、邏輯設(shè)計(jì)及其數(shù)據(jù)表結(jié)構(gòu)創(chuàng)建;第四章系統(tǒng)詳細(xì)設(shè)計(jì),詳細(xì)介紹了各功能的編碼設(shè)計(jì)和實(shí)現(xiàn),討論了系統(tǒng)編碼中的難點(diǎn)和重點(diǎn)問(wèn)題;第五章系統(tǒng)界面介紹,詳細(xì)的介紹了系統(tǒng)每個(gè)功能頁(yè)面的內(nèi)容與操作。關(guān)鍵詞:JSP;數(shù)據(jù)庫(kù);B/S模式;進(jìn)銷(xiāo)存Based 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 hospital 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 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 management, 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 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 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 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 mode; Invoicing 第一章 緒論Internet是目前世界上最大的計(jì)算機(jī)互聯(lián)網(wǎng)絡(luò),它遍布全球,將世界各地各種規(guī)模的網(wǎng)絡(luò)連接成一個(gè)整體。作為Internet上一種先進(jìn)的,易于被人們所接受的信息檢索手段,World Wide Web(簡(jiǎn)稱(chēng)WWW)發(fā)展十分迅速,成為目前世界上最大的信息資源寶庫(kù)。據(jù)估計(jì),目前Internet上已有上百萬(wàn)個(gè)Web站點(diǎn),其內(nèi)容范圍跨越了教育科研、文化事業(yè)、金融、商業(yè)、新聞出版、娛樂(lè)、體育等各個(gè)領(lǐng)域,其用戶(hù)群十分龐大,因此,建設(shè)一個(gè)好的Web站點(diǎn)對(duì)于一個(gè)機(jī)構(gòu)的發(fā)展十分重要。 近年來(lái),隨著網(wǎng)絡(luò)用戶(hù)要求的不斷提高及計(jì)算機(jī)科學(xué)的迅速發(fā)展,特別是數(shù)據(jù)庫(kù)技術(shù)在Internet中的廣泛應(yīng)用,Web站點(diǎn)向用戶(hù)提供的服務(wù)將越來(lái)越豐富,越來(lái)越人性化。Web數(shù)據(jù)庫(kù)在新的Internet環(huán)境中發(fā)生了很大的變化。就應(yīng)用而言呈現(xiàn)出多樣化的空間,如數(shù)字圖書(shū)館、電子出版物、電子商務(wù)、遠(yuǎn)程教育系統(tǒng)等的出現(xiàn),給web數(shù)據(jù)庫(kù)技術(shù)提出了更多、更高的要求。隨著國(guó)內(nèi)高校校園網(wǎng)的建設(shè)的追捕完善,基于互聯(lián)網(wǎng)的應(yīng)用系統(tǒng)的開(kāi)發(fā)正在蓬勃發(fā)展并發(fā)揮著較大的作用。例如,我國(guó)許多高校的網(wǎng)上招生系統(tǒng),學(xué)校的各種管理信息系統(tǒng),學(xué)校選課系統(tǒng),還有一些醫(yī)學(xué)院校開(kāi)發(fā)出的網(wǎng)上診所、遠(yuǎn)程診斷系統(tǒng)等等,都是基于校園網(wǎng)的應(yīng)用系統(tǒng)。1.1 開(kāi)發(fā)背景隨著計(jì)算機(jī)的普及和計(jì)算機(jī)科學(xué)技術(shù)的飛速發(fā)展,人們開(kāi)始越來(lái)越多地利用計(jì)算機(jī)解決實(shí)際問(wèn)題。進(jìn)銷(xiāo)存管理是醫(yī)藥行業(yè)管理中的重要部分,面對(duì)大量的藥品進(jìn)銷(xiāo)存信息 ,采用人力畜力將浪費(fèi)大量時(shí)間,人力和物力,并且數(shù)據(jù)準(zhǔn)確性低,數(shù)據(jù)匯總速度慢,所以針對(duì)醫(yī)藥行業(yè)由于每天銷(xiāo)售量很大,呆賬,錯(cuò)帳時(shí)有發(fā)生且常出現(xiàn)開(kāi)“空單”的現(xiàn)象 ,開(kāi)發(fā)一個(gè)界面友好,易于操作的進(jìn)銷(xiāo)存軟件成為醫(yī)藥企業(yè)的首選。通過(guò)計(jì)算機(jī)對(duì)企業(yè)信息流通過(guò)程中的數(shù)據(jù)進(jìn)行自動(dòng)化管理是開(kāi)發(fā)本系統(tǒng)的主要目的。1.課題研究?jī)?nèi)容和意義隨著社會(huì)的發(fā)展,越來(lái)越多的醫(yī)院都將普及計(jì)算機(jī)和網(wǎng)絡(luò)的應(yīng)用。眾所周知,醫(yī)院的藥品管理通常都比較繁瑣,需要耗費(fèi)大量的人力、物力資源,考慮到降低成本、提高醫(yī)院的管理水平,此次設(shè)計(jì)的藥品進(jìn)銷(xiāo)存管理系統(tǒng)能夠基本實(shí)現(xiàn)醫(yī)院對(duì)此方面的需求,其將實(shí)現(xiàn)以下功能:課題主要研究以下內(nèi)容:(1)掌握采用Internet的TCP/IP協(xié)議,以B/S方式,JSP編程技術(shù)。(2)掌握一種多任務(wù)多用戶(hù)操作系統(tǒng)。(3)JSP的動(dòng)態(tài)網(wǎng)頁(yè)和MYSQL 數(shù)據(jù)庫(kù)。(4)學(xué)會(huì)使用幾種開(kāi)發(fā)工具。2.課題主要工作本文以開(kāi)發(fā)一套藥品進(jìn)銷(xiāo)存管理系統(tǒng)為例,詳細(xì)的說(shuō)明了一個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程和所涉及到的問(wèn)題及解決方法。本文中所做的主要工作如下:(1)掌握Windows XP+Myeclipse+JSP+Tomcat系統(tǒng)的一般原理;(2)闡述整個(gè)個(gè)性化頁(yè)面生成系統(tǒng)的系統(tǒng)結(jié)構(gòu)及工作原理;分析了系統(tǒng)實(shí)現(xiàn)中的特殊性、難點(diǎn)和重點(diǎn);(3) 設(shè)計(jì)實(shí)現(xiàn)用戶(hù)登錄、藥品查詢(xún)、藥品添加、藥品銷(xiāo)售等JSP頁(yè)面 ;(4) 分析并解決實(shí)現(xiàn)中的若干技術(shù)問(wèn)題; (5) 建立完整的藥品進(jìn)銷(xiāo)存管理系統(tǒng),進(jìn)行測(cè)試并分析結(jié)果。1.2 系統(tǒng)可行性分析(1)技術(shù)可行性本設(shè)計(jì)在windows xp系統(tǒng)中采用現(xiàn)在較流行的JSP編程語(yǔ)言設(shè)計(jì),采用MySQL建立藥品信息數(shù)據(jù)庫(kù), 利用Tomcat服務(wù)器運(yùn)行程序,以及JDBC技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)。對(duì)于軟件技術(shù)要求,現(xiàn)在的程序設(shè)計(jì)語(yǔ)言已非常成熟,采用B/S模式,利用JSP技術(shù),使用MySQL中提供的數(shù)據(jù)庫(kù)。所以在技術(shù)上完全可行。(2)經(jīng)濟(jì)可行性當(dāng)前許多中小型藥房都使用人工管理方式(即紙和筆)來(lái)管理藥品的進(jìn)銷(xiāo)存,這樣的管理方式既困難又浪費(fèi)時(shí)間和成本,并且容易出現(xiàn)漏賬、差賬的情況,因此中小藥房應(yīng)該向大型企業(yè)那樣采用先進(jìn)的管理方式,提高藥房效率、降低運(yùn)營(yíng)成本。(3)操作可行性界面設(shè)計(jì)時(shí)充分考慮管理人員的習(xí)慣,使得操作簡(jiǎn)單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計(jì)準(zhǔn)確;制表靈活;適應(yīng)力強(qiáng);容易擴(kuò)充。所以系統(tǒng)操作上完全可行。1.3 技術(shù)分析本系統(tǒng)結(jié)構(gòu)為B/S模式,采用JSP技術(shù)。網(wǎng)頁(yè)制作技術(shù)采用HTML,采用JavaScript和CSS技術(shù),使得操作方便、快捷,而且界面美觀、大方。1.B/S和C/S模式1)兩種模式的簡(jiǎn)介:B/S(Browser/Server,瀏覽器/服務(wù)器)模式又稱(chēng)B/S結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對(duì)C/S模式應(yīng)用的擴(kuò)展。在這種結(jié)構(gòu)下,軟件應(yīng)用的業(yè)務(wù)邏輯完全在應(yīng)用服務(wù)器端實(shí)現(xiàn),用戶(hù)表現(xiàn)完全在Web服務(wù)器實(shí)現(xiàn),客戶(hù)端只需要瀏覽器即可進(jìn)行業(yè)務(wù)處理,是一種全新的軟件系統(tǒng)構(gòu)造技術(shù)。這種結(jié)構(gòu)更成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。B/S模式最大的好處是運(yùn)行維護(hù)比較簡(jiǎn)便,能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù);最大的缺點(diǎn)是對(duì)企業(yè)外部網(wǎng)絡(luò)環(huán)境依賴(lài)性太強(qiáng),由于各種原因引起企業(yè)外網(wǎng)中斷都會(huì)造成系統(tǒng)癱瘓。典型的B/S模式應(yīng)用系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1.1所示。圖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)圖C/S (Client/Server,客戶(hù)機(jī)/服務(wù)器)模式又稱(chēng)C/S結(jié)構(gòu),是軟件系統(tǒng)體系結(jié)構(gòu)的一種,為客戶(hù)機(jī)和服務(wù)器兩層,客戶(hù)機(jī)不是毫無(wú)運(yùn)算能力的輸入、輸出設(shè)備,而是據(jù)有了一定的數(shù)據(jù)處理和數(shù)據(jù)存儲(chǔ)能力,通過(guò)把應(yīng)用軟件的計(jì)算和數(shù)據(jù)合理地分配在客戶(hù)機(jī)和服務(wù)器兩端,可以有效地降低網(wǎng)絡(luò)通信量和服務(wù)器運(yùn)算量。C/S模式簡(jiǎn)單地講就是基于企業(yè)內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng)。與B/S(Browser/Server,瀏覽器/服務(wù)器)模式相比,C/S模式的應(yīng)用系統(tǒng)最大的好處是不依賴(lài)企業(yè)外網(wǎng)環(huán)境,即無(wú)論企業(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)用范圍的擴(kuò)大,投資會(huì)連綿不絕。(2)硬件投資保護(hù)比較:應(yīng)用范圍擴(kuò)大,系統(tǒng)負(fù)載上升時(shí),C/S結(jié)構(gòu)軟件的一般解決方案是購(gòu)買(mǎi)更高級(jí)的中央服務(wù)器,原服務(wù)器放棄不用,這是由于C/S軟件的兩層結(jié)構(gòu)造成的,這類(lèi)軟件的服務(wù)器程序必須部署在一臺(tái)計(jì)算機(jī)上;而B(niǎo)/S結(jié)構(gòu)則不同,隨著服務(wù)器負(fù)載的增加,可以平滑地增加服務(wù)器的個(gè)數(shù),然后在各個(gè)服務(wù)器之間做負(fù)載均衡。有效地保護(hù)了原有硬件投資。(3)數(shù)據(jù)安全性比較:由于C/S結(jié)構(gòu)軟件的數(shù)據(jù)分布特性,客戶(hù)端所發(fā)生的火災(zāi)、盜搶、病毒、等都成了可怕的數(shù)據(jù)殺手。另外,對(duì)于集團(tuán)級(jí)的異地軟件應(yīng)用,C/S結(jié)構(gòu)的軟件必須在各地安裝多個(gè)服務(wù)器,并在多個(gè)服務(wù)器之間進(jìn)行數(shù)據(jù)同步。如此一來(lái),每個(gè)數(shù)據(jù)點(diǎn)上的數(shù)據(jù)安全都影響了整個(gè)應(yīng)用的數(shù)據(jù)安全。所以,對(duì)于集團(tuán)級(jí)的大型應(yīng)用來(lái)講,C/S結(jié)構(gòu)軟件的安全性是令人無(wú)法接受的。對(duì)于B/S結(jié)構(gòu)的軟件來(lái)講,由于其數(shù)據(jù)集中存放于總部的數(shù)據(jù)庫(kù)服務(wù)器,客戶(hù)端不保存任何業(yè)務(wù)數(shù)據(jù)和數(shù)據(jù)庫(kù)連接信息,也無(wú)需進(jìn)行什么數(shù)據(jù)同步,所以這些安全問(wèn)題也就自然不存在了。(4)數(shù)據(jù)一致性比較:在C/S結(jié)構(gòu)軟件的解決方案里,對(duì)于異地經(jīng)營(yíng)的大型集團(tuán)都采用各地安裝區(qū)域級(jí)服務(wù)器,然后再進(jìn)行數(shù)據(jù)同步的模式。這些服務(wù)器每天必須同步完畢之后,總部才可得到最終的數(shù)據(jù)。由于局部網(wǎng)絡(luò)故障造成個(gè)別數(shù)據(jù)庫(kù)不能同步不說(shuō),即使同步上來(lái),各服務(wù)器也不是一個(gè)時(shí)點(diǎn)上的數(shù)據(jù),數(shù)據(jù)永遠(yuǎn)無(wú)法一致,不能用于決策。對(duì)于B/S結(jié)構(gòu)的軟件來(lái)講,其數(shù)據(jù)是集中存放的,客戶(hù)端發(fā)生的每一筆業(yè)務(wù)單據(jù)都直接進(jìn)入到中央數(shù)據(jù)庫(kù),不存在數(shù)據(jù)一致性的問(wèn)題。(5)服務(wù)響應(yīng)及時(shí)性比較:C/S結(jié)構(gòu)軟件,由于其應(yīng)用是分布的,需要對(duì)每一個(gè)使用節(jié)點(diǎn)進(jìn)行程序安裝,所以,即使非常小的程序缺陷都需要很長(zhǎng)的重新部署時(shí)間,重新部署時(shí),為了保證各程序版本的一致性,必須暫停一切業(yè)務(wù)進(jìn)行更新(即"休克更新"),其服務(wù)響應(yīng)時(shí)間基本不可忍受。而B(niǎo)/S結(jié)構(gòu)的軟件不同,其應(yīng)用都集中于總部服務(wù)器上,各應(yīng)用結(jié)點(diǎn)并沒(méi)有任何程序,一個(gè)地方更新則全部應(yīng)用程序更新,可以做到快速服務(wù)響應(yīng)。(6)網(wǎng)絡(luò)應(yīng)用限制比較:C/S結(jié)構(gòu)軟件僅適用于局域網(wǎng)內(nèi)部用戶(hù)或?qū)拵в脩?hù)(1M以上);而B(niǎo)/S結(jié)構(gòu)軟件可以適用于任何網(wǎng)絡(luò)結(jié)構(gòu)(包括28.8K撥號(hào)入網(wǎng)方式),特別適于寬帶不能到達(dá)的地方(例如雙匯集團(tuán)的某些分公司,僅靠電話上網(wǎng)即可正常使用軟件系統(tǒng))。2.JSP技術(shù)JavaServer Pages技術(shù)(JSP)是太陽(yáng)微系統(tǒng)公司(Sun Microsystems Inc.)在Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)以及開(kāi)發(fā)工具供應(yīng)商間廣泛支持與合作下,整合并平衡了已經(jīng)存在的對(duì)Java編程環(huán)境(例如Java Servlets和JavaBeans)進(jìn)行支持的技術(shù)和工具后產(chǎn)生的一種新的、開(kāi)發(fā)基于Web應(yīng)用程序的方法。JSP動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)技術(shù)主要有以下一些特點(diǎn):1、能夠在任何Web或應(yīng)用程序服務(wù)器上運(yùn)行;2、分離了應(yīng)用程序的邏輯和頁(yè)面顯示;3、能夠進(jìn)行快速的開(kāi)發(fā)和測(cè)試;4、簡(jiǎn)化了開(kāi)發(fā)基于Web的交互式應(yīng)用程序的過(guò)程。第二章 系統(tǒng)分析與設(shè)計(jì)本章主要從系統(tǒng)的目標(biāo)設(shè)計(jì)、功能設(shè)計(jì)和設(shè)計(jì)思想等幾個(gè)方面闡述了系統(tǒng)的需求分析,最后通過(guò)需求分析給出了系統(tǒng)功能模塊設(shè)計(jì)與開(kāi)發(fā)的環(huán)境、技術(shù)和工具。2.1 系統(tǒng)需求分析系統(tǒng)需求分析是系統(tǒng)分析和設(shè)計(jì)的一個(gè)重要階段,他對(duì)系統(tǒng)提出了完整、準(zhǔn)確、清晰、具體的要求。1.需求概述系統(tǒng)主要完成藥品進(jìn)銷(xiāo)存管理系統(tǒng)的各項(xiàng)功能。管理可以對(duì)密碼進(jìn)行修改,查詢(xún)藥品信息,對(duì)新進(jìn)藥品進(jìn)行添加操作;普通用戶(hù)可以查詢(xún)藥品相關(guān)信息,通過(guò)輸入要銷(xiāo)售的藥品編號(hào)來(lái)對(duì)藥品的銷(xiāo)售進(jìn)行管理。(1)運(yùn)行環(huán)境:系統(tǒng)基本運(yùn)行環(huán)境為Windows環(huán)境,安裝Myeclipse,安裝tomcat 6.0,安裝MYSQL ,配置好JDBC,即可在瀏覽器下可以瀏覽。(2)條件與限制:由于系統(tǒng)較小,且在Windows系統(tǒng)下開(kāi)發(fā),故在Windows環(huán)境下基本沒(méi)有什么限制,只要運(yùn)行環(huán)境配置正確即可。2.系統(tǒng)設(shè)計(jì)目標(biāo)本系統(tǒng)主要完成以下功能:(1)管理員可以通過(guò)登錄界面輸入用戶(hù)名和密碼進(jìn)行身份驗(yàn)證后登錄主頁(yè)面,可以對(duì)密碼進(jìn)行修改,查詢(xún)藥品信息,對(duì)新進(jìn)藥品進(jìn)行添加操作,通過(guò)輸入藥品編號(hào)對(duì)已經(jīng)入庫(kù)的藥品進(jìn)行修改操作。 (2)普通用戶(hù)通過(guò)登錄界面輸入用戶(hù)名和密碼進(jìn)行身份驗(yàn)證后登錄主頁(yè)面,可以查詢(xún)藥品相關(guān)信息,通過(guò)輸入要銷(xiāo)售的藥品編號(hào)來(lái)對(duì)藥品的銷(xiāo)售進(jìn)行管理,查詢(xún)相關(guān)的信息,以及藥品的剩余量。3.系統(tǒng)功能需求根據(jù)系統(tǒng)設(shè)計(jì)目標(biāo),本系統(tǒng)有兩種角色:管理員、普通用戶(hù)。每個(gè)角色對(duì)應(yīng)一個(gè)模塊,因此從功能上可以分為對(duì)應(yīng)的倆個(gè)模塊,每個(gè)模塊實(shí)現(xiàn)對(duì)應(yīng)角色的功能。具體功能模塊圖如圖2.1示。圖2. 1 系統(tǒng)功能模塊圖4.系統(tǒng)設(shè)計(jì)思想系統(tǒng)采用B/S模式。以數(shù)據(jù)庫(kù)服務(wù)器、WEB服務(wù)器、客戶(hù)瀏覽器構(gòu)成一個(gè)三層的B/S模式體系,具體編程技術(shù)選用JSP。為什么采用B/S模式呢?從第一章緒論中1.3節(jié)C/S和B/S模式的介紹中,我們可以很容易得出本系統(tǒng)采用B/S模式比較好。本系統(tǒng)應(yīng)用主要針對(duì)現(xiàn)代社會(huì)需求設(shè)計(jì),考慮到醫(yī)院的藥品數(shù)量較多,而B(niǎo)/S模式最大的好處是運(yùn)行維護(hù)比較簡(jiǎn)便,能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù),因此系統(tǒng)更適合用B/S模式構(gòu)建。另外從投入成本比較、硬件投資保護(hù)比較、數(shù)據(jù)安全性比較、數(shù)據(jù)一致性比較、服務(wù)響應(yīng)及時(shí)性比較、網(wǎng)絡(luò)應(yīng)用限制比較等方面也很容易得出就此系統(tǒng)而言B/S模式比C/S模式優(yōu)越。選用JSP的原因很多,主要有以下幾個(gè)方面:(1)JSP通過(guò)JDBC(Java DataBase Connectivity),即JAVA數(shù)據(jù)庫(kù)連接技術(shù),可以造JAVA應(yīng)用程序中與關(guān)系型數(shù)據(jù)庫(kù)建立連接,并執(zhí)行相關(guān)操作,它提供了程序開(kāi)發(fā)人員實(shí)時(shí)存取各類(lèi)數(shù)據(jù)庫(kù)(如Access、Oracle、SQL Server)的能力,可以輕松地完成對(duì)各類(lèi)數(shù)據(jù)庫(kù)的查詢(xún),存取等操作。(2)在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和腳本,生成所請(qǐng)求的內(nèi)容(例如,通過(guò)訪問(wèn)JavaBeans組件,使用JDBC技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)或者包含文件),并且將結(jié)果以HTML(或者XML)頁(yè)面的形式發(fā)送回瀏覽器。這既有助于作者保護(hù)自己的代碼,又能保證任何基于HTML的Web瀏覽器的完全可用性。(3)由于JSP頁(yè)面的內(nèi)置腳本語(yǔ)言是基于Java的,而且所有的JSP頁(yè)面都被編譯成為Java Servlets,所以JSP頁(yè)面具有Java技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。作為Java平臺(tái)的一部分,JSP擁有Java編程語(yǔ)言“一次編寫(xiě),各處運(yùn)行”的特點(diǎn)。(4)使用普通的文本編輯器即可進(jìn)行編輯設(shè)計(jì),無(wú)須編譯,容易編寫(xiě),可在服務(wù)器端直接執(zhí)行。2.2 系統(tǒng)開(kāi)發(fā)技術(shù)、環(huán)境、軟件的選擇做好系統(tǒng)需求分析之后,我們應(yīng)該選擇系統(tǒng)開(kāi)發(fā)的環(huán)境和合適的技術(shù)去實(shí)現(xiàn)系統(tǒng)的功能,還要選擇好合適的支持該技術(shù)的軟件工具。1.開(kāi)發(fā)技術(shù)網(wǎng)頁(yè)開(kāi)發(fā)離不開(kāi)HTML技術(shù),HTML制作靜態(tài)的網(wǎng)頁(yè)的框架和頁(yè)面,再加上CSS技術(shù)和JavaScript這樣的腳本語(yǔ)言,使得網(wǎng)頁(yè)漂亮、個(gè)性。因?yàn)橄到y(tǒng)采用B/S模式,因此必須選擇一種網(wǎng)頁(yè)編程技術(shù),像JSP,PHP,ASP這樣的技術(shù)。因?yàn)镴SP技術(shù)有很多優(yōu)點(diǎn)(在1.3 JSP技術(shù)中已經(jīng)介紹),因此選擇JSP技術(shù)為網(wǎng)頁(yè)編程。系統(tǒng)是要和數(shù)據(jù)庫(kù)連接的,因此考慮數(shù)據(jù)庫(kù)技術(shù)。采用JSP技術(shù),部署好服務(wù)器,配置好ODBC(Open Database Connectivity,開(kāi)放數(shù)據(jù)庫(kù)互連)的DSN,就可以通過(guò)編程控制數(shù)據(jù)庫(kù)的數(shù)據(jù)管理。2.JSP的開(kāi)發(fā)工具和運(yùn)行環(huán)境及配置方案1)JSP的開(kāi)發(fā)工具:(1)jdk1.5.exe (2)tomcat 6.0(3)myeclipse(4)數(shù)據(jù)庫(kù)mysql (5)輔助工具:MySQL-Front Dreamweaver2)JSP的運(yùn)行環(huán)境(1)JSP系統(tǒng)運(yùn)行的系統(tǒng)環(huán)境是Windows 98/ME/2000/XP(2)J2SDK:Java2的軟件開(kāi)發(fā)工具,是Java應(yīng)用程序的基礎(chǔ)。JSP是基于Java技術(shù)的,所以配置JSP環(huán)境之前必須要安裝J2SDK。 (3)Tomcat服務(wù)器:Apache組織開(kāi)發(fā)的一種JSP引擎,本身具有Web服務(wù)器的功能,可以作為獨(dú)立的Web服務(wù)器來(lái)使用。但是,在作為Web服務(wù)器方面,Tomcat處理靜態(tài)HTML頁(yè)面時(shí)不如Apache迅速,也沒(méi)有Apache健壯,所以我們一般將Tomcat與Apache配合使用,讓Apache對(duì)網(wǎng)站的靜態(tài)頁(yè)面請(qǐng)求提供服務(wù),而Tomcat作為專(zhuān)用的JSP引擎,提供JSP解析,以得到更好的性能。并且Tomcat本身就是Apache的一個(gè)子項(xiàng)目,所以Tomcat對(duì)Apache提供了強(qiáng)有力的支持。對(duì)于初學(xué)者來(lái)說(shuō),Tomcat是一個(gè)很不錯(cuò)的選擇。 (4)MySQL:作為本次系統(tǒng)開(kāi)發(fā)的主要數(shù)據(jù)庫(kù)。沒(méi)有數(shù)據(jù)庫(kù)的支持,JSP系統(tǒng)將無(wú)法運(yùn)行。它是系統(tǒng)開(kāi)發(fā)的基本工具。3)JSP環(huán)境的配置方案采用J2SDKTomcat,在這種方案里Tomcat既作為JSP引擎又作為Web服務(wù)器,配置比較簡(jiǎn)單。第三章 數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)本章簡(jiǎn)單介紹了MYSQL ,然后著重闡述了數(shù)據(jù)庫(kù)的需求分析,邏輯設(shè)計(jì)及優(yōu)化和數(shù)據(jù)庫(kù)表的創(chuàng)建,詳細(xì)地介紹了系統(tǒng)數(shù)據(jù)庫(kù)的分析、設(shè)計(jì)及其實(shí)現(xiàn)的過(guò)程。3.1 MYSQL 簡(jiǎn)介MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQLAB公司,在2008年1月16號(hào)被Sun 公司收購(gòu)。MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。 MySQL數(shù)據(jù)庫(kù)主要有以下特點(diǎn)。1、可移植性使用C和C+編寫(xiě),并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。2、可擴(kuò)展性和靈活性MySQL可以支持UNIX、Linux和SUNOS以及Windows等多種操作系統(tǒng)平臺(tái)。在一個(gè)操作系統(tǒng)中實(shí)現(xiàn)的應(yīng)用可以很方便地移植到其他操作系統(tǒng)。MySQL作為開(kāi)源性質(zhì)的 數(shù)據(jù)庫(kù)服務(wù)器,可以為那些想要增加獨(dú)特需求的用戶(hù)提供完全定制的功能。3、強(qiáng)大的數(shù)據(jù)保護(hù)功能MySQL有一個(gè)非常靈活且安全的權(quán)限和密碼系統(tǒng)。為確保只有獲授權(quán)用戶(hù)才能進(jìn)入該數(shù)據(jù)庫(kù)服務(wù)器,所有的密碼傳輸均采用加密形式,同時(shí)也提供了 SSH和SSI。支持,以實(shí)現(xiàn)安全和可靠的連接。MySQL強(qiáng)大的數(shù)據(jù)加密和解密功能,可以保證敏感數(shù)據(jù)不受未經(jīng)授權(quán)的訪問(wèn)。4、支持大型的數(shù)據(jù)庫(kù)雖然對(duì)于用PHP編寫(xiě)的網(wǎng)頁(yè)來(lái)說(shuō),只要能夠存放數(shù)百條以上的記錄數(shù)據(jù)就是夠了,但MySQL可以方便地支持上千萬(wàn)條記錄的數(shù)據(jù)庫(kù)。作為一個(gè)開(kāi)放源代碼的數(shù)據(jù)庫(kù),MySQL可以針對(duì)不同的應(yīng)用進(jìn)行相應(yīng)的修改。5、超強(qiáng)的穩(wěn)定性MySQL擁有一個(gè)非??焖俣曳€(wěn)定的基于線程的內(nèi)存分配系統(tǒng),可以持續(xù)使用而不必?fù)?dān)心其穩(wěn)定性。線程是輕量級(jí)的進(jìn)程,它可以靈活地為用戶(hù)提供服務(wù),而不占用過(guò)多的系統(tǒng)資源。用多線程和C語(yǔ)言實(shí)現(xiàn)的MySQL能很容易地充分利用CPU。6、強(qiáng)大的查詢(xún)功能MySQL支持查詢(xún)的select和where語(yǔ)句的全部運(yùn)算符和函數(shù),并且可以在同一查詢(xún)中混用來(lái)自不同數(shù)據(jù)庫(kù)的表,從而使得查詢(xún)變得快捷、方便。3.2 數(shù)據(jù)庫(kù)需求分析系統(tǒng)中的實(shí)體有:藥品、用戶(hù)。關(guān)系有:管理員或普通用戶(hù)管理藥品。(1)藥品實(shí)體E-R圖如圖3.1示。(2) 用戶(hù)實(shí)體E-R圖如圖3.2示。(3)用戶(hù)和藥品之間關(guān)系的E-R圖。圖3. 3 用戶(hù)、藥品之間關(guān)系E-R圖用戶(hù)和藥品之間是1對(duì)n的管理關(guān)系,也就是說(shuō)一名用戶(hù)可以管理多個(gè)藥品;而一種藥品也可以被管理員和普通用戶(hù)兩種用戶(hù)管理。E-R圖如圖3.3示。圖3. 2 用戶(hù)實(shí)體E-R圖圖3. 1 藥品圖片實(shí)體E-R圖3.3 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)就是把E-R圖轉(zhuǎn)化為所選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型。本系統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)為MYSQL ,因此將E-R模型轉(zhuǎn)化為關(guān)系數(shù)據(jù)模型即可。由圖3.1中E-R模型可得到以下關(guān)系模式(以下關(guān)系模式中下劃線表示主鍵): 藥品(藥品編號(hào),藥品通用名,藥品化學(xué)名,批準(zhǔn)文號(hào),產(chǎn)品類(lèi)別,劑型,規(guī)格,專(zhuān)利號(hào),成分,用法用量,主治功能,生產(chǎn)廠家,進(jìn)價(jià),售價(jià),數(shù)量,生產(chǎn)日期,過(guò)期日期,采購(gòu)負(fù)責(zé)人,售出負(fù)責(zé)人,有效期);用戶(hù)(用戶(hù)ID,用戶(hù)名,密碼,用戶(hù)類(lèi)型);3.4 數(shù)據(jù)庫(kù)結(jié)構(gòu)創(chuàng)建數(shù)據(jù)庫(kù)采用MYSQL,通過(guò)SQL語(yǔ)句在MySQL Command line client中可以方便的建立數(shù)據(jù)庫(kù)以及數(shù)據(jù)表,也可以通過(guò)MySQL-Front建立數(shù)據(jù)庫(kù)及數(shù)據(jù)表。分別建立藥品信息表(drug)、用戶(hù)表(user)。 下邊僅以創(chuàng)建用戶(hù)表為例:(在MySQL Command line client中輸入)CREATE TABLE user ( user_id char(6) NOT NULL COMMENT '用戶(hù)ID', user_name char(10) NOT NULL COMMENT '用戶(hù)名稱(chēng)', user_password char(6) NOT NULL COMMENT '用戶(hù)密碼', user_type char(8) NOT NULL COMMENT '用戶(hù)類(lèi)型', user_else char(50) DEFAULT NULL, PRIMARY KEY (user_id) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用戶(hù)表'創(chuàng)建后表的結(jié)構(gòu)如右邊圖3.4所示。用戶(hù)表存用戶(hù)編碼、用戶(hù)名、密碼、用戶(hù)類(lèi)型。藥品信息表存貯藥品編碼、藥品通用名、進(jìn)價(jià)、售價(jià)、售出人等信息。圖3. 4 用戶(hù)表 drug第四章 系統(tǒng)詳細(xì)設(shè)計(jì)本章詳細(xì)介紹了系統(tǒng)的編碼實(shí)現(xiàn)過(guò)程。按照功能模塊分別介紹了管理員模塊和普通用戶(hù)模塊的設(shè)計(jì),著重介紹了系統(tǒng)編碼實(shí)現(xiàn)中的難點(diǎn)和重點(diǎn)。4.1 JSP連接和打開(kāi)數(shù)據(jù)庫(kù)JSP和數(shù)據(jù)庫(kù)連接有多種方式。本系統(tǒng)采用JDBC連接數(shù)據(jù)庫(kù),通過(guò)DriverManager 類(lèi)連接數(shù)據(jù)源。DriverManager的類(lèi)路徑為 java.sql.DriverManager,它主要完成驅(qū)動(dòng)程序的裝載和建立新的數(shù)據(jù)庫(kù)連接。java.sql.DriverManager的常用方法如下: 1.getConnection(String URL):參數(shù)URL表示數(shù)據(jù)庫(kù)鏈接地址,該方法輸出Connection對(duì)象。 2.getConnection(String URL,String username,String password):參數(shù)URL表示數(shù)據(jù)庫(kù)連接地址,參數(shù)username表示登錄數(shù)據(jù)庫(kù)用戶(hù)名,參數(shù)password表示登錄數(shù)據(jù)庫(kù)口令。該方法輸出Connection對(duì)象。在MyEclipse中新建web工程,選擇JavaEE5.0規(guī)范,工程名為jdbc.將JDBC驅(qū)動(dòng)mysql-connector-java-5.0驅(qū)動(dòng)包復(fù)制到D:medicineWebRootWEB-INFlib目錄下。在該工程中新建包,包名為common。在包中新建一個(gè)Java類(lèi),類(lèi)名為ConnectToDb,在類(lèi)中編寫(xiě)以下代碼:package common;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class ConnectToDb 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.println(cnfe.getMessage(); protected Connection getConn() try conn = DriverManager.getConnection(dburl, "root", "123"); catch (SQLException sqle) System.out.println(sqle.getMessage();return conn; 在MyEclipse中運(yùn)行該類(lèi),即可連接上數(shù)據(jù)庫(kù)。4.2 登錄界面本系統(tǒng)首頁(yè)界面為登錄界面,登陸界面主要是2個(gè)文本框分別輸入用戶(hù)名和密碼,一個(gè)下拉框選擇登陸類(lèi)型,首頁(yè)界面如圖4.1示。界面JSP程序如下示。<%page contentType="text/html;charset=utf-8" language="java" import="java.sql.*" errorPage="" %><html xmlns="http:/www.w3.org/1999/xhtml">圖4. 1 網(wǎng)站首頁(yè)圖<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>藥品信息管理系統(tǒng)-管理首頁(yè)</title></head><body><form id="form1" name="form1" method="post" action="login"> <div align="center"><span class="STYLE13">藥品信息管理系統(tǒng)</span><br /> <strong><em></em></strong><br /> <br /> <br /> <br /> <br /> </div> <center> <table width="322" height="149" border="1"> <tr> <td colspan="3"><div align="center" class="STYLE7 STYLE11">*<span class="STYLE19">用戶(hù)登錄</span>*</div></td> </tr> <tr> <td width="59" height="23"><div align="right" class="STYLE14 STYLE19">用戶(hù)名</div></td> <td width="154"><input name="user_id" type="text" class="STYLE7" size="20" maxlength="6" value="admin"/></td> <td width="87" class="STYLE22">*6個(gè)字符</td> </tr> <tr> <td height="23"><div align="right" class="STYLE15">密 碼</div></td> <td><input name="password" type="password" size="22" maxlength="6" value="123456"/></td> <td class="STYLE22">*6個(gè)字符</td> </tr> <tr> <td height="23"><div align="right" class="STYLE15">類(lèi) 型</div></td> <td><select align=left name="type"> <option value=""></option> <option value="common">普通用戶(hù)</option> <option value="super" selected>管理員</option> </select> </td> <td class="STYLE22">*用戶(hù)類(lèi)型</td> </tr> <tr> <td height="36" colspan="3"><div align="right" class="STYLE15"></div> <input name="Submit" type="submit" class="STYLE13" value="登錄" /> <input name="Submit2" type="reset" class="STYLE13" value="重置" /></td> </tr> </table> <p>&nbsp;</p> <p class="STYLE24">Copyright&copy; 萬(wàn)成鳳 tel:18214752533 </p> </center></form></body></html>1.管理員登錄后主界面管理員主界面包括藥品信息修改、查詢(xún)、添加、刪除、添加用戶(hù)等圖標(biāo)。首頁(yè)界面如圖4.2示。2.用戶(hù)登錄后主界面圖4. 3 普通用戶(hù)主界面用戶(hù)主界面包括藥品信息查詢(xún)、銷(xiāo)售、刪除、修改密碼。首頁(yè)界面如圖4.3示。圖4. 2 管理員主界面3.登陸服務(wù)器訪問(wèn)驗(yàn)證 先讀取用戶(hù)提交的用戶(hù)名、密碼和用戶(hù)類(lèi)型,并且去掉空格,然后對(duì)密碼進(jìn)行加密。根據(jù)用戶(hù)類(lèi)型在對(duì)應(yīng)的表中查找是否有符合的數(shù)據(jù),沒(méi)有查找到就給用戶(hù)提示,返回首頁(yè),以便用戶(hù)重新登陸。如果找了符合的數(shù)據(jù),設(shè)置session(“username”)為用戶(hù)名,session("user")為用戶(hù)姓名,根據(jù)用戶(hù)登錄類(lèi)型設(shè)置session("pass")。package servlet.login;import 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 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.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("用戶(hù)ID為空!");resp.setHeader("Refresh", "1;URL=index.JSP");else if ("".equals(password) | null = password) out.println("用戶(hù)密碼為空!");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 "+ "user_type='" + type + "' AND user_password='"+ password + "'");ResultSet rs = opdb.executeQuery(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("普通用戶(hù)");elseuser.setUser_type("超級(jí)用戶(hù)");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 對(duì)象存儲(chǔ)特定的用戶(hù)會(huì)話所需的信息。當(dāng)用戶(hù)在應(yīng)用程序的頁(yè)之間跳轉(zhuǎn)時(shí),存儲(chǔ)在 Session 對(duì)象中的變量不會(huì)清除;而用戶(hù)在應(yīng)用程序中訪問(wèn)頁(yè)時(shí),這些變量始終存在。也可以使用 Session 方法顯式地結(jié)束一個(gè)會(huì)話和設(shè)置空閑會(huì)話的超時(shí)期限。4.3 各項(xiàng)功能設(shè)計(jì)1.管理員功能模塊設(shè)計(jì) 管理員可以通過(guò)登錄界面輸入用戶(hù)名和密碼進(jìn)行身份驗(yàn)證后登錄主頁(yè)面,可以對(duì)密碼進(jìn)行修改,查詢(xún)藥品信息,對(duì)新進(jìn)藥品進(jìn)行添加操作,通過(guò)輸入藥 品編號(hào)對(duì)已經(jīng)入庫(kù)的藥品進(jìn)行修改操作。 1)查詢(xún)功能設(shè)計(jì)這個(gè)模塊很簡(jiǎn)單,只是從數(shù)據(jù)庫(kù)中把和用戶(hù)有關(guān)的藥品信息數(shù)據(jù)讀取出來(lái),以表格形式顯示在網(wǎng)頁(yè)上即可。使用SQL查詢(xún)語(yǔ)句,調(diào)用OperateDB類(lèi)即可很容易把藥品的信息數(shù)據(jù)讀取出來(lái),以表格形式在網(wǎng)頁(yè)上顯示??梢酝ㄟ^(guò)藥品編碼、藥品通用名、藥品化學(xué)名查詢(xún)到藥品信息。主要代碼如下: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.equals("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)藥品信息修改圖 4.4 藥品修改此功能是管理員輸入要修改藥品的編碼,確定,在表格中修改藥品信息,提交即可。網(wǎng)頁(yè)界面如圖4.4示。主要代碼如下:public class Update extends HttpServletprotected void doGet(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.setCharacterEncoding("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 OperateDB(); ResultSet rs = opdb.executeQuery(sql.toString();ArrayList<Drug> druglist = new ArrayList<Drug>();3)藥品添加管理員可以通過(guò)輸入新的藥品信息,添加新藥品。核心程序代碼如下:OperateDB db = new OperateDB();String else1 = null;String

注意事項(xiàng)

本文(藥品進(jìn)銷(xiāo)存管理系統(tǒng))為本站會(huì)員(gu****n)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!