超市管理系統(tǒng)修改后_第1頁
超市管理系統(tǒng)修改后_第2頁
超市管理系統(tǒng)修改后_第3頁
超市管理系統(tǒng)修改后_第4頁
超市管理系統(tǒng)修改后_第5頁
已閱讀5頁,還剩47頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、L蕪湖職業(yè)技術(shù)學(xué)院畢 業(yè) 論 文題 目 超市管理系統(tǒng) 院系名稱: 蕪湖職業(yè)技術(shù)學(xué)院 專業(yè)班級: 08網(wǎng)絡(luò) 學(xué)生姓名: 胡晶晶 學(xué) 號: 80402205 指導(dǎo)教師: 呂強 2011 年 4 月 2 日摘 要鑒于超市管理中存在的諸多問題, 我們在此次課程設(shè)計中以超市管理系統(tǒng)為研究課題,對此系統(tǒng)進(jìn)行了全面的設(shè)計。本系統(tǒng)涵蓋了超市進(jìn)銷存管理的主要業(yè)務(wù),能夠為管理層和員工提供快速、準(zhǔn)確的數(shù)據(jù)。根據(jù)用戶的需求,該系統(tǒng)分為以下幾個模塊,供應(yīng)商信息管理,客戶信息管理模塊,庫存管理模塊,銷售信息管理模塊,系統(tǒng)用戶管理模塊等,用戶可對信息進(jìn)行保存、更新、查詢、修改、刪除和添加等操作。同時,本系統(tǒng)有助于提高貿(mào)易公

2、司信息管理的規(guī)范化和專業(yè)化程度。根據(jù)系統(tǒng)所需功能,決定以J2EE為開發(fā)平臺,采用SQL Server 2000做后臺數(shù)據(jù)庫,Tomcat作為系統(tǒng)服務(wù)器,選擇功能強大的MyEclipse為開發(fā)工具進(jìn)行開發(fā)。前臺頁面使用JSP,并且使用了基于MVC機制的Struts技術(shù)。實踐證明:該系統(tǒng)經(jīng)濟、實用,具有良好的拓展性、穩(wěn)定性、安全性、可靠性。關(guān)鍵字:超市 管理 JSPAbstract In view of the supermarket management exists many problems in the course design, we in the supermarket manage

3、ment system as the research subject, this system, the overall design.This system includes in all businesses of trade company goods management and provides accurate date for managers and staffs. According to the needs of users, this system is divided into these following modules, the suppliers manage

4、ment module, the customer management module, the warehouse management module, sales information management, system users information management, and users can save, update, query, modify, delete and add information. At the same time, the system helps to the standardization and specialization of trad

5、e company information management.On the base of the function need, the exploitation platform adopts Windows 2000 server, Background database users SQL Server 2000 and by way of MyEclipse to builder. In the technology, the forward I use JSP and use Struts frame that is at the base of the MVC. Practic

6、e proves that this system is economical and practical and has good expansibility, stability, security and reliability.Key words: supermarket management jsp目 錄第一章 引言41.1 選題背景41.2 課題目的41.3 課題意義51.4 需要解決的問題5第二章 需求分析62.1 可行性研究62.1.1 經(jīng)濟可行性62.1.2 技術(shù)可行性62.1.3 運行可行性72.2 需求分析72.2.1 系統(tǒng)需求分析72.2.2 性能需求分析72.2.3

7、應(yīng)用需求分析82.2.4 運行需求分析82.2.5 系統(tǒng)的開發(fā)環(huán)境82.2.6 其他需求分析10第三章 系統(tǒng)概要設(shè)計以及相關(guān)技術(shù)簡介113.1 模塊設(shè)計.113.2 JSP簡介.143.3 JSP技術(shù)簡介 143.4 JSP的特點 153.5 SQLSERVER 2000 數(shù)據(jù)庫 .163.6 系統(tǒng)數(shù)據(jù)庫連接 17第四章 數(shù)據(jù)庫設(shè)計.244.1 數(shù)據(jù)庫概念設(shè)計.244.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計.254.3 系統(tǒng)數(shù)據(jù)庫設(shè)計.25第五章 系統(tǒng)詳細(xì)設(shè)計.315.1 用戶登錄界面.315.2 添加商品界面.325.3 商品信息管理.375.4 管理員設(shè)置.375.5 商品入庫管理.385.6 系統(tǒng)基本信

8、息.39第六章 系統(tǒng)調(diào)試與測試.406.1 程序調(diào)試.406.2 程序的測試.406.2.1測試的重要性及目的.406.2.2測試的步驟.426.2.3測試的主要內(nèi)容.42結(jié)束語.44致謝.46參考文獻(xiàn).47第一章 引言小型超市零售管理系統(tǒng)是小型超市商品銷售及貨物管理的主要控制部分,直接影響銷售的方便性及管理的規(guī)范性。隨著信息時代的發(fā)展,對效率的要求日益提高,因而軟件控制銷售和管理已經(jīng)取代了傳統(tǒng)全手工方式。小型超市具有自身的特點:商品要求一般齊全,進(jìn)出貨關(guān)系較為簡單,員工人數(shù)種類不多;在軟件角度看,數(shù)據(jù)較少,對存儲和速度要求不高。但正由于員工較少,使用軟件控制成為必須。11 選題背景隨著人們生

