畢業(yè)設(shè)計---jsp學(xué)生信息管理系統(tǒng)_第1頁
已閱讀1頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  摘要:</b></p><p>  隨著計算機應(yīng)用的普及,電子政務(wù)、電子商務(wù)的逐步推行,作為西部民族地區(qū)的高校,利用相應(yīng)的管理信息系統(tǒng)來促進各項管理工作的科學(xué)化、規(guī)范化、信息化及高效率也勢在必行。學(xué)生資助系統(tǒng)作為學(xué)生信息管理系統(tǒng)中的一個主要功能模塊,可以實現(xiàn)對貧困生信息的收集、存儲、檢索等,便于評定貧困生并依據(jù)相關(guān)政策給予資助,可極大的提高資助工作的效率,達到資

2、助工作公平、公正、公開的目的。該系統(tǒng)作為學(xué)生信息管理系統(tǒng)的一個功能模塊,在市場上有其相對成熟的產(chǎn)品,但其適應(yīng)性較差,在功能分析設(shè)計欠缺對實際應(yīng)用需求的思考,也可以這樣認為,沒有一套較為實用的學(xué)生資助信息管理系統(tǒng)。此系統(tǒng)就是為解決和彌補上述問題和不足而產(chǎn)生的,而且呈現(xiàn)出一些自身的特點,滿足了資助管理工作的需要。</p><p><b>  關(guān)鍵詞:</b></p><p&g

3、t;  學(xué)生,學(xué)生信息,信息管理,資助信息,資助管理,家庭經(jīng)濟情況JSP,Java,MySQL,WEB服務(wù)器</p><p>  Abstract :</p><p>  along with the computer application's popularization, the E-government, electronic commerce's gradual

4、carrying out, takes the western multi-national area the university, uses the corresponding management information system to promote each supervisory work scientific style, the standardization, the informationization and

5、the high efficiency is also imperative. The student subsidizes the system to take in a student information management system's major function module, may realize evenly to lives </p><p>  Key word: </

6、p><p>  the student, the student information, the information management, funds the information, the subsidization management, home economics situation ,JSP, Java, MySQL, WEB server</p><p><b>

7、;  目 錄</b></p><p><b>  第一章 前言 </b></p><p>  1.1、 系統(tǒng)開發(fā)的意義 ……………………………………………………………(4)</p><p>  1.2、 背景 ………………………………………………………………… (4)</p><p> 

8、 1.3、 課題 …………………………………………………………………… (4)</p><p>  第二章 jsp環(huán)境的配置 </p><p>  2.1、硬件環(huán)境的配置 …………………………………………………………………(5)</p><p>  2.2、軟件環(huán)境及開發(fā)平臺的搭建和配置 ……………………………………………(5)2.2.1、安裝

9、jdk1.6.0_17 ………………………………………………………(5)</p><p>  2.2.2、安裝TOMCAT6.0……………………………………………………………(6)</p><p>  2.2.3、安裝MySQL及相關(guān)配置……………………………………………………(6)</p><p>  2.3、TOMCAT工作目錄的設(shè)置和系統(tǒng)配置文件的設(shè)置………

10、…………………………(7)</p><p>  2.3.1、TOMCAT工作目錄設(shè)置7</p><p>  2.3.2、系統(tǒng)配置文件設(shè)置7</p><p>  第三章 系統(tǒng)的結(jié)構(gòu)分析與設(shè)計 </p><p>  3.1、整體結(jié)構(gòu)設(shè)計 …………………………………………………………….……(8)</p><p>  3

11、.1.1、用戶角色設(shè)置及權(quán)限分配 ……………………………………………(8)</p><p>  3.1.2、系統(tǒng)模塊設(shè)計……………………………………………………………(8)</p><p>  3.1.3、系統(tǒng)運行模式設(shè)計 …………………………………………………(9)</p><p>  3.1.4、系統(tǒng)開發(fā)模式設(shè)計……………………………………………………(10

12、)</p><p>  3.1.5、可行性分析……………………………………………………………(10)</p><p>  3.2、模塊分析設(shè)計……………………………………………………………………(10)</p><p>  3.2.1、模塊分類 ………………………………………………………………(10)</p><p>  3.2.2、系統(tǒng)邏輯

13、結(jié)構(gòu)設(shè)計………………………………………………………(11)</p><p>  3.2.3、業(yè)務(wù)流程…………………………………………………………………(12)</p><p>  3.3、數(shù)據(jù)庫設(shè)計……………………………………………………………………(13)</p><p>  3.4、JAVA類設(shè)計……………………………………………………………………(15)<

14、;/p><p><b>  第四章 系統(tǒng)實現(xiàn)</b></p><p>  4.1、配置servlet………………………………………………………………………(16)</p><p>  4.2、數(shù)據(jù)庫連接 ……………………………………………………………………(17)</p><p>  4.3、系統(tǒng)頁面開發(fā) ………………………

15、…………………………………………(19)</p><p><b>  第五章 系統(tǒng)測試</b></p><p>  5.1、測試說明…………………………………………………………………………(22)</p><p>  5.2、響應(yīng)時間測試 …………………………………………………………………(23)</p><p>  5

