国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于JavaWeb的超市商品采購管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2022-04-11 11:02袁明坤曾麗
電腦知識與技術(shù) 2022年5期
關(guān)鍵詞:MySQL數(shù)據(jù)庫

袁明坤 曾麗

摘要:基于JavaWeb,采用MVC+三層架構(gòu)和MySql數(shù)據(jù)庫技術(shù)開發(fā)了超市商品采購管理系統(tǒng)。本系統(tǒng)實(shí)現(xiàn)了超市的訂單管理、供應(yīng)商管理、用戶管理等功能。應(yīng)用本系統(tǒng)可提高超市商品采購信息管理水平,提高超市管理者工作效率。文章從超市商品采購系統(tǒng)需求分析、系統(tǒng)框架、功能設(shè)計(jì)、數(shù)據(jù)庫整體設(shè)計(jì)以及關(guān)鍵技術(shù)等方面闡述了超市訂單系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過程。

關(guān)鍵詞:JavaWeb;三層架構(gòu);MySQL數(shù)據(jù)庫

中圖分類號:TP311 ? ? ? ? ?文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2022)05-0061-03

隨著經(jīng)濟(jì)的發(fā)展,城鄉(xiāng)街道小區(qū)涌現(xiàn)出眾多超市。雖然中小型超市越來越普遍,但其管理方式仍以人工管理方式為主,其中產(chǎn)生的大量貨物訂單、供應(yīng)商信息都以文檔、表格、紙質(zhì)的形式存儲(chǔ),不能實(shí)時(shí)更新核對,不利于長期的保存,超市的運(yùn)行效率很低,為解決這一類問題,本超市商品采購管理系統(tǒng)將貨物訂單詳情、供應(yīng)商信息、員工信息進(jìn)行一體化管理,以提高超市訂單信息管理水平[1]。

1 系統(tǒng)需求分析

根據(jù)目前中小型超市存在問題以及城鎮(zhèn)小型超市調(diào)研結(jié)果來看,主要的商品系統(tǒng)需求如下[2]:1)系統(tǒng)可將每次進(jìn)貨物品訂單號、商品名稱、價(jià)格、數(shù)量、進(jìn)貨日期、支付情況進(jìn)行合理統(tǒng)計(jì),并能進(jìn)行實(shí)時(shí)的修改、添加或查詢。2)系統(tǒng)可查詢供應(yīng)商產(chǎn)品描述,供應(yīng)商名稱、聯(lián)系方式等,可區(qū)別化標(biāo)識長期供應(yīng)商和近期供應(yīng)商,查看其主要產(chǎn)品以及質(zhì)量。3)系統(tǒng)有一套完整的人員信息系統(tǒng)管理,可以添加新成員進(jìn)系統(tǒng),系統(tǒng)管理員可修改、刪除員工的基本信息以及工作負(fù)責(zé)人方面的信息。

2 系統(tǒng)設(shè)計(jì)

2.1系統(tǒng)架構(gòu)

在軟件體系架構(gòu)中,分層式結(jié)構(gòu)必不可少,本系統(tǒng)采用三層架構(gòu)模式,可以降低層與層之間的依賴性、相互之間高聚能、低耦合,有利于相同業(yè)務(wù)功能的復(fù)用[3]。通常將其劃分為表示層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)。數(shù)據(jù)訪問層實(shí)現(xiàn)數(shù)據(jù)持久注入數(shù)據(jù)庫中,實(shí)現(xiàn)對數(shù)據(jù)的增刪改,用戶訪問數(shù)據(jù)只能通過數(shù)據(jù)訪問層,減少入口,提高其安全性;業(yè)務(wù)邏輯層接收前臺所傳遞參數(shù)數(shù)據(jù)并接收數(shù)據(jù)訪問層操作后的數(shù)據(jù),最后將其返回給表示層進(jìn)行展示;表示層和用戶直接交互,直觀、動(dòng)態(tài)展示信息,其與業(yè)務(wù)邏輯層對接,在表示層中,本系統(tǒng)采用MVC設(shè)計(jì)模型,將網(wǎng)頁信息或用戶界面與用戶請求劃分。

2.2功能設(shè)計(jì)

根據(jù)系統(tǒng)需求分析,本系統(tǒng)功能設(shè)計(jì)為三個(gè)模塊:訂單業(yè)務(wù)模塊、供應(yīng)商管理模塊、用戶信息模塊,使用本系統(tǒng)角色功能區(qū)域化分,用戶角色劃分為系統(tǒng)管理員、經(jīng)理、員工,如圖1所示系統(tǒng)功能設(shè)計(jì)。

