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

正文內(nèi)容

小型超市進銷存管理系統(tǒng)論文(參考版)

2025-01-21 15:10本頁面
  

【正文】 華中師范大學本科畢業(yè)論文45參考文獻[1]白廣元. Java Web 整合開發(fā)完全自學手冊:Struts+Hibernate+Spring+ Eclipse[M].北京:機械工業(yè)出版社,[2]鄧子云. JSP 網(wǎng)絡編程從基礎到實踐(第 2 版)[M]. 北京:電子工業(yè)出版社,[3]李慧萍, CSS 的應用技術[J]. 電腦知識與技術,2022,7(26):64996505[4]盧菊平,郭江杰. 精通 JSP+XML+CSS 網(wǎng)絡開發(fā)混合編程[M].北。在程序設計的過程中,我充分地體會到了“實踐出真知”這一點,書本上的知識是不夠的,只有把理論與實踐相結(jié)合才能夠真正的學到知識。相對于傳統(tǒng)的 C/S 模式的管理系統(tǒng),本系統(tǒng)不僅適用于單一的超市,對時興的連鎖超市也非常適用。系統(tǒng)實現(xiàn)了管理的無紙質(zhì)化、網(wǎng)絡化和數(shù)據(jù)化,打破了時間和空間的限制,提高了工作效率。i=pageCount。這樣,在 JSP 頁面就可以直接將 ArrayList 中的對象讀取并顯示出來,達到分頁顯示的效果。當用戶點擊相應的頁面的時候,系統(tǒng)會根據(jù)用戶要顯示的頁數(shù)的值傳給服務器,服務器會根據(jù)接收到的值查詢數(shù)據(jù)庫并從數(shù)據(jù)庫中取出 pageSize 條信息。當我們要對某些數(shù)據(jù)進行分頁顯示時,要先確定每個頁面要顯示的信息數(shù)pageSize 和數(shù)據(jù)的總數(shù) rowCount,從而計算這些數(shù)據(jù)要顯示的頁數(shù)pageCount。該功能的實現(xiàn)需要先定義兩個變量:pageNow和 s_pageNow,且設置 pageNow 的初始值為 1,系統(tǒng)就是根據(jù) pageNow 的值來判斷該顯示哪些內(nèi)容。修改密碼如圖 所示。當用戶的舊密碼輸入錯誤或者兩個新密碼不一致的時候,用戶不能修改自己的密碼。員工信息輸入完畢,同樣可以查看自己填寫的信息,若有錯誤的也可以進行修改,如圖 和圖 所示。當員工第一次查詢自己個人信息時,系統(tǒng)會提示“您還沒有填寫個人信息,是否現(xiàn)在填寫?” ,若用戶想現(xiàn)在填寫信息,則系統(tǒng)會跳轉(zhuǎn)到用戶信息填寫的頁面,如圖 所示。圖 修改員工密碼如圖 所示為管理員更改用戶的職務。華中師范大學本科畢業(yè)論文40圖 員工登錄系統(tǒng)的用戶名和密碼查詢?nèi)鐖D 所示為管理員添加一個新的員工。圖 商品類別的添加 員工信息管理對員工信息的管理主要分為自己管理和管理員管理兩類。圖 供應商信息查詢結(jié)果修改供應商信息如圖 所示。系統(tǒng)可以根據(jù)供應商的名稱來查詢該供應商的信息并對該供應商的信息進行修改。 供應商管理對供應商的管理主要是對供應商信息的添加和修改,如圖 所示為添加供應商。當管理員點擊 “是”之后,系統(tǒng)會觸發(fā)對數(shù)據(jù)庫中審核狀態(tài)字段的修改,將其字段值改為 true。在數(shù)據(jù)庫中,進貨員填寫的進貨信息會寫進進貨表中。圖 已進貨訂單進貨后,系統(tǒng)會將進貨的數(shù)量添加在庫存的數(shù)量中。進貨員只有看到了改訂單通過管理員的審核后,才能根據(jù)管理員審核的信息進貨,如圖 所示為進貨員查詢到的已審核訂單圖,圖 所示為管理員查詢到的已審核訂單圖。對未審核訂單的查詢也可以根據(jù)商品名稱來查詢某種商品的訂單情況?!?a管理員審核訂單,先查看有哪些未審核訂單,并可根據(jù)這些訂單的信息對訂單進行修改、刪除或?qū)徍?,如圖 所示。圖 查詢未審核訂單當用戶點擊修改的超鏈接時,系統(tǒng)會將該商品的名稱、類別、產(chǎn)地、數(shù)量、價格等信息傳給修改頁面:a href=? id=%=() %amp。如圖 所示。當用戶點擊【進貨】后,系統(tǒng)會將用戶輸入的信息顯示出來,以確認用戶輸入的信息無誤。在實現(xiàn)過程中,系統(tǒng)會先查詢供應商和類別表中的信息并將所需要的信息存儲在ArrayList 中。華中師范大學本科畢業(yè)論文34圖 條件查詢結(jié)果 訂單管理進貨員在進貨前,需要先填寫詳細的進貨信息,如圖 所示。用戶也可以查詢系統(tǒng)的全部退貨情況或者根據(jù)條形碼來查詢該商品的退貨情況,如圖 和 所示。華中師范大學本科畢業(yè)論文33圖 退貨管理當顧客退貨后,若商品沒有損壞,則系統(tǒng)會自動將退貨的數(shù)量添加到商品信息的庫存量中,并且該商品可以繼續(xù)在貨架上銷售。當用戶第一次點擊【查詢】時,JavaBean 中沒有值,所以頁面中只顯示輸入框和【查詢】按鈕;當用戶輸入條形碼后,系統(tǒng)將該商品的各項信息存入 JavaBean 中,JSP 頁面中得到該 JavaBean 不為空的信息,開始打印表格并將該商品的信息顯示在表格中。圖 查詢商品當用戶點擊【查詢】按鈕后,系統(tǒng)會在數(shù)據(jù)庫中查找相應的字段值。華中師范大學本科畢業(yè)論文32圖 銷售商品當用戶購買多種商品時,售貨員需依次輸入各商品的條形碼和數(shù)量并點擊【添加】按鈕,系統(tǒng)會自動將這些商品的信息存儲在隱藏表單中,最后可以通過點擊【結(jié)算總金額】按鈕將該表單顯示出來,并結(jié)算用戶所需支付的費用。若要更改用戶,則系統(tǒng)會將該用戶登錄的 session 清空,然后將頁面跳轉(zhuǎn)到系統(tǒng)登錄頁面。在設計中采用在表格中嵌入 JSP頁面的方法,減少了代碼的編輯量,也使系統(tǒng)更容易維護。本系統(tǒng)的頁面如圖 所示。}華中師范大學本科畢業(yè)論文31return ()。if(val16)(“0”)。i++){int val=((int) Bytes[i])amp。for(int i=0。byte []md5Bytes=(byteArray)。i。byte []byteArray=new byte[]。以加密密碼為例,MD5加密的算法如下 [5]:public class MD5{MessageDigest mad5=(“MD5”)。當用戶需要登錄系統(tǒng)時,再一次對用戶的輸入進行加密。MD5 是一種單向加密算法,其加密后的數(shù)據(jù)難以解密,所以廣泛應用在各大型網(wǎng)站以及管理系統(tǒng)中用來保護用戶口令的安全。/script)。39。)。//設置該 session 的名字為 login,值為華中師范大學本科畢業(yè)論文30success當用戶訪問其他頁面時,都要檢查該 session 中是否有值,代碼如下:if(().getAttribute(login) == null || ().getAttribute(login).equals()){(scriptalert(39。(36000)。這個功能的實現(xiàn)可以在判斷用戶是合法用戶后插入相應的代碼,再讓用戶跳轉(zhuǎn)到其相應的頁面。若有,則該用戶是否是合法用戶,可以正常訪問頁面;否則,提示用戶登錄并跳轉(zhuǎn)到登錄頁面。 //彈出對話框提示“用戶名或密碼錯誤!”}}以上代碼中,由于數(shù)據(jù)庫的 loginJob 字段存放的是 0、2 三個數(shù),2 對應售貨員,1 對應進貨員,0 對應管理員,所以判斷接下來要跳轉(zhuǎn)到哪個頁面只需查詢 loginJob 中字段的值為多少。)。 (39。用戶名或密碼錯誤!39。//跳轉(zhuǎn)到進貨員頁面else if((un).getLoginJob()==2) //若用戶是售貨員 ().forward(request, response)。if((un).getLoginJob()==0)//若用戶是管理員華中師范大學本科畢業(yè)論文29().forward(request, response)。//接收用戶輸入的用戶名String pw=(password)。若該用戶為售貨員,則跳轉(zhuǎn)到售貨員的頁面;若該用戶為進貨員,則跳轉(zhuǎn)到進貨員的頁面;若該用戶為管理員,則跳轉(zhuǎn)到管理員的頁面。}在 Servlet 中主要調(diào)用 dao 中相應的類來實現(xiàn)用戶輸入驗證和權限控制。 ()。}finally{//關閉資源()。((3))。//查詢數(shù)據(jù)庫if(()){//若查詢結(jié)果不為空,則將結(jié)果寫入 LoginBean((1))。//top 1 表示查到一條記錄就返回,提高查詢速度(1, u)。 //返回執(zhí)行結(jié)果}當確定用戶的輸入是合法之后,需要將該用戶的信息放入 JavaBean 中,以方便在以后的程序中使用:華中師范大學本科畢業(yè)論文28public LoginBean getEmployeeLogin(String u){try {Connection =new ConnDB().getConn()。 ()。}finally{ //關閉資源()。if((dbPasswd)){b=true。ResultSet = ( )。//連接數(shù)據(jù)庫PreparedStatement = (select top 1 * from loginInfo where loginNo=?)。其實現(xiàn)代碼如下:public boolean checkUser(String u,String p){boolean b=false。在登錄模塊中,主要利用 LoginDao 來實現(xiàn)對用戶的驗證和華中師范大學本科畢業(yè)論文27存儲用戶信息。}}當用戶需要登錄驗證時,系統(tǒng)會先對數(shù)據(jù)庫進行操作,取出 loginNo 的值并通過 setLoginNo(String loginNo)的方法將該值賦給 JavaBean 中的 loginNo 字段;由于數(shù)據(jù)庫中的 loginNo 字段和 JavaBean 中的 loginNo 字段值相同,則在后續(xù)程序中如果需要用到該 loginNo 字段的值,只需查找 JavaBean 中的 loginNo 即可,而 JavaBean 中的 loginNo 值可以通過 getLoginNo()方法得到,因此可以大大減少查詢數(shù)據(jù)庫的次數(shù),提高程序的執(zhí)行效率。public String getLoginNo() {return loginNo。當需要存儲數(shù)據(jù)時,系統(tǒng)將調(diào)用JavaBean 中的 set( )方法設置相應的數(shù)據(jù)的值;當需要去取數(shù)據(jù)時,系統(tǒng)則調(diào)用get( )方法來取出相應的值。在 dao 中如需調(diào)用數(shù)據(jù)庫,除了 Connection 外,還需用到 ResultSet 對象和PreparedStatement 對象,ResultSet 是數(shù)據(jù)庫查詢的結(jié)果集,而 PreparedStatement則被用來執(zhí)行包含動態(tài)參數(shù)的 SQL 參數(shù)和更新。}其中,Connection 是一個數(shù)據(jù)庫連接,負責與數(shù)據(jù)庫進行通信,SQL 執(zhí)行及事務處理都是在某個特定的 Connection 環(huán)境中進行的。} catch (Exception e) {()。public Connection getConn(){try {()。系統(tǒng)函數(shù)調(diào)用過程如圖 所示。若在數(shù)據(jù)庫中查找不到與用戶輸入的用戶名相同的字段,則返回 false;若在數(shù)據(jù)庫中找到了與用戶數(shù)據(jù)的用戶名相同的字段,但用戶的密碼不一樣,同樣返回 false;只有當用戶輸入的用戶名和密碼與數(shù)據(jù)庫中的用戶名和密碼相匹配的時候,函數(shù)才返回 true,然后讀取該用戶的用戶名、密碼、職務信息并將這些數(shù)據(jù)存儲在 JavaBean 中。Servlet 通過 request 對象的 getParameter( ) 方法獲取從客戶端輸入的數(shù)據(jù)并存儲在臨時變量中;同時,Servlet 將實例化 dao 中的LoginDao 類,并調(diào)用該類中的 checkUser(String username, String password)方法對用戶輸入的信息進行驗證。return。用 JavaScript 驗證用戶名輸入是否為空的代碼如下:script language=”javascript”function check(loginForm)if(==””){ //判斷用戶名的輸入是否為空alert(“請輸入用戶名!”)。若用戶名或密碼為空,則系統(tǒng)將會給華中師范大學本科畢業(yè)論文24予提示,并將光標定位到相應的輸入框中。圖 系統(tǒng)登錄頁面在 JSP 頁面,系統(tǒng)利用 JavaScript 編寫的函數(shù)來檢測用戶的輸入是否合法,當用戶點擊【提交】按鈕時,系統(tǒng)會觸發(fā)對 JavaScript 相應的函數(shù)的調(diào)用。 系統(tǒng)調(diào)用過程現(xiàn)在,以用戶登錄系統(tǒng)為例說明系統(tǒng)函數(shù)的調(diào)用過程,如圖 所示是系統(tǒng)登錄的流程圖。src 目錄下共打了 4 個包,如圖 4. 1 所示,各個包所存儲的文件為::JavaBeans 文件:執(zhí)行對數(shù)據(jù)庫操作的文件:Servlet 文件:連接數(shù)據(jù)庫的驅(qū)動 由于本系統(tǒng)采用了 MVC 的設計模式,所有的業(yè)務邏輯處理任務都交由Servlet 負責,但由于系統(tǒng)所需要的文件較多,如果把數(shù)據(jù)庫查詢和調(diào)用的類都寫在 Servlet 中,則會造成 Servlet 閱讀和維護較難,因此在 Servlet 中把對數(shù)據(jù)庫操作的類都寫在 dao 中,Servlet 中只負責進行類的調(diào)用和邏輯判斷,這樣就使得代碼有更好的閱讀性,也使得程序變得清晰明了。該進貨表的設計說明如表 所示。表 超市退貨表列名 說明 數(shù)據(jù)類型 數(shù)據(jù)長度 是否空 鍵碼GNo 條形碼 Varchar 20 否 外鍵BCReasion 退貨原因 Text 100 否BCNum 退貨數(shù)量 Int 4 否BCMoney 退貨金額 Float 8 否BCDate 退貨時間 Datetime 8 否(9)本表主要用于進貨員填寫進貨訂單和管理員審核訂單,包括進貨單號(進貨 id) 、商品條形碼、進貨價、進貨數(shù)量、進貨總額、供應商名、是否審核和是否進貨等。其設計說明如表 所示。若商品未損壞,則商品可以繼續(xù)上架銷售;若商品已損壞,則只能做其他處理。商品銷售表的設計說明如表 所示。其設計說明如表 所示。表 商品類
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1