JAVA超市庫(kù)存管理系統(tǒng)2
《JAVA超市庫(kù)存管理系統(tǒng)2》由會(huì)員分享,可在線閱讀,更多相關(guān)《JAVA超市庫(kù)存管理系統(tǒng)2(31頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 畢 業(yè) 設(shè) 計(jì) 設(shè)計(jì)題目:超市庫(kù)存管理系統(tǒng) 系 別:____________________ 班 級(jí):____________________ 姓 名:____________________ 指 導(dǎo) 教 師:____________________ 年月日 超市庫(kù)存管理系統(tǒng) 摘 要 隨著小超市規(guī)模的發(fā)展不斷擴(kuò)大,商品數(shù)量急劇增加,有關(guān)商品的各種信息量也成倍增長(zhǎng)。超市時(shí)時(shí)刻刻都需要對(duì)商品各種信息進(jìn)行統(tǒng)計(jì)分
2、析。而大型的超市管理系統(tǒng)功能過于強(qiáng)大而造成操作繁瑣降低了小超市的工作效率。 超市管理系統(tǒng)是市場(chǎng)上最流行的超市上常用的系統(tǒng)之一,它主要包含以下幾個(gè)模塊:系統(tǒng)登陸、商品入庫(kù)、商品查詢、商品更改和刪除等。從而,實(shí)現(xiàn)對(duì)進(jìn)貨、銷售及員工信息等實(shí)現(xiàn)全面、動(dòng)態(tài)、及時(shí)的管理。 本文系統(tǒng)的分析了軟件開發(fā)的背景以過程;首先介紹了軟件的開發(fā)環(huán)境,其次介紹了本軟件的詳細(xì)設(shè)計(jì)過程:數(shù)據(jù)庫(kù)的設(shè)計(jì)、各個(gè)模塊的設(shè)計(jì)和實(shí)現(xiàn),以及具體界面的設(shè)計(jì)和功能 關(guān)鍵詞: Java, Access數(shù)據(jù)庫(kù), 界面 ,需求分析。 The Supermarket inven
3、tory management system Abstract Expands unceasingly along with the small supermarket scale development, the commodity quantity sharp growth, related commodity each kind of information content also becomes time of growth. The supermarket in needs to carry on the statistical analysis all the time
4、to commodity each kind of information. But the large-scale supermarket management system management system function too was formidable creates the operation tediously to reduce the small supermarket working efficiency. The supermarket management system management system is in the market on the most
5、 popular supermarket one of commonly used systems, it mainly contains following several modules: System jurisdiction hypothesis, primary data input, data compiling and inquiry and so on. Thus, realizes to the inventory, the sale and the staff information and so on realizes comprehensively, dynamic,
6、the prompt management. This article system analysis software has developed background by process; first introduced the software development environment, next introduced this software detailed design process: Database design, each module design and realization, as well as concrete contact surface de
7、sign and function. Key words: Java, Access database, interface, needs analysis 目 錄 1引言 1 2系統(tǒng)設(shè)計(jì) 1 2.1系統(tǒng)開發(fā)平臺(tái) 1 2.2系統(tǒng)運(yùn)行環(huán)境 1 3問題定義 1 4系統(tǒng)開發(fā)的理論基礎(chǔ) 2 4.1 JAVA 語(yǔ)言 2 4.2數(shù)據(jù)庫(kù)概論及ACCESS2000簡(jiǎn)介 4 4.2.1數(shù)據(jù)庫(kù)概論 4 4.2.2 Access數(shù)據(jù)庫(kù)簡(jiǎn)介 5 4.3 使用JDBC-ODBC與數(shù)據(jù)庫(kù)建立連接 6 4.3.1 JDBC對(duì)象的數(shù)據(jù)庫(kù)操
8、作 6 4.3.2 ODBC對(duì)象的數(shù)據(jù)庫(kù)操作 7 5系統(tǒng)可行性分析 8 5.1技術(shù)可行性 8 5.2經(jīng)濟(jì)可行性 8 5.3開發(fā)環(huán)境可行性 9 5.4社會(huì)因素考慮 9 6系統(tǒng)需求分析 9 7系統(tǒng)總體設(shè)計(jì) 11 7.1功能模塊設(shè)計(jì) 11 7.2數(shù)據(jù)庫(kù)設(shè)計(jì) 12 7.3系統(tǒng)流程圖 12 7.4工作進(jìn)度安排 12 8系統(tǒng)詳細(xì)設(shè)計(jì) 12 8.1功能模塊詳細(xì)設(shè)計(jì)及算法 12 8.2本人所作貢獻(xiàn) 13 9設(shè)計(jì)的編碼與實(shí)現(xiàn) 14 10程序和系統(tǒng)調(diào)試 14 11結(jié)論 15 謝辭 16 附錄 18 外文資料 25 1引言 超市進(jìn)銷存管理系統(tǒng)用計(jì)算機(jī)管理超市庫(kù)存
9、進(jìn)出管理的一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前庫(kù)存管理都是由工作人員手工書寫的方式來(lái)操作的.現(xiàn)在一般的超市都采用計(jì)算機(jī)智能化管理,采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)超市庫(kù)存管理程序來(lái)幫助管理員進(jìn)行更有效的超市庫(kù)存管理工作。超市進(jìn)銷存管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。 作為國(guó)內(nèi)市場(chǎng)的一些中小型超市,它們?cè)谛畔⒒^程中的步伐要落后于大中型超市,而對(duì)于這些企業(yè)的資源管理,信息的存儲(chǔ)和處理也顯得迫切需要,要適應(yīng)市場(chǎng)
10、競(jìng)爭(zhēng),就需要有高效的處理方式和管理方法,因此加快超市的信息化進(jìn)程是必可少的。 超市庫(kù)存管理系統(tǒng)依靠現(xiàn)代化的計(jì)算機(jī)信息處理技術(shù)來(lái)管理超市,從而節(jié)省了大量的人力、物力,改善了員工的工作條件,減輕了勞動(dòng)強(qiáng)度,并且能夠快速反映出商品的進(jìn)、銷、存等狀況和各種反饋信息分析,使管理人員快速對(duì)市場(chǎng)的變化做出相應(yīng)的決策,加快超市經(jīng)營(yíng)管理效率。 2系統(tǒng)設(shè)計(jì) 2.1系統(tǒng)開發(fā)平臺(tái) 通過研究超市庫(kù)存管理系統(tǒng)任務(wù)書,并對(duì)該系統(tǒng)進(jìn)行實(shí)際需求分析,該系統(tǒng)采用了面向?qū)ο蟮腏AVA軟件作為開發(fā)工具,其功能強(qiáng)大、安全、跨平臺(tái)、簡(jiǎn)單、適用于網(wǎng)絡(luò)。該系統(tǒng)數(shù)據(jù)庫(kù)采用了我們較為熟悉的Access2000數(shù)據(jù)庫(kù)作為該系統(tǒng)
11、的后臺(tái)數(shù)據(jù)庫(kù)支持。 2.2系統(tǒng)運(yùn)行環(huán)境 Windows系統(tǒng)具有完全可視化窗體,直觀、高效的面向?qū)ο蟮膱D形用戶界面,具有普遍的使用人群,所以我們決定該超市庫(kù)存管理系統(tǒng)將運(yùn)行在WINDOWS操作系統(tǒng)下。在 WINDOWS95/98/2000/XP下等都可以運(yùn)行。 3問題定義 3.1開發(fā)項(xiàng)目:超市庫(kù)存管理系統(tǒng) 3.2開發(fā)背景: 在我國(guó)超市形成在20世紀(jì)90年代初期,現(xiàn)在已經(jīng)成為我國(guó)零售業(yè)的一種重要形態(tài),為國(guó)民經(jīng)濟(jì)的發(fā)展發(fā)揮了重要的作用。隨著超市高速的發(fā)展,其經(jīng)營(yíng)管理也變得愈加復(fù)雜,早期的售貨員站柜臺(tái)的形式早已不能滿足現(xiàn)有銷售也的發(fā)展,這樣就迫切地需要引入新的管理技術(shù)。 超市形態(tài)
12、具有種種優(yōu)點(diǎn),但在目前狀況下,它仍存在零售業(yè)企業(yè)所共有的落后的一面,如:不能有效地管理每種商品,收款結(jié)算速度慢,容易出現(xiàn)營(yíng)業(yè)差錯(cuò),不宜進(jìn)行商品調(diào)價(jià),盤點(diǎn)效率低等,而且在超市日常管理中,商品的進(jìn)、銷、存等決策以經(jīng)驗(yàn)為主,缺乏實(shí)時(shí)分析功能,管理人員對(duì)及時(shí)傳遞資料的要求始終得不到滿足。蘇轍超市形態(tài)的高速發(fā)展,其經(jīng)營(yíng)管理也變得愈加復(fù)雜,日常所需要處理的數(shù)據(jù)量也逐漸增大,商業(yè)運(yùn)轉(zhuǎn)的中間環(huán)節(jié)也越來(lái)越多,原始的人工管理已無(wú)法應(yīng)對(duì)這復(fù)雜的市場(chǎng),使用軟件控制成為必須。 3.3項(xiàng)目目標(biāo):建立一個(gè)效率高,無(wú)差錯(cuò),通用性好又節(jié)時(shí)的超市庫(kù)存管理系統(tǒng)。 3.4項(xiàng)目范圍:利用一臺(tái)普通配置的微機(jī)即可。 3.5初步設(shè)想:
13、 利用所學(xué)計(jì)算機(jī)知識(shí),采用JCreator + JDK 1.6作為開發(fā)工具,Access2000數(shù)據(jù)庫(kù)作為該系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)支持創(chuàng)建超市庫(kù)存管理系統(tǒng)。 3.6可行性研究:建議進(jìn)行一周。 4系統(tǒng)開發(fā)的理論基礎(chǔ) 4.1 JAVA 語(yǔ)言 Java語(yǔ)言是一個(gè)支持網(wǎng)絡(luò)計(jì)算的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。Java語(yǔ)言吸收了Smalltalk語(yǔ)言和C++語(yǔ)言的優(yōu)點(diǎn),并增加了其它特性,如支持并發(fā)程序設(shè)計(jì)、網(wǎng)絡(luò)通信、和多媒體數(shù)據(jù)控制等。主要特性如下: 1、Java語(yǔ)言是簡(jiǎn)單的。Java語(yǔ)言的語(yǔ)法與C語(yǔ)言和C++語(yǔ)言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。另一方面,Java丟棄了C++ 中很
14、少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換。特別地,Java語(yǔ)言不使用指針,并提供了自動(dòng)的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。 2、Java語(yǔ)言是一個(gè)面向?qū)ο蟮?。Java語(yǔ)言提供類、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Java語(yǔ)言全面支持動(dòng)態(tài)綁定,而C++ 語(yǔ)言只對(duì)虛函數(shù)使用動(dòng)態(tài)綁定。總之,Java語(yǔ)言是一個(gè)純的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。 3、Java語(yǔ)言是分布式的。Java語(yǔ)言支持Internet應(yīng)用的開發(fā),在基本的Java應(yīng)用編程接口
15、中有一個(gè)網(wǎng)絡(luò)應(yīng)用編程接口(),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫(kù),包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。 4、Java語(yǔ)言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、廢料的自動(dòng)收集等是Java程序健壯性的重要保證。對(duì)指針的丟棄是Java的明智選擇。Java的安全檢查機(jī)制使得Java更具健壯性。 5、Java語(yǔ)言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個(gè)安全機(jī)制以防惡意代碼的攻擊。除了Java語(yǔ)言具有的許多安全特性以外,Java對(duì)通過網(wǎng)絡(luò)下載的類具有一個(gè)安全
16、防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。 6、Java語(yǔ)言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺(tái)上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。 7、Java語(yǔ)言是可移植的。這種可移植性來(lái)源于體系結(jié)構(gòu)中立性,另外,Java還嚴(yán)格規(guī)定了各個(gè)基本數(shù)據(jù)類型的長(zhǎng)度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是
17、用Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。 8、Java語(yǔ)言是解釋型的。如前所述,Java程序在Java平臺(tái)上被編譯為字節(jié)碼格式, 然后可以在實(shí)現(xiàn)這個(gè)Java平臺(tái)的任何系統(tǒng)中運(yùn)行。在運(yùn)行時(shí),Java平臺(tái)中的Java解釋器對(duì)這些字節(jié)碼進(jìn)行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。 9、Java是高性能的。與那些解釋型的高級(jí)腳本語(yǔ)言相比,Java的確是高性能的。事實(shí)上,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來(lái)越接近于C++。 10、Java語(yǔ)言是多線程的。在Java語(yǔ)言中,線程是一種特殊的對(duì)象,它必須由Thr
18、ead類或其子(孫)類來(lái)創(chuàng)建。通常有兩種方法來(lái)創(chuàng)建線程:其一,使用型構(gòu)為Thread(Runnable) 的構(gòu)造子將一個(gè)實(shí)現(xiàn)了Runnable接口的對(duì)象包裝成一個(gè)線程,其二,從Thread類派生出子類并重寫run方法,使用該子類創(chuàng)建的對(duì)象即為線程。值得注意的是Thread類已經(jīng)實(shí)現(xiàn)了Runnable接口,因此,任何一個(gè)線程均有它的run方法,而run方法中包含了線程所要運(yùn)行的代碼。線程的活動(dòng)由一組方法來(lái)控制。 Java語(yǔ)言支持多個(gè)線程的同時(shí)執(zhí)行,并提供多線程之間的同步機(jī)制(關(guān)鍵字為synchronized)。 11、Java語(yǔ)言是動(dòng)態(tài)的。Java語(yǔ)言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動(dòng)態(tài)變化的環(huán)境。
19、Java程序需要的類能動(dòng)態(tài)地被載入到運(yùn)行環(huán)境,也可以通過網(wǎng)絡(luò)來(lái)載入所需要的類。這也有利于軟件的升級(jí)。另外,Java中的類有一個(gè)運(yùn)行時(shí)刻的表示,能進(jìn)行運(yùn)行時(shí)刻的類型檢查。 Java語(yǔ)言的優(yōu)良特性使得Java應(yīng)用具有無(wú)比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。Java對(duì)對(duì)象技術(shù)的全面支持和Java平臺(tái)內(nèi)嵌的API能縮短應(yīng)用系統(tǒng)的開發(fā)時(shí)間并降低成本。Java的編譯一次,到處可運(yùn)行的特性使得它能夠提供一個(gè)隨處可用的開放結(jié)構(gòu)和在多平臺(tái)之間傳遞信息的低成本方式。特別是Java企業(yè)應(yīng)用編程接口(Java Enterprise APIs)為企業(yè)計(jì)算及電子商務(wù)應(yīng)用系統(tǒng)提供了有關(guān)技術(shù)和豐富的類庫(kù)。 4
20、.2數(shù)據(jù)庫(kù)概論及ACCESS2000簡(jiǎn)介 4.2.1數(shù)據(jù)庫(kù)概論 數(shù)據(jù)庫(kù)技術(shù)所研究的問題就是如何科學(xué)地組織和存儲(chǔ)數(shù)據(jù),如何高效地獲取和處理數(shù)據(jù)。數(shù)據(jù)庫(kù)技術(shù)作為數(shù)據(jù)管理的主要技術(shù)目前已廣泛應(yīng)用于各個(gè)領(lǐng)域,數(shù)據(jù)庫(kù)系統(tǒng)已成為計(jì)算機(jī)系統(tǒng)的重要組成部分。 1、數(shù)據(jù)庫(kù)技術(shù) 數(shù)據(jù)庫(kù)技術(shù)主要研究如何存儲(chǔ)、使用和管理數(shù)據(jù),它是計(jì)算機(jī)數(shù)據(jù)管理技術(shù)發(fā)展的新階段。近年來(lái),數(shù)據(jù)庫(kù)技術(shù)和計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展相互滲透、相互促進(jìn),已成為當(dāng)今計(jì)算機(jī)領(lǐng)域發(fā)展迅速、應(yīng)用廣泛的兩大領(lǐng)域。數(shù)據(jù)庫(kù)技術(shù)不僅應(yīng)用于事務(wù)處理,并且進(jìn)一步應(yīng)用到情報(bào)檢索、人工智能、專家系統(tǒng)、計(jì)算機(jī)輔助設(shè)計(jì)等領(lǐng)域。 2、數(shù)據(jù) 數(shù)據(jù)是指存
21、儲(chǔ)在某一種媒體上能夠識(shí)別的物理符號(hào)。數(shù)據(jù)的概念包括兩個(gè)方面:其一是描述事物特性的數(shù)據(jù)內(nèi)容;其二是存儲(chǔ)在某一種媒體上的數(shù)據(jù)形式。 3、數(shù)據(jù)處理 數(shù)據(jù)處理是指對(duì)各種形式的數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、加工和傳播的一系列活動(dòng)的總和。其目的之一是從大量的、原始的數(shù)據(jù)中抽取、推導(dǎo)出對(duì)人們有價(jià)值的信息以作為行動(dòng)和決策的依據(jù);目的之二是為了借助計(jì)算機(jī)科學(xué)地保存和管理復(fù)雜的、大量的數(shù)據(jù),以便人們能夠方便而充分地利用這些寶貴的信息資源。 4、數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)是與特定的主題或目的相關(guān)的數(shù)據(jù)的集合。數(shù)據(jù)庫(kù)可以直觀地理解為存放數(shù)據(jù)的倉(cāng)庫(kù),只不過這個(gè)倉(cāng)庫(kù)是在計(jì)算機(jī)的大容量存儲(chǔ)器上(例如,硬盤就是一種最常見的計(jì)算機(jī)
22、大容量存儲(chǔ)設(shè)備)。而且數(shù)據(jù)必須按照一定的格式存放,因?yàn)樗粌H需要存放,而且還要便于查找。 5、數(shù)據(jù)庫(kù)管理系統(tǒng) 數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBase Management System,簡(jiǎn)稱DBMS)是對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理的系統(tǒng)軟件,它的職能是有效地組織和存儲(chǔ)數(shù)據(jù)、獲取和管理數(shù)據(jù),接受和完成用戶提出的訪問數(shù)據(jù)的各種請(qǐng)求。 數(shù)據(jù)庫(kù)管理系統(tǒng)主要功能包括以下幾個(gè)方面: (1)數(shù)據(jù)定義功能 DBMS提供了數(shù)據(jù)定義語(yǔ)言DDL(Data Definition Language),用戶通過它可以方便地對(duì)數(shù)據(jù)庫(kù)中的相關(guān)內(nèi)容進(jìn)行定義。例如,對(duì)數(shù)據(jù)庫(kù)、表、索引進(jìn)行定義。 (2)數(shù)據(jù)操縱功能 DB
23、MS提供了數(shù)據(jù)操縱語(yǔ)言DML(Data Manipulation Language),用戶通過它可以實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的基本操作。例如,對(duì)表中數(shù)據(jù)的查詢、插入、刪除和修改。 (3)數(shù)據(jù)庫(kù)運(yùn)行控制功能 這是DBMS的核心部分,它包括并發(fā)控制(即處理多個(gè)用戶同時(shí)使用某些數(shù)據(jù)時(shí)可能產(chǎn)生的問題)、安全性檢查、完整性約束條件的檢查和執(zhí)行、數(shù)據(jù)庫(kù)的內(nèi)部維護(hù)(例如,索引的自動(dòng)維護(hù))等。所有數(shù)據(jù)庫(kù)的操作都要在這些控制程序的統(tǒng)一管理下進(jìn)行,以保證數(shù)據(jù)的安全性、完整性以及多個(gè)用戶對(duì)數(shù)據(jù)庫(kù)的并發(fā)使用。 (4)數(shù)據(jù)庫(kù)的建立和維護(hù)功能 數(shù)據(jù)庫(kù)的建立和維護(hù)功能包括數(shù)據(jù)庫(kù)初始數(shù)據(jù)的輸入、轉(zhuǎn)換功能,數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)、
24、恢復(fù)功能,數(shù)據(jù)庫(kù)的重新組織功能和性能監(jiān)視、分析功能等。這些功能通常是由一些實(shí)用程序完成的。它是數(shù)據(jù)庫(kù)管理系統(tǒng)的一個(gè)重要組成部分。 4.2.2 Access數(shù)據(jù)庫(kù)簡(jiǎn)介 Access 是微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),是Office系列應(yīng)用軟件之一。它提供了表、查詢、窗體、報(bào)表、頁(yè)、宏、模塊7種用來(lái)建立數(shù)據(jù)庫(kù)系統(tǒng)的對(duì)象;提供了多種向?qū)?、生成器、模板,把?shù)據(jù)存儲(chǔ)、數(shù)據(jù)查詢、界面設(shè)計(jì)、報(bào)表生成等操作規(guī)范化;為建立功能完善的數(shù)據(jù)庫(kù)管理系統(tǒng)提供了方便,也使得普通用戶不必編寫代碼,就可以完成大部分?jǐn)?shù)據(jù)管理的任務(wù)。 Access是一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),其
25、主要特點(diǎn)如下: (1)存儲(chǔ)方式單一 Access管理的對(duì)象有表、查詢、窗體、報(bào)表、頁(yè)、宏和模塊,以上對(duì)象都存放在后綴為(.mdb)的數(shù)據(jù)庫(kù)文件種,便于用戶的操作和管理。 (2)面向?qū)ο? Access是一個(gè)面向?qū)ο蟮拈_發(fā)工具,利用面向?qū)ο蟮姆绞綄?shù)據(jù)庫(kù)系統(tǒng)中的各種功能對(duì)象化,將數(shù)據(jù)庫(kù)管理的各種功能封裝在各類對(duì)象中。它將一個(gè)應(yīng)用系統(tǒng)當(dāng)作是由一系列對(duì)象組成的,對(duì)每個(gè)對(duì)象它都定義一組方法和屬性,以定義該對(duì)象的行為和外國(guó),用戶還可以按需要給對(duì)象擴(kuò)展方法和屬性。通過對(duì)象的方法、屬性完成數(shù)據(jù)庫(kù)的操作和管理,極大地簡(jiǎn)化了用戶的開發(fā)工作。同時(shí),這種基于面向?qū)ο蟮拈_發(fā)方式,使得開發(fā)
26、應(yīng)用程序更為簡(jiǎn)便。 (3)界面友好、易操作 Access是一個(gè)可視化工具,是風(fēng)格與Windows完全一樣,用戶想要生成對(duì)象并應(yīng)用,只要使用鼠標(biāo)進(jìn)行拖放即可,非常直觀方便。系統(tǒng)還提供了表生成器、查詢生成器、報(bào)表設(shè)計(jì)器以及數(shù)據(jù)庫(kù)向?qū)?、表向?qū)?、查詢向?qū)А⒋绑w向?qū)?、?bào)表向?qū)У裙ぞ撸沟貌僮骱?jiǎn)便,容易使用和掌握。 (4)集成環(huán)境、處理多種數(shù)據(jù)信息 Access基于Windows操作系統(tǒng)下的集成開發(fā)環(huán)境,該環(huán)境集成了各種向?qū)Ш蜕善鞴ぞ?,極大地提高了開發(fā)人員的工作效率,使得建立數(shù)據(jù)庫(kù)、創(chuàng)建表、設(shè)計(jì)用戶界面、設(shè)計(jì)數(shù)據(jù)查詢、報(bào)表打印等可以方便有序地進(jìn)行。 (5)Access
27、支持ODBC(開發(fā)數(shù)據(jù)庫(kù)互連,Open Data Base Connectivity),利用Access強(qiáng)大的DDE(動(dòng)態(tài)數(shù)據(jù)交換)和OLE(對(duì)象的聯(lián)接和嵌入)特性,可以在一個(gè)數(shù)據(jù)表中嵌入位圖、聲音、Excel表格、Word文檔,還可以建立動(dòng)態(tài)的數(shù)據(jù)庫(kù)報(bào)表和窗體等。Access還可以將程序應(yīng)用于網(wǎng)絡(luò),并與網(wǎng)絡(luò)上的動(dòng)態(tài)數(shù)據(jù)相聯(lián)接。利用數(shù)據(jù)庫(kù)訪問頁(yè)對(duì)象生成HTML文件,輕松構(gòu)建Internet/Intranet的應(yīng)用。 4.3 使用JDBC-ODBC與數(shù)據(jù)庫(kù)建立連接 4.3.1 JDBC對(duì)象的數(shù)據(jù)庫(kù)操作 JDBC 是個(gè)“低級(jí)”接口,也就是說(shuō),它用于直接調(diào)用 SQL 命令。在這方面它的功能極
28、佳,并比其它的數(shù)據(jù)庫(kù)連接 API 易于使用,但它同時(shí)也被設(shè)計(jì)為一種基礎(chǔ)接口,在它之上可以建立高級(jí)接口和工具。 高級(jí)接口是“對(duì)用戶友好的”接口,它使用的是一種更易理解和更為方便的 API,這種 API 在幕后被轉(zhuǎn)換為諸如 JDBC 這樣的低級(jí)接口。在編寫本文時(shí),正在開發(fā)兩種基于 JDBC 的高級(jí) API: 一種用于 Java 的嵌入式 SQL。至少已經(jīng)有一個(gè)提供者計(jì)劃編寫它。DBMS 實(shí)現(xiàn)SQL:一種專門設(shè)計(jì)來(lái)與數(shù)據(jù)庫(kù)聯(lián)合使用的語(yǔ)言。JDBC 要求 SQL 語(yǔ)句必須作為 String 傳給 Java 方法。相反,嵌入式 SQL預(yù)處理器允許程序員將 SQL 語(yǔ)句直接與Java 混在一起使用。例
29、如,可在 SQL 語(yǔ)句中使用 Java 變量,用以接受或提供SQL 值。然后,嵌入式 SQL 預(yù)處理器將通過 JDBC 調(diào)用把這種 Java/SQL 的混合物轉(zhuǎn)換為Java。關(guān)系數(shù)據(jù)庫(kù)表到 Java 類的直接映射。JavaSoft 和其它提供者都聲稱要實(shí)現(xiàn)該API。在這種“對(duì)象/關(guān)系”映射中,表中的每行對(duì)應(yīng)于類的一個(gè)實(shí)例,而每列的值對(duì)應(yīng)于該實(shí)例的一個(gè)屬性。于是,程序員可直接對(duì) Java 對(duì)象進(jìn)行操作;存取數(shù)據(jù)所需的 SQL 調(diào)用將在“掩蓋下”自動(dòng)生成。此外還可提供更復(fù)雜的映射,例如將多個(gè)表中的行結(jié)合進(jìn)一個(gè) Java 類中。 隨著人們對(duì) JDBC 的興趣日益增漲,越來(lái)越多的開發(fā)人員一直在使用基
30、于 JDBC 的工具,以使程序的編寫更加容易。程序員也一直在編寫力圖使最終用戶對(duì)數(shù)據(jù)庫(kù)的訪問變得更為簡(jiǎn)單的應(yīng)用程序。JDBC由一系列連接數(shù)據(jù)庫(kù)、執(zhí)行SQL語(yǔ)句和操作結(jié)果的類和接口構(gòu)成,其主要作用概括起來(lái)有如下三個(gè)方面: (1) 建立與數(shù)據(jù)庫(kù)的連接。 (2) 向數(shù)據(jù)庫(kù)發(fā)起查詢請(qǐng)求。 (3) 處理數(shù)據(jù)庫(kù)返回結(jié)果。 JDBC主要包括以下類或接口: DriverMananger類: DriverMananger類是Java.sql包中用于數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序管理的類,作用于用戶和驅(qū)動(dòng)程序之間。 Connection接口: Connection是用來(lái)表示數(shù)據(jù)庫(kù)連接的對(duì)象,對(duì)數(shù)據(jù)庫(kù)的一切操作
31、都是在這個(gè)連接的基礎(chǔ)上進(jìn)行的。 Statement接口: Statement用于在已經(jīng)建立的連接的基礎(chǔ)上向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句的對(duì)象。它只是一個(gè)接口的定義,其中包括了執(zhí)行SQL語(yǔ)句和獲取返回結(jié)果的方法。 PreparedStatement接口: PreparedStatement接口繼承了Statement接口,但PreparedStatement語(yǔ)句中包含了經(jīng)過預(yù)編譯的SQL語(yǔ)句,因此可以獲得更高的執(zhí)行效率。在PreparedStatement語(yǔ)句中可以包含多個(gè)用“?”代表的字段,在程序中可以利用setXXX方法設(shè)置該字段的內(nèi)容,從而增強(qiáng)了程序設(shè)計(jì)的動(dòng)態(tài)性。 ResultS
32、et接口: 結(jié)果集(ResultSet)用來(lái)暫時(shí)存放數(shù)據(jù)庫(kù)查詢操作獲得的結(jié)果。它包含了符合SQL語(yǔ)句中條件的所有行,并且它提供了一套get方法對(duì)這些行中的數(shù)據(jù)庫(kù)進(jìn)行訪問。 4.3.2 ODBC對(duì)象的數(shù)據(jù)庫(kù)操作 ODBC(OpenDatabaseConnectivity)是"開放數(shù)據(jù)庫(kù)互連"的簡(jiǎn)稱,是一種使用SQL的應(yīng)用程序接口(API),是微軟公司開放服務(wù)結(jié)構(gòu)(WOSA,WindowsOpenServicesArchitecture)中有關(guān)數(shù)據(jù)庫(kù)的一個(gè)組成部分,它建立了一組規(guī)范,并提供了一組對(duì)數(shù)據(jù)庫(kù)訪問的標(biāo)準(zhǔn)API(應(yīng)用程序編程接口)。這些API利用SQL來(lái)完成其大部分任務(wù)。ODBC本身
33、也提供了對(duì)SQL語(yǔ)言的支持,用戶可以直接將SQL語(yǔ)句送給ODBC。 一個(gè)完整的ODBC由下列幾個(gè)部件組成: 1、應(yīng)用程序(Application)。 2、ODBC管理器(Administrator)。該程序位于Windows 95控制面板(Control Panel)的32位ODBC內(nèi),其主要任務(wù)是管理安裝的ODBC驅(qū)動(dòng)程序和管理數(shù)據(jù)源。 3、驅(qū)動(dòng)程序管理器(Driver Manager)。驅(qū)動(dòng)程序管理器包含在ODBC32.DLL中,對(duì)用戶是透明的。其任務(wù)是管理ODBC驅(qū)動(dòng)程序,是ODBC中最重要的部件。 4、ODBC API。 5、ODBC 驅(qū)動(dòng)程序。是一些DLL,提供
34、了ODBC和數(shù)據(jù)庫(kù)之間的接口。 6、數(shù)據(jù)源。數(shù)據(jù)源包含了數(shù)據(jù)庫(kù)位置和數(shù)據(jù)庫(kù)類型等信息,實(shí)際上是一種數(shù)據(jù)連接的抽象 5系統(tǒng)可行性分析 5.1技術(shù)可行性 計(jì)算機(jī)行業(yè)的工作人員要求會(huì)使用常用的辦公軟件和管理軟件,了解IT行業(yè)的產(chǎn)品。在現(xiàn)代化社會(huì),無(wú)論是管理層面還是工作層面的人員都要有一定的計(jì)算機(jī)基礎(chǔ),同時(shí)工作人員要有較高的素質(zhì)。超市對(duì)員工的素質(zhì)要求則更高,要有敏捷的思維,接觸事物的能力,能夠在短期內(nèi)掌握超市管理系統(tǒng)的功能和使用方法,這樣才能熟練運(yùn)用超市管理系統(tǒng),更快的投入工作崗位。超市庫(kù)存管理系統(tǒng)屬于一個(gè)數(shù)據(jù)庫(kù)應(yīng)用類的系統(tǒng),對(duì)存在數(shù)據(jù)庫(kù)進(jìn)行添加、刪除、查找、刪除等功能。從應(yīng)用層面來(lái)講,
35、還是很容易掌握。在軟件開發(fā)方面,由于編程語(yǔ)言較多,而Java語(yǔ)言是一種面向?qū)ο蟮木幊坦ぞ撸琂ava語(yǔ)言是一種代碼簡(jiǎn)單,易懂和維護(hù)的編程語(yǔ)言,為開發(fā)超市庫(kù)存管理系統(tǒng)提供技術(shù)支持。 5.2經(jīng)濟(jì)可行性 隨著技術(shù)的不斷發(fā)展,超市管理系統(tǒng)不僅提高了銷售效率,而且節(jié)省了勞動(dòng)資源和開支,提高了超市的經(jīng)濟(jì)效益,為系統(tǒng)的廣泛使用提供了基礎(chǔ)。同時(shí)在經(jīng)濟(jì)上完全是可行的。 (1)系統(tǒng)給企業(yè)帶來(lái)的經(jīng)濟(jì)效益 超市庫(kù)存管理系統(tǒng)是一個(gè)易于掌握和使用的系統(tǒng),由于其操作簡(jiǎn)單,不僅超市企業(yè)節(jié)省了大量的勞動(dòng)力,而且節(jié)省開支。其次超市庫(kù)存管理系統(tǒng)快速和方便的管理,為超市節(jié)省時(shí)間,同時(shí)讓公司的秩序有顯著的改善。再次超市
36、管理系統(tǒng)是一個(gè)智能化的管理,是一個(gè)動(dòng)態(tài)的存儲(chǔ),也易于查詢,為管理人員采取決策提供了一種依據(jù)。由此為企業(yè)帶來(lái)可觀的經(jīng)濟(jì)效益。 (2) 企業(yè)的承受能力 超市庫(kù)存管理系統(tǒng)的開發(fā)要進(jìn)行系統(tǒng)調(diào)查和統(tǒng)計(jì),主要是進(jìn)行人力和物力的投資,然而對(duì)軟件的投資只是一個(gè)簡(jiǎn)短的過程,只要有專業(yè)的開發(fā)人員投入開發(fā)。軟件要求員工有一定的素質(zhì)和適應(yīng)能力。軟件方便企業(yè)人員的安排和調(diào)度,總體來(lái)說(shuō)節(jié)省了開支,在繁瑣的事情和和管理有序的企業(yè)來(lái)說(shuō),企業(yè)考慮的長(zhǎng)遠(yuǎn)利益,而不眼前的瑣事。從而商家是有能力支付開發(fā)費(fèi)用。 5.3開發(fā)環(huán)境可行性 JAVA是一種面向?qū)ο蟮木幊坦ぞ?,易于程序的開發(fā)和調(diào)試維護(hù)。JAVA不僅基于不同的平臺(tái)開發(fā)
37、,而且可以在不同的系統(tǒng)上進(jìn)行移植,從而加快了軟件的開發(fā),促進(jìn)了發(fā)展。 超市庫(kù)存管理系統(tǒng)就是基于這種簡(jiǎn)單的語(yǔ)言,以ACCESS 2003作為數(shù)據(jù)庫(kù)的后臺(tái),通過JDBC-ODBC空間來(lái)訪問數(shù)據(jù)庫(kù),使軟件的開發(fā)更為簡(jiǎn)單,同時(shí)也提高了開發(fā)的速度。 5.4社會(huì)因素考慮 由于其它語(yǔ)言開發(fā)的超市管理方面的軟件移植性較差,而基于JAVA語(yǔ)言的開發(fā)的軟件可以基于不同平臺(tái),移植性和使用廣泛,為用戶提供可視化的操作界面,易于操作和使用。本系統(tǒng)基于Windows的圖形用戶界面,即使不懂電腦知識(shí)的人也很容易上手。超市管理系統(tǒng)采用最友好的交互界面,不需要專業(yè)的開發(fā)人員進(jìn)行操作,同時(shí)維護(hù)易于簡(jiǎn)單,操作人員不需要了解太
38、多的數(shù)據(jù)庫(kù)方面的知識(shí),只要進(jìn)行簡(jiǎn)單的操作就行。 經(jīng)過上述分析,無(wú)論從那個(gè)方面來(lái)講,基于JAVA語(yǔ)言的超市管理系統(tǒng)都有很高的開發(fā)價(jià)值。 6系統(tǒng)需求分析 超市庫(kù)存管理系統(tǒng)是基于JCreator + JDK 1.6作為開發(fā)工具, ACCESS2000作為后臺(tái)數(shù)據(jù)庫(kù)支持。超市庫(kù)存管理系統(tǒng)開發(fā)主要是界面程序的開發(fā)、數(shù)據(jù)庫(kù)的建立、數(shù)據(jù)庫(kù)的維護(hù)。應(yīng)用程序功能完善,界面人機(jī)交互要好,而且操作簡(jiǎn)單。數(shù)據(jù)庫(kù)中的數(shù)據(jù)要條理清晰,易于維護(hù),同時(shí)要保證數(shù)據(jù)庫(kù)中的數(shù)據(jù)完整。選擇JAVA語(yǔ)言,因?yàn)镴AVA基于不同的開發(fā)平臺(tái),并且界面的開發(fā)是基于Windows的開發(fā)界面,更好的實(shí)現(xiàn)了人機(jī)交互。同時(shí)JAVA語(yǔ)言簡(jiǎn)單
39、,在較短的時(shí)間內(nèi)能夠開發(fā)出使用性強(qiáng)、功能完善,易于操作的程序,也能實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接。 該系統(tǒng)需要滿足以下幾方面的需求: 超市庫(kù)存管理系統(tǒng)能夠節(jié)省勞動(dòng)力,可以快速的貨物的入庫(kù)、出庫(kù)進(jìn)行管理,介紹了企業(yè)的開支,給超市增加收入,提高了超市對(duì)貨物管理的效率,同時(shí)也是一個(gè)時(shí)代發(fā)展的標(biāo)志,使超市的管理工作更為輕松。 對(duì)于管理系統(tǒng)而言,在繁瑣的事情中減少了問題出現(xiàn)的機(jī)率,數(shù)據(jù)庫(kù)的管理也更為簡(jiǎn)單,使數(shù)據(jù)庫(kù)更為安全 超市管理系統(tǒng)基于不同的平臺(tái)開發(fā),而且移植性好,從而應(yīng)用程序可以在不同的平臺(tái)上運(yùn)行。 為了適應(yīng)社會(huì)的發(fā)展和超市管理的需要,可以在原有功能之上進(jìn)行對(duì)系統(tǒng)功能的補(bǔ)充和調(diào)整,從而進(jìn)一步
40、完善其需要。 通過以上的需求分析,初步確定該系統(tǒng)功能主要包括以下幾個(gè)模塊: 1. 系統(tǒng)登錄 2. 商品入庫(kù) 3. 商品查詢 4. 商品更改、刪除 該系統(tǒng)功能模塊結(jié)構(gòu)層次還不夠清晰,還需進(jìn)一步細(xì)化和完善,在系統(tǒng)的總體設(shè)計(jì)及詳細(xì)設(shè)計(jì)階段將做進(jìn)一步的改進(jìn)和完善。 輸入錯(cuò)誤重新登錄 系統(tǒng)登錄 系統(tǒng)數(shù)據(jù)流圖: 確定登錄 商品更改刪除 商品查詢 商品入庫(kù) 商品數(shù)據(jù)庫(kù) 系統(tǒng)數(shù)據(jù)流圖 數(shù)據(jù)字典: 數(shù)據(jù)流的描述: 商品信息=BH+MC+SL+DW+CD+RQ+BZ+JJ+BZ 商品信息查詢= BH+MC+DW 查詢結(jié)果=
41、 BH+MC+SL+DW+CD+RQ+BZ+JJ+BZ 數(shù)據(jù)項(xiàng)的描述: 數(shù)據(jù)項(xiàng)名 數(shù)據(jù)類型 長(zhǎng)度 說(shuō)明 BH 文本 50 商品編號(hào) MC 文本 50 商品名稱 SL 數(shù)字 長(zhǎng)整型 商品數(shù)量 DW 文本 50 商品單位 CD 文本 50 商品產(chǎn)地 RQ 文本 50 生產(chǎn)日期 BZQ 數(shù)字 雙精度型 保質(zhì)期 JJ 數(shù)字 長(zhǎng)整型 商品進(jìn)價(jià) BZ 文本 50 備注 數(shù)據(jù)存儲(chǔ)的描述: 商品數(shù)據(jù)庫(kù):存儲(chǔ)由入庫(kù)商品信息按商品編號(hào)的首字母進(jìn)行分類存儲(chǔ)得到結(jié)果數(shù)據(jù)。 7系統(tǒng)總體設(shè)計(jì) 7.1功能模塊設(shè)計(jì) 根據(jù)前
42、面的設(shè)計(jì)思想和需求分析該系統(tǒng)從功能上分為以下幾個(gè)模塊: 1. 系統(tǒng)登錄 2. 商品輸入 3. 商品查詢 4. 商品更改 5. 商品刪除 系統(tǒng)登錄 錄 超市庫(kù)存管理系統(tǒng) 商品入庫(kù) 商品查詢 商品更改 商品刪除 進(jìn)行身份驗(yàn)證 然后按類存儲(chǔ) 存在則給出全部信息 然后按類存儲(chǔ) 不存在則輸入全部信息 信息 按類列出庫(kù)存全部商品 或其他信息的修改 商品售出則修改數(shù)量 刪除 商品數(shù)量為零則進(jìn)行 系統(tǒng)功能框架圖: 系統(tǒng)功能框架圖 7.2數(shù)據(jù)庫(kù)設(shè)計(jì) 為便于管理訪問,將數(shù)據(jù)存儲(chǔ)在商品數(shù)據(jù)庫(kù)中: 商品數(shù)據(jù)庫(kù)包括:
43、存儲(chǔ)由商品入庫(kù)時(shí)按編號(hào)首字母的規(guī)定進(jìn)行分類存儲(chǔ)得到的結(jié)果數(shù)據(jù)。根據(jù)得到的數(shù)據(jù)進(jìn)行更改和刪除。 系統(tǒng)登錄 7.3系統(tǒng)流程圖 分組處理 商品數(shù)據(jù)庫(kù) 商品錄入 商品查詢 數(shù)據(jù)修改 查詢結(jié)果 商品名稱對(duì)照表 7.4工作進(jìn)度安排 第11周:深入研究任務(wù)書,搜集、查閱相關(guān)的資料, 撰寫開題報(bào)告 第12周:確定設(shè)計(jì)方案 第13周:詳細(xì)設(shè)計(jì)并進(jìn)行編碼與局部調(diào)試 第14周:系統(tǒng)整合與整體調(diào)試 第15周:準(zhǔn)備畢業(yè)設(shè)計(jì)答辯材料,畢業(yè)設(shè)計(jì)答辯 8系統(tǒng)詳細(xì)設(shè)計(jì) 8.1功能模塊詳細(xì)設(shè)計(jì)及算法 通過深入研究任務(wù)書,搜集、查閱與課題相關(guān)的資料,在總體設(shè)
44、計(jì)階段該系統(tǒng)預(yù)設(shè)計(jì)系統(tǒng)登錄、商品入庫(kù)、商品查詢、商品更改、刪除等幾個(gè)功能模塊。每個(gè)模塊又包含多項(xiàng)子功能: 1、 統(tǒng)登錄模塊需要包含完成根據(jù)提供的用戶名、初始密碼進(jìn)行登錄驗(yàn)證,如果成功則進(jìn)入系統(tǒng),否則提示無(wú)法登錄。 2、商品入庫(kù)模塊需要包含完成根據(jù)商品編號(hào)的首字母來(lái)進(jìn)行商品的分類,如果輸入的商品在數(shù)據(jù)庫(kù)中存在,則給出已有的信息,可以修改數(shù)量;如果輸入的商品不存在,則需要輸入全部信息。 3、商品查詢模塊需要包含完成商品查詢,分類列出數(shù)據(jù)庫(kù)里全部的商品信息。 4、分組模塊需包括對(duì)報(bào)名信息按項(xiàng)目進(jìn)行分庫(kù)、分組等功能項(xiàng)。 5、商品更改、刪除模塊要包括完成商品更改,當(dāng)商品售出對(duì)數(shù)量進(jìn)行修改,或?qū)?/p>
45、其他信息進(jìn)行修改,商品刪除,商品數(shù)量為0則進(jìn)行刪除。 8.2本人所作貢獻(xiàn) 在本次設(shè)計(jì)中,我主要負(fù)責(zé)系統(tǒng)登錄模塊。我要設(shè)計(jì)與實(shí)現(xiàn)的主要內(nèi)容有: 1、商品的更改和刪除 界面設(shè)計(jì): 商品更改界面 商品刪除界面 2、連接Access數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)有家電和食品兩個(gè)表,A代表食品表,B代表家電表 連接數(shù)據(jù)庫(kù)代碼: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.ge
46、tConnection("jdbc:odbc:cangku"); Statement st=con.createStatement(); 3、對(duì)功能介紹 更改功能:要求用戶輸入商品的編號(hào),根據(jù)商品編號(hào)去數(shù)據(jù)庫(kù)查詢出商品的信息,如果存在此商品則可以進(jìn)行對(duì)商品的更改,如果不存在此商品則不顯示信息。 假如查詢食品表,代碼如下: up="update 食品 set 商品名稱="+jtf[1].getText()+",商品數(shù)量="+jtf[2].getText()+",商品單位="+jtf[3].getText()+",商品產(chǎn)地="+jtf[4
47、].getText()+",生產(chǎn)日期="+jtf[5].getText()+",保質(zhì)期="+jtf[6].getText()+",商品進(jìn)價(jià)="+jtf[7].getText()+",備注="+jtf[8].getText()+" where 商品編號(hào)="+jtf[0].getText()+""; 刪除功能:要求用戶輸入商品編號(hào),根據(jù)商品編號(hào)去數(shù)據(jù)庫(kù)中商品信息,如果存在此商品,便可查詢出商品的名稱。 假如刪除家電的信息,代碼如下 up="Delete from 家電 where 商品編號(hào)="+jtf[0].getText()+""; 關(guān)閉數(shù)據(jù)庫(kù)
48、代碼: st.close(); con.close(); 4、對(duì)控制中心所屬各功能模塊進(jìn)行整合。 5、組織完成整個(gè)系統(tǒng)的調(diào)試和試運(yùn)行。 9設(shè)計(jì)的編碼與實(shí)現(xiàn) 編碼是設(shè)計(jì)軟件時(shí)必不可少的,同時(shí)也是能夠讓人機(jī)交互的基礎(chǔ),編碼也是也是影響一個(gè)軟件質(zhì)量、速度、通信的一個(gè)關(guān)鍵。一種程序設(shè)計(jì)語(yǔ)言也是影響軟件質(zhì)量因素之一。Java是編程較為簡(jiǎn)單,許多方法和類都不需要程序員親自編寫,只需繼承響應(yīng)的類。Java是一種基于Windows的開發(fā)平臺(tái),同時(shí)為人機(jī)更好的交互提供了基礎(chǔ)。為了讓開發(fā)者更好的完善,程序編寫時(shí)做了相應(yīng)的注釋,難懂的語(yǔ)句有響應(yīng)的解釋,方法是按一般的規(guī)律命名。
49、 10程序和系統(tǒng)調(diào)試 軟件的完成要經(jīng)過編譯和調(diào)試兩個(gè)過程,模塊的編寫和測(cè)試都是設(shè)計(jì)者,當(dāng)開發(fā)過程中,并不能保證每一處都完全正確,要不斷的調(diào)試,在調(diào)試中盡可能查找出更多的錯(cuò)誤,根據(jù)錯(cuò)誤提示信息進(jìn)行相應(yīng)的修改,由于本人所做的只有商品的更改和刪除,模塊單一。在運(yùn)行中發(fā)現(xiàn)模塊的不足之處,進(jìn)行響應(yīng)的完善。所以一個(gè)軟件的完成是需要不斷的調(diào)試和完善,調(diào)試是保證軟件順利運(yùn)行的基礎(chǔ)。 11結(jié)論 時(shí)光匆匆飛逝,三年的努力與付出,隨著論文的完成,終于讓我在大學(xué)的生活得以劃下完美的句點(diǎn)。通過此次的論文,我學(xué)到了很多知識(shí),跨越了傳統(tǒng)方式下的教與學(xué)的體制束縛,在論文的寫作過程中,通
50、過查資料和搜集有關(guān)的文獻(xiàn),培養(yǎng)了自學(xué)能力和動(dòng)手能力。并且由原先的被動(dòng)的接受知識(shí)轉(zhuǎn)換為主動(dòng)的尋求知識(shí),這可以說(shuō)是學(xué)習(xí)方法上的一個(gè)很大的突破。在以往的傳統(tǒng)的學(xué)習(xí)模式下,我們可能會(huì)記住很多的書本知識(shí),但是通過畢業(yè)論文,我們學(xué)會(huì)了如何將學(xué)到的知識(shí)轉(zhuǎn)化為自己的東西,學(xué)會(huì)了怎么更好的處理知識(shí)和實(shí)踐相結(jié)合的問題。 通過這次超市庫(kù)存管理系統(tǒng)課程設(shè)計(jì),讓我充分運(yùn)用自己所學(xué)的知識(shí),讓我明白只有單純的理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有通過實(shí)際的鍛煉才能更好的運(yùn)用所掌握的基礎(chǔ)知識(shí),才能在原有的基礎(chǔ)上提升自己的能力,提高自己解決問題的能力。在這短短的一個(gè)月內(nèi),查閱有關(guān)的java學(xué)習(xí)資料,設(shè)計(jì)規(guī)則,代碼的編寫及到最后的調(diào)試。在
51、設(shè)計(jì)過程中,通過對(duì)控件事件的處理,界面的布局,代碼的調(diào)試,充分鍛煉了自己的思維,獲得了充分的實(shí)際經(jīng)驗(yàn),提高了處理問題的能力,同時(shí)也提高了對(duì)問題思考的應(yīng)急能力和抗壓力的能力。 在老師的指導(dǎo)下,使我有了思考的方向,他的循循善誘的教導(dǎo)和不拘一格的思路給予我無(wú)盡的啟迪,他的嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng),將一直是我工作、學(xué)習(xí)中的榜樣。加上老師本來(lái)就有的教學(xué)任務(wù),工作量之大可想而知,但在一次次的回稿中,精確到每一個(gè)字的批改給了我深刻的印象,使我在論文之外明白了做學(xué)問所應(yīng)有的態(tài)度。通過此次的論文,我學(xué)到了很多知識(shí),跨越了傳統(tǒng)方式下的教與學(xué)的體制束縛,在論文的寫作過程中,通過查資料和搜集有關(guān)的文獻(xiàn),培養(yǎng)了自學(xué)能
52、力和動(dòng)手能力。并且由原先的被動(dòng)的接受知識(shí)轉(zhuǎn)換為主動(dòng)的尋求知識(shí),這可以說(shuō)是學(xué)習(xí)方法上的一個(gè)很大的突破。在以往的傳統(tǒng)的學(xué)習(xí)模式下,我們可能會(huì)記住很多的書本知識(shí),但是通過畢業(yè)論文,我們學(xué)會(huì)了如何將學(xué)到的知識(shí)轉(zhuǎn)化為自己的東西,學(xué)會(huì)了怎么更好的處理知識(shí)和實(shí)踐相結(jié)合的問題。 經(jīng)過一個(gè)月的努力,雖然設(shè)計(jì)已經(jīng)完成,但仍然有很多模塊和功能要完善,存在很多美中不足之處。但是基本上還能滿足小型超市的管理。 在論文的寫作過程中也學(xué)到了做任何事情所要有的態(tài)度和心態(tài),首先我明白了做學(xué)問要一絲不茍,對(duì)于出現(xiàn)的任何問題和偏差都不要輕視,要通過正確的途徑去解決,在做事情的過程中要有耐心和毅力,不要一遇到困難就打退堂鼓,只要
53、堅(jiān)持下去就可以找到思路去解決問題的。總之,此次論文的寫作過程,讓我明白做什么事都要不斷的嘗試,再次期間,我收獲了很多。此次論文的完成既為大學(xué)三年劃上了一個(gè)完美的句號(hào),這也是我以后工作的一個(gè)前奏,也為將來(lái)的人生之路做好了一個(gè)很好的鋪墊。 謝辭 短短的一個(gè)月的時(shí)間,完成了本篇論文,對(duì)自己來(lái)說(shuō)是一個(gè)不小的挑戰(zhàn)。本次論文的順利完成,得到了輔導(dǎo)老師的大力輔導(dǎo)與幫助。在此,表示我最衷心的感謝。 郭沫若曾說(shuō):寫一篇好的文章有七個(gè)字的訣竅。就是改、改、改、改、改、改、改。從最初翻閱《藍(lán)海戰(zhàn)略》擬訂自己論文核心到現(xiàn)在,僅僅論文的題目就六、七次易名。論文可以說(shuō)有了脫胎換骨的變化。如果沒有陳老師不厭其煩,一次
54、一次從百忙中抽空幫我指導(dǎo)和修改論文,也許論文現(xiàn)在還是一個(gè)雛形,沒有實(shí)質(zhì)的進(jìn)展。 同時(shí)也要感謝三年來(lái)教導(dǎo)過自己的各學(xué)科老師,學(xué)院的各位領(lǐng)導(dǎo)和老師,還有在我論文過程中,幫我一起搜集資料的朋友和同學(xué)。正因?yàn)橛心銈?,才使得這篇論文能完整的呈現(xiàn)在這里,才使得自己完成了這個(gè)令人興奮的目標(biāo)。 任何一篇優(yōu)秀的論文都離不開老師很朋友的參與、支持和幫助。而每一篇好的論文又都能為大家所分享和閱讀,這真是一種善緣,愿我們?cè)谶@樣的關(guān)系中都能成長(zhǎng)和進(jìn)步。 在最后,對(duì)指導(dǎo)和幫助過我的老師、同學(xué)們?cè)僖淮伪硎疚业闹孕牡馗兄x??! 參考文獻(xiàn) 1. 《Java語(yǔ)言基礎(chǔ)教程》,
55、 朱福喜 主編 ,清華大學(xué)出版社 2. 《數(shù)據(jù)結(jié)構(gòu)與算法分析(Java語(yǔ)言描述)(第2版) 》, 金名 主編, 清華大學(xué)出版社 3. 《Java2程序設(shè)計(jì)基礎(chǔ)》, 張曉龍 主編, 清華大學(xué)出版社 4. 《Java程序設(shè)計(jì)教程(第2版)》, 雍俊海 主編, 清華大學(xué)出版社 5. 《 Java2實(shí)驗(yàn)指導(dǎo)與測(cè)試第二版》,龔沛曾編寫,高等教育出版社 6. 《 Java 程序設(shè)計(jì)教程》,劉瑞新、李樹東等編著,電子工業(yè)出版社 7. 《Access 2003應(yīng)用技術(shù)》, 馬秋菊 等編著,水利水電出版社 8. 《Access數(shù)據(jù)庫(kù)技術(shù)實(shí)訓(xùn)教程》, 張玲 編著 ,清華大學(xué)出版社 9. 《J
56、ava 系統(tǒng)開發(fā)實(shí)例精粹》,曹衍龍 編著,人民郵電出版社 10. 《Java數(shù)據(jù)庫(kù)系統(tǒng)項(xiàng)目開發(fā)實(shí)踐 》,譚浩強(qiáng) 主編,清華大學(xué)出版社 11. 《Java信息系統(tǒng)開發(fā)實(shí)例精選》,賽奎春 主編,機(jī)械工業(yè)出版社 12. 《Java2高級(jí)開發(fā)指南》,[美]Evangelos Petroutsos kevinltough著,電子工業(yè)出版社 13. 《Java程序設(shè)計(jì)案例教程》,劉志成 主編,清華大學(xué)出版社 附錄 更改代碼: 導(dǎo)入JAVA類包/* import java.awt.*;import javax.swin
57、g.*;import java.awt.event.*;import javax.swing.event.*;import java.sql.*;import java.applet.*;import java.util.*;*/ public class Genggai extends JFrame implements ActionListener,FocusListener { JLabel jl[]=new JLabel[9]; JTextField jtf[]=new JTextField[9]; Toolkit tk=Toolkit.getDefaultToo
58、lkit(); Dimension dm; Font font=new Font("宋體",Font.PLAIN+Font.BOLD,20); int y=-50; JButton jb1,jb2; static boolean f=true,A_B=true; public Genggai() { JPanel jp=new JPanel(null); jl[0]=new JLabel("商品編號(hào)"); jl[1]=new JLabel("商品名稱"); jl[2]=new JLabel("商品數(shù)量"
59、); jl[3]=new JLabel("商品單位"); jl[4]=new JLabel("商品產(chǎn)地"); jl[5]=new JLabel("生產(chǎn)日期"); jl[6]=new JLabel("保值期"); jl[7]=new JLabel("商品進(jìn)價(jià)"); jl[8]=new JLabel("備注"); for(int i=0;i<9;i++) { jl[i].setBounds(10,y+60,100,40); jl[i].setFont(font);
60、 jtf[i]=new JTextField(30); jtf[i].setBounds(120,y+=60,100,40); jtf[i].setFont(font); jp.add(jl[i]); jp.add(jtf[i]); } jtf[0].addFocusListener(this); jb1=new JButton("確定"); jb1.setBounds(30,560,80,40); jb1.setFont(font); jb1.addActionListener(this
61、); jp.add(jb1); jb2=new JButton("清空"); jb2.setBounds(120,560,80,40); jb2.addActionListener(this); jb2.setFont(font); jp.add(jb2); for(int i=1;i<9;i++) jtf[i].setEditable(false); this.setContentPane(jp); this.setTitle("商品更改"); setSize(240,700); setVisi
62、ble(true); setResizable(false); dm=tk.getScreenSize(); setLocation(dm.width/2-getWidth()/2,dm.height/2-getHeight()/2); setDefaultCloseOperation(DISPOSE_ON_CLOSE); } public void focusGained(FocusEvent e) { } public void focusLost(FocusEvent e) {
63、 try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection("jdbc:odbc:cangku"); Statement st=con.createStatement(); String ss=jtf[0].getText(); String sql=""; if(ss.charAt(0)==A) sql="s
64、elect * from 食品"; else if(ss.charAt(0)==B) { sql="select * from 家電"; A_B=false; } System.out.println(sql); ResultSet rs=st.executeQuery(sql); while(rs.next()) { if(rs.getString(1).equals(jtf[0].
65、getText())) { for(int i=1;i<9;i++) jtf[i].setText(rs.getString(i+1)); f=true; jtf[0].setEditable(false); for(int i=1;i<9;i++) { jtf[i].setEditable(true); } break; } e
66、lse { f=false; } } if(f==false) { for(int i=1;i<9;i++) jtf[i].setText(""); JOptionPane.showMessageDialog(null,"需要更改的商品不存在!"); } rs.close(); st.close(); con.close(); }catch(Exception eee) { } } public void actionPerformed(ActionEvent e) { String up="",sql="",sn=""; if(A_B==true) {
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版必修五《林教頭風(fēng)雪山神廟》ppt課件
- 人教版《分?jǐn)?shù)的意義和性質(zhì)》(完美版)課件
- 正比例函數(shù)及性質(zhì)
- 企業(yè)戰(zhàn)略環(huán)境分析
- 前列腺增生3課件
- 煉鐵基礎(chǔ)非高爐煉鐵課件
- 小兒腹瀉小講課分析課件
- 職業(yè)經(jīng)理人的壓力管理課件
- 街道改造PPT方案展示-項(xiàng)目概況案例分析現(xiàn)存建筑質(zhì)量設(shè)計(jì)理念課件
- 2022年北師大版小學(xué)數(shù)學(xué)《小數(shù)目物品平均分》課件
- 作文指導(dǎo)--場(chǎng)面描寫-PPT
- 肺癌診斷和治療的幾個(gè)問題
- 一下《王二小》
- 第八章專題八(教育精品)
- 六年級(jí)數(shù)學(xué)下冊(cè) 正負(fù)數(shù) 2課件 人教新課標(biāo)