版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、商場(chǎng)管理系統(tǒng)java程序設(shè)計(jì)報(bào)告計(jì)劃圖文完好商場(chǎng)管理系統(tǒng)java程序設(shè)計(jì)報(bào)告計(jì)劃圖文完好103/103商場(chǎng)管理系統(tǒng)java程序設(shè)計(jì)報(bào)告計(jì)劃圖文完好.學(xué)院程序設(shè)計(jì)課程設(shè)計(jì)(C)報(bào)告工程名稱(chēng):商場(chǎng)工程管理系統(tǒng)學(xué)生姓名:xxx學(xué)號(hào):xxx班級(jí):xxx指導(dǎo)老師:xxx日期:xxx.1、工程描繪商場(chǎng)收銀管理系統(tǒng)是一個(gè)協(xié)助商場(chǎng)收銀員統(tǒng)計(jì)商品以及協(xié)助管理員統(tǒng)計(jì)貨物狀況和利潤(rùn)狀況的適用性工具。依據(jù)商場(chǎng)的平常管理需要,商場(chǎng)收銀系統(tǒng)應(yīng)當(dāng)包含根本檔案管理、商品庫(kù)存管理、會(huì)員管理、交易管理等四大功能,此中根本檔案管理包含收銀員信息管理和商品信息管理;商品庫(kù)存管理包含商品入庫(kù)管理和商品出庫(kù)管理;會(huì)員管理包含會(huì)員信息管理
2、和積分管理;交易管理包含交易信息管理和銷(xiāo)售信息管理。2、需求分析界面需求軟件的操作界面是圖形界面還是字符界面,以簡(jiǎn)短清楚、操作方便為首要目標(biāo)。鑒于商場(chǎng)收銀的根本業(yè)務(wù)分析,和一定解決的兩大難題,針對(duì)性地制定出所要設(shè)計(jì)小型商場(chǎng)收銀管理系統(tǒng)所需要的系統(tǒng)功能,以下七點(diǎn):設(shè)計(jì)軟件供給用戶登岸界面,為用戶供給賬號(hào)密碼管理工具,詳盡為增加用戶、刪除用戶、更正用戶名、密碼。設(shè)計(jì)軟件將對(duì)單個(gè)商品進(jìn)庫(kù)產(chǎn)品進(jìn)行管理,對(duì)進(jìn)庫(kù)清單進(jìn)行錄入、更正、查問(wèn)和統(tǒng)計(jì),也供給出庫(kù)功能,對(duì)出庫(kù)清單進(jìn)行錄入和查問(wèn)。設(shè)計(jì)軟件將能對(duì)商品信息狀況進(jìn)行更正操作和查問(wèn)操作,能設(shè)置庫(kù)存商品單價(jià),能對(duì)庫(kù)存商品總值進(jìn)行統(tǒng)計(jì)。設(shè)計(jì)軟件能對(duì)商場(chǎng)會(huì)員信息進(jìn)
3、行管理,詳盡為增加會(huì)員信息、刪除職工信息、更正會(huì)員信息操作、查問(wèn)會(huì)員信息操作。設(shè)計(jì)軟件能對(duì)每單買(mǎi)賣(mài)信息進(jìn)行管理,詳盡為每單買(mǎi)賣(mài)信息的增加、查問(wèn)、更正。.數(shù)據(jù)需求需要輸入什么種類(lèi)的數(shù)據(jù)、什么值的數(shù)據(jù),即數(shù)據(jù)模型的成立。是由項(xiàng)目?jī)?nèi)容及軟件設(shè)計(jì)者決定的。以數(shù)據(jù)描繪的清楚、數(shù)據(jù)意義的完好為目標(biāo)。出庫(kù)表:入庫(kù)表:收銀員表:商品信息表:會(huì)員表:.功能需求系統(tǒng)應(yīng)當(dāng)擁有哪些功能,與工程描繪以及設(shè)計(jì)者的理解直接有關(guān)。對(duì)一般的管理軟件來(lái)說(shuō),一定包含數(shù)據(jù)的輸入輸出、增修改查、排序、統(tǒng)計(jì)等功能。請(qǐng)按實(shí)質(zhì)工程需求填寫(xiě)用例。一般按動(dòng)作動(dòng)詞結(jié)果名詞的形式書(shū)寫(xiě)。1、登錄功能:Action1:輸入庫(kù)里存有的用戶和密碼,輸入正確
4、,登錄成功,輸入錯(cuò)誤,登錄失敗;Action2:點(diǎn)擊重置按鈕,刷新用戶名和密碼。2、主窗體菜單功能Action1:下拉菜單模塊,菜單模塊里面有子菜單。分為,收銀員信息、收銀員信息管理;商品、商品信息管理;商品進(jìn)出庫(kù)管理,商品交易管理;會(huì)員信息菜單、會(huì)員信息管理菜單;設(shè)置菜單、聯(lián)系我們選項(xiàng)、退出系統(tǒng)選項(xiàng)。、收銀員增加信息功能Action1:填入收銀員的編號(hào)、姓名、密碼,信息入庫(kù),并可做登錄名和密碼。4、收銀員信息擺列.Action1:能夠列出收銀員名單、點(diǎn)擊表格某一行,能夠顯示關(guān)于的信息填入對(duì)應(yīng)的文本里。5、收銀員的信息查問(wèn)Action1:能夠經(jīng)過(guò)對(duì)姓名的模糊查問(wèn),查問(wèn)到收銀員。6、收銀員信息的
5、更正Action1:經(jīng)過(guò)更正對(duì)應(yīng)得文本框,而后點(diǎn)擊更正按鈕達(dá)成信息更正。7、商品增加信息功能Action1:填入商品的編號(hào)、名稱(chēng)等,信息入庫(kù),并可做登錄名和密碼。8、商品信息擺列Action1:能夠列出商品名單、點(diǎn)擊表格某一行,能夠顯示關(guān)于的信息填入對(duì)應(yīng)的文本里。9、商品的信息查問(wèn)Action1:能夠經(jīng)過(guò)對(duì)商品名稱(chēng)的模糊查問(wèn),查問(wèn)到商品。10、商品信息的更正Action1:經(jīng)過(guò)更正對(duì)應(yīng)得文本框,而后點(diǎn)擊更正按鈕達(dá)成信息更正。11、商品交易增加信息功能Action1:能夠經(jīng)過(guò)商品的編號(hào)確認(rèn)商品,而后輸入交易數(shù)目,自動(dòng)生成價(jià)錢(qián)利潤(rùn)等。Action2:商品的庫(kù)存會(huì)相對(duì)應(yīng)的減少。12、商品交易信息擺列
6、Action1:能夠列出商品名單、點(diǎn)擊表格某一行,能夠顯示關(guān)于的信息填入對(duì)應(yīng)的文本里。3、綱領(lǐng)設(shè)計(jì)整體設(shè)計(jì)3.1功能模塊設(shè)計(jì):.商場(chǎng)收銀管理系統(tǒng)是為協(xié)助商場(chǎng)收銀員平常管理而設(shè)計(jì),本系統(tǒng)功能結(jié)果圖以下:商場(chǎng)收銀管理系統(tǒng)根本檔案管理商品庫(kù)存管理睬員管理交易管理收商商商會(huì)積銀交品品品員分交員易信入出信管易信信息庫(kù)庫(kù)息理信息息增增增增增息增增刪刪刪刪刪查刪刪改改改改改詢改改查查查查查查本系統(tǒng)共包含四大模塊,分別是根本檔案管理模塊、商品庫(kù)存管理模塊、會(huì)員管理模塊、交易管理模塊。每個(gè)模塊的功能以下:根本檔案管理模塊功能:實(shí)現(xiàn)收銀員信息的查問(wèn)、增加、刪除、更正功能。實(shí)現(xiàn)商品信息的查問(wèn),包含增加、刪除、更正功
7、能。商品庫(kù)存管理模塊功能:實(shí)現(xiàn)銷(xiāo)售商品入庫(kù)信息的增加、刪除、更正。實(shí)現(xiàn)銷(xiāo)售商品出庫(kù)信息的增加、刪除、更正。會(huì)員管理模塊功能:實(shí)現(xiàn)會(huì)員信息的查問(wèn)、增加、刪除、更正功能。實(shí)現(xiàn)會(huì)員積分信息的查問(wèn)、增加、刪除、更正功能。交易管理模塊功能:(1)實(shí)現(xiàn)每筆交易信息的查問(wèn)、增加、刪除、更正功能。模擬購(gòu)物.3.2數(shù)據(jù)庫(kù)設(shè)計(jì):1、把收銀員信息當(dāng)成一個(gè)實(shí)體的話,其屬性關(guān)系有收銀員編號(hào)、收銀員姓名。2、把商品信息當(dāng)成一個(gè)實(shí)體的話,其屬性關(guān)系有商品編號(hào)、商品名稱(chēng)、商品種類(lèi)、商品數(shù)目、商品進(jìn)價(jià)、商品售價(jià)。3、把商品出庫(kù)信息當(dāng)成一個(gè)實(shí)體的話,其屬性關(guān)系有出庫(kù)交易單編號(hào)、商品出貨數(shù)目、會(huì)員卡編號(hào)、收銀員編號(hào)、商品編號(hào)、總收
8、入。4、把商品入庫(kù)信息當(dāng)成一個(gè)實(shí)體的話,其屬性關(guān)系有入庫(kù)交易單編號(hào)、入庫(kù)商品編號(hào)、入庫(kù)商品數(shù)目、總支出。5、把會(huì)員信息當(dāng)成一個(gè)實(shí)體的話,其屬性關(guān)系有會(huì)員卡ID、會(huì)員姓名、會(huì)員花費(fèi)數(shù)目、會(huì)員積分。整體的E-R圖以下:.4、詳盡設(shè)計(jì)以綱領(lǐng)設(shè)計(jì)為基礎(chǔ),每個(gè)功能模塊用一個(gè)或多個(gè)函數(shù)來(lái)實(shí)現(xiàn),書(shū)寫(xiě)每個(gè)函數(shù)的算法,規(guī)劃各函數(shù)之間的調(diào)用關(guān)系。詳情請(qǐng)見(jiàn)數(shù)據(jù)庫(kù)構(gòu)成圖以及功能分析模塊。5、程序編寫(xiě)和調(diào)試嚴(yán)格依據(jù)詳盡設(shè)計(jì)中的算法,編寫(xiě)各函數(shù)的代碼,同時(shí)進(jìn)行單個(gè)函數(shù)的編譯、鏈接、運(yùn)轉(zhuǎn)、更正;集成編譯、鏈接、運(yùn)轉(zhuǎn)、更正。這一階段,學(xué)生可能以為是最重要、最漫長(zhǎng)的,實(shí)那么否則。真實(shí)重要的.是前面的綱領(lǐng)設(shè)計(jì)和詳盡設(shè)計(jì),假定它們
9、的設(shè)計(jì)不完美、不正確,將以致編碼、編譯、調(diào)試的漏洞百出、捉襟見(jiàn)肘。自己采納的是javaswing構(gòu)圖工具,固然減少了很多的代碼量,但也帶來(lái)了一些問(wèn)題,如,功能按鈕的代碼生成后與自己的編程習(xí)慣不一樣,以致靜態(tài)函數(shù)調(diào)用問(wèn)題向來(lái)報(bào)錯(cuò)。6、測(cè)試軟件測(cè)試的目的在于檢驗(yàn)程序能否正確、可否抵達(dá)預(yù)期的目的;是盡可能地發(fā)現(xiàn)程序中存在的錯(cuò)誤并更正,不是也不行能發(fā)現(xiàn)程序中存在的全部錯(cuò)誤。必定需要必定量的數(shù)據(jù)作為測(cè)試的試驗(yàn)品。叫測(cè)試用例。測(cè)試用例是一組條件或變量輸入數(shù)據(jù)和希望結(jié)果的會(huì)合,測(cè)試者依據(jù)它來(lái)確立應(yīng)用軟件或軟件系統(tǒng)能否正確工作。測(cè)試用例是經(jīng)過(guò)實(shí)驗(yàn)抵達(dá)惹起構(gòu)件無(wú)效和發(fā)現(xiàn)構(gòu)件故障的目的。確立軟件程序或系統(tǒng)能否經(jīng)過(guò)
10、測(cè)試的方法叫做測(cè)試準(zhǔn)那么。一個(gè)測(cè)試用例有5個(gè)屬性:名稱(chēng)、可履行的路徑全稱(chēng)、輸入數(shù)據(jù)、測(cè)試預(yù)知希望的測(cè)試結(jié)果與輸出結(jié)果的比較和日記測(cè)試產(chǎn)生的輸出。測(cè)試用例常從以下幾方面來(lái)選擇:數(shù)據(jù)種類(lèi)的考證,數(shù)據(jù)的界限值、非法值,選擇結(jié)構(gòu)中各分支的都要履行到的數(shù)據(jù)、循環(huán)的初終值等。測(cè)試活動(dòng)技術(shù)主要包含:構(gòu)件檢查、可用性測(cè)試、單元測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試。構(gòu)件檢查是經(jīng)過(guò)對(duì)源代碼的手工檢查發(fā)現(xiàn)單個(gè)構(gòu)件中的故障??捎眯詼y(cè)試用于找出現(xiàn)實(shí)系統(tǒng)做了什么和用戶的希望值之間的差異。單元測(cè)試經(jīng)過(guò)測(cè)試單個(gè)單元的方法以發(fā)現(xiàn)故障。集成測(cè)試經(jīng)過(guò)集成多個(gè)單元來(lái)查找故障。系統(tǒng)測(cè)試關(guān)注整個(gè)系統(tǒng)、系統(tǒng)的功能和非功能需求以及目標(biāo)環(huán)境等。此處填寫(xiě)程
11、序測(cè)試的測(cè)試用例。.程序中哪些地方需要完美。登錄界面:輸入用戶名和密碼。主界面:登錄成功,進(jìn)入主界面。.主界面菜單顯示:輸入收銀員編號(hào)、姓名、密碼,進(jìn)行注冊(cè)。.信息增加成功注冊(cè)成功收銀員信息查問(wèn)界面:.點(diǎn)擊菜單中的信息,會(huì)進(jìn)行自動(dòng)填補(bǔ)到輸入欄中,方便更正。為了防范誤操作,更正會(huì)進(jìn)行提示。.更正成功!經(jīng)過(guò)名字能夠進(jìn)行模糊查問(wèn).商品根本信息填寫(xiě)界面:信息增加成功!.商品查問(wèn),相同是按商品名稱(chēng)進(jìn)行模糊查問(wèn)。作者信息介紹窗口。.會(huì)員的信息增加。商品入庫(kù)。.入庫(kù)成功,列表值更正。商品出庫(kù),但因?yàn)檩斎氤鰩?kù)數(shù)目超出庫(kù)存,所以異樣。.自動(dòng)算出商品交易的總數(shù),自動(dòng)顯示庫(kù)存量。商品列表庫(kù)存值更正成功.退出商品,相
12、同,為了防范誤操作,退出系統(tǒng)會(huì)有相應(yīng)的提示。7、總結(jié)介紹和總結(jié)在課程設(shè)計(jì)階段學(xué)習(xí)的得失、感悟、后續(xù)工作。此次只設(shè)計(jì)了短短的兩周。雖然時(shí)間很短,但此中的每天都使我收獲很大、得益匪淺,它不僅極大地加深了我對(duì)一些理論知識(shí)的理解,不但使我在理論上對(duì)Java有了嶄新的認(rèn)識(shí),在實(shí)踐能力上也獲取了提升,真實(shí)地做到了學(xué)以致用,更學(xué)到了很多做人的道理,對(duì)我來(lái)說(shuō)得益非淺。這也是第一次讓我親自感覺(jué)到理論與實(shí)質(zhì)的相聯(lián)合,讓我大開(kāi)眼界。也是對(duì)從前所學(xué)知識(shí)的一個(gè)初審吧!此次實(shí)訓(xùn)關(guān)于我此后學(xué)習(xí)、找工作也是受益不淺的,在短短的三周中相信這些寶貴的經(jīng)驗(yàn)會(huì)成為我此后成功的重要的基石;這關(guān)于我的學(xué)業(yè),以致我此后代生的影響無(wú)疑是極其
13、深遠(yuǎn)的。此次達(dá)成較為完美的小工程固然是我們的第一次,可是大家的表現(xiàn)都不錯(cuò),由此看來(lái),我們?cè)谶M(jìn)入大學(xué)的這幾個(gè)月里學(xué)到了許多的專(zhuān)業(yè)知識(shí),不過(guò).自己感覺(jué)不到而已。關(guān)于所學(xué)專(zhuān)業(yè),我們不可以過(guò)于自卑和擔(dān)憂,否那么會(huì)阻截自己學(xué)習(xí)。關(guān)于我來(lái)說(shuō),這兩周是學(xué)習(xí)的重要環(huán)節(jié),有益于我們堅(jiān)固專(zhuān)業(yè)知識(shí)、掌握工作技術(shù),提升就業(yè)籌碼。我把本次為期兩周的課程設(shè)計(jì)看作是“理論與實(shí)踐相聯(lián)合的橋梁。經(jīng)過(guò)這周的實(shí)訓(xùn)和學(xué)習(xí),我知道了此次實(shí)訓(xùn)的目的,也清楚當(dāng)前自己的缺少,那就是缺少相應(yīng)的知識(shí)與經(jīng)驗(yàn),對(duì)所學(xué)的專(zhuān)業(yè)知識(shí)不可以夠很好地運(yùn)用于實(shí)踐操作。正所謂“百聞不如一見(jiàn),經(jīng)過(guò)此次自己的親自實(shí)踐,我才深切地理睬到了“走出講堂,投身實(shí)踐的必需性。
14、平常,我們只好在講堂上與老師一同紙上談兵,思想的認(rèn)識(shí)根本上不過(guò)限制于課本的范圍以內(nèi),或許就是這個(gè)原因就以致我們對(duì)專(zhuān)業(yè)知識(shí)認(rèn)識(shí)的片面性,使得我們只知所以然,而不知其之所以然!限制了我們網(wǎng)絡(luò)知識(shí)水平的提升??墒钦n本上所學(xué)到的理論知識(shí)是為我們的實(shí)質(zhì)操作指了然方向、供給相應(yīng)的方法,真實(shí)的職業(yè)技巧是要我們從此后的實(shí)質(zhì)工作中慢慢汲取的。而針對(duì)實(shí)質(zhì)操作中碰到的一些特別的問(wèn)題,我們不可以拘泥于課本,不行純粹地“以本為本。在此次課程設(shè)計(jì)中我獲取了很多收獲,我第一次意會(huì)到軟件工程師的工作是什么樣子的,也發(fā)現(xiàn)了很多未曾注意到的細(xì)節(jié),在實(shí)訓(xùn)的演示過(guò)程中,我對(duì)作為一名軟件工程師注意的事項(xiàng)應(yīng)當(dāng)從小事做起、從根本做起。把職
15、業(yè)能力訓(xùn)練與職業(yè)素質(zhì)有機(jī)的聯(lián)合起來(lái)。相信這對(duì)我接下來(lái)學(xué)習(xí)專(zhuān)業(yè)知識(shí)會(huì)起到很有效的幫助,在接下來(lái)的幾個(gè)月里,我會(huì)以作為一名職業(yè)人的身份在這幾個(gè)方面要求自己,嚴(yán)格自我,向軟件工程師湊近。而經(jīng)過(guò)此次實(shí)訓(xùn),讓我理解假如是一個(gè)完好工程的開(kāi)發(fā),一定需要?jiǎng)e人的幫助來(lái)達(dá)成。所以不論在工作中還是在生活中要和老師、同學(xué)保持優(yōu)秀的關(guān)系是很重要的。做事第一要學(xué)做人,要理解做人的道理,如何與人相處是現(xiàn)代社會(huì)的做人的一個(gè)最根本的問(wèn)題。關(guān)于自己這樣一個(gè)馬上步入社會(huì)的人來(lái)說(shuō),需要學(xué)習(xí)的東西很多,他們就是最好的老師,正所謂“三人行,必有.我?guī)煟覀兡軌蛳蛩麄儗W(xué)習(xí)很多知識(shí)、道理。實(shí)訓(xùn)結(jié)束了感覺(jué)固然辛苦,但很充分。我想這就是Java
16、工程師的工作。我也意會(huì)到軟件工程師成功地達(dá)成一個(gè)任務(wù)的那種愉悅,那種小有成就的感覺(jué)是只有置身此中的人材能意會(huì)的。總之,此次實(shí)訓(xùn)為我供給了獨(dú)出心裁的學(xué)習(xí)方法和學(xué)習(xí)意會(huì),從書(shū)籍中面對(duì)現(xiàn)實(shí),為我未來(lái)走上社會(huì)打下了扎實(shí)的基礎(chǔ)。作為在校計(jì)算機(jī)專(zhuān)業(yè)的學(xué)生,此刻我能做的就是汲取知識(shí),提升自己的綜合素質(zhì),提升自己的職業(yè)技能,自己有了能力,到時(shí)候才會(huì)是“車(chē)到山前必有路。我相信在不久的未來(lái),會(huì)有屬于我自己的一片天空。8、附件:com.dao包packagecom.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sq
17、l.ResultSet;importcom.model.Cashier;/收銀員登錄考證。authorcsp-pc*.*/publicclassCashierDaopublicCashierlogon(Connectioncon,Cashiercashier)throwsExceptionCashierresultCashier=null;Stringsql=select*fromcashierwherename=?andpassword=?;/查問(wèn)收銀員的姓名和密碼PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setString
18、(1,cashier.getName();pstmt.setString(2,cashier.getPassword();ResultSetrs=pstmt.executeQuery();if(rs.next()resultCashier=newCashier(sql,sql);resultCashier.setName(rs.getString(name);resultCashier.setPassword(rs.getString(password);/獲取姓名和密碼else.returnresultCashier;packagecom.dao;importjava.sql.*;impor
19、tcom.model.*;importcom.util.StringUtil;/收銀員信息的daoauthorcsp-pc*/publicclassCashierinforDaopublicintcashierinforAdd(Connectioncon,Cashierinforcashierinfor)throwsExceptionStringsql=insertintocashiervalue(?,?,?);PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setInt(1,cashierinfor.getNumber();/這個(gè)
20、數(shù)據(jù)種類(lèi)需要再考慮考慮。pstmt.setString(2,cashierinfor.getName();pstmt.setString(3,cashierinfor.getPassword();returnpstmt.executeUpdate();publicResultSetCashierinforList(Connectioncon,Cashierinforcashierinfor)throwsException.StringBuffersb=newStringBuffer(select*fromcashier);if(StringUtil.isNotEmpty(cashierinfo
21、r.getName()sb.append(andnamelike%+cashierinfor.getName()+%);PreparedStatementpstmt=con.prepareStatement(sb.toString().replaceFirst(and,where);/經(jīng)典的信息查問(wèn)算法。returnpstmt.executeQuery();publicintcashierinfordelete(Connectioncon,Stringnumber)throwsExceptionStringsql=deletefromcashierwherenumber=?;PreparedS
22、tatementpstmt=con.prepareStatement(sql);pstmt.setString(1,number);returnpstmt.executeUpdate();publicintcashierinformodify(Connectioncon,Cashierinforcashierinfor)throwsExceptionStringsql=updatecashiersetname=?,password=?wherenumber=?;PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setString(1,
23、cashierinfor.getName();pstmt.setString(2,cashierinfor.getPassword();pstmt.setInt(3,cashierinfor.getNumber();returnpstmt.executeUpdate();packagecom.dao;.importjava.sql.*;importcom.model.Cashierinfor;importcom.model.Goods;importcom.util.StringUtil;/*該類(lèi)實(shí)現(xiàn)商品的增加、更正、查找、刪除的dao。authorcsp-pc*/publicclassGood
24、sDaopublicintgoodsAdd(Connectioncon,Goodsgoods)throwsExceptionStringsql=insertintogoodsvalue(?,?,?,?,?,?);/數(shù)據(jù)庫(kù)插入商品信息PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setInt(1,goods.getNumber();pstmt.setString(2,goods.getName();pstmt.setString(3,goods.getKind();pstmt.setInt(4,goods.getAmount();p
25、stmt.setInt(5,goods.getWprice();pstmt.setInt(6,goods.getRprice();returnpstmt.executeUpdate();publicResultSetGoodsList(Connectioncon,Goodsgoods)throwsExceptionStringBuffersb=newStringBuffer(select*fromgoods);/查問(wèn)if(StringUtil.isNotEmpty(goods.getName()sb.append(andnamelike%+goods.getName()+%);/按商品名進(jìn)行模
26、糊查問(wèn).PreparedStatementpstmt=con.prepareStatement(sb.toString().replaceFirst(and,where);returnpstmt.executeQuery();publicintgoodsdelete(Connectioncon,Stringnumber)throwsExceptionStringsql=deletefromgoodswherenumber=?;PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setString(1,number);/刪除商品信息ret
27、urnpstmt.executeUpdate();publicintgoodsmodify(Connectioncon,Goodsgoods)throwsExceptionStringsql=updategoodssetname=?,kind=?,amount=?,wholesale_price=?,retail_price=?wherenumber=?;/更正商品信息PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setString(1,goods.getName();pstmt.setString(2,goods.getKind
28、();pstmt.setInt(3,goods.getAmount();pstmt.setInt(4,goods.getWprice();pstmt.setInt(5,goods.getRprice();pstmt.setInt(6,goods.getNumber();returnpstmt.executeUpdate();publicResultSetGoodsid(Connectioncon,Goodsgoods)throwsExceptionStringsql=select*fromgoodswherenumber=?;/經(jīng)過(guò)id查找所在商品對(duì)應(yīng)的行,確立詳盡商品PreparedStat
29、ementpstmt=con.prepareStatement(sql);if(StringUtil.isNotEmpty(Integer.toString(goods.getNumber()pstmt.setInt(1,goods.getNumber();.returnpstmt.executeQuery();packagecom.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.SQLException;importcom.model.Businessout;/出貨dao類(lèi)author
30、csp-pc*/publicclassBusinessDaopublicintb_outAdd1(Connectioncon,Businessoutbusinessout)throwsExceptionStringsql=insertintobusiness_outvalue(null,?,?,?,?,?);/數(shù)據(jù)庫(kù)插入語(yǔ)句PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setInt(1,businessout.getGoods_amount();pstmt.setInt(2,businessout.getMember_id();p
31、stmt.setInt(3,businessout.getCashier_id();pstmt.setInt(4,businessout.getGoods_id();pstmt.setInt(5,businessout.getMoney_put();/獲取相應(yīng)的出庫(kù)信息值。returnpstmt.executeUpdate();.packagecom.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.SQLException;importcom.model.Member;/會(huì)員信息daoa
32、uthorcsp-pc*/publicclassMemberDaopublicintaddMember(Connectioncon,Membermember)throwsExceptionStringsql=insertintomember(id,name)value(?,?);PreparedStatementpstmt=con.prepareStatement(sql);pstmt.setInt(1,member.getId();pstmt.setString(2,member.getName();returnpstmt.executeUpdate();包packagecom.model;
33、./商品出庫(kù)交易模型。authorcsp-pc*/publicclassBusinessoutprivateintid;privateintgoods_amount;privateintmember_id;privateintcashier_id;privateintgoods_id;privateintmoney_put;publicintgetId()returnid;publicintgetGoods_amount()returngoods_amount;publicintgetMember_id()returnmember_id;publicintgetCashier_id()retu
34、rncashier_id;publicintgetGoods_id()returngoods_id;publicintgetMoney_put()returnmoney_put;publicvoidsetId(intid)this.id=id;publicvoidsetGoods_amount(intgoods_amount)this.goods_amount=goods_amount;.publicvoidsetMember_id(intmember_id)this.member_id=member_id;publicvoidsetCashier_id(intcashier_id)this.
35、cashier_id=cashier_id;publicvoidsetGoods_id(intgoods_id)this.goods_id=goods_id;publicvoidsetMoney_put(intmoney_put)this.money_put=money_put;publicBusinessout(intgoods_amount,intgoods_id)super();this.goods_amount=goods_amount;this.goods_id=goods_id;packagecom.model;/用戶登錄模型。authorcsp-pc*/publicclassCa
36、shierprivateintid;privateStringName;privateStringPassword;publicCashier(Stringname,Stringpassword)super();Name=name;.Password=password;publicintgetId()returnid;publicStringgetName()returnName;publicStringgetPassword()returnPassword;publicvoidsetId(intid)this.id=id;publicvoidsetName(Stringname)Name=n
37、ame;publicvoidsetPassword(Stringpassword)Password=password;packagecom.model;/收銀員根本信息模型。authorcsp-pc*/publicclassCashierinforprivateintnumber;privateStringname;privateStringpassword;publicCashierinfor().super();TODO自動(dòng)生成的結(jié)構(gòu)函數(shù)存根publicCashierinfor(intnumber,Stringname,Stringpassword)super();this.number=
38、number;=name;this.password=password;publicintgetNumber()returnnumber;publicStringgetName()returnname;publicStringgetPassword()returnpassword;publicvoidsetNumber(intnumber)this.number=number;publicvoidsetName(Stringname)=name;publicvoidsetPassword(Stringpassword)this.password=password;packagecom.mode
39、l;/商品根本信息模型。authorcsp-pc*/.publicclassGoodsprivateintnumber;privateStringname;privateStringkind;privateintamount;privateintwprice;privateintrprice;publicGoods()super();/TODO自動(dòng)生成的結(jié)構(gòu)函數(shù)存根publicGoods(intnumber,Stringname,Stringkind,intamount,intwprice,intrprice)super();this.number=number;=name;this.kind
40、=kind;this.amount=amount;this.wprice=wprice;this.rprice=rprice;publicintgetNumber()returnnumber;publicStringgetName()returnname;publicStringgetKind()returnkind;publicintgetAmount()returnamount;publicintgetWprice()returnwprice;.publicintgetRprice()returnrprice;publicvoidsetNumber(intnumber)this.numbe
41、r=number;publicvoidsetName(Stringname)=name;publicvoidsetKind(Stringkind)this.kind=kind;publicvoidsetAmount(intamount)this.amount=amount;publicvoidsetWprice(intwprice)this.wprice=wprice;publicvoidsetRprice(intrprice)this.rprice=rprice;packagecom.model;/會(huì)員信息模型。authorcsp-pc*/publicclassMemberprivatein
42、tid;privateStringname;privateintconsume;.privateintintegral;publicintgetId()returnid;publicStringgetName()returnname;publicintgetConsume()returnconsume;publicintgetIntegral()returnintegral;publicvoidsetId(intid)this.id=id;publicvoidsetName(Stringname)=name;publicvoidsetConsume(intconsume)th
43、is.consume=consume;publicvoidsetIntegral(intintegral)egral=integral;publicMember(intid,Stringname)super();this.id=id;=name;publicMember()super();TODO自動(dòng)生成的結(jié)構(gòu)函數(shù)存根.包packagecom.util;importjava.sql.Connection;importjava.sql.DriverManager;/*數(shù)據(jù)庫(kù)連結(jié)*authorcsp-pc*/publicclassDbUtilprivateStri
44、ngjdbcName=com.mysql.jdbc.Driver;/驅(qū)動(dòng)名privateStringdbUserName=root;/數(shù)據(jù)庫(kù)用戶名privateStringdbPassword=1194545995;/數(shù)據(jù)庫(kù)用戶密碼privateStringdbUrl=jdbc:mysql:/localhost:3306/supermarket_manager;/詳盡庫(kù)地點(diǎn)publicConnectiongetCon()throwsExceptionClass.forName(jdbcName);Connectioncon=DriverManager.getConnection(dbUrl,d
45、bUserName,dbPassword);returncon;獲取連結(jié)publicvoidcloseCon(Connectioncon)throwsExceptionif(con!=null)con.close();封閉連結(jié)publicstaticvoidmain(Stringargs)DbUtildbutil=newDbUtil();.trydbutil.getCon();System.out.println(數(shù)據(jù)庫(kù)連結(jié)成功!);catch(Exceptione)/TODO自動(dòng)生成的catch塊e.printStackTrace();測(cè)試連結(jié)能否成功。packagecom.util;/判斷
46、值能否為空。兩個(gè)工具。authorcsp-pc*/publicclassStringUtilpublicstaticbooleanisEmpty(Stringstr)if(.equals(str)|str=null)returntrue;elsereturnfalse;判斷是空publicstaticbooleanisNotEmpty(Stringstr)if(!.equals(str)&str!=null)returntrue;elsereturnfalse;.判斷不是空。packagecom.view;importjava.awt.BorderLayout;importjava.awt.E
47、ventQueue;importjavax.swing.JFrame;importjavax.swing.JPanel;importjavax.swing.border.EmptyBorder;importjavax.swing.JLabel;importjava.awt.Font;importjavax.swing.ImageIcon;/作者簡(jiǎn)介窗口authorcsp-pc*/publicclassauthorFrameextendsJFrameprivateJPanelcontentPane;/Launchtheapplication.*/publicstaticvoidmain(Stri
48、ngargs)EventQueue.invokeLater(newRunnable()publicvoidrun()tryauthorFrameframe=newauthorFrame();frame.setVisible(true);catch(Exceptione)e.printStackTrace();.);/Createtheframe.*/publicauthorFrame()setTitle(u5173u4E8Eu6211u4EEC);setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);setBounds(100,100,450,30
49、0);contentPane=newJPanel();contentPane.setBorder(newEmptyBorder(5,5,5,5);setContentPane(contentPane);contentPane.setLayout(null);JLabellabel=newJLabel(u6E56u5317u6587u7406u5B66u9662);label.setIcon(newImageIcon(D:javaworkspaceu8D85u5E02u7BA1u7406u7CFBu7EDFimagebook(2).png);label.setFont(newFont(宋體,Fo
50、nt.BOLD,18);label.setBounds(73,10,189,49);contentPane.add(label);JLabellblNewLabel=newJLabel(u6570u5B66u4E0Eu8BA1u7B97u673Au79D1u5B66u5B66u9662);lblNewLabel.setIcon(newImageIcon(D:javaworkspaceu8D85u5E02u7BA1u7406u7CFBu7EDFimagebook(1).png);lblNewLabel.setFont(newFont(宋體,Font.BOLD,15);lblNewLabel.se
51、tBounds(73,69,289,35);contentPane.add(lblNewLabel);JLabellblNewLabel_1=newJLabel(u8F6Fu5DE51511);lblNewLabel_1.setIcon(newImageIcon(D:javaworkspaceu8D85u5E02u7BA1u7406u7CFBu7EDFimageme.png);.lblNewLabel_1.setFont(newFont(宋體,Font.BOLD,13);lblNewLabel_1.setBounds(73,114,144,15);contentPane.add(lblNewL
52、abel_1);JLabellabel_1=newJLabel(u9648u4ED5u9E4F);label_1.setFont(newFont(宋體,Font.BOLD,13);label_1.setIcon(newImageIcon(D:javaworkspaceu8D85u5E02u7BA1u7406u7CFBu7EDFimageuserName.png);label_1.setBounds(73,149,94,15);contentPane.add(label_1);JLabellabel_2=newJLabel(2021117457);label_2.setIcon(newImage
53、Icon(D:javaworkspaceu8D85u5E02u7BA1u7406u7CFBu7EDFimagemodify.png);label_2.setFont(newFont(宋體,Font.BOLD,13);label_2.setBounds(73,182,121,15);contentPane.add(label_2);packagecom.view;importjava.awt.EventQueue;importjavax.swing.JInternalFrame;importjavax.swing.JList;importjavax.swing.JOptionPane;impor
54、tjavax.swing.JLabel;importjavax.swing.JTextField;importjavax.swing.table.DefaultTableModel;importcom.dao.BusinessDao;importcom.dao.GoodsDao;importcom.model.Businessout;.importcom.model.Goods;importcom.util.DbUtil;importcom.util.StringUtil;importjavax.swing.JButton;importjavax.swing.JTable;importjava
55、.awt.event.ActionListener;importjava.sql.Connection;importjava.sql.ResultSet;importjava.util.Vector;importjava.awt.event.ActionEvent;/商品出庫(kù)鏈接窗體。authorcsp-pc*/publicclassB_outInterFrmextendsJInternalFrameprivateJTextFieldoutamountTxt;privateJTextFieldgoodsidTxt;privateJLabellblNewLabel;privateJTextFie
56、ldmeber_idTxt;privateJTextFieldcashier_idTxt;privateJLabellabel_2;privateJLabellabel_4;privateJTextFieldmoney_putTxt;privateJButtonJb_outconfirm;privateJButtonJb_outsetconfirm;/Launchtheapplication.*/DbUtildbUtil=newDbUtil();BusinessDaobusinessDao=newBusinessDao();GoodsDaogoodsDao=newGoodsDao();priv
57、ateJTextFieldramountTxt;.publicstaticvoidmain(Stringargs)EventQueue.invokeLater(newRunnable()publicvoidrun()tryB_outInterFrmframe=newB_outInterFrm();frame.setVisible(true);catch(Exceptione)e.printStackTrace(););/Createtheframe.*/publicB_outInterFrm()setTitle(u5546u54C1u51FAu5E93u7BA1u7406);setIconif
58、iable(true);setClosable(true);setBounds(100,100,450,360);getContentPane().setLayout(null);JLabellabel=newJLabel(u51FAu5E93u6570u91CFuFF1A);label.setBounds(230,67,66,15);getContentPane().add(label);outamountTxt=newJTextField();outamountTxt.setBounds(294,64,112,21);getContentPane().add(outamountTxt);o
59、utamountTxt.setColumns(10);JLabellabel_1=newJLabel(u5546u54C1u7F16u53F7uFF1A);label_1.setBounds(24,67,66,15);getContentPane().add(label_1);.goodsidTxt=newJTextField();goodsidTxt.setBounds(88,64,112,21);getContentPane().add(goodsidTxt);goodsidTxt.setColumns(10);lblNewLabel=newJLabel(u4F1Au5458u7F16u5
60、3F7uFF1A);lblNewLabel.setBounds(24,220,66,15);getContentPane().add(lblNewLabel);meber_idTxt=newJTextField();meber_idTxt.setBounds(88,217,112,21);getContentPane().add(meber_idTxt);meber_idTxt.setColumns(10);cashier_idTxt=newJTextField();cashier_idTxt.setBounds(307,217,99,21);getContentPane().add(cash
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年版礦產(chǎn)資源探礦權(quán)出讓合同范本(含礦產(chǎn)資源勘查風(fēng)險(xiǎn)分擔(dān))3篇
- 2025年度內(nèi)蒙古草原生態(tài)旅游承包經(jīng)營(yíng)合同3篇
- 2025年度音樂(lè)教育項(xiàng)目藝人授課合同3篇
- 二零二五年度文化旅游綜合體租賃合同書(shū)3篇
- 年度單抗導(dǎo)向藥物戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 二零二五年度東易日盛跑路事件客戶賠償與調(diào)解合同3篇
- 2024瑜伽館瑜伽教練勞動(dòng)合同范本及教練與學(xué)員溝通規(guī)范3篇
- 二零二五版“520”荔枝電商法治講堂講師聘用合同3篇
- 2024版建筑水電分包合同范本
- 二零二五年度房產(chǎn)評(píng)估咨詢合同樣本4篇
- 電線電纜加工質(zhì)量控制流程
- 山東省淄博市張店區(qū)祥瑞園小學(xué)?-2024-2025年第一學(xué)期一年級(jí)班主任經(jīng)驗(yàn)分享(著眼于愛(ài) 著手于細(xì))【課件】
- 提優(yōu)精練08-2023-2024學(xué)年九年級(jí)英語(yǔ)上學(xué)期完形填空與閱讀理解提優(yōu)精練(原卷版)
- DB4511T 0002-2023 瓶裝液化石油氣充裝、配送安全管理規(guī)范
- 企業(yè)內(nèi)部客供物料管理辦法
- 婦科臨床葡萄胎課件
- 三基三嚴(yán)練習(xí)題庫(kù)與答案
- 傳媒行業(yè)突發(fā)事件應(yīng)急預(yù)案
- 債務(wù)抵租金協(xié)議書(shū)范文范本
- 藥學(xué)技能競(jìng)賽標(biāo)準(zhǔn)答案與評(píng)分細(xì)則處方
- 2025屆高考英語(yǔ) 716個(gè)閱讀理解高頻詞清單
評(píng)論
0/150
提交評(píng)論