16、.3、超鏈有效性檢測…………………………………………………………………(24)</p><p>  5.4、系統(tǒng)功能測試……………………………………………………………………(24)</p><p>  第六章 系統(tǒng)開發(fā)中遇到的問題和難點及解決方法</p><p>  6.1、查詢及分頁刷新問題…………………………………………………………(26)</p>

17、<p>  6.2、報表的打印……………………………………………………………………(27)</p><p>  6.3、同一賬號多主機同時使用………………………………………………………(28)</p><p>  6.4、數(shù)據(jù)備份與恢復(fù)…………………………………………………………………(28)</p><p>  6.5、get方法和傳參數(shù)分頁問題………

18、……………………………………………(29)</p><p>  6.6、系統(tǒng)環(huán)境移植問題……………………………………………………………(30)</p><p>  6.7、系統(tǒng)日志處理……………………………………………………………………(30)</p><p><b>  第七章 小結(jié)</b></p><p>  7.1

19、、小組分工與協(xié)作………………………………………………………………(30)</p><p>  7.2、設(shè)計過程中的主要收獲………………………………………………………(30)</p><p>  參考文獻………………………………………………………………..…….. (30)</p><p>  致謝…………………………………………………………………………. (31)&

20、lt;/p><p><b>  第一章 前言</b></p><p>  1.1、系統(tǒng)開發(fā)的意義</p><p>  學(xué)生資助信息系統(tǒng)是學(xué)生信息系統(tǒng)中一個子模塊,為了實現(xiàn)對每一位學(xué)生的資助信息進行統(tǒng)一、集中和規(guī)范的記錄和編輯,以實現(xiàn)資助信息的公正、公開和高效管理。學(xué)生資助信息系統(tǒng)基本上能夠滿足學(xué)生資助信息管理工作的需求,可以為教師和學(xué)生提供快速的

21、信息咨詢、信息檢索、信息存取等服務(wù)。本系統(tǒng)模塊主要研究學(xué)生資助信息管理,由計算機來代替人工執(zhí)行一系列的資助管理工作。</p><p><b>  1.2、背景</b></p><p>  隨著計算機技術(shù)的飛速發(fā)展,計算機在高校學(xué)各項工作中的應(yīng)用和普及,利用計算機來管理學(xué)生資助工作將成為不爭的事實。而就目前的實際情況來說,基本都還在使用office等辦公軟件,大量的人工

22、操作、效率低、容易出錯和沒有針對性等一些列問題的存在,根本達不到現(xiàn)在高校信息化管理的要求。而目前網(wǎng)絡(luò)上也有不少成型的學(xué)生信息管理系統(tǒng),但是關(guān)于資助信息管理的相對較少,適用性也較差,在功能分析設(shè)計上沒有體現(xiàn)民族地區(qū)高校的實際情況和自身的特點。也就是說,還沒有一套真正符合我系資助信息管理需要的信息系統(tǒng)。而這樣的系統(tǒng)在開發(fā)技術(shù)上卻并不困難,是我們完全可以掌握并能實現(xiàn)的。</p><p><b>  1.3、

23、課題</b></p><p>  黔南師院計科系學(xué)生信息管理系統(tǒng)</p><p>  ----學(xué)生資助信息管理子系統(tǒng)</p><p>  本課題主要考慮的是提供簡單方便的操作,為管理人員提供簡單、高效的對學(xué)生資助信息的管理,同時也使學(xué)生方便的查詢、修改自己的相關(guān)信息等。</p><p>  第二章 JSP環(huán)境的配置</p&

24、gt;<p>  2.1硬件環(huán)境的配置</p><p>  內(nèi)存:512M或以上</p><p>  CPU:1.4GHz 或者更高</p><p>  硬盤:2GB 的預(yù)留空間。</p><p>  顯卡:XGA 1280 x 1024</p><p>  2.2軟件環(huán)境及開發(fā)平臺的搭建和配置</

25、p><p>  2.2.1、安裝jdk1.6.0_17</p><p>  安裝時有兩個選擇安裝路徑的頁面,路徑可以隨便選我們就放在C:\Java下好了。</p><p>  安裝完畢后,設(shè)置環(huán)境變量。設(shè)置方法:我的電腦---屬性---高級---環(huán)境變量; 在系統(tǒng)變量里新建兩個系統(tǒng)變量。 一個JAVA_HOME 在變量名中輸入:JAVA_HOME(注意大寫)

26、在變量值中輸入:C:\Java\jdk1.6.0_17一個CLASS_PATH 在變量名中輸入:CLASS_PATH(注意大寫) 在變量值中輸入:</p><p>  .;C:\Java\jdk1.6.0_17\jre\lib\rt.jar;C:\Java\jdk1.6.0_17\lib\tools.jar;(★注意里面的“.”不能少,表示當(dāng)前路徑) 新建兩個系統(tǒng)變量后,還要在原來就有的一個系統(tǒng)變量PAT

27、H的變量值中追加C:\java\jdk1.6.0_17\bin;C:\java\jdk1.6.0_17\jre\bin;這樣JDK就安裝好了 測試JDK安裝是否成功:在開始—運行中輸入(cmd)進入ms dos窗口</p><p>  運行java -version 看到如下界面</p><p>  則JDK已經(jīng)安裝成功。</p><p>  2.2.2、安裝T

