java數(shù)據(jù)庫(kù)銷(xiāo)售管理系統(tǒng)實(shí)驗(yàn)報(bào)告完整版(附代碼)_第1頁(yè)
java數(shù)據(jù)庫(kù)銷(xiāo)售管理系統(tǒng)實(shí)驗(yàn)報(bào)告完整版(附代碼)_第2頁(yè)
java數(shù)據(jù)庫(kù)銷(xiāo)售管理系統(tǒng)實(shí)驗(yàn)報(bào)告完整版(附代碼)_第3頁(yè)
java數(shù)據(jù)庫(kù)銷(xiāo)售管理系統(tǒng)實(shí)驗(yàn)報(bào)告完整版(附代碼)_第4頁(yè)
java數(shù)據(jù)庫(kù)銷(xiāo)售管理系統(tǒng)實(shí)驗(yàn)報(bào)告完整版(附代碼)_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、大連海事大學(xué)本科生實(shí)驗(yàn)報(bào)告 數(shù)據(jù)庫(kù)原理-操作實(shí)訓(xùn) 院 (系): 交通運(yùn)輸管理學(xué)院 專(zhuān) 業(yè): 電子商務(wù) 課程名稱(chēng): 數(shù)據(jù)庫(kù)原理 學(xué) 號(hào): 2220113494 學(xué) 生: 周慧敏 任課教師: 賀琳 完成日期: 2013 年 12 月 1 1實(shí)驗(yàn)?zāi)康膶?shí)驗(yàn)?zāi)康?掌握數(shù)據(jù)庫(kù)模式設(shè)計(jì),依據(jù)實(shí)際要求設(shè)計(jì)表結(jié)構(gòu),建立表的關(guān)系;結(jié)合一定的 開(kāi)發(fā)工具實(shí)現(xiàn)數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā)。 2 2實(shí)驗(yàn)環(huán)境實(shí)驗(yàn)環(huán)境 2.12.1 硬件環(huán)境硬件環(huán)境: 處理器處理器:Intel(R) Core(TM) i3 CPU M 380 2.53GHz 2.53GHz 安裝內(nèi)存:安裝內(nèi)存:(RAM):2GB(1.86GB可用) 2.22.2

2、軟件環(huán)境軟件環(huán)境 操作系統(tǒng)操作系統(tǒng): Windows7 數(shù)據(jù)庫(kù)管理系統(tǒng):數(shù)據(jù)庫(kù)管理系統(tǒng):微軟公司的SQL Server2005 開(kāi)發(fā)工具開(kāi)發(fā)工具: Eclipse 3 3需求分析需求分析 銷(xiāo)售管理系統(tǒng),可用于企業(yè)的銷(xiāo)售信息管理,查詢,更新與維護(hù),使用方便,易用性強(qiáng), 圖形界面清晰明了。該軟件用 java 語(yǔ)言編寫(xiě),用 SQLServer2005 數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn) 行信息的存儲(chǔ),用 SQL 語(yǔ)句完成銷(xiāo)售信息的添加,查詢,修改,刪除的操作。用 ODBC 驅(qū)動(dòng)實(shí) 現(xiàn)前臺(tái) Java 與后臺(tái) SQL 數(shù)據(jù)庫(kù)的連接。Java 語(yǔ)言跨平臺(tái)性強(qiáng),可以在 windows,linux,ubuntu 等系統(tǒng)

3、下使用,方便簡(jiǎn)單,安全性好。SQLServer2005 數(shù)據(jù)庫(kù)高效安 全,兩者結(jié)合可相互利用各自的優(yōu)勢(shì)。 該系統(tǒng)實(shí)現(xiàn)的大致功能: 1.用戶登陸界面。該界面可以選擇使用者的身份, “系統(tǒng)管理員,基本檔案管理員,業(yè)務(wù)員” 。 不同的身份有不同的操作界面和功能權(quán)限。ID 號(hào)和密碼輸入正確即可登錄。 2.系統(tǒng)管理員界面,擁有最高權(quán)限。提供了客戶信息管理、產(chǎn)品信息管理、訂單信息管理、 發(fā)貨管理與簽收管理等功能。 3.基本檔案管理員界面。提供了客戶信息管理、產(chǎn)品信息管理等功能。 4.業(yè)務(wù)員界面。提供了訂單信息管理、發(fā)貨管理與簽收管理等功能。 5.登錄的用戶信息分別存儲(chǔ)在 SQL 數(shù)據(jù)庫(kù)的“unpw 表”中

