摘要:該文利用面向?qū)ο蟪绦蛟O(shè)計語言,針對大學(xué)圖書館自習(xí)室中的座位預(yù)定研究一個解決方案,同時完成系統(tǒng)的設(shè)計與實現(xiàn)。文章首先闡述了開發(fā)大學(xué)圖書館座位預(yù)定系統(tǒng)的現(xiàn)實背景和意義,然后根據(jù)具體問題進(jìn)行需求分析,得出該系統(tǒng)具體的功能點(diǎn),最后設(shè)計該系統(tǒng)相應(yīng)的數(shù)據(jù)表以及各個數(shù)據(jù)表之間的關(guān)聯(lián)。
關(guān)鍵詞:大學(xué)圖書館;座位預(yù)訂;數(shù)據(jù)表
中圖分類號:TP311 ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)32-0070-02
大學(xué)圖書館經(jīng)常出現(xiàn)占座現(xiàn)象,這使得本來就緊缺的自習(xí)室座位更加捉襟見肘。為了最大程度地減少占座現(xiàn)象,緩解自習(xí)室座位緊張問題,計劃設(shè)計開發(fā)一款大學(xué)圖書館座位預(yù)定系統(tǒng),高效地安排和管理有限的自習(xí)室座位資源,讓來圖書館的同學(xué)有座位自習(xí),讓長時間離開圖書館的同學(xué)釋放座位資源,盡可能提高圖書館內(nèi)自習(xí)室座位的利用率。本文將基于B/S架構(gòu)來實現(xiàn)大學(xué)圖書館座位預(yù)定系統(tǒng),采用Java作為編程語言,將Tomcat服務(wù)器作為應(yīng)用容器,采用MySQL數(shù)據(jù)庫,并使用Maven進(jìn)行代碼工程管理。
1 系統(tǒng)開發(fā)背景與意義
大學(xué)圖書館不僅為學(xué)生們提供圖書借閱的服務(wù),還有一個非常大的功能就是給學(xué)校學(xué)生提供自習(xí)的場地。但是畢竟圖書館自習(xí)室的座位有限,平時還能勉強(qiáng)維持,一旦到了期末前的復(fù)習(xí)階段,圖書館自習(xí)室座位根本不能滿足需求。但是仔細(xì)查看發(fā)現(xiàn),其實很多位置被有些學(xué)生的物品給占座了,使得到了圖書館的同學(xué)沒有座位,但是卻有很多座位光有物品人卻不在。針對這個問題,座位預(yù)約就是一個很好的解決方案。學(xué)生要來自習(xí)室自習(xí),先預(yù)約,然后在預(yù)約好的指定的時間段內(nèi)來自習(xí),到時間就離開。如果預(yù)約不來即視為違約,這樣會對以后的預(yù)約造成影響,如果次數(shù)較多甚至可能導(dǎo)致以后不能預(yù)約。這種方式從某種程度可以緩解自習(xí)室座位緊張問題,但是卻給圖書館工作人員帶來極大的壓力和強(qiáng)度,也會出現(xiàn)記錄錯誤而導(dǎo)致預(yù)約沖突等問題。所以,為了解決這個問題,本文開發(fā)一套大學(xué)圖書館座位預(yù)定系統(tǒng),可以對自習(xí)室座位進(jìn)行預(yù)約,還可以對座位使用情況進(jìn)行統(tǒng)計分析,通過信息化的手段對圖書館自習(xí)室的座位進(jìn)行統(tǒng)籌管理[1]。
2 相關(guān)技術(shù)
2.1 Java開發(fā)語言
Java是當(dāng)下非常流行的一種編程語言[2]。越來越多的企業(yè)和項目選擇使用Java,因為它功能更加強(qiáng)大并且更加容易。由于Java語言獨(dú)有的特點(diǎn)加上其簡明嚴(yán)謹(jǐn)?shù)慕Y(jié)構(gòu)及簡潔的語法編寫,使得它在各項服務(wù)器應(yīng)用程序的開發(fā)中都占有優(yōu)勢,因此Java已經(jīng)成為IT產(chǎn)業(yè)中最常用的開發(fā)語言之一[3]。
2.2 MySQL數(shù)據(jù)庫
MySQL是當(dāng)下非常流行的一款數(shù)據(jù)庫管理系統(tǒng)[4]。MySQL有一個非常大的優(yōu)勢就是它是開源軟件,正是由于它的開源特性使得MySQL成本很低,因此對于那些成本預(yù)算有限的項目來說,MySQL會成為它們的首選。
2.3 Tomcat 服務(wù)器
Tomcat是一個非常流行的Web 應(yīng)用服務(wù)器,該服務(wù)器屬于輕量級并且它也是開源軟件,因此Tomcat在中小型系統(tǒng)的設(shè)計與實現(xiàn)中非常受歡迎,并且常常成為這些系統(tǒng)的首選服務(wù)器。本項目屬于小型系統(tǒng),所以選擇Tomcat 服務(wù)器作為應(yīng)用容器。
2.4 Maven
Maven是一個簡單、易用的項目管理工具,目前許多項目都會選擇使用Maven進(jìn)行項目管理和程序構(gòu)建。使用Maven進(jìn)行項目構(gòu)建非常簡單,只需要簡單的Maven腳本即可。因此,很多項目開發(fā)人員更傾向于使用Maven來進(jìn)行項目管理,因為這樣可以大大簡化構(gòu)建復(fù)雜度,降低程序員管理代碼的成本。
3 模塊設(shè)計
結(jié)合大學(xué)圖書館的實際需求,通過分析和討論,可以將本系統(tǒng)分為5大模塊。這5個模塊以及每個模塊里的功能點(diǎn)如圖1所示。下面,我們將針對每個模塊的功能進(jìn)行詳細(xì)的說明。
3.1 登錄注冊模塊
此模塊是系統(tǒng)的入口,所有使用該系統(tǒng)的用戶都需要由這個模塊進(jìn)入系統(tǒng)。如圖1所示,該模塊有4個功能。如果首次使用該系統(tǒng),要先注冊。注冊內(nèi)容是學(xué)生在校的一些個人信息,這些信息需要和學(xué)校教務(wù)系統(tǒng)分配的學(xué)號等信息相吻合,例如專業(yè)、班級、學(xué)號、姓名、手機(jī)號、密碼等。注冊成功后即可登錄使用系統(tǒng)。登錄后,用戶可根據(jù)需要修改密碼。如果出現(xiàn)忘記密碼的情況,可以根據(jù)學(xué)號和手機(jī)號進(jìn)行密碼找回,系統(tǒng)會發(fā)送密碼到相應(yīng)的手機(jī)號上。
3.2 座位管理模塊
如圖1所示,該模塊有6個功能。學(xué)生登錄成功后可以進(jìn)入座位管理模塊,然后通過預(yù)約座位功能預(yù)約座位,可以預(yù)約座位的地點(diǎn)和時間段,一個學(xué)生同一個時間段只能預(yù)約一個座位。同學(xué)在預(yù)約操作完成后,還可以利用查詢預(yù)約狀態(tài)功能查看自己是否預(yù)約成功。對于預(yù)約成功的座位,如果在規(guī)定時間內(nèi)一直沒有人過來學(xué)習(xí),管理員可以認(rèn)定這是占座行為,將之踢出,并記違約一次。如果學(xué)生有事情需要短暫離開,可以標(biāo)記為暫時離開,回到座位后再標(biāo)記為回到座位。如果長時間沒有回到座位,管理員可以把該學(xué)生踢出。座位預(yù)約次數(shù)和時長會生成相應(yīng)的積分,如果正常來學(xué)習(xí),系統(tǒng)則會把相應(yīng)的積分給到學(xué)生;如果學(xué)生預(yù)約座位不來,則不僅不會給積分,還會倒扣積分。
3.3 學(xué)生管理模塊
如圖1所示,該模塊有3個功能。學(xué)生注冊完成后就會生成學(xué)生的對應(yīng)信息,學(xué)生可以自行修改相應(yīng)信息,比如昵稱、頭像等,但是學(xué)號、姓名、專業(yè)、班級等信息不能隨意修改。如果該生已離校,那么管理員可以刪除該生信息。由于預(yù)約座位并學(xué)習(xí)可以有積分,所以學(xué)生可以在這個模塊中利用查詢積分功能查看自己的積分。積分高的同學(xué)在每年的獎學(xué)金評定中可以有額外加分。當(dāng)然,這個規(guī)則是可以實現(xiàn)定制化,不同的學(xué)??梢愿鶕?jù)自己的實際情況制定符合自己要求的規(guī)則。例如,可以制定規(guī)則如表1所示。當(dāng)然,管理員有權(quán)對一些異常情況進(jìn)行判斷和審核,如果出現(xiàn)其他違規(guī)現(xiàn)象,可以取消當(dāng)次的積分[5]。
3.4 信息管理模塊
如圖1所示,該模塊有7個功能。假如圖書館因為特別原因需要調(diào)整開閉館時間,或者有其他事項需要公布,管理員可以通過發(fā)布公告功能發(fā)布相關(guān)公告。新公告發(fā)布之后,學(xué)生登錄后主界面就會彈出最新的公告,學(xué)生可以通過查看公告功能查看對應(yīng)的公告。系統(tǒng)還提供了對公告進(jìn)行修改和刪除的功能,管理員利用此功能對公告進(jìn)行修改或者刪除。學(xué)生如果遇到問題,也可以通過學(xué)生申請功能向圖書館管理員提出申請,比如遇到椅子壞了或者燈壞了,可以通過學(xué)生申請功能向管理員發(fā)布申請;管理員通過查看申請功能查看對應(yīng)的申請,如果檢查核實后,可以通過審批申請功能進(jìn)行審批,然后對相應(yīng)的問題進(jìn)行處理。
3.5 數(shù)據(jù)分析模塊
數(shù)據(jù)分析模塊包括4個功能:座位數(shù)量統(tǒng)計、在線人數(shù)統(tǒng)計、預(yù)約比例統(tǒng)計和積分排名統(tǒng)計。管理員和學(xué)生可以通過座位數(shù)量統(tǒng)計知道圖書館自習(xí)室可用的座位數(shù)量,也可以通過在線人數(shù)統(tǒng)計查看當(dāng)前在線的人數(shù),以及預(yù)約比例統(tǒng)計查看已經(jīng)預(yù)約的座位占總座位數(shù)的比例。系統(tǒng)每天夜間會自動更新積分并重新排名,學(xué)生可以次日查看最新的積分和排名情況。
4 數(shù)據(jù)庫設(shè)計
大學(xué)圖書館座位預(yù)定系統(tǒng)數(shù)據(jù)庫設(shè)計其實就是對一些數(shù)據(jù)表的設(shè)計,在數(shù)據(jù)表的設(shè)計過程中,應(yīng)該保證數(shù)據(jù)表盡可能獨(dú)立,并盡可能降低表與表之間的依賴性。該系統(tǒng)的數(shù)據(jù)表設(shè)計如下:
1)學(xué)生信息表。該表保存已注冊的學(xué)生信息,具體如表2所示。
2)學(xué)生狀態(tài)信息表。該表保存已注冊學(xué)生的登錄狀態(tài),具體如表3所示。
3)管理員信息表。該表保存管理員的信息,具體如表4所示。
4)自習(xí)室信息表。該表保存自習(xí)室座位的相關(guān)信息,具體如表5所示。
5)公告信息表。該表保存管理員發(fā)布的公告信息,具體如圖6所示。
6)申請信息表。該表保存學(xué)生的申請信息和相應(yīng)的審核信息,具體如表7所示。
5 結(jié)束語
大學(xué)圖書館座位預(yù)定系統(tǒng)基于B/S架構(gòu),不需要安裝客戶端,直接利用瀏覽器即可登錄使用。這個系統(tǒng)不僅可以解決大學(xué)校園圖書館座位緊張的問題,還可以減輕圖書館工作人員關(guān)于座位安排的工作量,具有非常積極的意義。
參考文獻(xiàn):
[1] 何奇典.高校圖書館社會服務(wù)水平提升研究[D].濟(jì)南:山東財經(jīng)大學(xué),2018.
[2] 耿祥義,張躍平.Java大學(xué)實用教程[M].4版.北京:電子工業(yè)出版社.
[3] 張桂珠,劉麗,陳愛國.Java面向?qū)ο蟪绦蛟O(shè)計[M].2版.北京:北京郵電大學(xué)出版社.
[4] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].5版.北京:高等教育出版社,2014.
[5] 徐瓊,張穎,陳壽祺,等.基于云技術(shù)的圖書館微信座位管理系統(tǒng)的設(shè)計與實現(xiàn)[J].圖書情報導(dǎo)刊,2017,2(12):32-37.
【通聯(lián)編輯:謝媛媛】
收稿日期:2021-06-25
基金項目:多波長陣列可調(diào)諧激光器的單片集成線寬壓窄技術(shù)研究(項目編號:62004094)
作者簡介:陳愷(1988—),男,江蘇揚(yáng)州人,助教,中級工程師,碩士,研究方向為移動通信技術(shù)。