28、OMCAT6.0</p><p>  安裝在C:/Tomcat6.0下 安裝完成后配置系統(tǒng)環(huán)境變量。</p><p>  設(shè)置方法:我的電腦---屬性---高級---環(huán)境變量;</p><p>  新建一個系統(tǒng)環(huán)境變量</p><p>  在變量名中輸入:TOMCAT_HOME(注意大寫)</p><p>  在變量

29、值中輸入:C:\Tomcat 6.0</p><p>  新建變量CATALINA_HOME:變量值為C:/Tomcat6.0</p><p>  配置完畢后,打開C:/Tomcat6.0/bin/startup.bat啟動服務(wù)器,打開IE在地址欄里輸入http://localhost:8080頁面,若能看到tomcat的默認JSP頁面,</p><p>  則說明

30、TOMCAT安裝成功。</p><p>  2.2.3、安裝MySQL及相關(guān)配置 </p><p>  安裝MySQL:安裝時請注意字符集設(shè)置為gb2312,路徑為C:\Program Files\MySQL</p><p>  配置MySQL:一般的對MySQL的操作和使用,直接安裝完成就可以了,但是,系統(tǒng)中使用了命令備份和還原數(shù)據(jù)庫,所以要配置環(huán)境變量。變量名M

31、YSQL_HOME,變量值為C:\Program Files\MySQL\MySQL Server 5.1\bin。</p><p>  2.3、TOMCAT工作目錄設(shè)置和系統(tǒng)配置文件的設(shè)置</p><p>  2.3.1、TOMCAT工作目錄設(shè)置:</p><p> ?。?)訪問TOMCAT默認的根目錄是C:\Tomcat 6.0\webapps\ROOT,可直接

32、將系統(tǒng)拷貝到此目錄下,啟動tomcat,在瀏覽器地址欄輸入http://localhost:8080/stuinfo即可訪問系統(tǒng)。但是,這樣做會使服務(wù)器變得臃腫且難管理。</p><p> ?。?)設(shè)置虛擬目錄的方法:編輯server.xml,找到</Host>,在這前面加上:</p><p>  <Context path="/stuinfo" do

33、cBase="d:/stuinfo" debug="0" reloadable="true" crossContext="true"></Context></p><p>  解釋:path="/stuinfo"指虛擬目錄的名字,docBase="d:/stuinfo"代表虛擬

34、目錄實際指向的路徑,即系統(tǒng)存放的路徑,在瀏覽器地址欄輸入http://localhost:8080/stuinfo即可訪問系統(tǒng)。</p><p>  2.3.2、系統(tǒng)配置文件設(shè)置:</p><p> ?。?)stuinfo\WEB-INF\classes\conn.properties文件為連接數(shù)據(jù)庫配置文件,內(nèi)容為:</p><p>  user = root&l

35、t;/p><p>  password = admin</p><p>  driver = com.mysql.jdbc.Driver</p><p>  url = jdbc:mysql://127.0.0.1:3306/info?useUnicode=true&characterEncoding=gb2312</p><p>  u

36、ser:數(shù)據(jù)庫用戶名;password:數(shù)據(jù)庫密碼;driver:連接MySQL驅(qū)動;url:連接數(shù)據(jù)庫的URL;</p><p> ?。?)stuinfo\WEB-INF\classes\prop.properties是備份還原數(shù)據(jù)庫配置文件。</p><p>  username = root (數(shù)據(jù)庫用戶名)</p><p>  password = admi

37、n(數(shù)據(jù)庫密碼)</p><p>  mysqlpath = C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\(MySQL的安裝路徑)</p><p>  sql = d:\\backup\\(數(shù)據(jù)備份文件的存放路徑)</p><p>  address=localhost(用戶)</p><p&

38、gt;  databaseName = info(要備份或還原的數(shù)據(jù)庫名)</p><p> ?。?)stuinfo\WEB-INF\classes\ log4j.properties系統(tǒng)日志的配置文件。其中:File=D:\\log\\DaoSpace.log(日志文件的存放路徑)</p><p>  R.MaxFileSize=2MB(日志文件的存儲最大值)</p>&l

39、t;p>  上述配置文件根據(jù)需要和實際情況配置。</p><p>  第三章 系統(tǒng)的結(jié)構(gòu)分析與設(shè)計</p><p><b>  整體結(jié)構(gòu)設(shè)計</b></p><p>  基于系統(tǒng)的使用對象有管理員、輔導(dǎo)員、教師和學(xué)生,所以將這四種對象分為四種用戶形式;系統(tǒng)根據(jù)功能需要分為三個模塊,即學(xué)生基本信息管理、學(xué)生資助信息管理和學(xué)生獎懲信息管理,在

40、資助信息管理部分又分為家庭基本情況和資助信息兩個部分。采用B/S模式,jsp+servlet+JavaBean+MySQL的技術(shù)形式實現(xiàn)。</p><p>  3.1.1 用戶角色設(shè)計及權(quán)限分配</p><p>  管理員:擁有管理系統(tǒng)所有功能的權(quán)限,同時負責(zé)系統(tǒng)的用戶的增刪,服務(wù)功能的起停,數(shù)據(jù)的備份、還原等維護操作;</p><p>  輔導(dǎo)員:具有讀取到所管

