報刊訂閱管理系統(tǒng)探討

時間:2022-06-04 11:40:03

導(dǎo)語:報刊訂閱管理系統(tǒng)探討一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

報刊訂閱管理系統(tǒng)探討

摘要:本系統(tǒng)是一個面向報刊訂閱管理員的報刊訂閱管理系統(tǒng)。是基于JAVA和SQLSERVER2014數(shù)據(jù)庫而設(shè)計的智能化報刊訂閱管理系統(tǒng)。它面向所有報刊的管理員,并且具有安全性和時效性。同時可以實現(xiàn)報刊訂閱的基本功能,包括對報刊和用戶信息的增加、刪除、修改、查詢功能,和對訂單信息的管理和統(tǒng)計功能等操作,也可自行增加系統(tǒng)管理員。系統(tǒng)在設(shè)計過程中,為使程序代碼標(biāo)準(zhǔn)化和統(tǒng)一化,確保系統(tǒng)界面的友好型和可維護(hù)性,同時刪除不必要的數(shù)據(jù)冗余,實現(xiàn)管理的規(guī)范化,科學(xué)化。盡量做到實用、方便,以滿足生活中報刊訂閱管理的需求。

關(guān)鍵詞:JAVA;SQLSERVER2014;報刊訂閱;管理系統(tǒng)

一直以來,大眾訂閱報刊都是沿用傳統(tǒng)人工的方式進(jìn)行管理報刊的訂閱,這種傳統(tǒng)的人工管理方法存在著很多缺點,比如,效率太低,保密性差,且隨著訂閱周期的變化及訂閱人數(shù)的增加,將產(chǎn)生的大量的訂閱記錄和無用的數(shù)據(jù)文件,對于管理員進(jìn)行歸類整理等操作時很不友好,并且對于報刊訂閱信息的查找、更新和維護(hù)都帶來了不少的難題。本系統(tǒng)的開發(fā)目的就是為解決人工管理報刊訂閱的效率低下等問題,通過對數(shù)據(jù)庫的操作實現(xiàn)智能化的管理報刊訂閱等問題。

1開發(fā)環(huán)境

(1)開發(fā)語言:JAVA;(2)開發(fā)工具:Eclipse2020-06、SQLSERVER2014數(shù)據(jù)庫;(3)操作系統(tǒng):Windows10;(4)數(shù)據(jù)庫版本:SQLSERVER2014。

2數(shù)據(jù)庫設(shè)計

(1)管理員表:Login(UName,UPassword)其中(UName,UPassword)為主碼。(2)用戶表:Customer(Cid,Cname,Phone,Address)中Cid為主碼,Cid,Cname,Phone,Address約束為非空。(3)報刊表:Diretory(Did,Dname,UnitPrice,Ifo)中Did為主碼,Dname,UnitPrice,Ifo約束為非空。(4)訂單表:OrderDetail(Ono,Did,Cid,Quantity,Qishu,UnitPrice,Total,Odate)其中(Ono,Did)為主碼,Cid和Did分別為外碼(參照分別為Customer(Cid)和Diretory(Did)),Quantity,Qishu,UnitPrice,Total,Odate約束為非空。

3模塊設(shè)計及E-R圖

(1)主界面:該界面為管理員登錄模塊,管理員可通過本界面驗證登錄報刊訂閱管理系統(tǒng);(2)報刊管理模塊:該模塊負(fù)責(zé)展示目錄中的報刊信息,可實現(xiàn)報刊信息的增加、刪除、修改、查詢(按報刊編號或報刊名稱查詢)等功能,用戶可通過此模塊查看報刊的報刊編號、報刊名稱、報刊單價、季度訂價、備注信息等信息;(3)訂單管理模塊:該模塊負(fù)責(zé)展示已存在的用戶訂單信息和訂單統(tǒng)計,具體功能可實現(xiàn)訂單信息的增加、刪除、修改、查詢(可按訂單編號查詢)等功能,用戶可通過此模塊查看訂單的編號、報刊編號、用戶編號、訂閱數(shù)量、訂閱期數(shù)、報刊單價、訂單總價、訂單日期等信息;(4)用戶管理模塊:該模塊負(fù)責(zé)展示用戶的基本資料信息,包括用戶編號、用戶姓名、用戶地址、用戶電話等,管理員可實現(xiàn)對用戶信息的增加、刪除、修改、查詢(可按用戶編號或用戶姓名查詢)等操作;(5)管理員賬號模塊:該模塊可實現(xiàn)增加和刪除管理員的功能,在進(jìn)行操作前需輸入管理員賬號及密碼驗證管理員身份,驗證成功即可進(jìn)行操作;(6)系統(tǒng)模塊:負(fù)責(zé)介紹本系統(tǒng),用于后期系統(tǒng)的推廣和維護(hù)。