4、,如果用戶信息不存在這個(gè)表中, 將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。 6.保證了本銷(xiāo)售管理系統(tǒng)的安全性。 系統(tǒng)功能圖如下系統(tǒng)功能圖如下: : 4 4概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì) 根據(jù)以上對(duì)系統(tǒng)的需求分析,系統(tǒng)設(shè)計(jì),本系統(tǒng)使用的數(shù)據(jù)庫(kù)實(shí)體分別為客戶信息實(shí)體, 產(chǎn)品信息實(shí)體,訂單信息實(shí)體,發(fā)貨單實(shí)體,簽收單實(shí)體。 1:客戶信息實(shí)體 客戶信息實(shí)體包括客戶名稱(chēng)、單位地址、聯(lián)系電話、地址、開(kāi)戶銀行、銀行賬號(hào)、發(fā)票抬 頭、所在區(qū)域等屬性。客戶信息實(shí)體的 E-R 圖如圖所示。 銷(xiāo)售管理系統(tǒng) 業(yè)務(wù)員系統(tǒng)管理員基本檔案管理員 訂 單 信 息 管 理 發(fā) 貨 管 理 簽 收 管 理 客 戶 信 息 管 理 產(chǎn) 品 信 息 管

5、理 訂 單 信 息 管 理 發(fā) 貨 管 理 客 戶 信 息 管 理 產(chǎn) 品 信 息 管 理 訂 單 信 息 管 理 簽 收 管 理 客戶信息 客戶名稱(chēng) 單位地址 聯(lián)系電話 地址 開(kāi)戶銀行 銀行賬號(hào) 發(fā)票抬頭 所在區(qū)域 2:發(fā)貨單實(shí)體 發(fā)貨單實(shí)體包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、 單價(jià)、運(yùn)費(fèi)、總價(jià)、發(fā)貨日期等屬性,E-R 圖如圖所示。 3:簽收單實(shí)體 簽收單實(shí)體包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、 單價(jià)、運(yùn)費(fèi)、總價(jià)、收貨日期等屬性,E-R 圖如圖所示。 發(fā)貨單 客戶名稱(chēng) 聯(lián)系人 聯(lián)系電話 發(fā)貨地址 地址 產(chǎn)品名稱(chēng) 型號(hào) 數(shù)量

6、單價(jià) 運(yùn)費(fèi) 總價(jià) 發(fā)貨日期 簽收單 客戶名稱(chēng) 聯(lián)系人 聯(lián)系電話 發(fā)貨地址 地址 產(chǎn)品名稱(chēng) 型號(hào) 數(shù)量 單價(jià) 運(yùn)費(fèi) 總價(jià) 收貨日期 4:unpw 實(shí)體 unpw 實(shí)體包括 un、pw、qx 等屬性,E-R 圖如圖所示。 5:產(chǎn)品信息實(shí)體 產(chǎn)品信息實(shí)體主要包括產(chǎn)品名稱(chēng)、規(guī)格、型號(hào)、操作系統(tǒng)、產(chǎn)品描述、產(chǎn)品分類(lèi)等屬性。E- R 圖如圖所示。 unpw un pw qx 產(chǎn)品信息 產(chǎn)品名稱(chēng) 規(guī)格 型號(hào) 操作系統(tǒng) 產(chǎn)品描述 產(chǎn)品分類(lèi) 6:訂單信息實(shí)體 訂單信息實(shí)體主要包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、最后到貨期限(日期) 以及產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、產(chǎn)品要求等屬性。E-R 圖如圖所示。 實(shí)體屬性表

7、:實(shí)體屬性表: 實(shí)體屬性 客戶信息 客戶名稱(chēng)、單位地址、聯(lián)系電話、地址、開(kāi)戶銀行、銀行賬號(hào)、發(fā)票抬頭、所在區(qū)域 產(chǎn)品信息 產(chǎn)品名稱(chēng)、規(guī)格、型號(hào)、操作系統(tǒng)、產(chǎn)品描述、產(chǎn)品分類(lèi) 訂單信息 客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、最后到貨期限(日期)以及產(chǎn)品名稱(chēng)、型號(hào)、 數(shù)量、產(chǎn)品要求 簽收單 客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、單價(jià)、運(yùn)費(fèi)、 總價(jià)、收貨日期 發(fā)貨單 客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、單價(jià)、運(yùn)費(fèi)、 總價(jià)、發(fā)貨日期 unpw(用戶) un(登錄名) 、pw(密碼) 、qx(用戶) 訂單信息 聯(lián)系人 聯(lián)系電話 發(fā)貨地址 最后到貨

