

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 本科畢業(yè)論文</b></p><p><b> ?。?0 屆)</b></p><p> 實驗室預(yù)約管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b> 摘要</b></p><p> 《實驗室預(yù)約管理系統(tǒng)》是采用JavaWeb開發(fā)的一個開放實驗
2、室預(yù)約系統(tǒng)。本系統(tǒng)是針對目前實驗室手工管理效率低下,缺乏安全性、可控性等缺點(diǎn),以校園網(wǎng)為依托,采用科學(xué)、高效的教學(xué)管理方式,使學(xué)校的教學(xué)資源得到充分的利用。本系統(tǒng)主要實現(xiàn)了教師根據(jù)實際教學(xué)情況預(yù)約實驗室、查看預(yù)約結(jié)果,學(xué)生查詢實驗室教學(xué)安排,實驗室管理員對實驗室的管理、用戶信息的管理和系統(tǒng)消息發(fā)布等功能,同時系統(tǒng)提供了簡單友好的用戶界面,并通過身份驗證機(jī)制實現(xiàn)了系統(tǒng)的安全性??紤]到可能出現(xiàn)的教師同時預(yù)約實驗室的情況,本系統(tǒng)采用了預(yù)約時避
3、免沖突、受理時解決沖突的方法,盡最大努力實現(xiàn)實驗室資源的優(yōu)化配置。系統(tǒng)具有網(wǎng)絡(luò)化、界面友好、操作簡單、功能強(qiáng)大、管理方便等優(yōu)點(diǎn),能夠完全按照用戶的需要,穩(wěn)定、安全快速地運(yùn)行于校園局域網(wǎng)之上。該系統(tǒng)操作簡單、界面良好、具有很好的使用價值。</p><p> 關(guān)鍵詞:實驗室;預(yù)約和查詢;信息管理</p><p><b> Abstract</b></p>
4、<p> The lab reservation management system was developed by using JavaWeb an open laboratory reservation system. This system is based on the current lab manual management inefficiency, lack of security, controllab
5、ility and other defects, which is based on campus network, USES the scientific and efficient way of teaching management, so the school teaching resources can be fully utilized. This system mainly realizes the teacher app
6、ointment laboratory according to the actual teaching situation, to check</p><p> Keywords: Laboratory; Make an appointment and query; Information management</p><p><b> 目錄</b></p
7、><p><b> 1.引言1</b></p><p> 1.1研究背景及意義1</p><p> 1.2國內(nèi)外發(fā)展現(xiàn)狀1</p><p> 1.3開發(fā)環(huán)境1</p><p> 2系統(tǒng)開發(fā)和環(huán)境介紹2</p><p> 2.1基本環(huán)境2</p&
8、gt;<p> 2.2設(shè)計模式選定2</p><p> 2.3數(shù)據(jù)庫介紹2</p><p> 2.4安裝TOMCAT2</p><p> 2.5 Jsp簡介3</p><p><b> 3.需求分析5</b></p><p> 3.1開發(fā)背景5</p
9、><p> 3.2開發(fā)目的5</p><p> 3.3需要實現(xiàn)的功能及功能模塊5</p><p> 3.3.1 用戶注冊5</p><p> 3.3.2主要的設(shè)計理念5</p><p> 3.3.3用戶登錄5</p><p> 3.4模塊功能需求分析6</p>
10、<p> 3.4.1 功能描述6</p><p> 3.4.2系統(tǒng)功能圖6</p><p> 3.4.3 流程分析7</p><p> 3.4.4系統(tǒng)流程圖(圖3-2)7</p><p><b> 4.設(shè)計與實現(xiàn)8</b></p><p> 4.1模塊功能界面8
11、</p><p> 4.1.1 登錄界面8</p><p> 4.1.2 普通學(xué)生用戶界面9</p><p> 4.1.3 預(yù)約空閑實驗資源9</p><p> 4.1.4 管理員界面12</p><p> 5.系統(tǒng)設(shè)計與實現(xiàn)15</p><p> 5.1 部分功能界面代碼
12、15</p><p> 5.1.1 數(shù)據(jù)庫建表15</p><p> 5.1.2 用戶注冊15</p><p> 5.1.3 權(quán)限判斷17</p><p> 5.1.4 預(yù)約功能17</p><p> 5.1.5 刪除預(yù)約信息18</p><p> 5.1.6 管理員修改
13、實驗資源信息19</p><p><b> 6.總結(jié)20</b></p><p><b> 參考文獻(xiàn)21</b></p><p><b> 致謝22</b></p><p><b> 1.引言</b></p><p>
14、; 1.1研究背景及意義</p><p> IT技術(shù)的發(fā)展使教學(xué)的管理也進(jìn)入了一個暫新的階段,人類進(jìn)入了信息高速發(fā)展的時代,信息技術(shù)成為一門新的產(chǎn)業(yè)[1]。教育信息化理念的出臺,使教務(wù)管理系統(tǒng)已開始設(shè)計并應(yīng)用于教學(xué)管理中。高校畢業(yè)生數(shù)量急劇增加,有關(guān)高校畢業(yè)生各種信息量也成倍增長,高校畢業(yè)生信息的統(tǒng)計跟蹤工作量與工作難度亦在增長。</p><p> 使用計算機(jī)對高校畢業(yè)生信息進(jìn)行統(tǒng)計
15、跟蹤,具有手工管理無法比擬的優(yōu)點(diǎn)。使用計算機(jī)進(jìn)行管理具有查找方便、數(shù)據(jù)處理快捷、成本低等優(yōu)點(diǎn)。這些優(yōu)點(diǎn)能夠極大地提高高校畢業(yè)生信息管理的效率,也是高校的科學(xué)化、正規(guī)化管理的重要條件。</p><p> 在傳統(tǒng)模式下簡單利用計算機(jī)對高校實驗室信息進(jìn)行統(tǒng)計,存在著較多的缺點(diǎn),這給高校管理者對實驗室的信息管理帶來了很大困難,嚴(yán)重影響了教育工作者的工作效率。隨著科學(xué)技術(shù)的不斷發(fā)展,計算機(jī)科學(xué)日漸成熟,使用日趨成熟的計算
16、機(jī)技術(shù)代替?zhèn)鹘y(tǒng)的人工模式,來實現(xiàn)高校畢業(yè)生的現(xiàn)代化管理,其強(qiáng)大的功能已經(jīng)為人們所深刻認(rèn)知,計算機(jī)技術(shù)已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用[2]。</p><p> 1.2國內(nèi)外發(fā)展現(xiàn)狀</p><p> 計算機(jī)在管理中的應(yīng)用開始于1954年,當(dāng)時美國首先用計算機(jī)處理工資單。40多年來,計算機(jī)在處理管理信息方面發(fā)展迅速。例如,美國在財務(wù)會計上90%的工作由計算機(jī)完成;物資管理
17、中80—100%的信息處理由計算機(jī)完成;計劃管理中是80—90%。我國在全國范圍內(nèi)推廣計算機(jī)在管理中的應(yīng)用,是在70年代末開始的,雖然起步較晚,近幾年發(fā)展卻較快,特別是微型計算機(jī)的出現(xiàn)和普及為信息處理提供了物美價廉的手段,對于推動我國管理信息處理的現(xiàn)代化起了重要的作用。[3]</p><p> 傳統(tǒng)紙媒介管理的實驗教學(xué)和實驗室管理信息難于共享匯總,其統(tǒng)計數(shù)據(jù)正確性也難以考證。存在著較多的缺點(diǎn)。實驗教學(xué)作為現(xiàn)在學(xué)
18、校教學(xué)的一種重要手段,各個學(xué)校的實驗室建設(shè)也是鱗次櫛比的落成。面對日益增多的實驗教學(xué),以往的古老的人工管理和人工預(yù)約等模式也受到各方面的沖擊,實驗室管理系統(tǒng)也應(yīng)運(yùn)而生。實驗室管理系統(tǒng)是為了配合高校實驗教學(xué)新理念,結(jié)合眾多高校一線教師和實驗室管理專家經(jīng)驗,以及開放實驗室的管理特點(diǎn)與實際情況,運(yùn)用計算機(jī)技術(shù),特別是現(xiàn)代網(wǎng)絡(luò)技術(shù),經(jīng)過長期實踐而研發(fā)的集實驗室管理、實驗教學(xué)管理、儀器設(shè)備管理、低值品與耗材管理、實驗室建設(shè)與設(shè)備采購、實驗室評估與
19、評教、實踐管理、數(shù)據(jù)與報表等相關(guān)功能的綜合性實驗室管理系統(tǒng)。</p><p><b> 1.3開發(fā)環(huán)境</b></p><p> 運(yùn)行環(huán)境硬件:P4以上計算機(jī),256M內(nèi)存以上。</p><p> 軟件要求:Windows98以上,Mysql5.0以上,JDK1.4以上,Tomcat6.0。</p><p> 開
20、發(fā)環(huán)境硬件:P4以上計算機(jī),256M內(nèi)存以上。</p><p> 軟件:MySQL5.0,JDK1.5以上,Tomcat6.0。</p><p> 2系統(tǒng)開發(fā)和環(huán)境介紹</p><p><b> 2.1基本環(huán)境</b></p><p> 以Java語言為基本開發(fā)語言,通過運(yùn)用JavaWeb技術(shù),Tomcat服務(wù)器
21、等相關(guān)知識,利用java語言的面向?qū)ο蟮奶匦? 設(shè)計一個用戶管理方案,模擬一個實驗室預(yù)約管理系統(tǒng)。</p><p><b> 2.2設(shè)計模式選定</b></p><p> 目前,網(wǎng)絡(luò)應(yīng)用軟件運(yùn)行的模式主要有兩類:Client/Server模式和Browser/Web模式。前者主要的缺點(diǎn)是維護(hù)、升級較麻煩,后者是近幾年伴隨Internet迅速發(fā)展起來的一種技術(shù),它與
22、客戶/服務(wù)器方式類似,客戶端是一個標(biāo)準(zhǔn)的瀏覽器,服務(wù)器端是Web Server,而Web Server與數(shù)據(jù)庫和應(yīng)用服務(wù)器的緊密結(jié)合(如圖2.1所示),使得這種模式的應(yīng)用范圍不斷擴(kuò)大,它已不僅僅用于網(wǎng)上查詢,有很多部門的業(yè)務(wù)系統(tǒng)、企業(yè)的MIS系統(tǒng)紛紛采用這種模式,它的主要優(yōu)點(diǎn)是便于擴(kuò)充應(yīng)用、升級維護(hù)簡便。[4]</p><p> 另外,畢業(yè)統(tǒng)計跟蹤模塊也將不斷的更新,同時軟件產(chǎn)品本身就要經(jīng)過一個不斷自我完善的過
23、程。</p><p> 基于上述考慮,用Browser/Web模式來設(shè)計管理系統(tǒng)比較合適,服務(wù)器端本模塊采用MySQL數(shù)據(jù)庫系統(tǒng)和J2EE框架來構(gòu)成畢業(yè)統(tǒng)計跟蹤模塊;客戶端采用瀏覽起來完成。</p><p> B/S結(jié)構(gòu)具備了很好的移動性,確保使用者能以最佳的方式來使用本模塊系統(tǒng),使用者只需要使用瀏覽器就可以在任何地方通過登錄確認(rèn)后就可以進(jìn)行相關(guān)操作,極大地發(fā)揮了B/S結(jié)構(gòu)的優(yōu)點(diǎn)。&l
24、t;/p><p> 圖2-1 三層體系結(jié)構(gòu)</p><p><b> 2.3數(shù)據(jù)庫介紹</b></p><p> MySQL是一個精巧的SQL數(shù)據(jù)庫管理系統(tǒng)。由于它的強(qiáng)大功能、靈活性、豐富的應(yīng)用編程接口(API)以及精巧的系統(tǒng)結(jié)構(gòu),受到了廣大自由軟件愛好者甚至是商業(yè)軟件用戶的青睞,特別是與Apache和PHP/PERL結(jié)合,為建立基于數(shù)據(jù)庫的
25、動態(tài)網(wǎng)站提供了強(qiáng)大動力。MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器。SQL(結(jié)構(gòu)化查詢語言)是世界上最流行的和標(biāo)準(zhǔn)化的數(shù)據(jù)庫語言。MySQL是以一個客戶機(jī)/服務(wù)器結(jié)構(gòu)的實現(xiàn),它由一個服務(wù)器守護(hù)程序MySQL和很多不同的客戶程序和庫組成[5]。</p><p> 2.4安裝TOMCAT</p><p> 由于使用的操作系統(tǒng)是Windows XP,需要安裝 TOMCAT6.0。
26、在安裝TOMCAT之前,首先要安裝JDK。</p><p> 2.4.1配置TOMCAT</p><p> 1.將mysqldriver.jar,tools.jar,serlet-api.jar,復(fù)制到%tomcat_home%\common\lib下環(huán)境變量設(shè)置:</p><p> (1). JAVA_HOME jdk的路徑:C:\Program Fi
27、les\Java\jdk1.5.0_06</p><p> (2).mysql_home mysql的路徑:D:\Program Files\mysql</p><p> (3). CATALINA_HOME tomcat的路徑:D:\Program Files\apache-tomcat-6.0.18</p><p> (4).將;%java_hom
28、e%\bin;%mysql_home%\bin;%tomcat_home%\bin加入到PATH中;</p><p> (5). .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar加入到CLASSPATH中</p><p> 圖2.1 設(shè)置環(huán)境變量&l
29、t;/p><p> 圖2-2.測試TOMCAT的安裝</p><p> 接著可以啟動tomcat,在IE中訪問http://localhost:8080,如果看到tomcat的迎頁面的話說明安裝成功了。 </p><p><b> 2.5 Jsp簡介</b></p><p> JSP(Java Server Page
30、s)是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件(*.jsp)。[6] </p><p> 用JSP開發(fā)的Web應(yīng)用是跨平臺的,即能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。JSP技術(shù)使
31、用Java編程語言編寫類XML的tags和scriptlets,來封裝產(chǎn)生動態(tài)網(wǎng)頁的處理邏輯。網(wǎng)頁還能通過tags和scriptlets訪問存在于服務(wù)端的資源的應(yīng)用邏輯。JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計和顯示分離,支持可重用的基于組件的設(shè)計,使基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。 </p><p> Web服務(wù)器在遇到訪問JSP網(wǎng)頁的請求時,首先執(zhí)行其中的程序段,然后將執(zhí)行結(jié)果連同JSP文件中的HTML
32、代碼一起返回給客戶。插入的Java程序段可以操作數(shù)據(jù)庫、重新定向網(wǎng)頁等,以實現(xiàn)建立動態(tài)網(wǎng)頁所需要的功能。 JSP與Java Servlet一樣,是在服務(wù)器端執(zhí)行的,通常返回該客戶端的就是一個HTML文本,因此客戶端只要有瀏覽器就能瀏覽。</p><p> JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁面被客戶端請求以后對這些Java代碼進(jìn)行處理,然后將生成的HTML頁面返回給客戶端的
33、瀏覽器。Java Servlet 是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要Java Servlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡單易用,完全的面向?qū)ο?,具有平臺無關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。</p><p> 幾乎所有平臺都支持Java,JSP+JavaBeans幾乎可以在所有平臺下通行無阻。從一個平臺移植到另外一個平臺,JSP和JavaBeans甚至不用重新編譯
34、,因為Java字節(jié)碼都是標(biāo)準(zhǔn)的與平臺無關(guān)的。 </p><p> 數(shù)據(jù)庫連接:Java中連接數(shù)據(jù)庫的技術(shù)是JDBC,Java程序通過JDBC驅(qū)動程序與數(shù)據(jù)庫相連,執(zhí)行查詢、提取數(shù)據(jù)等操作。Sun公司還開發(fā)了JDBC-ODBC bridge,利用此技術(shù)Java程序可以訪問帶有ODBC驅(qū)動程序的數(shù)據(jù)庫,目前大多數(shù)數(shù)據(jù)庫系統(tǒng)都帶有ODBC驅(qū)動程序,所以Java程序能訪問諸如Oracle、Sybase、MS S
35、QL Server和MS Access等數(shù)據(jù)庫。 </p><p> 此外,通過開發(fā)標(biāo)識庫,JSP技術(shù)可以進(jìn)一步擴(kuò)展。第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來進(jìn)行工作。 </p><p> JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且能擴(kuò)展到支持企業(yè)級
36、的分布式應(yīng)用中。作為采用Java技術(shù)家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。 由于JSP頁面的內(nèi)置腳本語言是基于Java的,而且所有的JSP頁面都被編譯成為Java Servlets,所以JSP頁面具有Java技術(shù)的所有好處,包括健壯的存儲管理和安全性。作為Java平臺的一部分,JSP擁有Java編程語言“一次編寫,各處運(yùn)行”的特點(diǎn)。</p><p
37、><b> 3.需求分析</b></p><p><b> 3.1開發(fā)背景</b></p><p> 實驗教學(xué)作為現(xiàn)在學(xué)校教學(xué)的一種重要手段,各個學(xué)校的實驗室建設(shè)也是鱗次櫛比的落成。面對日益增多的實驗教學(xué),以往的古老的人工管理和人工預(yù)約等模式也受到各方面的沖擊,實驗室管理系統(tǒng)也應(yīng)運(yùn)而生。實驗室管理系統(tǒng)是為了配合高校實驗教學(xué)新理念,結(jié)合
38、眾多高校一線教師和實驗室管理專家經(jīng)驗,以及開放實驗室的管理特點(diǎn)與實際情況,運(yùn)用計算機(jī)技術(shù),特別是現(xiàn)代網(wǎng)絡(luò)技術(shù),經(jīng)過長期實踐而研發(fā)的集實驗室管理、實驗教學(xué)管理、儀器設(shè)備管理、低值品與耗材管理、實驗室建設(shè)與設(shè)備采購、實驗室評估與評教、實踐管理、數(shù)據(jù)與報表等相關(guān)功能的綜合性實驗室管理系統(tǒng)。</p><p><b> 3.2開發(fā)目的</b></p><p> 通過使用實驗
39、室管理系統(tǒng)實現(xiàn)高校實驗室、實驗儀器與實驗耗材管理的規(guī)范化、信息化;提高實驗教學(xué)特別是開放實驗教學(xué)的管理水平與服務(wù)水平;為實驗室評估、實驗室建設(shè)及實驗教學(xué)質(zhì)量管理等決策提供數(shù)據(jù)支持;智能生成每學(xué)年教育部數(shù)據(jù)報表,協(xié)助高校輕而易舉完成數(shù)據(jù)上報工作。</p><p> 3.3需要實現(xiàn)的功能及功能模塊</p><p> 3.3.1 用戶注冊</p><p> 用戶登錄
40、是一個網(wǎng)絡(luò)系統(tǒng)必需的功能之一,用戶想要使用系統(tǒng)提供的功能,就必須先擁有一個帳戶,因此要到系統(tǒng)中注冊一個帳戶,用戶在注冊時系統(tǒng)要求用戶輸入注冊信息,實驗室預(yù)約管理系統(tǒng)包括學(xué)號,用戶名,密碼,確認(rèn)密碼,專業(yè)班級等,如果用戶帳戶已經(jīng)存在或者用戶輸入的信息格式不正確系統(tǒng)將向用戶顯示相應(yīng)錯誤的提示信息,并提示用戶使用其他的用戶帳戶或者輸入正確的信息,注冊完以后,可以進(jìn)行登錄。</p><p> 3.3.2主要的設(shè)計理念&
41、lt;/p><p> 按照高校研究生教學(xué)管理平臺系統(tǒng)設(shè)計要求,本模塊依照如下主導(dǎo)設(shè)計思想進(jìn)行模塊設(shè)計:</p><p> 模擬一個簡單的信息檢索系統(tǒng),通過該系統(tǒng)使教務(wù)人員可以按照特定的條件方便查詢畢業(yè)生的基本信息,錄取類別信息,答辯信息,交費(fèi)信息,畢業(yè)信息,就業(yè)信息和跟蹤信息,從而根據(jù)情況進(jìn)行分析反饋。</p><p><b> 3.3.3用戶登錄<
42、;/b></p><p> 利用注冊的帳戶登錄到系統(tǒng),登錄頁面要求用戶輸入用戶帳戶和密碼。在輸入用戶帳戶和密碼之后,系統(tǒng)將驗證用戶帳戶和密碼是否正確并根據(jù)權(quán)限判斷是普通用戶或者是管理員登陸,如果驗證成功,就使用戶處于登錄狀態(tài)。否則,系統(tǒng)顯示用戶帳戶或密碼錯誤的提示信息。</p><p> 3.4模塊功能需求分析</p><p> 3.4.1 功能描述&l
43、t;/p><p> 設(shè)計實驗室管理系統(tǒng)的指導(dǎo)思想是:設(shè)計一套基于校園網(wǎng)的開放實驗室管理軟件,實現(xiàn)化學(xué)實驗教學(xué)和管理系統(tǒng)的課程安排、儀器設(shè)備管理、網(wǎng)上預(yù)約、實驗室安排查詢,系統(tǒng)管理員進(jìn)行實驗資源管理、信息發(fā)布等功能??梢酝瓿蓪Ω黝愋畔⒌臑g覽、查詢、添加、刪除、修改等功能,數(shù)據(jù)之間形成良好的關(guān)聯(lián)性。</p><p> 3.4.2系統(tǒng)功能圖</p><p> 本系統(tǒng)的功
44、能圖如圖3-1所示:</p><p> 圖3-1 功能模塊圖解</p><p> 3.4.3 流程分析</p><p> 我們已經(jīng)了解了本模塊的各功能模塊劃分,以及各功能模塊之間的關(guān)系,這是該模塊總體設(shè)計的重要組成部分。如果要對整個模塊形成一個完整而全面的認(rèn)識,還需要進(jìn)行模塊流程分析。所謂模塊流程就是用戶在使用模塊時的工作過程。</p><
45、p> 本模塊的流程可描述如下:用戶進(jìn)入登錄界面,輸入用戶名和密碼,通過判斷權(quán)限判斷是學(xué)生登錄或管理員登錄。如果驗證失敗則轉(zhuǎn)入登錄失敗界面,如果驗證通過則進(jìn)入相應(yīng)界面;學(xué)生用戶可以查看已經(jīng)預(yù)約的實驗資源包括實驗室、實驗儀器等或者對處于空閑狀態(tài)的實驗資源進(jìn)行預(yù)約。管理員可以管理實驗資源,增加、修改或者刪除,查看已經(jīng)預(yù)約的實驗信息或者對已經(jīng)用過的實驗信息進(jìn)行刪除以供其他人使用,管理員還可以查看空閑的實驗儀器。</p>&
46、lt;p> 3.4.4系統(tǒng)流程圖(圖3-2)</p><p> 圖 3-2 系統(tǒng)流程圖</p><p><b> 4.設(shè)計與實現(xiàn)</b></p><p><b> 4.1模塊功能界面</b></p><p> 4.1.1 登錄界面</p><p> 該界面的
47、功能是實現(xiàn)用戶的登錄,其界面效果如圖4-1所示。用戶輸入用戶名和密碼,如果點(diǎn)擊“重置”按鈕可重新輸入用戶名和密碼;根據(jù)何種身份如果選擇學(xué)生或者管理員,然后點(diǎn)擊“登錄”按鈕,可由模塊后臺判斷用戶名密碼是否正確,如果正確,進(jìn)入相應(yīng)登錄成功界面,如果不正確,跳轉(zhuǎn)到錯誤界面,其界面效果如圖4-2所示。</p><p><b> 圖4-1登錄界面</b></p><p>
48、圖4-2 登錄失敗界面</p><p> 4.1.2 普通學(xué)生用戶界面</p><p> 普通學(xué)生用戶登錄成功后,進(jìn)入學(xué)生界面,其界面效果如圖4-3所示。該界面中用戶查看已經(jīng)預(yù)約的實驗資源包括實驗室、實驗儀器等或者對處于空閑狀態(tài)的實驗資源進(jìn)行預(yù)約,點(diǎn)擊退出可返回登錄界面。</p><p> 圖4-3 普通學(xué)生用戶界面</p><p>
49、 4.1.3 預(yù)約空閑實驗資源</p><p> 用戶在主界面“實驗資源空閑列表”中找到需要預(yù)約的實驗資源點(diǎn)擊最后的藍(lán)色預(yù)約,可進(jìn)入對應(yīng)的實驗資源預(yù)約界面,其界面效果如圖4-4所示。在該界面中,用戶可填寫需要實驗資源的數(shù)量并注明自己的班級和需要使用實驗資源的日期。檢查無誤后點(diǎn)擊“保存”</p><p> 按鈕可成功預(yù)約該實驗資源。</p><p> 圖4-4相
50、應(yīng)實驗資源預(yù)約界面</p><p> 系統(tǒng)在預(yù)約成功后自動跳轉(zhuǎn)回原實驗資源信息的界面,并自動刷新,就可看到自己預(yù)約的信息。具體見圖4-5所示。</p><p> 圖4-5 已預(yù)約信息</p><p> 學(xué)生可對需要的實驗資源進(jìn)行預(yù)約,預(yù)約是填寫需要數(shù)量,所在班級和使用時的時間。</p><p><b> 預(yù)約前:</b
51、></p><p><b> 預(yù)約:</b></p><p><b> 預(yù)約后:</b></p><p> 4.1.4 管理員界面</p><p> 管理員在登錄界面輸入相應(yīng)登錄密碼并選擇“管理員”時,可進(jìn)入管理員界面其界面效果如圖4-6所示。在該界面中,管理員可以管理實驗資源,增加、
52、修改或者刪除,查看已經(jīng)預(yù)約的實驗信息或者對已經(jīng)用過的實驗信息進(jìn)行刪除以供其他人使用,管理員還可以查看空閑的實驗儀器。點(diǎn)擊“退出”時,返回登錄界面。</p><p> 圖4-6 管理員界面</p><p> 實驗資源欄里是所有的實驗室、實驗儀器等物品的信息,管理員可根據(jù)實際情況進(jìn)行增加、修改或刪除。</p><p> 實驗資源空閑列表里是所有空閑的實驗資源信息。
53、</p><p> 實驗資源已預(yù)約列表里是所有已經(jīng)被預(yù)約的實驗資源的信息,包括實驗資源名稱,預(yù)約的數(shù)量,預(yù)約的班級和使用實驗資源時的時間。如果時間已過說明已經(jīng)使用過,該實驗資源可以重新進(jìn)去空閑狀態(tài),管理員可將該條信息刪除,該實驗資源信息自動變?yōu)榭臻e狀態(tài)并添加到實驗資源空閑列表。過程如圖所示(注意數(shù)量變化)。</p><p><b> 未刪除前:</b></p
54、><p><b> 刪除后:</b></p><p><b> 5.系統(tǒng)設(shè)計與實現(xiàn)</b></p><p> 5.1 部分功能界面代碼</p><p> 5.1.1 數(shù)據(jù)庫建表</p><p> CREATE TABLE user (</p><p&
55、gt; id int(11) NOT NULL auto_increment,</p><p> name varchar(30) NOT NULL,</p><p> password varchar(20) NOT NULL,</p><p> xuehao varchar(30) NOT NULL,</p><p> sex
56、varchar(20) NOT NULL,</p><p> yuanxi varchar(30),</p><p> zhuanye varchar(30),</p><p> role varchar(30),</p><p> PRIMARY KEY (id)</p><p><b> );
57、</b></p><p> CREATE TABLE lab (</p><p> id int(11) NOT NULL auto_increment,</p><p> name varchar(50) NOT NULL,</p><p> zhuangtai varchar(30),</p><p
58、> allshuliang int(10),</p><p> shengyushuliang int(10),</p><p> shuliang int(10),</p><p> zhuanye varchar(30),</p><p> time varchar(50),</p><p> P
59、RIMARY KEY (id)</p><p><b> );</b></p><p> 5.1.2 用戶注冊</p><p><b> <%!</b></p><p> String DBDRIVER = "com.mysql.jdbc.Driver" ;<
60、;/p><p> String DBURL = "jdbc:mysql://localhost:3306/lab?useUnicode=true&characterEncoding=GBK" ;</p><p> String DBUSER = "root" ;</p><p> String DBPASSW
61、ORD = "" ;</p><p> Connection conn = null ;</p><p> PreparedStatement pstmt = null ;</p><p> String sql = null ;</p><p> ResultSet rs = null ;</p>
62、<p><b> %></b></p><p><b> <% </b></p><p><b> try</b></p><p><b> {</b></p><p> Class.forName(DBDRIVER) ;&
63、lt;/p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</b></p><p><b> }</b></p><p><b> try</b></p
64、><p><b> {</b></p><p> conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ;</p><p><b> }//連接數(shù)據(jù)庫</b></p><p> catch(Exception e)</p&g
65、t;<p><b> {</b></p><p><b> }</b></p><p><b> try</b></p><p><b> {</b></p><p> sql = "INSERT INTO guanli
66、(name,allshuliang,shengyushuliang,zhuangtai) VALUES (?,?,?,?)" ;//操作語句</p><p> pstmt = conn.prepareStatement(sql) ;</p><p> pstmt.setString(1,mingcheng);</p><p> pstmt.setS
67、tring(2,zongshu);</p><p> pstmt.setString(3,shengyushuliang);</p><p> pstmt.setString(4,zhuangtai);</p><p> pstmt.executeUpdate() ;</p><p> response.sendRedirect(&q
68、uot;add_success.jsp");</p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</b></p><p> out.println("添加失敗?。?秒后跳轉(zhuǎn)到登陸界面??!")
69、 ;//失敗后跳轉(zhuǎn)</p><p> response.setHeader("refresh","2;URL=denglu.html") ;</p><p><b> }</b></p><p><b> try</b></p><p><b&g
70、t; {</b></p><p> pstmt.close() ;</p><p> conn.close() ;</p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</b><
71、;/p><p><b> }</b></p><p><b> %></b></p><p> 5.1.3 權(quán)限判斷</p><p><b> try</b></p><p><b> {</b></p>
72、<p> String sql = "SELECT * FROM user where xuehao=? and password=?" ;</p><p> pstmt = conn.prepareStatement(sql);</p><p> pstmt.setString(1,xuehao);</p><p> pstm
73、t.setString(2,p);</p><p> rs = pstmt.executeQuery();</p><p> while(rs.next())</p><p><b> {</b></p><p> role = rs.getInt("role");</p>&l
74、t;p> flag = true;</p><p><b> }</b></p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</b></p><p><b>
75、; }</b></p><p><b> if(flag)</b></p><p><b> {</b></p><p> if(role==5)</p><p><b> {</b></p><p> out.println(&
76、quot;管理員登陸成功!! 2秒后跳轉(zhuǎn)到管理界面!!") ;</p><p> response.setHeader("refresh","2;URL=guanli.jsp") ;</p><p><b> }</b></p><p><b> else</b>&l
77、t;/p><p><b> {</b></p><p> out.println("普通用戶登陸成功!! 2秒后跳轉(zhuǎn)到考試選擇界面??!") ;</p><p> response.setHeader("refresh","2;URL=student.jsp") ;</p>
78、<p><b> }</b></p><p><b> }</b></p><p> 5.1.4 預(yù)約功能</p><p><b> try</b></p><p><b> {</b></p><p>
79、 sql ="update guanli set shengyushuliang=? where name='"+name+"' and zhuangtai='free'";//更改剩余的數(shù)量</p><p> pstmt = conn.prepareStatement(sql) ;</p><p> pstmt
80、.setString(1,shengyu);</p><p> pstmt.executeUpdate() ;</p><p> flag2=true;</p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {&
81、lt;/b></p><p> out.println(e);</p><p><b> }</b></p><p><b> try</b></p><p><b> {</b></p><p> sql = "INSERT
82、INTO guanli (name,shuliang,zhuangtai,zhuanye,time) VALUES (?,?,?,?,?)" ;//將該預(yù)約信息插入數(shù)據(jù)庫</p><p> pstmt = conn.prepareStatement(sql) ;</p><p> pstmt.setString(1,name);</p><p>
83、pstmt.setString(2,shuliang);</p><p> pstmt.setString(3,zhuangtai);</p><p> pstmt.setString(4,zhuanye);</p><p> pstmt.setString(5,time);</p><p> pstmt.executeUpdate(
84、) ;</p><p> flag=true;</p><p><b> }</b></p><p> 5.1.5 刪除預(yù)約信息</p><p> 刪除預(yù)約信息,更改該實驗資源的剩余數(shù)量</p><p><b> try</b></p><p&g
85、t;<b> {</b></p><p> String sql1 = "SELECT * FROM guanli where name='"+name+"' and zhuangtai='free'" ;</p><p> pstmt1 = conn.prepareStatement(sq
86、l1);</p><p> rs = pstmt1.executeQuery();</p><p> while(rs.next())</p><p><b> {</b></p><p> int id2 = rs.getInt("id") ;</p><p>
87、int shengyushuliang=rs.getInt("shengyushuliang");</p><p> int a=shengyushuliang+b;</p><p> String c = Integer.toString(a);</p><p><b> try</b></p><
88、;p> {String sql2 ="update guanli set shengyushuliang=? where name='"+name+"' and zhuangtai='free'";//更改剩余數(shù)量</p><p> pstmt2 = conn.prepareStatement(sql2) ;</p>
89、;<p> pstmt2.setString(1,c);</p><p> pstmt2.executeUpdate() ;</p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</b></p>
90、<p><b> }</b></p><p> flag2=true;</p><p><b> }</b></p><p><b> try</b></p><p><b> {</b></p><p>
91、 sql = "delete from guanli where id=?";//刪除該條預(yù)約信息</p><p> pstmt = conn.prepareStatement(sql) ;</p><p> pstmt.setString(1,id);</p><p> pstmt.execute() ;</p><
92、;p> flag = true;</p><p><b> }</b></p><p> 5.1.6 管理員修改實驗資源信息</p><p><b> }</b></p><p><b> try</b></p><p><b>
93、; {</b></p><p> conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ;</p><p><b> }</b></p><p> catch(Exception e)</p><p><b> {</
94、b></p><p><b> }</b></p><p><b> try</b></p><p><b> {</b></p><p> sql ="update guanli set name=?,allshuliang=? where id=?&
95、quot;;</p><p> pstmt = conn.prepareStatement(sql) ;</p><p> pstmt.setString(1,name);</p><p> pstmt.setString(2,allshuliang);</p><p> pstmt.setString(3,id);</p>
96、;<p> pstmt.executeUpdate() ;</p><p> flag=true;</p><p><b> }</b></p><p><b> 6.總結(jié)</b></p><p> 通過這次設(shè)計,使我重新的審視了這一學(xué)科的全部內(nèi)容,并且得到了很好的利用。在此
97、過程中也鍛煉了我的意志,讓我在以后的學(xué)習(xí)、生活中更有堅持不懈的精神去面對各種困難與挑戰(zhàn)。同時,也使自己在軟件應(yīng)用方面有了很大的提高,爭取在以后的學(xué)習(xí)工作中,能在各方面都有更大的進(jìn)步。通過這次的畢業(yè)設(shè)計過程,我有幾點(diǎn)體會,陳述如下:</p><p><b> 1.注意經(jīng)??偨Y(jié)</b></p><p> 模塊的開發(fā)過程中,經(jīng)常會碰到一些小問題或一些書本上涉及不到的思想
98、,這些東西要注意經(jīng)??偨Y(jié)下來,作為自己編程過程中的經(jīng)驗,量變會導(dǎo)致質(zhì)變,經(jīng)常總結(jié),大量經(jīng)驗的堆積、吸收都將會對自己編程水平的提高有極大的好處。</p><p> 2.編碼的規(guī)范性非常重要</p><p> 無論多么小的程序,都一定要注意格式規(guī)范,這是成為一個好的程序員所必需養(yǎng)成的習(xí)慣。只有這樣,程序的查錯工作才更簡單更有效,代碼的可讀性才更大。最初的幾個頁面我沒有注意這樣的問題,有的地
99、方不很規(guī)范,當(dāng)出現(xiàn)問題的時候,查起來非常繁瑣,后來我將這幾個頁面重寫,并在以后的編碼中充分注意了規(guī)范的問題,大大減少了用于檢查錯誤的不必要時間。</p><p> 3.最后,通過這段時間的畢業(yè)設(shè)計,從最開始的需求分析到后來的設(shè)計與實現(xiàn),使我了解了JavaWeb技術(shù),熟悉了Jsp連接MySQL數(shù)據(jù)庫的方法,基本掌握了管理系統(tǒng)模塊的開發(fā)流程。</p><p> 我希望,通過這次畢業(yè)設(shè)計的體
100、會,能夠使我在開發(fā)管理系統(tǒng)水平上更進(jìn)一步,在思維上更富有邏輯性,在處事上更嚴(yán)謹(jǐn),在面對錯誤或失誤時更冷靜,將自己的人生看作是一次教學(xué)系統(tǒng)的開發(fā)過程,不斷的對自己進(jìn)行需求分析和設(shè)計,編寫自己以后的生活,由于知識水平有限,所以該系統(tǒng)還有許多不盡如人意的地方,望提出寶貴意見!</p><p><b> 參考文獻(xiàn)</b></p><p> 1. 陳鵬,程勇,《J2EE項目
101、開發(fā)實用案例》.上海:科技出版社,2006</p><p> 2. 張孝祥,《Java就業(yè)培訓(xùn)教程》.北京:清華大學(xué)出版社,2003</p><p> 3. 中國科學(xué)院成都計算機(jī)應(yīng)用研究所《計算機(jī)應(yīng)用》2004</p><p> 4. 劉克成,鄭珂,《計算機(jī)網(wǎng)絡(luò)》.北京:人民郵電出版社,20011</p><p> 5. (美)迪布瓦
102、 著,瀚海時光團(tuán)隊 譯,《MySql CookBook》.北京.電子工業(yè)出版社 2008</p><p> 6. JSP程序設(shè)計:用JSP開發(fā)Web應(yīng)用,北京: 清華大學(xué)出版社;</p><p><b> 致謝</b></p><p> 經(jīng)過這段時間的學(xué)習(xí)和實踐,本次畢業(yè)設(shè)計圓滿的結(jié)束了。通過這次畢業(yè)設(shè)計,我學(xué)到了很多通過課堂學(xué)不到的東西
103、,增強(qiáng)了自己獨(dú)立思考的能力,鍛煉了自己的動手能力,培養(yǎng)了獨(dú)立解決問題的良好習(xí)慣,并且通過學(xué)習(xí)自己從未用過的語言及工具,增強(qiáng)了自己的自學(xué)能力。這些都是在走向社會之前很寶貴的經(jīng)驗和體會,對以后的學(xué)習(xí)、工作和生活必將有很大幫助。</p><p> 在本次畢業(yè)設(shè)計從開始到結(jié)束的整個過程中,有很多人給予了我多方面的幫助,借此機(jī)會表達(dá)我對他們的謝意:感謝我的指導(dǎo)老師張璠老師,感謝他對我在技術(shù)和思想上等各方面的支持和教導(dǎo)。同
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件工程畢業(yè)論文-預(yù)約掛號系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文——實驗室預(yù)約系統(tǒng)的設(shè)計
- 畢業(yè)論文——實驗室預(yù)約系統(tǒng)的設(shè)計
- 基于bs的實驗室預(yù)約系統(tǒng)畢業(yè)論文
- 軟件工程畢業(yè)論文-醫(yī)院管理信息系統(tǒng)的設(shè)計與實現(xiàn)--網(wǎng)上預(yù)約模塊
- 軟件工程畢業(yè)論文-庫存管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-學(xué)生管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-駕校管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-工程監(jiān)理管理系統(tǒng)的設(shè)計與實現(xiàn)
- 實驗室預(yù)約管理系統(tǒng)的設(shè)計與實現(xiàn)【開題報告】
- 軟件工程畢業(yè)論文-超市收銀管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-倉庫貨物管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-城市水費(fèi)管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-商場會員管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-小區(qū)車位管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-智慧大棚-管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-圖書管理系統(tǒng)的設(shè)計與實現(xiàn)
- 軟件工程畢業(yè)論文-駕校管理系統(tǒng)的設(shè)計與實現(xiàn) 2
- 軟件工程畢業(yè)論文-庫存管理系統(tǒng)(mis)的設(shè)計與實現(xiàn)
- 軟件工程課程設(shè)計實驗室設(shè)備管理系統(tǒng)
評論
0/150
提交評論