4系統(tǒng)功能實現(xiàn)及詳細(xì)設(shè)計系統(tǒng)功能結(jié)構(gòu)圖如圖2所示。

4.1系統(tǒng)功能實現(xiàn)

(1)登錄模塊設(shè)計:用戶通過數(shù)據(jù)庫連接,對管理員賬號和密碼進(jìn)行身份驗證,驗證成功后方可進(jìn)入報刊訂閱管理系統(tǒng)主界面。(2)主界面設(shè)計:管理員驗證成功后可進(jìn)入報刊訂閱管理系統(tǒng)主界面,此時可查看菜單欄上分布著各項管理功能包括報刊管理模塊、訂單管理模塊、用戶管理模塊、賬號管理模塊、系統(tǒng)模塊;用戶可根據(jù)自身需要選擇具體操作的模塊。(3)報刊管理界面:進(jìn)入報刊管理界面后可以看到界面上方的五個模塊,分別是添加報刊、刪除報刊、修改報刊、按名字查詢報刊、按編號查詢報刊。同時在下方會顯示目前所有報刊的信息(報刊編號、報刊名字、報刊單價、備注信息等),管理員可在對報刊信息進(jìn)行操作后在下方信息展示欄中查看更新后的報刊信息。管理員在添加報刊時需輸入報刊編號、報刊名字、報刊單價、備注信息,數(shù)據(jù)庫會根據(jù)輸入信息對已存在的信息進(jìn)行判重,如果重復(fù)則插入失敗,否則插入成功;在刪除報刊時需輸入所要刪除報刊的編號首先進(jìn)行查詢該報刊是否存在,如果該報刊存在則可進(jìn)行刪除操作,否則無法刪除;在修改報刊時也需要輸入報刊編號進(jìn)行判斷該報刊是否存在,如果存在則可以修改該報刊的信息,否則修改失敗;查詢報刊功能分為兩部分,可以根據(jù)報刊名字查詢,如果報刊存在則可以看到該報刊的所有信息,也可以根據(jù)報刊編號進(jìn)行查詢。(4)訂單管理界面:進(jìn)入訂單管理界面后可以看到界面上方的五個模塊,分別是添加訂單、刪除訂單、修改訂單、按訂單編號查詢訂單,同時在下方會顯示目前所有訂單的信息(訂單編號、報刊編號、用戶編號、訂閱數(shù)量、訂閱期數(shù)、單價、總價、下訂日期)。管理員在添加訂單信息時需輸入相關(guān)訂單信息,數(shù)據(jù)庫會對訂單信息進(jìn)行判重,如果重復(fù)則插入失敗,否則插入成功;在刪除訂單信息時需輸入訂單編號查詢該訂單是否存在,如果不存在則無法刪除,修改功能同理;訂單查詢功能也需輸入訂單編號進(jìn)行查詢,如果訂單存在則會顯示訂單所有信息。(5)管理員界面:展示管理員基本信息,可實現(xiàn)增加和刪除管理員的功能,在增加或刪除管理員的時候都需輸入管理員賬號及密碼進(jìn)行驗證。(6)系統(tǒng)管理界面:介紹本系統(tǒng)基本功能。(7)退出系統(tǒng):當(dāng)前用戶可手動點擊退出按鈕來安全退出系統(tǒng)同時系統(tǒng)將自動保存本次登錄更新的所有信息。

4.2數(shù)據(jù)庫索引、存儲過程、觸發(fā)器等結(jié)構(gòu)的設(shè)計