8、期限 客戶名稱(chēng) 產(chǎn)品名稱(chēng) 型號(hào) 數(shù)量 產(chǎn)品要求 產(chǎn)品信息 產(chǎn)品名稱(chēng) 型號(hào) 規(guī)格 訂單信息 產(chǎn)品名稱(chēng) 產(chǎn)品要求 型號(hào) 客戶信息 客戶名稱(chēng) 產(chǎn)品名稱(chēng) 單位地址 地址 簽收單 銀行賬號(hào) 型號(hào) 單價(jià) 數(shù)量 發(fā)票抬頭 總價(jià) 發(fā)貨日期 運(yùn)費(fèi) 發(fā)貨單 開(kāi)戶銀行 聯(lián)系電話 所在區(qū)域 操作系統(tǒng) 產(chǎn)品描述 產(chǎn)品分類(lèi) 數(shù)量 客戶名稱(chēng) 發(fā)貨地址 聯(lián)系電話 聯(lián)系人 地址 收貨日期 數(shù)量 總價(jià) 運(yùn)費(fèi) 單價(jià) 1 包含 n 1 簽 收 N 1 生成 1 1 1 采購(gòu) n 5 5邏輯結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì) (1) 表-dbo.客戶信息(客戶信息表) 客戶信息表包括客戶名稱(chēng)、單位地址、聯(lián)系電話、地址、開(kāi)戶銀行、銀行帳號(hào)、 發(fā)票抬頭

9、、所在區(qū)域等信息。 (2) 表-dbo.產(chǎn)品信息(產(chǎn)品信息表) 產(chǎn)品信息表包括產(chǎn)品名稱(chēng)、規(guī)格、型號(hào)、操作系統(tǒng)、產(chǎn)品描述、產(chǎn)品分類(lèi)等信 息。 (3)表-dbo.訂單信息(訂單信息表) 訂單信息表包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、最后到貨期限(日 期)以及產(chǎn)品名稱(chēng)、型號(hào)、數(shù)量、產(chǎn)品要求等信息。 (4) 表-dbo.發(fā)貨單信息(發(fā)貨單表) 發(fā)貨單表主要包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、 型號(hào)、數(shù)量、單價(jià)、運(yùn)費(fèi)、總價(jià)、發(fā)貨日期等信息。 (5) 表-dbo.簽收單信息(簽收單表) 簽收單表主要包括客戶名稱(chēng)、聯(lián)系人、聯(lián)系電話、發(fā)貨地址、地址、產(chǎn)品名稱(chēng)、 型號(hào)、數(shù)量、單價(jià)、運(yùn)

10、費(fèi)、總價(jià)、收貨日期等信息。 (6) 表-dbo.unpw(用戶表) 用戶表包括 un、pw、qx 等信息。 6 6數(shù)據(jù)庫(kù)實(shí)現(xiàn)數(shù)據(jù)庫(kù)實(shí)現(xiàn) (1)數(shù)據(jù)庫(kù)關(guān)系圖 (2)SQL語(yǔ)句實(shí)現(xiàn) 數(shù)據(jù)表的創(chuàng)建:數(shù)據(jù)表的創(chuàng)建: (i)客戶信息表創(chuàng)建: create table 客戶信息表( 客戶名稱(chēng) nchar(10) not null primary key , 單位地址 nchar(10), 聯(lián)系電話 nchar(10), 地址 nchar(10), 開(kāi)戶銀行 nchar(10), 銀行賬號(hào) nchar(10), 發(fā)票抬頭 nchar(10), 所在區(qū)域 nchar(10), ) (ii)產(chǎn)品信息表創(chuàng)建: c