9、活水平的不斷提高,購物已成為一種時尚。每天都有大量的消費者在各大商場中留下消費信息,所以作為商場的管理人員就需要有一個自動化、智能化的管理系統(tǒng)來完成這些信息的處理。由此我們設(shè)計開發(fā)小超市管理系統(tǒng)。目前市場上的超市管理系統(tǒng),大部分為基于分布式數(shù)據(jù)庫的網(wǎng)絡(luò)管理系統(tǒng),對于規(guī)模較小的超市沒有必要花巨資來購買這樣功能全面的管理系統(tǒng),此外,對于那樣功能齊全的管理系統(tǒng)也需要花大精力來維護(hù)。基于這種情況,我們用所學(xué)的jsp知識,可以開發(fā)一種既能節(jié)約資金,又能完成小超市日常的管理任務(wù)。1.2 課題目的超市是生活中不可缺少的成份,無論產(chǎn)品還是人們的需求,都面臨著大量需求,各種原因造成超市上的差錯不能及時發(fā)現(xiàn)和糾正

10、,管理中的混亂現(xiàn)象也就不可避免。本題目屬于應(yīng)用型題目,為了實現(xiàn)科學(xué)化、現(xiàn)代化的超市管理,設(shè)計超市管理信息系統(tǒng),方便使用。1.3課題意義隨著計算機技術(shù)的不斷發(fā)展,為了能夠高效地管理超市的管理信息,超市經(jīng)營者提出使用計算機進(jìn)行超市信息的管理,使超市管理科學(xué)化,最大限度地減少信息損失,提高超市的利益。使用計算機管理超市有以下一些優(yōu)點:(1)超市數(shù)據(jù)存儲在計算機中,由于計算機存儲容量非常大,所以清單的內(nèi)容在輸入電腦后,對數(shù)據(jù)的操作是非常方便的,而且避免了頻繁的使用清單。(2)超市信息存儲在計算機,可以作到數(shù)據(jù)的永久保存,安全可靠。(3)查詢時不必要逐個查找,只需要輸入相關(guān)信息就可快速得到結(jié)果。(4)用

11、計算機進(jìn)行金額計算時速度快,可信度高。1.4需要解決的問題超市管理系統(tǒng)要能解決以下問題:(1)超市信息保存在電腦里供用戶使用。用戶可以進(jìn)行添加、查詢、修改、刪除、瀏覽等操作。(2)登陸系統(tǒng)時要求有用戶驗證功能,登陸后用戶可以更改密碼,也可以添加新的操作者以及操作者的簡單資料。(3)超市的進(jìn)存銷方面的數(shù)據(jù)的錄入要方便、快捷。使用者能很快熟悉并使用該系統(tǒng)。(4)進(jìn)貨管理、信息管理、庫存管理以及贏利情況方面的管理要區(qū)分清晰,功能明確。(5)系統(tǒng)內(nèi)的數(shù)據(jù)有備份功能,并且可以經(jīng)過處理得到比較有條理的結(jié)果,能夠打印出來做參考。第二章 可行性研究以及需求分析2.1 可行性研究該階段通過對系統(tǒng)目標(biāo)的初步調(diào)研和

12、分析,提出可行性方案并進(jìn)行論證。我們在這里主要從技術(shù)可行性、經(jīng)濟可行性和操作可行性等方面進(jìn)行分析。2.1.1 經(jīng)濟可行性開發(fā)該系統(tǒng)所需的相關(guān)資料可以通過已存在的相關(guān)系統(tǒng)進(jìn)行調(diào)查采集,所需的其他應(yīng)用軟件、硬件系統(tǒng)也易于獲得.因此,開發(fā)成本較低。而引進(jìn)使用本系統(tǒng)后,與傳統(tǒng)方式相比,具有高效率、低成本、高質(zhì)量的特點,可以節(jié)省不少人力、物力及財力。所以,從經(jīng)濟的角度來看,該系統(tǒng)可行。2.1.2 技術(shù)可行性本系統(tǒng)的開發(fā)主要涉及的是硬件和軟件兩方面的技術(shù)問題。(1)硬件方面進(jìn)銷存管理系統(tǒng)對計算機的的硬件有一定的要求,其應(yīng)用程序要求32MB或以上的內(nèi)存,存儲空間最低要求是20G,CPU要求是奔騰4或者處理速

13、度更快的。而超市公司現(xiàn)有的硬件的兼容性,穩(wěn)定性基本滿足本系統(tǒng)的要求,并且公司購買了相關(guān)的硬件,為系統(tǒng)實施奠定了良好的基礎(chǔ)。(2)軟件方面操作系統(tǒng)使用Windows XP/2003,開發(fā)工具是myeclipse6.5,數(shù)據(jù)庫使用的是SQL SEVER 2000。本系統(tǒng)采用SQL SEVER 2000數(shù)據(jù)庫做后臺支持,前臺是用Java語言在Myeclipse6.5平臺上開發(fā)的。而且這些工具都是開源的,在SUN公司的網(wǎng)站上都能下載。因此,對于超市公司這些軟件都是免費的,減少了公司的成本。Myeclipse是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用