41、轄班級學(xué)生的信息,并對這些信息進行基本的查看、添加、修改等操作;</p><p>  教師:能查看學(xué)生的各項相關(guān)信息,但不具有添加、刪除等修改操作;</p><p>  學(xué)生:僅能以自己的學(xué)號登錄,登錄后將可以看到的自己相關(guān)信息,同時可以修改自己的登錄密碼,在系統(tǒng)開放添加、修改等服務(wù)功能期間,可以對自己的有錯或不完整的信息進行相應(yīng)的修改或添加。</p><p>  

42、3.1.2 系統(tǒng)模塊設(shè)計</p><p>  學(xué)生信息管理系統(tǒng)包括三個基本模塊:學(xué)生基本信息管理、學(xué)生資助信息管理和學(xué)生獎懲信息管理。三個模塊管理功能不一,同時相互之間又有聯(lián)系,如將某一學(xué)生基本信息修改或刪除,則該學(xué)生對應(yīng)的家庭、資助、獎懲等于其有關(guān)的所有信息都將被刪除。在添加學(xué)生的家庭、資助、獎懲等信息時,必須先存在該學(xué)生的基本信息。學(xué)生信息管理系統(tǒng)中的學(xué)生資助信息管理模塊結(jié)構(gòu)如下圖1所示:</p>

43、<p><b>  圖1</b></p><p>  3.1.3 系統(tǒng)運行模式設(shè)計</p><p>  系統(tǒng)采用B/S(Browser/Server)模式,使管理更加方便和簡單,B/S結(jié)構(gòu)中各個客戶端只需安裝一個具有某種編譯功能的構(gòu)件即可,這個構(gòu)件就是Web瀏覽器,用戶面對的將是簡單統(tǒng)一的瀏覽器,而不是一個復(fù)雜的客戶端軟件,這就降低了用戶的使用難度,系統(tǒng)

44、面對的是全系的師生,大量的學(xué)生在使用,B/S是毋庸置疑的選擇和必然?;玖鞒倘缦拢?lt;/p><p>  3.1.4 系統(tǒng)開發(fā)模式設(shè)計</p><p>  jsp作為面對用戶的部分,負責(zé)界面設(shè)計和接受用戶的操作等;JavaBean在后臺運行,負責(zé)各種操作的邏輯處理和訪問數(shù)據(jù)庫等,從而提高系統(tǒng)的運行效率和減少代碼的冗余;MySQL作為數(shù)據(jù)庫,提供所需的各種數(shù)據(jù)服務(wù)。</p>&l

45、t;p>  整個系統(tǒng)離不開對數(shù)據(jù)庫的訪問與操作,系統(tǒng)采用的數(shù)據(jù)庫連接訪問驅(qū)動類型為JDBC,JDBC是支持基本SQL數(shù)據(jù)庫功能的一系列抽象的接口,最重要的接口包括:Java.sql.Driver Manager(處理驅(qū)動的調(diào)入并且對產(chǎn)生新的數(shù)據(jù)庫連接提供支持)、Java.sql.Connection(代表對特定數(shù)據(jù)庫的連接)、Java.sql.Statement(代表一個特定的容器,對一個特定的數(shù)據(jù)庫執(zhí)行SQL語句)、Java.s

46、ql.ResultSet(控制對一個特定語句的行數(shù)據(jù)的存?。?。這些接口在不同的數(shù)據(jù)庫功能模塊的層次上提供了一個統(tǒng)一的用戶界面,使得獨立于數(shù)據(jù)庫的Java應(yīng)用程序開發(fā)成為可能,同時提供了多樣化的數(shù)據(jù)庫連接方式。圖2為其工作原理。</p><p><b>  JDBC的工作原理</b></p><p><b>  圖2</b></p>

47、<p>  3.1.5可行性分析</p><p> ?。?).技術(shù)可行性:需要用到JAVA基本技術(shù)、基于jsp的WEB程序設(shè)計、TSQL語言、圖片處理、WWW服務(wù)、數(shù)據(jù)庫服務(wù)等技術(shù)。</p><p> ?。?).開發(fā)環(huán)境:課題在JDK+TOMCAT+MySQL平臺下進行設(shè)計開發(fā),所使用到的硬件設(shè)備有普通PC機一臺(現(xiàn)在市場上主流的PC配置已足夠),軟件有JDK、TOMCAT、My

48、SQL、MyEclipse、DERAMWVAER8.0、FREAWORK8.0、photoshop等。</p><p>  (3).運行平臺:借助學(xué)院現(xiàn)有的WWW服務(wù)平臺及數(shù)據(jù)庫服務(wù)平臺即可實現(xiàn)。</p><p>  綜上所述本課題的開發(fā)具有可行性!</p><p>  3.2 模塊分析設(shè)計</p><p><b>  3.2.1模

49、塊分類</b></p><p>  根據(jù)學(xué)生資助工作做需求分析,學(xué)生資助信息系統(tǒng)可分為兩個模塊:</p><p>  學(xué)生家庭經(jīng)濟情況信息模塊</p><p>  學(xué)生家庭經(jīng)濟情況信息管理模塊</p><p>  學(xué)生家庭經(jīng)濟情況信息錄入模塊</p><p>  學(xué)生家庭經(jīng)濟情況信息查詢模塊</p&g