11、reate table 產(chǎn)品信息表( 產(chǎn)品名稱(chēng) nchar(10) not null primary key , 規(guī)格 nchar(10), 型號(hào) nchar(10), 操作系統(tǒng) nchar(10), 產(chǎn)品描述 nchar(10), 產(chǎn)品分類(lèi) nchar(10), ) (iii)訂單信息表創(chuàng)建: create table 訂單信息表( 客戶名稱(chēng) nchar(10) not null primary key , 聯(lián)系人 nchar(10), 聯(lián)系電話 nchar(10), 發(fā)貨地址 nchar(10), 最后到貨期限 nchar(10), 產(chǎn)品名稱(chēng) nchar(10), 型號(hào) nchar(10)

12、, 數(shù)量 int, 產(chǎn)品要求 nchar(10), ) (iv)發(fā)貨單表創(chuàng)建: create table 發(fā)貨單表( 客戶名稱(chēng) nchar(10) not null primary key , 聯(lián)系人 nchar(10), 聯(lián)系電話 nchar(10), 發(fā)貨地址 nchar(10), 地址 nchar(10), 產(chǎn)品名稱(chēng) nchar(10), 型號(hào) nchar(10), 數(shù)量 int, 單價(jià) int, 運(yùn)費(fèi) int, 總價(jià) int, 發(fā)貨日期 nchar(10), ) (v)收貨單表創(chuàng)建: create table 收貨單表( 客戶名稱(chēng) nchar(10) not null primary

13、key , 聯(lián)系人 nchar(10), 聯(lián)系電話 nchar(10), 發(fā)貨地址 nchar(10), 地址 nchar(10), 產(chǎn)品名稱(chēng) nchar(10), 型號(hào) nchar(10), 數(shù)量 int, 單價(jià) int, 運(yùn)費(fèi) int, 總價(jià) int, 收貨日期 nchar(10), ) (vi)管理員信息表創(chuàng)建: create table unpw表( qx int not null primary key , un varchar(12) not null, pw varchar(12) not null ) 7 7應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)現(xiàn) (1)用戶登錄模塊 (2)各用戶操作

14、模塊 (i)系統(tǒng)管理員操作模塊 (ii)基本檔案管理員操作模塊 (iii)業(yè)務(wù)員操作模塊 (3)系統(tǒng)管理員登錄 在登陸界面選擇“系統(tǒng)管理員”角色,輸入正確的 ID 和密碼。驗(yàn)證成功則可 進(jìn)入系統(tǒng)管理員管理界面。系統(tǒng)管理員 ID 號(hào)和登錄密碼存在數(shù)據(jù)庫(kù)中的管理員信 息表。表中存在的管理員才允許登錄。 (i)點(diǎn)擊客戶信息管理,彈出如下界面: (ii)點(diǎn)擊顯示按鈕后,會(huì)出現(xiàn)數(shù)據(jù)庫(kù)里保存的客戶信息: (iii)點(diǎn)擊增加按鈕,彈出如下界面,輸入要增加的客戶信息,成功后會(huì)彈出增 加成功的提示窗口: (iv)增加客戶信息成功后客戶信息管理界面會(huì)增加一行客戶信息,如圖所示: (v)選中一條客戶信息,點(diǎn)擊刪除按

15、鈕,成功后會(huì)出現(xiàn)刪除成功的提示窗口: (vi)成功刪除Tom客戶的信息后,客戶信息管理界面變化如下: (vii)選中一行客戶信息,點(diǎn)擊修改按鈕,出現(xiàn)如下界面,輸入要修改的信息, 成功后彈出修改成功的提示窗口:(此處修改了客戶Tom的聯(lián)系電話) (viii)點(diǎn)擊查詢按鈕,彈出如下窗口: 在文本框中輸入“Hei“,即可查詢所在區(qū)域?yàn)椤盚ei“的客戶信息: 其他模塊與客戶信息管理模塊類(lèi)似,均能實(shí)現(xiàn)信息的查詢、修改、刪除、增加、顯 示等功能,在此不再贅述;點(diǎn)擊退出系統(tǒng)即可完成本次操作。 經(jīng)過(guò)系統(tǒng)一系列的增刪改查操作之后,sql sever 2005數(shù)據(jù)庫(kù)上的客戶信息表同時(shí) 也發(fā)生了改變: 8 8實(shí)驗(yàn)總