14、于通過插件組件構(gòu)建開發(fā)環(huán)境。很好的是Myeclipse附帶了一個標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。采用Java可極大減少應(yīng)用軟件的安裝、支援和升級應(yīng)用所需的工作量,而且面向?qū)ο筇匦愿撸С值慕M建技術(shù)非常多,跨平臺的特性也使得它在現(xiàn)在和未來的開發(fā)中占據(jù)越來越重要的地位。SQL SEVER 2000是Microsoft公司推出的基于客戶/服務(wù)器(C/S)模式的數(shù)據(jù)庫系統(tǒng),它提供強大的企業(yè)數(shù)據(jù)庫管理功能,是目前世界上幾個主流數(shù)據(jù)庫管理系統(tǒng)之一,在安全性、準(zhǔn)確性、運行速度方面有絕對的優(yōu)勢,并且處理數(shù)據(jù)庫量大,效率高。綜上所述,本系統(tǒng)的設(shè)計與

15、開發(fā)在技術(shù)上和硬件設(shè)備上的要求公司都是滿足的,本系統(tǒng)在技術(shù)上是完全可行的。2.1.3 運行可行性運行可行性是對組織結(jié)構(gòu)的影響,現(xiàn)有人員和機構(gòu)和環(huán)境對系統(tǒng)的適應(yīng)性及人員培訓(xùn)補充計劃的可行性。當(dāng)前信息化技術(shù)已經(jīng)相當(dāng)普及,各類操作人員水平都有相當(dāng)?shù)母叨?,所以在運行上是可行性的。2.2 需求分析需求分析是軟件設(shè)計的一個重要的環(huán)節(jié)。本階段對系統(tǒng)管理系統(tǒng)的應(yīng)用情況作全面調(diào)查,以確定系統(tǒng)目標(biāo)。確定用戶的需求。用戶對系統(tǒng)的需求我們從以下幾方面進(jìn)行分析。2.2.1 系統(tǒng)需求用JSP開發(fā)系統(tǒng)管理系統(tǒng)基于B/S模式,系統(tǒng)軟件和數(shù)據(jù)集中存放于服務(wù)器中,軟件的安裝與升級在服務(wù)器上進(jìn)行。所有的工作基于瀏覽器,安裝、使用、

16、維護(hù)、升級十分簡單。2.2.2 性能需求為了保證系統(tǒng)能夠長期、安全、穩(wěn)定、可靠、高效的運行。系統(tǒng)處理的準(zhǔn)確性和及時性是系統(tǒng)的必要性能。由于本系統(tǒng)的添加功能對于整個系統(tǒng)的功能和性能完成舉足輕重。作為系統(tǒng)的很多數(shù)據(jù)來源,其準(zhǔn)確性和及時性很大程度上決定了系統(tǒng)的成敗。在系統(tǒng)開發(fā)過程中,必須采用一定的方法保證系統(tǒng)的準(zhǔn)確性和及時性。2.2.3 應(yīng)用需求分析服務(wù)器硬件處理器:Intel 內(nèi) 存:256M 或更大硬 盤:20G 或更大軟件Microsoft Windows XP客戶機硬件無特殊要求軟件Microsoft Windows XP 系統(tǒng)的性能要求通常指系統(tǒng)需要的存儲容量以及后援存儲,重新啟動和安全性

17、,運行效率等方面的考慮。 硬件系統(tǒng)環(huán)境:C600、1G MB(RAM)、500MB(HD)。系統(tǒng)運行時對數(shù)據(jù)的保密性要求不高對一般的數(shù)據(jù)不要求進(jìn)行加密。此外,對其它軟件幾乎沒有依賴性,程序健壯性較好2.2.4 運行需求分析硬件條件:Intel CPU、1G RAM、10 G硬盤以上的PC機。軟件條件:Windows XP 2.2.5 系統(tǒng)的開發(fā)環(huán)境本系統(tǒng)在Windows XP操作系統(tǒng)上開發(fā),用Myeclipse6.5進(jìn)行前臺界面設(shè)計,SQL SEVER 2000 進(jìn)行后臺數(shù)據(jù)庫設(shè)計。Myeclipse6.5在開發(fā)上和實施過程中體現(xiàn)了優(yōu)越性,主要的特點表現(xiàn)在以下幾個方面:1、易于使用;2、可視化

18、開發(fā);3、面向?qū)ο缶幊蹋?、平臺的核心很小,其他功能都是基于此核心寫成插件,這樣的插件包括Myeclipse的圖形API(稱為SWT/JFace)、Java開發(fā)環(huán)境插件(簡稱JDT)、插件開發(fā)環(huán)境(簡稱PDE)等。Myeclipse6.5還對這些插件的協(xié)同工作提供了良好的支持,不僅安裝簡單,還可以很好結(jié)合。5、Myeclipse在使用插件時是動態(tài)載入和動態(tài)調(diào)用的,Myeclipse啟動后要真正用到某個插件時,該插件才會被調(diào)入內(nèi)存,當(dāng)該插件不再被使用時,它就會在適當(dāng)?shù)臅r候被清除出內(nèi)存。因此即使裝了一大堆插件在Myeclipse中,也不必?fù)?dān)心某些不常用的插件白白消耗內(nèi)存。這樣使編程編譯的速度大大提

19、高。6、對于圖形界面設(shè)計,支持界面拖放功能,同時能生成簡易的代碼,使編程工作更方便。SQL SEVER 2000能夠提供數(shù)據(jù)庫之間的數(shù)據(jù)復(fù)制功能,對于數(shù)據(jù)庫的轉(zhuǎn)移相當(dāng)方便,避免了手工傳遞工作,降低了出錯率,提高數(shù)據(jù)的可用性。同時SQL SEVER 2000具有防止問題發(fā)生的安全措施,防止多個用戶試圖同時更新相同的數(shù)據(jù)。為了測試程序的運行環(huán)境,在多臺配置不同的計算機上進(jìn)行調(diào)試均能正常運行。結(jié)合程序所占硬盤和內(nèi)存的情況分析硬件環(huán)境的配置,主要考慮了以下幾個方面:1、高度的可靠性:要保證主機、操作系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)庫、應(yīng)用軟件等系統(tǒng)7×24 小時平穩(wěn)運行,最大限度減少停機時間。2、主機系統(tǒng)的

