freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于cs結(jié)構(gòu)的倉(cāng)庫(kù)智能管理系統(tǒng)畢業(yè)論文(編輯修改稿)

2025-07-19 01:18 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 可自動(dòng)生成NameVarchar20No商品名稱(chēng)CountInt11No商品數(shù)量PriceMedimutext—No商品單價(jià)Warehouse_idInt11No所在倉(cāng)庫(kù)Save_dateDate—No存庫(kù)日期Shop_idInt11No供應(yīng)商編號(hào)statevarchar5No庫(kù)存狀態(tài)用戶(hù)信息表主要用于保存用戶(hù)的賬號(hào),結(jié)構(gòu)如表33所示:表33 manager表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度是否為主鍵可以為空描述IdInt11YesNo用戶(hù)編號(hào),可自動(dòng)生成NameVarchar20No用戶(hù)賬號(hào)PasswordVarchar10No用戶(hù)密碼用戶(hù)與倉(cāng)庫(kù)關(guān)系表主要用戶(hù)記錄倉(cāng)庫(kù)與用戶(hù)之間的所屬關(guān)系,他們之間是多對(duì)一的關(guān)系。比如一個(gè)用戶(hù)可以擁有多個(gè)倉(cāng)庫(kù),但一個(gè)倉(cāng)庫(kù)只能屬于一個(gè)用戶(hù)。此表作為輔助表,該表的結(jié)構(gòu)如表34所示:表34 Manager_warehouse表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度是否為主鍵可以為空描述Manager_idInt11YesNo用戶(hù)編號(hào)Warehouse_idInt11YesNo倉(cāng)庫(kù)編號(hào)供應(yīng)商信息表主要用于保存商品供應(yīng)商家的基本信息,結(jié)構(gòu)如表35所示:表35 shop表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度是否為主鍵可以為空描述IdInt11YesNo商家編號(hào),可自動(dòng)生成NameVarchar20NoNo商家名稱(chēng)AddressVarchar20NoYes商家地址EmailVarchar20NoYes電子郵箱telephoneVarchar20NoYes商家電話 倉(cāng)庫(kù)信息表主要用于保存所有倉(cāng)庫(kù)的基本信息,結(jié)構(gòu)如表36所示:表36 warehouse表字段名數(shù)據(jù)類(lèi)型長(zhǎng)度是否為主鍵可以為空描述IdInt11YesNo倉(cāng)庫(kù)編號(hào),可自動(dòng)生成AreaVarcahar20No倉(cāng)庫(kù)所屬區(qū)域Dept_idInt11No所屬用戶(hù)編號(hào)VolumeInt11No最大容量CountInt11No目前庫(kù)存容量 連接數(shù)據(jù)庫(kù)public class JdbcUtil { private static Connection con = null。 static {try {()。} catch (ClassNotFoundException e) { ()。 }}public static Connection getConnection() { try {con = ( jdbc:mysql://localhost:3306/shen?useUnicode=trueamp。characterEncoding=utf8, root,)。 } catch (SQLException e) { ()。 } return con。}} 由以上代碼,對(duì)JdbcUtil數(shù)據(jù)庫(kù)鞏固類(lèi)進(jìn)行實(shí)例化,調(diào)用JdbcUtil().getConnection()即可獲得數(shù)據(jù)庫(kù)連接。 功能模塊設(shè)計(jì)在概要設(shè)計(jì)階段,必須設(shè)計(jì)出系統(tǒng)的概念模型,這是實(shí)現(xiàn)系統(tǒng)功能的必經(jīng)之路。在此過(guò)程中,根據(jù)各表的分析和對(duì)各種數(shù)據(jù)和系統(tǒng)功能進(jìn)行綜合,可得到軟件初始結(jié)構(gòu)圖如圖31所示、圖32所示。注冊(cè)用戶(hù)用戶(hù)登錄添加倉(cāng)庫(kù)查看倉(cāng)庫(kù)查看商品刪除商品增加商品設(shè)置商品屬性編輯商家信息選擇供應(yīng)商統(tǒng)計(jì)數(shù)據(jù)倉(cāng)庫(kù)管理商品管理商家管理用戶(hù)賬號(hào)客戶(hù)端 圖31 客戶(hù)端功能結(jié)構(gòu)圖服務(wù)器商品信息倉(cāng)庫(kù)信息用戶(hù)信息商家信息增加倉(cāng)庫(kù)信息查詢(xún)倉(cāng)庫(kù)信息增加商品信息刪除商品信息修改商品信息查詢(xún)用戶(hù)信息查詢(xún)供應(yīng)商信息增加供應(yīng)商信息新增用戶(hù)信息圖32 服務(wù)器功能結(jié)構(gòu)圖 客戶(hù)端的基本功能用戶(hù)端主要功能都是面對(duì)用戶(hù)的操作,根據(jù)用戶(hù)的需求,想用戶(hù)端發(fā)出請(qǐng)求,將用戶(hù)所需要的或所編輯的信息顯示出來(lái)。其主要功能模塊如下:登用戶(hù)管理模塊:用戶(hù)登陸,用戶(hù)注冊(cè)。倉(cāng)庫(kù)查看模塊:查看倉(cāng)庫(kù),新建倉(cāng)庫(kù),快速查詢(xún)商品功能商品查看模塊:查看已入庫(kù)商品,查看已出庫(kù)商品,查看全部商品,查看商品具體信息,刪除商品,修改商品信息,將商品入庫(kù),將商品出庫(kù)。數(shù)據(jù)發(fā)送模塊:對(duì)商品等信息進(jìn)行打包,發(fā)送數(shù)據(jù)包,接受數(shù)據(jù)包。 服務(wù)器的基本功能服務(wù)器斷主要是接受客戶(hù)端發(fā)來(lái)的信息,識(shí)別信息類(lèi)型后,對(duì)信息分類(lèi),再對(duì)處理客戶(hù)端所需要的業(yè)務(wù)。其主要功能模塊如下:數(shù)據(jù)存儲(chǔ)模塊:主要包括數(shù)據(jù)庫(kù)中的商品的進(jìn)行增、刪、改、查。數(shù)據(jù)查詢(xún)模塊:判斷用戶(hù)的賬號(hào)密碼是否正確,查找某個(gè)用戶(hù)所擁有的所有倉(cāng)庫(kù)及倉(cāng)庫(kù)內(nèi)商品信息。信息識(shí)別模塊:解壓客戶(hù)端發(fā)送的數(shù)據(jù)包,判斷業(yè)務(wù)類(lèi)型。數(shù)據(jù)發(fā)送模塊:對(duì)數(shù)據(jù)庫(kù)中得到的信息進(jìn)行打包,發(fā)送數(shù)據(jù)包。第4章 詳細(xì)設(shè)計(jì)及實(shí)現(xiàn) 程序主體框架設(shè)計(jì)程序分為客戶(hù)端和服務(wù)器兩個(gè)部分,兩個(gè)部分均能夠獨(dú)立存在,但運(yùn)行時(shí)又必須相互支持。,服務(wù)器則采用純后臺(tái)系統(tǒng)??蛻?hù)端和服務(wù)器在Myeclipse中分別是兩個(gè)項(xiàng)目,為了兩個(gè)項(xiàng)目能夠正確讀取網(wǎng)絡(luò)數(shù)據(jù)流發(fā)送的數(shù)據(jù)包。該文件包括的內(nèi)容如下:基本類(lèi):商品類(lèi),用戶(hù)類(lèi),倉(cāng)庫(kù)類(lèi),供應(yīng)商類(lèi)。自定義異常類(lèi):MyWarehouseException類(lèi),繼承自Exception,用于拋出各類(lèi)異常??蛻?hù)端程序主要由以下幾個(gè)部分組成:窗體包:所有可視窗體及其控件。工具包:socke工具包(用于通過(guò)tcp/ip協(xié)議,與服務(wù)器進(jìn)行連接),sourceBag數(shù)據(jù)封裝類(lèi)。服務(wù)器程序主要由以下幾個(gè)部分組成:接口:商品類(lèi)接口,用戶(hù)類(lèi)接口,倉(cāng)庫(kù)類(lèi)接口,供應(yīng)商類(lèi)接口,接口工廠類(lèi)。接口實(shí)現(xiàn)類(lèi):商品類(lèi)接口實(shí)現(xiàn)類(lèi),用戶(hù)類(lèi)接口實(shí)現(xiàn)類(lèi),倉(cāng)庫(kù)類(lèi)接口實(shí)現(xiàn)類(lèi),供應(yīng)商類(lèi)接口實(shí)現(xiàn)類(lèi)?;绢?lèi):商品類(lèi),用戶(hù)類(lèi),倉(cāng)庫(kù)類(lèi),供應(yīng)商類(lèi)。工具類(lèi):jdbcUtil(數(shù)據(jù)庫(kù)工具類(lèi)),連接池工具類(lèi),socke工具包(打開(kāi)服務(wù)器監(jiān)聽(tīng)),sourceBag數(shù)據(jù)封裝類(lèi)。 程序流圖整個(gè)系統(tǒng)包括主要登錄、查詢(xún)、添加、修改、刪除以及退出等功能。首先是用戶(hù)登錄,用戶(hù)登陸后可以對(duì)系統(tǒng)的各個(gè)模塊進(jìn)行操作,每個(gè)模塊都包括查詢(xún)、添加、修改、刪除功能,管理員在每次操作完成后,系統(tǒng)自動(dòng)修改數(shù)據(jù)庫(kù)信息,當(dāng)用戶(hù)需要離開(kāi),可用退出功能退出,保護(hù)系統(tǒng)信息安全。如圖41所示。查看倉(cāng)庫(kù)添加倉(cāng)庫(kù)搜索商品操作倉(cāng)庫(kù)`修改商品信息查看商品信息刪除商品查看倉(cāng)庫(kù)內(nèi)商品保存數(shù)據(jù)庫(kù)主界面退出判斷賬號(hào)密碼是否正確用戶(hù)登錄搜索商品操作倉(cāng)庫(kù)添加倉(cāng)庫(kù)查看倉(cāng)庫(kù)圖41 程序流圖 客戶(hù)端窗口及相關(guān)功能客戶(hù)端以一個(gè)主窗口作為模板,然后跟據(jù)用戶(hù)的使用切換不同的面板。主窗口繼承JFrame。主窗口的特點(diǎn)是:點(diǎn)擊右上角紅叉的時(shí)候會(huì)彈出確認(rèn)窗口,詢(xún)問(wèn)用戶(hù)是否確認(rèn)離開(kāi)。每個(gè)功能面板都可以調(diào)整窗口的大小。如圖42。圖42 離開(kāi)確認(rèn)窗口主窗口相關(guān)代碼請(qǐng)查詢(xún)附錄2.各個(gè)功能面板如下:1. 登錄界面:用戶(hù)輸入賬號(hào)密碼才能對(duì)倉(cāng)庫(kù)進(jìn)行管理。如圖43。圖43 登錄窗口如果輸入賬號(hào)密碼錯(cuò)誤或者輸入空信息,系統(tǒng)會(huì)做出相關(guān)提示。如圖44。 圖44 登錄錯(cuò)誤提示登錄的相關(guān)代碼如下:oos = new ObjectOutputStream(())。(bag)。()。ois = new ObjectInputStream(())。SourceBag getbag = (SourceBag) ()。if (() 0) { (null, 賬號(hào)密碼錯(cuò)誤, 登陸失敗, )。} else { Manager manager = (Manager) (manager)。 new MainPanel(mf, manager).toShow()。} 如果用戶(hù)點(diǎn)擊“新用戶(hù)注冊(cè)“,則會(huì)進(jìn)入注冊(cè)界面,該界面的主要功能就是添加新的用戶(hù),相關(guān)界面如圖45。圖45 用戶(hù)注冊(cè)界面 點(diǎn)擊“注冊(cè)”后,客戶(hù)端會(huì)向服務(wù)器發(fā)送一個(gè)注冊(cè)請(qǐng)求,服務(wù)器操作數(shù)據(jù)庫(kù),如果添加成功,服務(wù)器返回一個(gè)成功信息給客戶(hù)端。用戶(hù)注冊(cè)成功后最自動(dòng)返回登錄界面。其相關(guān)代碼如下:Socket s = ()。SourceBag setbag = new SourceBag()。(name, name)。(password, pw1)。oos = new ObjectOutputStream(())。(setbag)。()。ois = new ObjectInputStream(())。SourceBag getbag = (SourceBag) ()。if (() == ) { (null, 注冊(cè)成功, 提示, )。 new LoginPanel().toShow()。} else { throw new Exception()。}2. 倉(cāng)庫(kù)查看界面:左側(cè)列表時(shí)用戶(hù)倉(cāng)庫(kù)列表,右面是選中的倉(cāng)庫(kù)的基本信息。用戶(hù)在此界面可對(duì)倉(cāng)庫(kù)進(jìn)行操作:新建倉(cāng)庫(kù)或者查看倉(cāng)庫(kù)內(nèi)商品。左邊的按鈕時(shí)添加新倉(cāng)庫(kù),點(diǎn)擊可以進(jìn)入添加倉(cāng)庫(kù)界面,用戶(hù)編輯好新倉(cāng)庫(kù)相關(guān)信息,即可添加。相關(guān)界面如圖46。圖46倉(cāng)庫(kù)查看界面此界面包括添加倉(cāng)庫(kù)和查看倉(cāng)庫(kù)兩個(gè)功能。點(diǎn)擊添加倉(cāng)庫(kù),進(jìn)入添加倉(cāng)庫(kù)界面,該界面如圖47。圖47添加倉(cāng)庫(kù)界面在該界面中,用戶(hù)填好相關(guān)信息后,客戶(hù)端向服務(wù)器發(fā)送新建倉(cāng)庫(kù)請(qǐng)求,數(shù)據(jù)庫(kù)創(chuàng)建倉(cāng)庫(kù)成功后,向客戶(hù)端發(fā)送成功請(qǐng)求,代碼如下:Socket s = ()。SourceBag setbag = new SourceBag()。(address, address)。(valume, valume)。(manager_id, ())。oos = new ObjectOutputStream(())。(setbag)。()。ois=new ObjectInputStream(())。SourceBag getbag=(SourceBag)()。if (() == ) { (null, 添加成功!返回主界面,添加成功!, )。new LoginPanel(mf).toShow()。} else { (null, 請(qǐng)您稍后再試, 添加失敗!,)。}查看倉(cāng)庫(kù)信息,就是用戶(hù)登錄后,客戶(hù)端將服務(wù)器發(fā)來(lái)的用戶(hù)信息進(jìn)行拆包,提取出相關(guān)信息,顯示到客戶(hù)端中,主要代碼如下:ListWarehouse warelist = ()。String[] wareName = new String[()]。for (int i = 0。 i ()。 i++) { wareName[i] = (i).getArea()。}if (() == 0) { wareName = new String[1]。 wareName[0] = 您的數(shù)據(jù)庫(kù)列表為空。} 該界面還有一個(gè)“一鍵查詢(xún)”功能,在文本框中輸入要查找的商品名,點(diǎn)擊“一鍵查詢(xún)”,客戶(hù)端在所有商品中翻找對(duì)應(yīng)商品名,找到后跳到查看商品界面,如果找不到則提示“未找到相關(guān)信息”。該功能的核心代碼如下:(new ActionListener() { public void actionPerformed(ActionEvent e) { String goodname=().trim()。 ListWarehouse warelist=()。 for(int i=0。i()。i++){ ListGoods goodslist=(i).getGoods()。 for(int j=0。j()。j++){ Goods good1=(j)。 int a=().indexOf(goodname)。 if(a!=1){ new OneGoodPanel(mf, good1)。 }else{ (null,未找到相關(guān)商品信息,提示,)。 }}}}})。3. 添加商品界面:用戶(hù)可以在此界面中編輯新的商品信息,包括商品名,商品入庫(kù)數(shù)量,商品單價(jià),生產(chǎn)廠家,入庫(kù)時(shí)間。相關(guān)界面、程序代碼查詢(xún)附錄:。相關(guān)界面如圖48。圖48添加倉(cāng)庫(kù)界面 在該界面包含添加商品功能,就是客戶(hù)端向服務(wù)器發(fā)送添加商品請(qǐng)求,數(shù)據(jù)庫(kù)添加成功后向客戶(hù)端發(fā)送添加成功請(qǐng)求,相關(guān)代碼如下:Socket s = ()。SourceBag setbag = new SourceBag()。(name, ())。(count, ())。(price, ())。(shop, ())。(time,
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1