50、t;<p>  學(xué)生家庭經(jīng)濟情況信息統(tǒng)計模塊</p><p>  學(xué)生申請困難認定匯總模塊</p><p>  學(xué)生申請認定理由管理模塊</p><p><b>  受資助學(xué)生信息模塊</b></p><p>  學(xué)生受資助信息管理模塊</p><p>  學(xué)生受資助信息錄入模塊&l

51、t;/p><p>  學(xué)生受資助信息打印模塊</p><p>  學(xué)生受資助信息統(tǒng)計模塊</p><p>  學(xué)生受資助信息批量錄入模塊</p><p>  3.2.2系統(tǒng)的邏輯結(jié)構(gòu)設(shè)計</p><p><b>  圖4 系統(tǒng)邏輯結(jié)</b></p><p> ?。?)主頁面

52、 這是連接到各種用戶登錄頁面的紐帶,基于給人清新、簡潔的操作的設(shè)計理念,本頁面只提供簡單的幾個鏈接,使用戶可以快速的進入登錄頁面。</p><p> ?。?)學(xué)生頁面 每個學(xué)生登錄后可以點擊超鏈查看自己家庭信息、受資助信息、認定困難理由,錄入和修改家庭信息、受資助信息、認定困難理由。</p><p> ?。?)教師和輔導(dǎo)員頁面 教師和輔導(dǎo)員登錄后可進行查詢

53、、統(tǒng)計、打印,另外,輔導(dǎo)員可進行學(xué)生信息修改、錄入、刪除。</p><p> ?。?)管理員頁面 管理員登錄后可進行查詢、統(tǒng)計、打印,修改、錄入、刪除,對系統(tǒng)設(shè)置、系統(tǒng)數(shù)據(jù)維護、學(xué)生欄目管理。</p><p>  3.2.3業(yè)務(wù)流程(如圖所示)</p><p><b>  圖6 業(yè)務(wù)流程圖</b></p><p>

54、<b>  3.3數(shù)據(jù)庫設(shè)計</b></p><p><b>  ER圖:</b></p><p>  系統(tǒng)創(chuàng)建一個學(xué)生信息數(shù)據(jù)庫(info),當(dāng)中包含有學(xué)生資助信息子系統(tǒng)中的3個主要數(shù)據(jù)表:學(xué)生家庭經(jīng)濟情況信息表(stu_pkxx)、學(xué)生申請認定困難理由表(stu_liyou)、學(xué)生受資助信息表(zzxx)。</p><p&

55、gt;  其中兩個表的結(jié)構(gòu)如下。</p><p>  學(xué)生家庭經(jīng)濟情況信息表(stu_pkxx)</p><p>  學(xué)生申請認定困難理由表(stu_liyou)</p><p>  3.4 JAVA類設(shè)計</p><p>  (1)AdminUser.java(主要有g(shù)et和set方法,用于設(shè)置成員變量的值和獲取成員變量的值)</p&

56、gt;<p> ?。?)AddUser.java(添加用戶、刪除用戶的操作處理)</p><p> ?。?)AlertAdminMM.java(用戶修改密碼處理)</p><p> ?。?)Loginadmin.java(用戶登陸驗證處理)</p><p>  (5)LoginServlet.java(Servlet:接收管理員登陸提交信息、接收驗證返

57、回值)</p><p> ?。?)TeacherServlet.java (Servlet:接收輔導(dǎo)員登陸提交信息、接收驗證返回值)</p><p> ?。?)TeachServlet.java (Servlet:接收教師登陸提交信息、接收驗證返回值)</p><p> ?。?)Home.java(主要有g(shù)et和set方法,用于設(shè)置成員變量的值和獲取成員變量的值)&

58、lt;/p><p>  (9)AddHome.java(學(xué)生家庭信息添加、修改、刪除;學(xué)生困難理由陳述,班級困難認定、系困難認定的處理)</p><p>  (10)SearchHome.java(從數(shù)據(jù)庫查詢家庭信息存放到List中)</p><p> ?。?1)SearchKun.java(從數(shù)據(jù)庫查詢學(xué)生認定困難理由存放到List中)</p><

59、;p> ?。?2)MD5.java(把用戶密碼轉(zhuǎn)換成32位字符串)</p><p> ?。?3)MD5Digest.java(返回用戶密碼加密后生成的字符串)</p><p>  (14)OnlineUserListener.java(監(jiān)聽器:用于限制同一賬號多機多人同時使用)</p><p> ?。?5)conn.properties(工程文件:用于存放連接

60、數(shù)據(jù)庫信息)</p><p>  (16)log4j.properties(工程文件:配置系統(tǒng)使用日志信息)</p><p> ?。?7)Backup_xx.java(記錄備份和還原數(shù)據(jù)的信息)</p><p> ?。?8)DelFile.java(刪除備份數(shù)據(jù)文件)</p><p> ?。?9)mysql_util.java(用cmd方法備

61、份和還原數(shù)據(jù)庫)</p><p>  (20)DispBanji.java(獲得班級查找中下拉菜單的值)</p><p> ?。?1)ZizhuInfo.java(對學(xué)生資助信息的基本操作)</p><p>  (22)DaoZizhu.java(實現(xiàn)將excel中的資助信息導(dǎo)入到MySQL數(shù)據(jù)庫中)</p><p><b>  第