20、先進(jìn)性和高擴展性,以滿足業(yè)務(wù)近期、中期設(shè)置長期時間范圍數(shù)據(jù)快速增長的需要。3、易維護(hù)和易管理,以減少日常管理和維護(hù)的工作量,便于性能的調(diào)節(jié)和故障排除。當(dāng)使用系統(tǒng)時,要求計算機配置有Myeclipse6.5和 SQL SEVER 2000軟件,這樣才能實現(xiàn)系統(tǒng)前后臺的操作和應(yīng)用。 2.2.6 其他需求分析本系統(tǒng)有較好的可維護(hù)性、可靠性、可理解性、效率。易于用戶理解和操作。可維護(hù)性包括了可讀性、可修改性、可測試性、等含義??煽啃酝ǔ0ㄕ_性和健壯性。開發(fā)過程中,在各種矛盾的目標(biāo)之間作權(quán)衡,并在一定的限制的條件下(經(jīng)費、時間、可用的軟、硬件資源等),使上述各方面最大限度的得到滿足。第三章 系統(tǒng)概要

21、設(shè)計3.1 模塊設(shè)計根據(jù)系統(tǒng)要求,超市進(jìn)銷存管理系統(tǒng)的主要模塊包括基本信息管理、進(jìn)貨管理、銷售管理、庫存管理、查詢統(tǒng)計、系統(tǒng)管理等6個主要的功能模塊,系統(tǒng)功能結(jié)構(gòu)圖:圖4-1 進(jìn)銷存管理系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)主要功能包括:1、基本信息管理模塊 (1)供應(yīng)商信息管理 供應(yīng)商信息管理提供客戶信息管理的功能,包括供應(yīng)商信息的添加功能和供應(yīng)商信息修改與刪除功能。 (2)商品信息管理 商品信息管理提供客戶信息管理的功能,包括商品信息的添加功能和商品信息修改與刪除功能。(3)客戶信息管理功能 客戶信息管理提供客戶信息管理的功能,包括客戶信息的添加功能和客戶信息修改與刪除功能。2、進(jìn)貨管理模塊 (1)進(jìn)貨 進(jìn)貨

22、提供商品的進(jìn)貨功能,包括購進(jìn)商品信息的添加功能,商品的入庫功能的提供,同時簡單的提供購進(jìn)商品所需金額的計算功能。 (2)進(jìn)貨退貨 進(jìn)貨退貨提供購進(jìn)商品的退貨功能,包括需要退出的商品信息的添加功能,商品的出庫功能的提供,同時簡單地提供退出商品所得金額的計算功能。 3、銷售管理模塊 (1)銷售 銷售提供商品的銷售功能,包括銷售商品信息的添加功能,商品的出庫功能的提供,同時簡單地提供銷售商品所得金額的計算功能。 (2)銷售退貨 銷售退貨提供客戶將購進(jìn)的不合格的商品的退貨功能,包括商品信息的添加,商品的入庫功能的提供,同時簡單地提供客戶要退商品所需金額的計算功能。4、庫存管理模塊 (1)庫存盤點 庫存

23、盤點提供庫存中商品的盤點功能,提供商品盤點數(shù)量和賬面數(shù)量的對比,并且顯示商品的損益數(shù)量功能。 (2)商品入庫 商品入庫提供采購員所購商品的入庫和客戶所退商品的入庫功能。并將商品信息添加到庫存中。 (3)商品出庫 商品出庫提供了對客戶所需商品的出庫和因商品不合格向供應(yīng)商所退商品的出庫功能。5、查詢統(tǒng)計模塊 (1)客戶信息查詢 客戶信息查詢提供了客戶信息的單條記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有客戶的信息。 (2)供應(yīng)商信息查詢 供應(yīng)商信息查詢提供了供應(yīng)商信息的單條記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有供應(yīng)商的信息。 (3)商品信息查詢 商

24、品信息查詢提供了商品信息的單條記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有商品的信息。 (4)入庫信息查詢?nèi)霂煨畔⒉樵兲峁┝松唐啡霂煨畔⒌膯螚l記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有商品入庫的信息。 (5)進(jìn)貨退貨查詢進(jìn)貨退貨查詢提供了進(jìn)貨退貨信息的單條記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有進(jìn)貨退貨的信息。 (6)銷售信息查詢 銷售信息查詢提供了銷售信息的單條記錄的查詢,可以采用精確和模糊查詢兩種方式,同時也能夠查詢顯示所有商品銷售的信息。(7)銷售退貨查詢銷售退貨查詢提供了銷售退貨信息的單條記錄的查詢,可以采用精確和