1) 訂單業(yè)務(wù)模塊:此模塊角色為經(jīng)理與系統(tǒng)管理員可進(jìn)行操作。角色可對新進(jìn)貨訂單的商品種類、數(shù)量、價(jià)格、支付情況進(jìn)行保存,可以實(shí)時(shí)驗(yàn)證出貨情況。對于舊訂單,可修改、刪除、查詢支付情況、供應(yīng)商信息。查詢功能可通過商品名稱或關(guān)鍵詞、支付情況、供應(yīng)商名稱來鎖定,不同的查詢結(jié)果也可作為文件下載到本地保存。

2) 供應(yīng)商模塊:此模塊系統(tǒng)管理員、經(jīng)理、員工都可進(jìn)行操作。長期與經(jīng)期供應(yīng)商做出劃分,可按供應(yīng)商名稱、貨品類別、供應(yīng)時(shí)間長短進(jìn)行搜索,提供供應(yīng)商公司名稱、聯(lián)系電話、生產(chǎn)商品類別、詳細(xì)地址、傳真編號。另對供應(yīng)商的添加、信息修改、刪除只能是系統(tǒng)管理員與經(jīng)理。

3)用戶管理模塊:主要包含超市員工、經(jīng)理、系統(tǒng)管理員的信息管理。實(shí)現(xiàn)用戶信息創(chuàng)建、編輯、刪除、查詢和用戶權(quán)限驗(yàn)證功能。系統(tǒng)登錄時(shí)驗(yàn)證用戶權(quán)限,不同用戶有不同執(zhí)行權(quán)限。系統(tǒng)管理員具有最大權(quán)限,其可創(chuàng)建經(jīng)理、員工用戶,也可對其進(jìn)行修改、刪除,實(shí)現(xiàn)訂單業(yè)務(wù)塊和供應(yīng)商模塊全部功能;經(jīng)理對用戶信息修改與刪除需得到系統(tǒng)管理員的驗(yàn)證,可以下載不同員工信息到本地以便紙質(zhì)檔保存和公示,也可實(shí)現(xiàn)訂單業(yè)務(wù)與供應(yīng)商模塊功能;超市員工可查詢不同員工的基本信息,對于訂單業(yè)務(wù)模塊與供應(yīng)商模塊只可查詢,沒有過多操作。

2.3數(shù)據(jù)庫設(shè)計(jì)

根據(jù)功能模塊設(shè)計(jì)和圖2所示ER模型,本系統(tǒng)表主要有:用戶表、角色表、供應(yīng)商表、訂單表,商品表,具體所包含表及屬性如下:

1) User表:用戶編碼(userCode),用戶姓名(userName),登錄密碼(userPassword),性別(gender),出生日期(birthday),聯(lián)系電話(phone),用戶角色id(userRole),工作(job),地址(address),創(chuàng)建者(createdBy),創(chuàng)建日期(createdDate)。用戶管理表,用戶編碼作為User表主鍵,用戶角色id作為表外鍵,用戶編碼與登錄密碼是系統(tǒng)登錄賬號及密碼,工作屬性是員工和經(jīng)理的具體職能,其他即為用戶基本信息。

2) Role表:角色id(id),角色名稱(roleName),角色描述(describle)。角色表與用戶表對應(yīng),呈現(xiàn)一個(gè)角色對應(yīng)多個(gè)用戶級聯(lián)關(guān)系,角色id作為主鍵,角色描述屬性描述具體職能。

3) Provider表:供應(yīng)商id(id),公司名(proName),供應(yīng)商描述(proDesc),負(fù)責(zé)人姓名(proCntact),標(biāo)識(level),聯(lián)系電話(proPhone),廠商地址(proAddress),傳真(proFax),聯(lián)系電話(phone),創(chuàng)建者id(createdBy),創(chuàng)建日期(createdDate)。供應(yīng)商表,供應(yīng)商id作為主鍵,供應(yīng)商描述包括供應(yīng)商主要商品,標(biāo)識屬性反應(yīng)供應(yīng)商合作時(shí)間長短。

4) Bill表:訂單id(id),訂單名稱(productName),支付情況(isPayment),創(chuàng)建者id(createdBy),創(chuàng)建日期(createdDate),訂單表,訂單id作為主鍵,創(chuàng)建者id作為外鍵,支付情況屬性作為訂單查看以及后期與供應(yīng)商交接保障,創(chuàng)建者id對應(yīng)User表的用戶編碼。

5) Product表:商品id(id),名字(proName),庫存(proStock)。商品表,商品id為主鍵。商品id用于標(biāo)識不同商品,與供應(yīng)商id一起作為對應(yīng)聯(lián)系表主鍵,與訂單id一起作為采購聯(lián)系表主鍵。

3 系統(tǒng)實(shí)現(xiàn)

3.1相關(guān)技術(shù)