62、四章 系統(tǒng)實現(xiàn)</b></p><p>  4.1配置servlet</p><p>  servlet的配置文件為在系統(tǒng)目錄下的WEB-INF文件夾中有web.xml文件,內(nèi)容如下:</p><p>  <?xml version="1.0" encoding="UTF-8"?></p>

63、<p>  <web-app version="2.5" </p><p>  xmlns="http://java.sun.com/xml/ns/javaee" </p><p>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" </p>

64、<p>  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee </p><p>  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"></p><p>  <welcome-file-list></p><p&

65、gt;  <welcome-file>index.jsp</welcome-file></p><p>  </welcome-file-list></p><p>  <session-config> </p><p>  <session-timeout>15</session-timeou

66、t>#設(shè)置session有效時間 </p><p>  </session-config></p><p>  <listener></p><p>  <listener-class>my.longin.OnlineUserListener</listener-class>#監(jiān)聽器路徑</p>

67、;<p>  </listener></p><p><b>  <servlet></b></p><p>  <servlet-name>LoginServlet</servlet-name>#servlet名稱</p><p>  <servlet-class>ad

68、minuser.LoginServlet</servlet-class>#servlet路徑</p><p>  </servlet></p><p>  <servlet-mapping></p><p>  <servlet-name>LoginServlet</servlet-name>#servle

69、t名稱</p><p>  <url-pattern>/guanliyuan</url-pattern>#servlet訪問url</p><p>  </servlet-mapping></p><p><b>  <servlet></b></p><p>  <

70、servlet-name>StudentServlet</servlet-name></p><p>  <servlet-class>login.StudentServlet</servlet-class></p><p>  </servlet></p><p>  <servlet-mapping&g

71、t;</p><p>  <servlet-name>StudentServlet</servlet-name></p><p>  <url-pattern>/student</url-pattern></p><p>  </servlet-mapping></p><p>&l

72、t;b>  <servlet></b></p><p>  <servlet-name>TeacherServlet</servlet-name></p><p>  <servlet-class>adminuser.TeacherServlet</servlet-class></p><p&

73、gt;  </servlet></p><p>  <servlet-mapping></p><p>  <servlet-name>TeacherServlet</servlet-name></p><p>  <url-pattern>/fudaoyuan</url-pattern><

74、;/p><p>  </servlet-mapping></p><p><b>  <servlet></b></p><p>  <servlet-name>TeachServlet</servlet-name></p><p>  <servlet-class>

75、;adminuser.TeachServlet</servlet-class></p><p>  </servlet></p><p>  <servlet-mapping></p><p>  <servlet-name>TeachServlet</servlet-name></p>&l

76、t;p>  <url-pattern>/jiaoshi</url-pattern></p><p>  </servlet-mapping></p><p>  </web-app></p><p><b>  4.2數(shù)據(jù)庫連接</b></p><p>  安裝MyS

77、QL驅(qū)動,即將MySQL驅(qū)動包(可網(wǎng)上下載,會有不同的驅(qū)動包,根據(jù)下載的版本和類型等在連接數(shù)據(jù)庫時加載相應(yīng)的驅(qū)動)放到系統(tǒng)目錄下的WEB-INF\lib目錄下。同時建立連接數(shù)據(jù)庫的Java類(其中的配置文件根據(jù)前面介紹進行相應(yīng)的修改):</p><p>  package conn;</p><p>  import java.sql.*;</p><p>  im

78、port java.util.*;</p><p>  import java.io.*;</p><p>  public class Conn{</p><p>  public Properties pros = getPprVue("conn.properties");</p><p>  public Str

79、ing driver = pros.getProperty("driver");</p><p>  public String url = pros.getProperty("url");</p><p>  public String user= pros.getProperty("user");</p>&

80、lt;p>  public String password = pros.getProperty("password");</p><p>  //public static String password = "admin";</p><p>  public Connection conn = null;</p><

81、p>  public Conn(){</p><p><b>  }</b></p><p>  public Properties getPprVue(String properName) {</p><p>  InputStream inputStream = Conn.class.getClassLoader()</p&g

82、t;<p>  .getResourceAsStream(properName);</p><p>  Properties p = new Properties();</p><p><b>  try {</b></p><p>  p.load(inputStream);</p><p>  } ca

83、tch (IOException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  return p;</b></

84、p><p><b>  }</b></p><p>  //返回數(shù)據(jù)庫連接的方法</p><p>  public Connection getConnection(){</p><p><b>  try {</b></p><p>  Class.forName(drive

85、r);</p><p>  conn = DriverManager.getConnection(url, user, password);</p><p>  } catch (java.lang.ClassNotFoundException e) { </p><p>  System.err.println(e);</p><p>  

86、} catch (SQLException er) {</p><p>  System.err.println(er.getMessage());</p><p><b>  }</b></p><p>  return conn;</p><p><b>  }</b></p>&