25、模糊查詢兩種方式,同時也能夠查詢顯示所有銷售后被退回的信息。(8)報表統(tǒng)計報表統(tǒng)計提供了對銷售報表、采購報表、庫存報表的統(tǒng)計功能。為高層領(lǐng)導(dǎo)的分析和決策提供重要的依據(jù)和參考 6、系統(tǒng)管理模塊 系統(tǒng)管理模塊提供了對用戶的管理,包含密碼的修改,權(quán)限的設(shè)置和退出系統(tǒng)等功能。3.2 JSP技術(shù)簡介JSP(Java Server Page服務(wù)器網(wǎng)頁)是從1998年開始出現(xiàn)的新技術(shù)。由Sun公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),是基于JavaServlet以及整個Java體系的web開發(fā)技術(shù)。在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中加入腳本片段和JSP標(biāo)記(Tag),構(gòu)成JS

26、P網(wǎng)頁(*.jsp)。JSP技術(shù)為創(chuàng)建顯示動態(tài)生成內(nèi)容的web頁面提供了簡便的方法。JSP作為Java家族的一員,承襲了Java的特點,即跨平臺的特性,也即一次編譯,到處運行。在國外,己經(jīng)大量使用JSP作為網(wǎng)絡(luò)應(yīng)用程序的開發(fā)工具,而在國內(nèi),盡管JSP還不是主流開發(fā)技術(shù),但是由于JSP的強大優(yōu)勢,許多網(wǎng)站都已經(jīng)準(zhǔn)備轉(zhuǎn)向JSP,利用JSP來開發(fā)動態(tài)網(wǎng)站。 3.3 JSP工作原理JSP是面向服務(wù)器的,因此支持任何瀏覽器。當(dāng)Web服務(wù)器和JSP引擎遇到訪問JSP網(wǎng)頁的請求時,JSP引擎將請求對象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件、Servlet或EJB等,然后由服務(wù)器端組件處理這些請示

27、,可能需要從數(shù)據(jù)庫或數(shù)據(jù)存儲中檢索信息,然后服務(wù)器端組件再將響應(yīng)對象返回JSP引擎。JSP引擎將響應(yīng)對象傳遞給JSP頁面,根據(jù)JSP頁面的HTML格式完成數(shù)據(jù)編排,最后Web服務(wù)器和JSP引擎將格式化后的JSP頁面以HTML格式返回客戶瀏覽器。這就是當(dāng)前網(wǎng)站構(gòu)建中廣泛采用的瀏覽器Web服務(wù)器后臺數(shù)據(jù)庫的三層架構(gòu)模式。因為JSP所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果。3.4 JSP的特點1. 簡化的頁面生成技術(shù)JSP頁面用標(biāo)準(zhǔn)的HTML或XML命令來處理頁面的格式化和布局設(shè)計,而用類似HTML、XML的標(biāo)記和Java語言編寫的腳本程序生成頁面內(nèi)容。這使得頁面形式與頁面內(nèi)

28、容互相獨立,非常有利于大型項目的分工合作。2. 與Java平臺有機集成JSP技術(shù)是Java 2平臺的重要組成部分,JSP使用Java語言作為它的腳本語言。在JSP頁面中可以使用幾乎所有的Java組件和Java API,這就能充分發(fā)揮出Java語言的強大功能。使用JSP技術(shù)可以創(chuàng)建具有高度可伸縮性和可靠性的Web應(yīng)用程序。3. 硬件平臺和服務(wù)器無關(guān)性JSP作為Java家族的一員,秉承了Java技術(shù)的“一次編寫,隨處可用(Write Once,Rum Anywhere)”的特性,可以運行于大多數(shù)流行的操作系統(tǒng)平臺及Web服務(wù)器,這種與服務(wù)器硬件和操作系統(tǒng)平臺的無關(guān)性是JSP相對于其它動態(tài)網(wǎng)頁技術(shù)最

29、大的一個優(yōu)點。4. 功能可擴展性如同Microsoft的JSP技術(shù)可以通過ActiveX/COM組件來擴展功能一樣,JSP可以通過JavaBean和EJB(Enterprise JavaBean)以及自定義的標(biāo)記來擴展功能。JSP可以通過JDBC,與諸如Oracle、SQL Server這樣的大型關(guān)系數(shù)據(jù)庫進(jìn)行連接。JSP提供了一些隱含對象。這些隱含對象在JSP頁面中可以直接引用,而不必首先聲明。利用JSP提供的這些隱含對象,可以使腳本功能更加強大,并且編程更加容易、方便。例如,利用request對象,可以很容易地接收用戶在HTML表單中提交的信息。3.5 SQLSERVER 2000 數(shù)據(jù)庫

30、SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個OS/2版本。 SQL Server近年來不斷更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用戶見面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。 SQL Server 特點:1真正的客戶機/服務(wù)器體系結(jié)構(gòu)。 2圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 3豐富的編程接

31、口工具,為用戶進(jìn)行程序設(shè)計提供了更大的選擇余地。 4SQL Server與Windows NT完全集成,利用了NT的許多功能,如發(fā)送和接受消息,管理登錄安全性等。SQL Server也可以很好地與Microsoft BackOffice產(chǎn)品集成。 5具有很好的伸縮性,可跨越從運行Windows 95/98的膝上型電腦到運行Windows 2000的大型多處理器等多種平臺使用。 6對Web技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上。 7SQL Server提供數(shù)據(jù)倉庫功能,這個功能只在Oracle和其他更昂貴的DBMS中才有。3.6系統(tǒng)數(shù)據(jù)庫連接JDBC技術(shù)是Java Da