對于整個(gè)超市商品采購管理系統(tǒng),采用JavaWeb開發(fā)與實(shí)現(xiàn)[4]。前臺頁面采用Jsp、Js和Jquery技術(shù),在請求之中采用HttpServlet技術(shù);后臺連接之中采用三層架構(gòu)中的業(yè)務(wù)邏輯層與數(shù)據(jù)訪問層,數(shù)據(jù)庫連接使用JDBC接口,讀取數(shù)據(jù)時(shí)使用JavaBean組件,數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫。整個(gè)系統(tǒng)編寫在IntelliJ IDEA中進(jìn)行,使用Maven項(xiàng)目管理工具,并最終部署在輕量級開源Tomcat服務(wù)器上。

3.2系統(tǒng)登錄

Tomcat服務(wù)器啟動(dòng)之后,在瀏覽器網(wǎng)址輸入localhost:8080/order即可進(jìn)入登錄頁面。用戶首次使用時(shí),可選擇用戶注冊,在注冊時(shí)輸入正確郵箱地址獲得注冊驗(yàn)證碼。注冊成功后,返回登錄頁面輸入正確用戶名,密碼以及驗(yàn)證碼即可登錄系統(tǒng),在登錄之后可對創(chuàng)建的用戶詳細(xì)信息進(jìn)行修改,登錄界面注冊者選擇角色時(shí)慎重,不同用戶身份的系統(tǒng)功能權(quán)限不同。

登錄頁面之后,在功能列表中展示訂單管理、供應(yīng)商管理、用戶管理、密碼修改和退出系統(tǒng),前三個(gè)對應(yīng)功能設(shè)計(jì)三個(gè)需求。

3.3訂單管理

訂單管理界面首頁如圖3所示,直觀地展示目前訂單基本信息。訂單的查詢可通過商品名稱、供應(yīng)商、是否付款不同的關(guān)鍵詞進(jìn)行動(dòng)態(tài)查詢,沒有選擇約束即列出所有訂單。在操作一欄中依次是查詢訂單詳細(xì)信息、修改訂單信息、刪除訂單。查詢操作中可查看訂單種類、數(shù)量、訂單日期、支付情況,修改訂單以及刪除的操作只能是系統(tǒng)管理員以及經(jīng)理權(quán)限用戶可操作,在查詢功能下可點(diǎn)擊添加訂單從而實(shí)時(shí)添加訂單數(shù)目,對于查詢后頁面顯示的訂單信息可點(diǎn)擊下載訂單保存在本機(jī)。

3.4供應(yīng)商管理

在供應(yīng)商管理界面,可通過供應(yīng)商編碼不同長度進(jìn)行模糊查詢,按供應(yīng)商的姓名也可進(jìn)行查詢,在其一行信息中標(biāo)注了供應(yīng)商合作時(shí)間長短。詳細(xì)情況中列舉了其公司名、負(fù)責(zé)人、聯(lián)系電話、傳真、主要產(chǎn)品描述;修改供應(yīng)商時(shí)負(fù)責(zé)人姓名必須填寫,聯(lián)系電話必須格式正確,否則不能提交保存;若不是系統(tǒng)管理員,刪除供應(yīng)商不可執(zhí)行并作出警告;添加供應(yīng)商時(shí),供應(yīng)商編號會(huì)搜索數(shù)據(jù)庫是否存在以便排除重復(fù)。

3.5用戶管理

用戶管理功能中,普通用戶的創(chuàng)建大多數(shù)由系統(tǒng)管理員和經(jīng)理登錄系統(tǒng)創(chuàng)建,也可自行在登錄界面注冊創(chuàng)建,后期對其信息進(jìn)行完善。登錄用戶可通過姓名關(guān)鍵字以及用戶角色來查詢用戶,點(diǎn)擊查詢旁的下載信息即可下載用戶詳細(xì)信息至電腦,用戶的修改與刪除只有員工級別以上的權(quán)限可執(zhí)行。用戶登錄密碼只能是本端登錄者自行一對一修改,不可跨越修改用戶密碼,修改密碼時(shí)也需舊密碼的驗(yàn)證通過。

三個(gè)功能的管理創(chuàng)建時(shí)都會(huì)自動(dòng)獲取當(dāng)前登錄者id、當(dāng)前日期作為創(chuàng)建者id和創(chuàng)建日期;三個(gè)功能所查詢到的信息使用分頁的設(shè)計(jì)展示,采用到MySQL分頁limit方法;對于市場的查詢訂單詳細(xì)信息以及供應(yīng)商信息做出了存儲(chǔ)過程進(jìn)行優(yōu)化;為方便刪除用戶,創(chuàng)建觸發(fā)器提前修改訂單表對應(yīng)的創(chuàng)建用戶id;數(shù)據(jù)信息在進(jìn)行修改刪除時(shí),開啟MySQL事務(wù)機(jī)制來保障數(shù)據(jù)安全性;一個(gè)用戶登錄所設(shè)計(jì)Session持續(xù)時(shí)間為半小時(shí),失效需重新登錄。