87、lt;p><b>  }</b></p><p>  4.3 系統(tǒng)頁面開發(fā)</p><p>  系統(tǒng)各功能模塊的開發(fā)只需在模塊中加入相應(yīng)的JSP代碼即可現(xiàn)所需要的功能,以下僅以個別模塊來介紹開發(fā)的詳細過程:</p><p>  4.3.1.登陸主頁面:</p><p>  主頁是連接登錄模塊的紐帶,我們的理念是給用

88、戶簡潔、便利的操作界面,如圖3所示主頁只提供了幾個簡單的鏈接,讓用戶能夠快速的進入系統(tǒng)。</p><p><b>  圖3</b></p><p>  4.3.2.查詢模塊功能實現(xiàn):</p><p>  查詢可實現(xiàn)組合模糊查詢功能,其運行結(jié)果如圖4所示。 </p><p><b>  圖4</b>&

89、lt;/p><p>  查詢功能實現(xiàn)代的碼:</p><p>  (1) Ajax發(fā)送查詢參數(shù):</p><p>  function getPagezy(dipage){</p><p>  var tiper=document.getElementById("content");</p><p> 

90、 tiper.style.display="inline";</p><p>  var search=document.form3.zy.value;</p><p>  createXmlHttp()</p><p>  xmlhttp.onreadystatechange=function(){</p><p>  

91、if(4==xmlhttp.readyState) {</p><p>  if(200==xmlhttp.status){ </p><p>  document.getElementById("content").innerHTML=xmlhttp.responseText; </p><p><b>  }<

92、/b></p><p><b>  else{</b></p><p>  alert(xmlhttp.status);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }<

93、;/b></p><p>  var url="query/ajax_zy.jsp?search="+search+"&dipage="+dipage+"&t="+new Date().getTime();</p><p>  xmlhttp.open("get",url);</p&

94、gt;<p>  xmlhttp.send(null);</p><p> ?。?)ajax實現(xiàn)查詢結(jié)果顯示分頁</p><p><b>  <%</b></p><p>  if(dipage==1)</p><p><b>  {</b></p><p&

95、gt;  out.print("首頁&nbsp;上一頁");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  out.print("<a href=javascript:getPage(1);>首頁</a&g

96、t; <a href=javascript:getPage("+(dipage-1)+");>上一頁</a>");</p><p><b>  }</b></p><p>  if(dipage>=countPage)</p><p><b>  {</b><

97、;/p><p>  out.print("下一頁&nbsp;末頁");</p><p><b>  }</b></p><p><b>  else{</b></p><p>  out.print("<a href=javascript:getPage(&q

98、uot;+(dipage+1)+");>下一頁</a> <a href=javascript:getPage("+countPage+");>末頁</a>");</p><p><b>  }</b></p><p>  out.print("</td></t

99、r></table>");</p><p><b>  %></b></p><p> ?。?)在新窗口中顯示要打印的報表代碼</p><p>  function printme(){</p><p>  var print = this.document.getElementById

100、("print").innerHTML;</p><p>  var newWindow = window.open();</p><p>  newWindow.document.open("text/html"); </p><p>  newWindow.document.write(print); </p&g

101、t;<p>  newWindow.document.close(); </p><p><b>  } </b></p><p> ?。?)限制同一賬號多主機多人同時使用代碼</p><p>  public synchronized static boolean isLogined(HttpSession session

102、,String UserName){ </p><p>  boolean flag = false; </p><p>  if(hUserName.containsKey(UserName)){ </p><p>  flag = true; </p><p>  HttpSession vsession = (HttpSes

103、sion)hUserName.get(UserName); </p><p><b>  try { </b></p><p>  vsession.invalidate(); </p><p>  hUserName.remove(UserName); </p><p>  hUserName.put(UserName

104、,session); </p><p>  } catch (Exception ex){} </p><p><b>  } </b></p><p><b>  else{ </b></p><p>  hUserName.remove(UserName); </p><

105、;p>  hUserName.put(UserName,session); </p><p>  flag = false; </p><p><b>  }</b></p><p>  return flag; </p><p><b>  }</b></p>&l

106、t;p> ?。?)數(shù)據(jù)備份及還原代碼</p><p>  public String load(String filename) {</p><p>  String str = null;</p><p>  Properties pros = getPprVue("prop.properties");</p><p&

107、gt;  // 這里是讀取的屬性文件,也可以直接使用</p><p>  String root = pros.getProperty("username");</p><p>  String pass = pros.getProperty("password");</p><p>  // 得到MYSQL的用戶名密碼后調(diào)用

108、 mysql 的 cmd:</p><p>  String dbName = pros.getProperty("databaseName");</p><p>  String sqlpath = pros.getProperty("sql");</p><p>  String filepath = sqlpath+fi

109、lename; // 備份的路徑地址 </p><p><b>  //新建數(shù)據(jù)庫 </b></p><p>  String stmt1 = "mysqladmin -u "+root+" -p"+pass+" create "+dbName; </p><p>  String

110、stmt2 = "mysql -u "+root+" -p"+pass+" "+dbName+" < " + filepath; </p><p>  String[] cmd = { "cmd", "/c", stmt2 }; </p><p><b>

111、  try { </b></p><p>  Runtime.getRuntime().exec(stmt1); </p><p>  Runtime.getRuntime().exec(cmd); </p><p><b>  str="ok";</b></p><p>  System

112、.out.println("數(shù)據(jù)已從 " + filepath + " 導(dǎo)入到數(shù)據(jù)庫中"); </p><p>  } catch (IOException e) { </p><p>  e.printStackTrace(); </p><p><b>  } </b></p><

113、;p>  return str; </p><p><b>  }</b></p><p>  min.jsp';</script>");</p><p><b>  break;</b></p><p><b>  }</b></p

114、><p><b>  }</b></p><p><b>  }</b></p><p><b>  else{</b></p><p>  out.print("<script>{alert('驗證碼錯誤!')}</script>

115、");</p><p>  out.print("<script>document.location='admin.jsp';</script>");</p><p><b>  }</b></p><p><b>  }</b></p>

116、<p><b>  第五章 系統(tǒng)測試</b></p><p><b>  5.1 測試說明</b></p><p>  限于現(xiàn)實環(huán)境的限制,本系統(tǒng)只在局域網(wǎng)中測試通過,未能在INTERNET中進行測試。</p><p>  測試環(huán)境:windows XP服務(wù)平臺,MYSQL5.0+tomcat6.0+jdk1.

117、0.02支撐環(huán)境</p><p> ?。?) 測試方法:分別在WIN xp,redhat linux 11.0中用IE瀏覽器,通過編寫測試代碼進行登陸跳轉(zhuǎn)時間、JSP探針測試。</p><p> ?。?) 測試目的:測試主要目的是檢查系統(tǒng)響應(yīng)時間。</p><p>  5.2. 響應(yīng)時間測試</p><p> ?。?)過濾器代碼測試</