32、taBase Connectivity的縮寫,它是SUN公司提供的一種支持基本SQL功能的通用的應(yīng)用程序接口(Application Programming Interface)。它由一組用Java語言編寫的類和接口組成。通過這些類和接口,程序開發(fā)人員可以在Java語言中方便地建立與數(shù)據(jù)庫的鏈接,通過執(zhí)行相應(yīng)SQL語句,完成對不同數(shù)據(jù)庫的訪問。因此,開發(fā)人員使用JDBC API可以不必編寫一個應(yīng)用程序來訪問Sybase數(shù)據(jù)庫,又另外編寫一個應(yīng)用程序去訪問Oracle數(shù)據(jù)庫,再寫一個應(yīng)用程序訪問Microsoft的SQL Server。不但如此,使用Java語言編寫的應(yīng)用程序可以在任何支持Jav

33、a的平臺上運行,不必在不同的平臺上開發(fā)不同的應(yīng)用程序。簡單地說,JDBC能完成下列三件事:1. 同一個數(shù)據(jù)庫建立連接;2. 向數(shù)據(jù)庫建立連接;3. 處理數(shù)據(jù)庫返回的結(jié)果。JDBC是一種通用低層的應(yīng)用程序編程接口,它在不同的數(shù)據(jù)庫功能模塊的層次上提供一個統(tǒng)一的用戶界面。說JDBC是一處低級的API,是指它直接調(diào)用SQL命令,它比其他的一些數(shù)據(jù)庫連接API要容易使用些,但它有同樣可以作為更高級的,用戶辦面更友好的API或開發(fā)工具基礎(chǔ)。很多可視化的Java開發(fā)工具,如Visual Age For Java、Visual Café、J+等都提供了基于JDBC的更面向用戶的類和包,直接將關(guān)系數(shù)

34、據(jù)庫的表或視圖映射為Java類,程序員通過可視化工具直接對Java對象進(jìn)行操作,而真正需要的SQL調(diào)用則根據(jù)程序員發(fā)出的對對象的各種屬性、方法的操作來自動產(chǎn)生。另一種使用JDBC API 的方式為,用戶程序可以提供一個界面(如菜單等)讓用戶選擇對數(shù)據(jù)庫進(jìn)行的操作,選中一個任務(wù)后,提示用戶輸入一些必要的信息,然后根據(jù)用戶的輸入產(chǎn)生相應(yīng)的SQL命令以及Java程序。通過這處方式,用戶可以完成對數(shù)據(jù)庫的操作,即使他并不了解SQL語法以及JDBC編程。數(shù)據(jù)庫訪問的三層結(jié)構(gòu)如圖5.1所示,瀏覽器端程序要訪問數(shù)據(jù)庫,首先通過中間件,然后由中間件對數(shù)據(jù)庫操作權(quán)限進(jìn)行認(rèn)證,認(rèn)證通過才能對數(shù)據(jù)庫進(jìn)行操作。圖5.

35、1 使用中間件的數(shù)據(jù)庫訪問三層結(jié)構(gòu)用戶對數(shù)據(jù)庫的存取權(quán)限認(rèn)證是中間件中完成,對數(shù)據(jù)庫的查詢、插入、更新和刪除操作等都封裝在中間件中,該中間件位于服務(wù)器端,中間件對數(shù)據(jù)庫進(jìn)行操作后,再將處理結(jié)果通過Web服務(wù)器返回到瀏覽器端用戶。這樣,在用戶端輸入的用戶名和密碼,可以通過加密算法進(jìn)行加密后在網(wǎng)絡(luò)上傳輸,在中間件中進(jìn)行解密認(rèn)證,然后再進(jìn)行數(shù)據(jù)庫的存取操作,數(shù)據(jù)庫存取權(quán)限的用戶名和密碼出現(xiàn)在位于服務(wù)器端的中間件中,這樣就更加安全。本系統(tǒng)采用的正是這樣的三層結(jié)構(gòu)的數(shù)據(jù)庫訪問模式。在三層模型中,命令將被發(fā)送到服務(wù)的”中間層”,而”中間層”將SQL語句發(fā)送到數(shù)據(jù)庫。數(shù)據(jù)庫處理SQL語句并將結(jié)果返回”中間層

36、”,然后”中間層”將它們返回用戶。其模型如圖5.2所示。圖5.2 JDBC的三層模型因為”中間層”可以進(jìn)行對訪問的控制并協(xié)同數(shù)據(jù)庫的更新,并且可以使用一個易用的高層API,這個API可以由“中間層”進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成低層的調(diào)用。所以在許多種情況下,三層模型可以提供更好的性能,本系統(tǒng)中所采用的就是此種模型。JDBC是JAVA應(yīng)用程序與數(shù)據(jù)庫的溝通橋梁。它提供了三項服務(wù)功能:一、與數(shù)據(jù)庫建立連接。二、將SQL語句傳遞給數(shù)據(jù)庫。三、從數(shù)據(jù)庫取得SQL語句的執(zhí)行結(jié)果。當(dāng)JDBC要與數(shù)據(jù)庫建立連接前,首先,它必須先取得連接此數(shù)據(jù)庫的JDBC驅(qū)動程序,Class.forName()即是在執(zhí)行此項工作。建立數(shù)

37、據(jù)庫連接的第一步驟就是將JDBC驅(qū)動程序的類載入至JVM(Java VirtualL Machine)中,本系統(tǒng)中利用java.lang.Class類內(nèi)的forName()靜態(tài)函數(shù)依據(jù)指定的類名稱,將JDBC驅(qū)動程序載入進(jìn)來。完成載入驅(qū)動程序的步驟后,必須使用java.sal.DriverManager類所提供的getConnection()靜態(tài)函數(shù),取得與數(shù)據(jù)庫間的連接對象。此連接對象的類類型為java.sal.Connection,必須通過它才能將SQL指令傳遞給數(shù)據(jù)庫,而執(zhí)行結(jié)果也需要通過連接對象來取得。當(dāng)取得連接對象后,還必須取得Statement對象才能對數(shù)據(jù)庫執(zhí)行SQL指令。Sta