16、結(jié)(實(shí)驗(yàn)心得)實(shí)驗(yàn)總結(jié)(實(shí)驗(yàn)心得) 本次操作實(shí)訓(xùn)雖然很辛苦,但實(shí)在是受益匪淺。在操作實(shí)訓(xùn)過(guò)程中碰到了很多 問(wèn)題,剛開(kāi)始的時(shí)候,還真不知道從哪里下手。但最終在圖書(shū)、同學(xué)和老師的幫助 下都得到了解決,讓我學(xué)會(huì)了好多書(shū)本上沒(méi)有的東西,通過(guò)本次操作實(shí)訓(xùn)我也能將 課本上的知識(shí)融會(huì)貫通,起到了很好的輔助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識(shí) 比整整一個(gè)學(xué)期學(xué)到的都多。理論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在實(shí)驗(yàn)的 過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠 牢固,這次操作實(shí)訓(xùn)之后,一定把以前所學(xué)過(guò)的知識(shí)重新溫故。 通過(guò)這次操作實(shí)訓(xùn)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)

17、是 遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能 真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。 附錄:代碼附錄:代碼 Control.java package zhm; public class Control public static void main(String args) new DLFrame(); DLFrame.java package zhm; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.sql.*; public cl

18、ass DLFrame extends JFrame implements ActionListener, ItemListener / 登錄界面 private static final long serialVersionUID = 1L; JPanel p1 = null; JPanel p2 = null; JPanel p3 = null; JLabel userName = new JLabel(用戶:); JTextField txtUser = new JTextField(); JLabel password = new JLabel(密碼:); JPasswordField

19、 txtPwd = new JPasswordField(6); JLabel role = new JLabel(角色:); JComboBox cbrole = new JComboBox(); JButton btnLogin = new JButton(登錄); JButton btncz = new JButton(重置); JButton btnCancel = new JButton(取消); JLabel imageLabel; Icon image; static int OK = 1; static int CANCEL = 0; int actionCode = 0; C