4 系統(tǒng)測試

為保障該系統(tǒng)質(zhì)量,系統(tǒng)的測試環(huán)節(jié)必不可少,除了要實(shí)現(xiàn)規(guī)定的功能以外,還要滿足安全、兼容、負(fù)載性能下也能正常運(yùn)行[5]。本文具體做出以下測試:

1)功能測試:針對功能測試,選擇對訂單查詢與修改操作進(jìn)行測試。經(jīng)理登錄系統(tǒng)后,在訂單管理界面選擇未支付情況搜索,返回一條對應(yīng)訂單,在數(shù)據(jù)庫中查詢得到數(shù)據(jù)一致;經(jīng)理選擇第一條BILL2021_001訂單號進(jìn)行信息修改,刪除名稱為“護(hù)發(fā)素”的商品,保存之后返回界面查看訂單與修改一致。

2)安全測試:針對安全測試,首先直接訪問主頁界面,系統(tǒng)彈出并未登錄的信息對其做出有效攔截;對于訂單、供應(yīng)商、用戶數(shù)據(jù)修改和刪除時(shí),模擬中途網(wǎng)絡(luò)出現(xiàn)故障,這時(shí)查看MySQL數(shù)據(jù)庫,數(shù)據(jù)并未發(fā)生改變。

3)兼容測試:對于系統(tǒng)編寫完成后,分別將其部署在本地系統(tǒng)上與云服務(wù)器上Linux操作系統(tǒng)上。測試之后,本端可通過本機(jī)網(wǎng)絡(luò)分配IP地址進(jìn)行訪問,遠(yuǎn)端服務(wù)器可通過其分配的IP地址進(jìn)行訪問。

4)負(fù)載測試:本次測試中,10個(gè)用戶訪問系統(tǒng)進(jìn)行一系列操作。在整個(gè)的測試過程中,系統(tǒng)并未出現(xiàn)閃退、未響應(yīng)、頁面加載錯(cuò)誤等問題,在Windows操作系統(tǒng)下的系統(tǒng)出現(xiàn)延遲高,在遠(yuǎn)程服務(wù)器上良好。

對于整個(gè)系統(tǒng)測試,雖然在超高負(fù)載下出現(xiàn)延遲高等問題,后續(xù)需做出調(diào)整,但也達(dá)到了中小型超市的日常使用要求。

5 結(jié)束語

本系統(tǒng)流暢地進(jìn)行了每一個(gè)功能的使用,直觀地展示訂單信息、供應(yīng)商信息、用戶信息,對于中小型超市商品采購的統(tǒng)一管理、合理分配起到了一定效果,而采用的MVC+三層架構(gòu)也便于后期業(yè)務(wù)的維護(hù)以及更多功能的添加。

參考文獻(xiàn):

[1] 秦宇偉.基于B/S的連鎖超市管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦學(xué)習(xí),2011,1(2):17-18.

[2] 李佳樂,蘇金夢,劉佳琪,等.SQL2000數(shù)據(jù)庫和VS2014平臺的超市管理系統(tǒng)設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2019,19(11):65-68,74.

[3] 陳敏.淺析三層架構(gòu)的組成及優(yōu)勢[J].信息通信,2020,33(1):147-148.

[4] 劉文文.基于JSP的超市客戶管理系統(tǒng)設(shè)計(jì)[J].信息與電腦(理論版),2018(7):75-76.

[5] 譚李孟清,張瑩,王玉林.基于軟件性能的系統(tǒng)測試[J].軟件,2020,41(11):1-5,41.

【通聯(lián)編輯:梁書】

收稿日期:2021-08-25

作者簡介:袁明坤(2001—),男 ,四川成都人,本科,研究方向?yàn)榇髷?shù)據(jù);曾麗(1981—),女,四川宜賓人,通信作者,副教授,碩士,研究方向?yàn)檐浖こ?,大?shù)據(jù)。

猜你喜歡
MySQL數(shù)據(jù)庫
基于Android開發(fā)的APP服務(wù)器端設(shè)計(jì)
基于PHP&MySQL的高校招生管理信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
《軟件體系結(jié)構(gòu)》課程網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
基于android的臉部識別校園服務(wù)APP的研究與開發(fā)
SSH框架與MiniUI框架融合技術(shù)在的醫(yī)療信息系統(tǒng)中的應(yīng)用
Linux負(fù)載度量
充電樁狀態(tài)實(shí)時(shí)監(jiān)控系統(tǒng)與C/S框架設(shè)計(jì)
改進(jìn)的SSH框架技術(shù)在醫(yī)藥管理系統(tǒng)中的研究及應(yīng)用
基于PHP技術(shù)網(wǎng)上紀(jì)念園的設(shè)計(jì)與實(shí)現(xiàn)