38、tement主要實現(xiàn)兩個功能:執(zhí)行SQL語句以及取得執(zhí)行結(jié)果。在java.sql.Statement的sql對象中執(zhí)行查詢或修改命令的函數(shù)后傳回的是一個ResultSet 對象,這個對象提供了一個存取SQL執(zhí)行結(jié)果的管道,以便通過它將表格數(shù)據(jù)從數(shù)據(jù)庫中取出。每個Statement對象只能產(chǎn)生一個ResultSet 對象。數(shù)據(jù)庫連接如圖5.3所示:圖5.3 數(shù)據(jù)庫的連接處理數(shù)據(jù)庫的連接處理具體實現(xiàn)如下:/建立JDBCODBC橋sun.jdbc.odbc.JdbcOdbcDriver;/橋建立不成功時的錯誤處理catch(ClassNotFoundException event)/建立與數(shù)據(jù)庫的連

39、接,并發(fā)送SQL查詢語句,將結(jié)果保存到rs對象中Con=建立JDBCODBC橋Sql=SQL查詢語句執(zhí)行查詢Rs=返回結(jié)果/SQL出錯處理 catch(SQLException e1)有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問Sybase數(shù)據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序,或為訪問Informix數(shù)據(jù)庫又編寫另一個程序等等,程序員只需用JDBC API寫一個程序就夠了,它可向相應(yīng)數(shù)據(jù)庫發(fā)送SQL調(diào)用。同時,將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它

40、在任何平臺上運行,這也是Java語言“編寫一次,處處運行”的優(yōu)勢。Java數(shù)據(jù)庫連接體系結(jié)構(gòu)是用于Java應(yīng)用程序連接數(shù)據(jù)庫的標(biāo)準(zhǔn)方法。JDBC對Java程序員而言是API,對實現(xiàn)與數(shù)據(jù)庫連接的服務(wù)提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫廠商及第三方中間件廠商實現(xiàn)與數(shù)據(jù)庫的連接提供了標(biāo)準(zhǔn)方法。JDBC使用已有的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡單、嚴(yán)格類型定義且高性能實現(xiàn)的接口。  Java 具有堅固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動下載等特性,是編寫數(shù)據(jù)庫

41、應(yīng)用程序的杰出語言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫之間進(jìn)行對話的方法。而 JDBC 正是作為此種用途的機制。 JDBC 擴展了 Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁,而該 applet 使用的信息可能來自遠(yuǎn)程數(shù)據(jù)庫企業(yè)也可以用 JDBC 通過 Intranet 將所有職員連到一個或多個內(nèi)部數(shù)據(jù)庫中(即使這些職員所用的計算機有 Windows、 Macintosh 和UNIX 等各種不同的操作系統(tǒng))。隨著越來越多的程序員開始使用Java 編程語言,對從 Java 中便捷地訪問數(shù)據(jù)庫的要求也在日益增加。 MIS 管理員們都喜

42、歡 Java 和 JDBC 的結(jié)合,因為它使信息傳播變得容易和經(jīng)濟。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫,并能便捷地存取信息,即使這些信息是儲存在不同數(shù)據(jù)庫管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡化。程序員可只編寫一遍應(yīng)用程序或只更新一次,然后將它放到服務(wù)器上,隨后任何人就都可得到最新版本的應(yīng)用程序。對于商務(wù)上的銷售信息服務(wù), Java 和JDBC 可為外部客戶提供獲取信息更新的更好方法。簡單地說,JDBC 可做三件事:與數(shù)據(jù)庫建立連接、發(fā)送 SQL 語句并處理結(jié)果。下列代碼段給出了以上三步的基本示例: Connection con = DriverManager.getConnec

43、tion("jdbc:odbc:wombat","login", "password"); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1"); while (rs.next() int x = rs.getInt("a"); String s = rs.getString("b"); float f = rs.getFlo

44、at("c"); 上述代碼對基于JDBC的數(shù)據(jù)庫訪問做了經(jīng)典的總結(jié)。 第四章 數(shù)據(jù)庫的設(shè)計4.1 數(shù)據(jù)庫的概念設(shè)計數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計是反映全組織信息需求的整體數(shù)據(jù)庫概念結(jié)構(gòu)(概念模式)。概念模式必須是獨立于計算機硬件和具體數(shù)據(jù)庫管理系統(tǒng),不受特定DBMS(數(shù)據(jù)庫管理系統(tǒng))的限制,不考慮計算機軟硬件技術(shù)細(xì)節(jié)。在需求分析階段得到的數(shù)據(jù)流程圖對數(shù)據(jù)的動態(tài)運動軌跡進(jìn)行了描述,數(shù)據(jù)庫需求分析定義了數(shù)據(jù)本身的靜態(tài)特征,但他們反映的僅是應(yīng)用需求,并無反映出數(shù)據(jù)之間的本質(zhì)聯(lián)系(即數(shù)據(jù)的內(nèi)在特征)。管理系統(tǒng)主要以管理員、教師、學(xué)生來共同完成一個業(yè)務(wù)流程。他們之間存在著數(shù)據(jù)關(guān)聯(lián)并且靠數(shù)據(jù)庫關(guān)