20、onnection con = null; Statement stmt = null; ResultSet rs = null; int qxian = 0; SuppressWarnings(deprecation) public DLFrame() / 構(gòu)造方法 super(登錄界面); p1 = new JPanel(); p2 = new JPanel(); p3 = new JPanel(); cbrole.addItem(系統(tǒng)管理員); cbrole.addItem(基本檔案管理員); cbrole.addItem(業(yè)務(wù)員); /*image = new ImageIcon(pi

21、cturest.jpg); imageLabel = new JLabel(image); p1.add(imageLabel);*/ this.setLayout(new FlowLayout(); this.setBounds(150, 150, 250, 250); p2.setLayout(new GridLayout(4, 2); p2.add(userName); p2.add(txtUser); p2.add(password); p2.add(txtPwd); p2.add(role); p2.add(cbrole); p3.add(btnLogin); p3.add(btnc

22、z); p3.add(btnCancel); this.add(p1); this.add(p2); this.add(p3); this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.show(); btnLogin.addActionListener(this); cbrole.addItemListener(this); btncz.addActionListener(this); btnCancel.addActionListener(this); public void c

23、onnDB() / 連接數(shù)據(jù)庫(kù) try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch (ClassNotFoundException e) e.printStackTrace(); try con = DriverManager.getConnection( jdbc:sqlserver:/localhost:1433; DatabaseName=銷(xiāo)售管理系統(tǒng), sa, 2191826); stmt = con.createStatement(); catch (SQLException e) e.prin

24、tStackTrace(); public void closeDB() / 關(guān)閉連接 try stmt.close(); con.close(); catch (SQLException e) e.printStackTrace(); public void itemStateChanged(ItemEvent e) if (e.getStateChange() = ItemEvent.SELECTED) JComboBox jcb = (JComboBox) e.getSource(); qxian = jcb.getSelectedIndex(); SuppressWarnings(de

25、precation) public void actionPerformed(ActionEvent e) Object source = e.getSource(); String un = null; String pw = null; boolean success = false;/ 用于判斷是否登錄成功 if (source = btnLogin) if (txtUser.getText().equals() | txtPwd.getPassword().equals() / 判斷是否輸入 了用戶名和密碼 JOptionPane.showMessageDialog(null, 登錄名

26、和密碼不能為空!); else this.connDB(); try rs = stmt.executeQuery(select * from unpw where qx=+qxian); while (rs.next() un = rs.getString(un).trim(); pw = rs.getString(pw).trim(); if (txtUser.getText().equals(un) if (txtPwd.getText().equals(pw) actionCode = OK; this.setVisible(false); if (qxian=0) new sysMa

27、nagerFrame();/ 進(jìn)入系統(tǒng)管理員界面 if (qxian=1) new baseManagerFrame();/ 進(jìn)入基本檔案管理員界面 if (qxian=2) new businessManFrame();/ 進(jìn)入業(yè)務(wù)員界面 success = true; break; else JOptionPane.showMessageDialog(null, 密碼錯(cuò)誤!); txtPwd.setText(); success = true; if (!success) JOptionPane.showMessageDialog(null, 登錄名錯(cuò)誤!); txtUser.setTex

28、t(); txtPwd.setText(); catch (SQLException e1) e1.printStackTrace(); else if (source = btncz) txtUser.setText(); txtPwd.setText(); else if (source = btnCancel) System.exit(0); sysManagerFrame.java package zhm; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swin

29、g.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class sysManagerFrame extends JFrame implements ActionListener / 系統(tǒng)管理員界面 private static final long serialVersionUID = 1L; JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JButton btns = new JButton(

30、客戶信息管理); JButton btnc = new JButton(產(chǎn)品信息管理); JButton btnsc = new JButton(訂單信息管理); JButton btng = new JButton(發(fā)貨管理); JButton btnu = new JButton(簽收管理); JButton btnClose = new JButton(退出管理系統(tǒng)); JLabel l = new JLabel(系統(tǒng)管理員); SuppressWarnings(deprecation) sysManagerFrame() / 構(gòu)造方法 super(銷(xiāo)售管理系統(tǒng)); setSize(20

31、5, 300); add(North, p1); add(Center, p2); p1.add(l); p2.add(btns); p2.add(btnc); p2.add(btnsc); p2.add(btng); p2.add(btnu); p2.add(btnClose); btns.addActionListener(this); btnc.addActionListener(this); btnsc.addActionListener(this); btng.addActionListener(this); btnu.addActionListener(this); btnClos

32、e.addActionListener(this); this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); show(); public void actionPerformed(ActionEvent e) if (e.getActionCommand() = 客戶信息管理) new CustomerManager(客戶信息管理).display(); if (e.getActionCommand() = 產(chǎn)品信息管理) new ProductManager(產(chǎn)品信息管理).display

33、(); if (e.getActionCommand() = 訂單信息管理) new OrderManager(訂單信息管理).display(); if (e.getActionCommand() = 發(fā)貨管理) new sendManager(發(fā)貨管理).display(); if (e.getActionCommand() = 簽收管理) new ReceiveManager(簽收管理).display(); if (e.getActionCommand() = 退出管理系統(tǒng)) System.exit(0); baseManagerFrame.java package zhm; impo

34、rt java.awt.event.*; import javax.swing.*; public class baseManagerFrame extends JFrame implements ActionListener / 系統(tǒng)管理員界面 private static final long serialVersionUID = 1L; JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JButton btns = new JButton(客戶信息管理); JButton btnc = new JButton(產(chǎn)品信息管理); JBu

35、tton btnClose = new JButton(退出管理系統(tǒng)); JLabel l = new JLabel(基本檔案管理員); SuppressWarnings(deprecation) baseManagerFrame() / 構(gòu)造方法 super(銷(xiāo)售管理系統(tǒng)); setSize(205, 300); add(North, p1); add(Center, p2); p1.add(l); p2.add(btns); p2.add(btnc); p2.add(btnClose); btns.addActionListener(this); btnc.addActionListene

36、r(this); btnClose.addActionListener(this); this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); show(); public void actionPerformed(ActionEvent e) if (e.getActionCommand() = 客戶信息管理) new CustomerManager(客戶信息管理).display(); if (e.getActionCommand() = 產(chǎn)品信息管理) new ProductManager

37、(產(chǎn)品信息管理).display(); if (e.getActionCommand() = 訂單信息管理) new OrderManager(訂單信息管理).display(); if (e.getActionCommand() = 退出管理系統(tǒng)) System.exit(0); businessManFrame.java package zhm; import java.awt.event.*; import javax.swing.*; public class businessManFrame extends JFrame implements ActionListener / 業(yè)務(wù)員

38、界面 private static final long serialVersionUID = 1L; JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JButton btnsc = new JButton(訂單信息管理); JButton btng = new JButton(發(fā)貨管理); JButton btnu = new JButton(簽收管理); JButton btnClose = new JButton(退出管理系統(tǒng)); JLabel l = new JLabel(業(yè)務(wù)員); SuppressWarnings(deprec

39、ation) businessManFrame() / 構(gòu)造方法 super(銷(xiāo)售管理系統(tǒng)); setSize(205, 300); add(North, p1); add(Center, p2); p1.add(l); p2.add(btnsc); p2.add(btng); p2.add(btnu); p2.add(btnClose); btnsc.addActionListener(this); btng.addActionListener(this); btnu.addActionListener(this); btnClose.addActionListener(this); thi

40、s.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); show(); public void actionPerformed(ActionEvent e) if (e.getActionCommand() = 訂單信息管理) new OrderManager(訂單信息管理).display(); if (e.getActionCommand() = 發(fā)貨管理) new sendManager(發(fā)貨管理).display(); if (e.getActionCommand() = 簽收管理) new

41、 ReceiveManager(簽收管理).display(); if (e.getActionCommand() = 退出管理系統(tǒng)) System.exit(0); CustomerAdd.java package zhm; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.sql.*; public class CustomerAdd extends JFrame implements ActionListener/ 用于客戶信息管理中增加 或修改某條記錄的界面 private sta

42、tic final long serialVersionUID = 1L; JLabel l1 = new JLabel(客戶名稱(chēng):); JLabel l2 = new JLabel(單位地址:); JLabel l3 = new JLabel(聯(lián)系電話:); JLabel l4 = new JLabel(地址: ); JLabel l5 = new JLabel(開(kāi)戶銀行:); JLabel l6 = new JLabel(銀行賬號(hào):); JLabel l7 = new JLabel(發(fā)票抬頭:); JLabel l8 = new JLabel(所在區(qū)域:); JTextField t1 =

43、 new JTextField(10); JTextField t2 = new JTextField(10); JTextField t3 = new JTextField(10); JTextField t4 = new JTextField(10); JTextField t5 = new JTextField(10); JTextField t6 = new JTextField(10); JTextField t7 = new JTextField(10); JTextField t8 = new JTextField(10); JButton btnOK = new JButton

44、(確定); JButton btnCancel = new JButton(取消); JPanel p = new JPanel(); Connection con = null; Statement stmt = null; ResultSet rs = null; boolean isNewsm = true;/ 用于判斷是否顯示客戶信息管理的界面 SuppressWarnings(deprecation) public CustomerAdd() / 構(gòu)造方法 this.setTitle(增加); this.setBounds(300, 300, 225, 350); p.setLayo

45、ut(new FlowLayout(FlowLayout.LEFT); p.add(l1); p.add(t1); p.add(l2); p.add(t2); p.add(l3); p.add(t3); p.add(l4); p.add(t4); p.add(l5); p.add(t5); p.add(l6); p.add(t6); p.add(l7); p.add(t7); p.add(l8); p.add(t8); p.add(btnOK); p.add(btnCancel); this.add(p); this.setResizable(false); this.setDefaultCl

46、oseOperation(JFrame.EXIT_ON_CLOSE); btnOK.addActionListener(this); btnCancel.addActionListener(this); this.show(); public void connDB() / 連接數(shù)據(jù)庫(kù) try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch (ClassNotFoundException e) e.printStackTrace(); try con = DriverManager.getConnection

47、( jdbc:sqlserver:/localhost:1433; DatabaseName=銷(xiāo)售管理系統(tǒng), sa, 2191826); stmt = con.createStatement(); catch (SQLException e) e.printStackTrace(); public void closeDB() / 關(guān)閉連接 try stmt.close(); con.close(); catch (SQLException e) e.printStackTrace(); public void insertst() / 插入記錄 String x = null; String

48、 y = null; String z = null; String a = null; String b = null; String c = null; String d = null; String e = null; x = t1.getText(); y = t2.getText(); z = t3.getText(); a = t4.getText(); b = t5.getText(); c = t6.getText(); d = t7.getText(); e = t8.getText(); if (this.getTitle() = 修改) / 如果是修改記錄,先刪除再增加

49、try this.connDB(); SuppressWarnings(unused) int rs1 = stmt.executeUpdate(delete from 客戶信息 where 客戶名稱(chēng)= + x + ); catch (SQLException e1) e1.printStackTrace(); String str = insert into 客戶信息 values( + x + , + y + , + z + , + a + , + b + , + c + , + d + , + e + ); this.connDB();/ 連接數(shù)據(jù)庫(kù) try stmt.executeUp

50、date(str); JOptionPane.showMessageDialog(null, this.getTitle() + 成功!, 提示, JOptionPane.INFORMATION_MESSAGE, new ImageIcon( menu4.gif); this.setVisible(false); catch (SQLException e1) JOptionPane.showMessageDialog(null, 客戶名稱(chēng)已存在!); t1.setText(); public void actionPerformed(ActionEvent e) if (e.getActio

51、nCommand() = 確定) this.insertst(); if (isNewsm) new CustomerManager(客戶信息管理).display(); isNewsm = true; if (e.getActionCommand() = 取消) this.setVisible(false); new CustomerManager(客戶信息管理).display(); CustomerManager.java package zhm; import java.awt.event.*; import java.sql.*; import java.util.*; import

52、 javax.swing.*; public class CustomerManager extends JFrame implements ActionListener / 客戶信息管理 private static final long serialVersionUID = 1L; JPanel p = new JPanel(); JButton btnAdd = new JButton(增加); JButton btnDelete = new JButton(刪除); JButton btnAlter = new JButton(修改); JButton btnSearch = new

53、JButton(查詢); JButton btnDisplay = new JButton(顯示); JMenuBar mb = new JMenuBar(); JPanel p1 = new JPanel(); JTable sTable; JScrollPane scroll; Connection con = null; Statement stmt = null; ResultSet rs = null; Object playerInfo; CustomerSelect sst; String mxh = null; boolean bstd = false; CustomerMan

54、ager(String title) / 構(gòu)造方法 super(title); add(South, p); this.add(Center, p1); mb.add(btnAdd); mb.add(btnDelete); mb.add(btnAlter); mb.add(btnSearch); mb.add(btnDisplay); this.connDB(); / 連接數(shù)據(jù)庫(kù) /this.display(); this.setBounds(300, 300, 600, 450); btnAdd.addActionListener(this); btnDelete.addActionList

55、ener(this); btnAlter.addActionListener(this); btnSearch.addActionListener(this); btnDisplay.addActionListener(this); this.setJMenuBar(mb); / this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); show(); CustomerManager(CustomerSelect sst,String title) / 構(gòu)造方法 super(title); th

56、is.sst = sst; bstd = true; add(South, p); this.add(Center, p1); mb.add(btnAdd); mb.add(btnDelete); mb.add(btnAlter); mb.add(btnSearch); mb.add(btnDisplay); this.connDB(); this.setBounds(300, 300, 600, 450); btnAdd.addActionListener(this); btnDelete.addActionListener(this); btnAlter.addActionListener

57、(this); btnSearch.addActionListener(this); btnDisplay.addActionListener(this); this.setJMenuBar(mb); this.setResizable(false); show(); public void display() / 顯示所有客戶的基本信息 int i = 0; int j = 0; List al = new ArrayList(); try rs = stmt.executeQuery(select * from 客戶信息); while (rs.next() / 找出表中的記錄數(shù)賦給i a

58、l.add(rs.getString(客戶名稱(chēng)); al.add(rs.getString(單位地址); al.add(rs.getString(聯(lián)系電話); al.add(rs.getString(地址); al.add(rs.getString(開(kāi)戶銀行); al.add(rs.getString(銀行賬號(hào)); al.add(rs.getString(發(fā)票抬頭); al.add(rs.getString(所在區(qū)域); i+; catch (SQLException e) e.printStackTrace(); playerInfo = new Objecti8; String colum

59、nNames = 客戶名稱(chēng), 單位地址, 聯(lián)系電話, 地址, 開(kāi)戶銀行, 銀 行賬號(hào), 發(fā)票抬頭, 所在區(qū)域,; try rs = stmt.executeQuery(select * from 客戶信息 order by 客戶名稱(chēng)); while (rs.next() playerInfoj0 = rs.getString(客戶名稱(chēng)); playerInfoj1 = rs.getString(單位地址); playerInfoj2 = rs.getString(聯(lián)系電話); playerInfoj3 = rs.getString(地址); playerInfoj4 = rs.getStrin

60、g(開(kāi)戶銀行); playerInfoj5 = rs.getString(銀行賬號(hào)); playerInfoj6 = rs.getString(發(fā)票抬頭); playerInfoj7 = rs.getString(所在區(qū)域); j+; catch (SQLException e) e.printStackTrace(); sTable = new JTable(playerInfo, columnNames);/ 創(chuàng)建網(wǎng)格 p1.add(sTable); scroll = new JScrollPane(sTable); this.add(scroll); public void connDB

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論