(1)創(chuàng)建視圖:輸入用戶姓名,可以查詢該姓名所對應(yīng)的成員的訂閱日期、姓名、地址、訂閱的報刊名。CREATEVIEWviewsASSELECTCustomer.Address,OrderDetail.Odate,Diretory.Dname,Customer.CnameFROMCustomer,Diretory,OrderDetailWHEREOrderDetail.Did=Diretory.DidANDCustomer.Cid=OrderDetail.Cid;(2)創(chuàng)建存儲過程pro2:功能是向Diretory表添加一條記錄,該記錄各字段的值是在執(zhí)行存儲過程時給出的相應(yīng)參數(shù)值。USEmagazineCREATEPROCEDURE[pro2]圖2系統(tǒng)功能結(jié)構(gòu)圖(@Did[Varchar](10),@Dname[Varchar](20),@UnitPrice[Float](8),@Ifo[Varchar](50))ASINSERTINTODiretory(Did,Dname,UnitPrice,Ifo)VALUES(@Did,@Dname,@UnitPrice,@Ifo)GO(3)創(chuàng)建DELETED觸發(fā)器:當(dāng)從表中刪除報刊信息時,檢查status屬性的狀態(tài),如果為“1”則不允許刪除,否則可以刪除。(‘該報刊信息不允許刪除!’,16,1)ROLLBACKTRANSACTIONENDELSERAISERROR(‘成功刪除!’,16,1)GO(4)創(chuàng)建帶返回值的存儲過程進(jìn)行查詢:創(chuàng)建一個帶有1個輸入?yún)?shù)、3個返回值的存儲過程return1,其功能是:接受外部傳入的成員號Cid,在數(shù)據(jù)表Customer中查找成員信息,然后輸出成員的的姓名、電話和地址。USEmagazineCREATEPROCEDUREreturn1(@CidVarchar(10),@CnameVarchar(20)OUTPUT,@PhoneVarchar(15)OUTPUT,@AddressVarchar(50)OUTPUT)ASSELECT@Cname=Cname,@Phone=Phone,@Address=AddressFROMCustomerWHERECid=@Cid(5)使用T-SQL創(chuàng)建一個帶有輸入?yún)?shù),并使用集聚函數(shù)的存儲過程進(jìn)行查詢。創(chuàng)建存儲過程,分別查詢訂閱n種報刊的人員名單,要求顯示姓名。其中,n作為輸入?yún)?shù)在執(zhí)行系統(tǒng)存儲過程時給出。訂閱'+convert(varchar(5),@num)+'種報刊的成員姓名:'SELECT姓名=(selectCnamefromCustomerwhereCid=OrderDetail.Cid)fromOrderDetailGROUPBYCidHAVINGCOUNT(*)=@num測試存儲過程:。

5系統(tǒng)優(yōu)缺點

5.1優(yōu)點

(1)為確保后期軟件的實用性及可維護(hù)性,本系統(tǒng)在編寫代碼時嚴(yán)格按照框架進(jìn)行標(biāo)準(zhǔn)化設(shè)計,代碼模式一致性較強(qiáng)。(2)在建立數(shù)據(jù)庫時嚴(yán)格考慮各表之間的關(guān)聯(lián),建立合理的索引結(jié)構(gòu)和外鍵約束,刪除不必要的代碼冗余部分,實現(xiàn)數(shù)據(jù)庫管理的規(guī)范化、科學(xué)化。(3)界面友好簡單,功能方便實用,對于管理員來說易上手,真正提高管理的效率。

5.2缺點

(1)數(shù)據(jù)庫設(shè)計時實體的屬性數(shù)量不夠多,系統(tǒng)操作有局限性。(2)各表之間建立的外鍵約束不夠多,建立的索引數(shù)量較少,組合查詢功能少。(3)在連接數(shù)據(jù)庫進(jìn)行操作時,事務(wù)處理的操作較少,易造成數(shù)據(jù)操作失誤。(4)系統(tǒng)在登錄界面并未為普通用戶設(shè)置登錄接口,因此普通用戶無法自行登錄系統(tǒng)查詢信息,這雖然保護(hù)了系統(tǒng)的安全性和統(tǒng)一性,但缺少了用戶自行查詢和訂閱的模塊,損失了系統(tǒng)的普及性,有利有弊。

6結(jié)束語

本系統(tǒng)是基于JAVA和SQL2014開發(fā)的新型報刊訂閱管理系統(tǒng),該系統(tǒng)為管理員提供了報刊管理、訂單管理、用戶管理、賬號管理等功能,通過SQLSERVER2014數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的操作和存儲,極大地便利了管理員對于報刊訂閱的管理,界面友好實用,提高了報刊訂閱管理的效率。

作者:黃子豪 張舒 馬兆婷 單位:山東科技大學(xué)