45、鍵字段進(jìn)行索引,建立表關(guān)聯(lián)。ER圖如下:圖5-1 總體E-R圖4.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計設(shè)計邏輯結(jié)構(gòu)應(yīng)該選擇最適于描述與表達(dá)相應(yīng)概念結(jié)構(gòu)的數(shù)據(jù)模型,然后選擇最合適的DBMS。設(shè)計邏輯結(jié)構(gòu)時一般要分三步進(jìn)行:將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型,并將轉(zhuǎn)化來的關(guān)系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換,關(guān)系模型的邏輯結(jié)構(gòu)是一組關(guān)系模式的集合。而E-R圖則是由實體、實體的屬性和實體之間的聯(lián)系三個要素組成的。所以將E-R圖轉(zhuǎn)換為關(guān)系模型實際上就是要將實體、實體的屬性和實體之間的聯(lián)系轉(zhuǎn)化為關(guān)系模式。本管理系統(tǒng)所存在的數(shù)據(jù)庫中有不同的表結(jié)構(gòu),這些物理表中存放著各種網(wǎng)站所調(diào)用的數(shù)據(jù),為整個

46、網(wǎng)站的流程提供最基本的數(shù)據(jù)來源。本網(wǎng)站采用SQL SEVER 2000數(shù)據(jù)庫它是由Microsoft公司開發(fā)。對于它的安全性和易操作性來說是開發(fā)者首選。4.3 系統(tǒng)數(shù)據(jù)庫設(shè)計 本系統(tǒng)主要模塊有:商品信息、客戶信息、供應(yīng)商信息、出庫信息、入庫信息等。各個實體的E-R圖如下: 商品信息ID名稱產(chǎn)地單位備注生產(chǎn)日期規(guī)格商品信息E-R圖客戶信息ID客戶名稱地址聯(lián)系人電話郵編傳真客戶信息E-R圖供應(yīng)商信息ID名稱地址聯(lián)系人電話郵編傳真?zhèn)渥MAIL供應(yīng)商信息E-R圖出庫信息ID出庫時間出庫數(shù)量總金額經(jīng)手人備注商品ID客戶ID出庫信息E-R圖入庫信息ID入庫時間入庫數(shù)量總金額經(jīng)手人備注商品ID客戶ID入庫

47、信息E-R圖 1.商品信息數(shù)據(jù)表商品信息數(shù)據(jù)表的主要功能在于保存主要信息和相關(guān)信息,包括:名稱、產(chǎn)地、單位、規(guī)格、備注以及生產(chǎn)日期.ID字段為主關(guān)鍵字段。商品信息數(shù)據(jù)表如表4-1所示:字段名稱字段類型字段大小索引必須填寫ID數(shù)字4有(無重復(fù))是CHANZHI文本50是DANWEI文本50是GUIGE文本50BEIZHU文本50SHENGCHANRIQI文本50是表4-1 商品信息數(shù)據(jù)2.客戶信息數(shù)據(jù)表客戶信息數(shù)據(jù)表的主要功能是保存客戶的相關(guān)信息。它包括:客戶名稱、地址、聯(lián)系人等。 客戶信息數(shù)據(jù)表如表4-2所示:字段名稱字段類型字段大小索引必須填寫ID數(shù)字4有(無重復(fù))是NAME文本50是DIZ

48、HI文本50是LAINXIREN文本50DIANHUA文本50YOUBIAN文本50是CHUANZHEN文本50是 4-2 客戶信息數(shù)據(jù)表3.供應(yīng)商信息數(shù)據(jù)表供應(yīng)商信息數(shù)據(jù)表的主要功能是保存供應(yīng)商的基本信息和詳細(xì)信息,它包括:ID、名稱、地址、聯(lián)系人、電話、郵編、傳真、 EMAIL和備注。供應(yīng)商信息數(shù)據(jù)表如表4-3所示:字段名稱字段類型字段大小索引必須填寫ID數(shù)字4有(無重復(fù))是NAME文本50是DIZHI文本50是LAINXIREN文本50否DIANHUA文本50否YOUBIAN文本50是CHUANZHEN文本50是EMAIL文本50BEIZHU文本50否 表4-3供應(yīng)商信息數(shù)據(jù)表4.出庫信

49、息數(shù)據(jù)表出庫信息數(shù)據(jù)表的主要功能是保存商品出入信息。它包括:出庫時間、出庫數(shù)量、總金額、經(jīng)手人、備注、商品ID客戶ID等。 出庫信息數(shù)據(jù)表如表4-4所示:字段名稱字段類型字段大小索引必須填寫ID數(shù)字4有(無重復(fù))是SHIJIAN文本50是SHULIANG文本50是ZONGJINE文本50否JINGSHOUREN文本50否BEIZHU文本50是GOODSID文本50是KEHUID文本50否表4-4出庫信息數(shù)據(jù)表5. 入庫信息數(shù)據(jù)表入庫信息數(shù)據(jù)表的主要功能是保存商品出入信息。它包括:入庫時間、入庫數(shù)量、總金額、經(jīng)手人、備注、商品ID客戶ID等。 入庫信息數(shù)據(jù)表如表4-5所示:字段名稱字段類型字段大小索引必須填寫ID數(shù)字4有(無重復(fù))是SHIJIAN文本50

溫馨提示

  • 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

提交評論