118、p><p>  登陸跳轉(zhuǎn)時間截圖如下:</p><p>  數(shù)據(jù)錄入數(shù)據(jù)庫時間截圖如下:</p><p>  數(shù)據(jù)統(tǒng)計時間截圖如下:</p><p>  根據(jù)以上截圖每個相應(yīng)頁面執(zhí)行時間均小于1秒,說明系統(tǒng)查詢統(tǒng)計、錄入,超鏈、登陸跳轉(zhuǎn)時間相當(dāng)快,滿足要求。測試關(guān)鍵代碼:</p><p>  public void sta

119、rt()</p><p><b>  {</b></p><p>  time = System.currentTimeMillis();</p><p><b>  }</b></p><p>  public void stop()</p><p><b>  

120、{</b></p><p>  time = System.currentTimeMillis() - time;</p><p><b>  }</b></p><p>  public long getTime()</p><p><b>  {</b></p><

121、;p>  return time;</p><p><b>  }</b></p><p>  public Timer()</p><p><b>  {</b></p><p>  time = 0L;</p><p><b>  }</b>&

122、lt;/p><p> ?。?)JSP探針測試結(jié)果截圖</p><p>  服務(wù)器計算頁面執(zhí)行時間均在15-16毫秒之內(nèi),下載速度在6000k/s到7000k/s,說明系統(tǒng)運行符合要求,運行速度較快。</p><p>  5.3. 超鏈有效性檢測</p><p>  檢測超鏈有效性目的在于檢測系統(tǒng)中是否存在空超鏈,或者系統(tǒng)中是否存在錯誤超鏈。通過超

123、鏈檢查軟件檢測結(jié)果截圖如下:</p><p>  5.4. 系統(tǒng)功能測試</p><p>  (1)數(shù)據(jù)校驗測試:通過測試表單文本框數(shù)據(jù)校驗正確,直到用戶輸入正確才可以提交表單,如果不輸入正確數(shù)據(jù)提示用戶應(yīng)輸入什么類型數(shù)據(jù)。測試例子截圖如下:</p><p>  ①驗證不能為空的提示截圖</p><p> ?、隍炞C用戶輸入數(shù)據(jù)類型</p

124、><p> ?。?)查詢測試: 各功能模塊都通過測試,查詢得到正確結(jié)果,分頁功能正常,數(shù) </p><p>  據(jù)讀取狀況正常,頁面顯示正常,響應(yīng)時間非???,數(shù)據(jù)查詢過程基本上沒有感到瀏覽器和服務(wù)器通信,已經(jīng)返回了查詢結(jié)果。</p><p> ?。?)管理測試: 數(shù)據(jù)管理測試通過添加、刪除、修改、數(shù)據(jù)備份、數(shù)據(jù)還原、管 </p&

125、gt;<p>  理員登陸、非管理員登陸跳轉(zhuǎn)回主頁等各項功能正常。</p><p><b>  重復(fù)添加測試截圖:</b></p><p><b>  用戶超時測試截圖:</b></p><p>  由于測試只是本小組成員完成,可能有未能檢查出的漏洞,敬請各位評閱老師及同學(xué)們指出,我們會在第一時間改進系統(tǒng),萬

126、分感謝。</p><p>  第六章 系統(tǒng)開發(fā)中遇到的問題和難點及解決方法</p><p>  在系統(tǒng)的開發(fā)中,我們遇到了不少的問題和困難,但在我們的共同努力下,都得到了解決?,F(xiàn)將部分問題及其解決方法列出如下:</p><p>  6.1查詢及分頁刷新問題。</p><p>  存在的問題:需查詢結(jié)果及已查結(jié)果分頁需翻頁查看時的局部刷新問題&

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論