基於jsp運動會賽前管理子系統的設計與實現3(含原始檔)

切夢刀發表於2019-01-05


獲取專案原始檔,聯絡Q:1225467431,可指導畢設,課設


摘要:運動會對於每一個學校來說,都是必不可少的。對於我們國內的高校來說,運動會的意義更是非同一般。舉辦一個大型的運動會,必不可少的是效率、規範、系統的管理方式,這更離不開計算機及相關係統的幫助。傳統的運動會管理系統,大多是單機的、封閉的,這樣的系統在嚴重降低管理效率的同時,也會因為太過依靠系統管理員的個人工作而導致一些資訊輸入錯誤,而且,因為系統的封閉性,往往也不利於資訊公佈,讓參與者能夠第一時間拿到第一手資料。
這次課題,不但要開發出一個擁有全功能的報名系統,更重要的是讓這樣系統面向參與者、面向網路,使得運動員能夠方便的通過自己的計算機參與到運動會的報名;老師們能夠通過系統檢視本次運動會的報名情況以及比賽安排;而管理員的工作則只需要稽核運動員報名、預編排和秩序冊生成。本次課題的最終目的是使運動會的舉行更加的高效、透明。
關鍵字:JSP;賽前管理;SSH
1. 課題背景
1.1 課題的背景及來源
隨著社會的發展,高等教育越來越深入大眾。國內高校的數量、規模都在不斷成長。運動會是一個成功的高校必不可少專案之一。每年一次的運動會成為各大高校的亮點。以前的運動會,需各班級學生報名,然後由班級上報年級、學校,最後再由學校工作人員進行具體的時間、空間上的安排。這不僅大大的浪費了時間,而且一些比賽專案的安排,往往會存在衝突,同時也可能由於事先未考慮全面的、緊湊的比賽安排導致運動員們由於缺乏中場休息時間而倉促上場,發揮失常……等等問題在比賽專案、參賽人員多的運動會中體現得尤為突出。因此,面對規模越來越大的運動會,傳統的單機式,甚至是人工管理漸漸已經滿足不了學校對運動會管理的需求。
在計算機網路技術日益成熟的大趨勢下,許多封閉的、單機的系統都面臨著淘汰的局面,取而代之的是網路化的、透明化的應用系統和管理方式。運動會管理系統正是進行著這個變化。我們可以預想到,一個成熟的、面向網路的運動會賽前管理系統,不僅能夠解決傳統管理繁瑣的報名步驟,同時,能夠根據預先考慮周全的內建演算法來安排比賽順序,生成秩序冊,更加關鍵的是,由於其的網路化屬性,能夠讓更多的學生、老師參與到其中。無論其規模大小,整個過程都顯得井井有條。這便是本次課題研究的目標。
1.2 課題研究的現狀
一直以來,高校中所運用的運動會賽前管理系統都是單機的,然而,隨著網路化趨勢的到來,以及人們對一個面向網路的運動會賽前管理系統的迫切需求,我們的課題研究最終被提上了日程。
顯然,我們並不是第一個開發這樣系統的,我們之所以會開這個課題,是因為當前使用的系統仍舊存在著不少問題、缺陷,例如:網路化程度不高、仍舊主要依靠人工操作、秩序冊生成不夠完善等。而我們這次的課題研究方向就是針對這些問題而去。
我們再從技術方面來看。單機版的運動會賽前管理系統我們暫且不論,目前存在的系統大多使用ASP或者是純JSP開發的,我們不能說這兩項技術完全不好,然而,面對更好的技術框架,我們卻又為什麼不用呢。以JSP為基礎,再加上Struts2+Spring+Hibernate的框架,不僅在安全性方面大大提高,同時由於SSH框架的自身優點,使得整個系統更容易根據需求而變更,而且,在系統需要維護時,SSH開發也會讓程式設計師們的工作量大大減少。
1.3 課題研究的目的和意義
本次課題的目的,是應用SSH框架技術和JSP技術開發出一個能夠釋出到網路上的,供高校運動會賽前管理的網站系統。
本系統的主要功能可以歸納為兩大方面:報名、生成秩序冊。
報名模式分為單人報名和整體錄入兩種。
例如,在學校的某一個系中舉辦運動會,我們可以採用單人報名模式,即所有想要參加運動會的同學都可以通過登入該系統進行報名。而更多時候,我們遇到的情況是:已經掌握了一份參賽名單,這時候,管理員可以通過本系統進行批量錄入參賽選手。
而報名結束以後,系統將會根據預先編寫的機制來生成運動會的秩序冊。
本系統最大的亮點在於網路化,能夠讓各種參與者通過網路參與到運動會,極大的方便運動會的賽前管理,大大的節省賽前報名、籌措的時間,極具意義。
2. 技術概述
本次課題是基於JSP的,採用SSH框架進行開發。典型的J2EE三層結構,分為表現層、中間層(業務邏輯層)和資料服務層。三層體系將業務規則、資料訪問及合法性校驗等工作放在中間層處理。客戶端不直接與資料庫互動,而是通過元件與中間層建立連線,再由中間層與資料庫互動。
表現層是傳統的JSP技術,自1999年問世以來,經過多年的發展,其廣泛的應用和穩定的表現,為其作為表現層技術打下了堅實的基礎。
中間層採用的是流行的Spring+Hibernate,為了將控制層與業務邏輯層分離,又細分為以下幾種:Web層、Service層、Dao層、Po(持久化)。
Spring的作用貫穿了整個中間層,將Web層、Service層、DAO層及PO無縫整合,其資料服務層用來存放資料。
一個良好的框架可以讓開發人員減輕重新建立解決複雜問題方案的負擔和精力;它可以被擴充套件以進行內部的定製化;並且有強大的使用者社群來支援它。框架通常能很好的解決一個問題。
SSH(Struts+Spring+Hibernate)三個框架的組合,無疑是目前大型網站開發的最佳框架之一。
本系統開發採用的語言是JSP,框架為SSH(Struts+Spring+Hibernate)。
資料庫方面,採用的是SQL Server 2000(Sp4)。模擬伺服器是Apache Tomcat6.0。
2.1 SSH(Struts+Spring+Hibernate)技術介紹
2.1.1 什麼是Struts
Struts跟Tomcat、Turbine等諸多Apache專案一樣,是開源軟體 (​http:​/​​/​baike.baidu.com​/​view​/​444964.htm _blank​),這是它的一大優點,使開發者能更深入的瞭解其內部實現機制。
除此之外,Struts的優點主要集中體現在兩個方面:Taglib和頁面導航。Taglib是Struts的標記庫,靈活運用,能大大提高開發效率。另外,就目前國內的JSP開發者而言,除了使用JSP自帶的常用標記外,很少開發自己的標記,或許Struts是一個很好的起點。
關於頁面導航,我認為那將是今後的一個發展方向,事實上,這樣做, 使系統的脈絡更加清晰。通過一個配置檔案 (​http:​/​​/​baike.baidu.com​/​view​/​2117618.htm _blank​),即可把握整個系統各部分之間的聯絡,這對於後期的維護有著莫大的好處。尤其是當另一批開發者接手這個專案時,這種優勢體現得更加明顯。
MVC即Model-View-Controller的縮寫,是一種常用的設計模式。MVC 減弱了業務邏輯介面和資料介面之間的耦合,以及讓檢視 (​http:​/​​/​baike.baidu.com​/​view​/​71981.htm _blank​)層更富於變化。Struts 是MVC的一種實現,它將 Servlet和 JSP 標記(屬於 J2EE 規範)用作實現的一部分。Struts繼承了MVC的各項特性,並根據J2EE的特點,做了相應的變化與擴充套件。
2.1.2 什麼是Spring
Spring也是一個開源框架,它由Rod Johnson建立。它是為了解決企業應用開發的複雜性而建立的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限於伺服器端的開發。從簡單性、可測試性和鬆耦合的角度而言,任何Java應用都可以從Spring中受益。
目的:解決企業應用開發的複雜性
功能:使用基本的JavaBean代替EJB,並提供了更多的企業應用功能
範圍:任何Java應用
簡單來說,Spring是一個輕量級的控制反轉(IoC (​http:​/​​/​baike.baidu.com​/​view​/​146665.htm _blank​))和麵向切面(AOP (​http:​/​​/​baike.baidu.com​/​view​/​73626.htm _blank​))的容器框架。
輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小隻有1MB多的JAR檔案裡釋出。並且Spring所需的處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地,Spring應用中的物件不依賴於Spring的特定類。
控制反轉——Spring通過一種稱作控制反轉(IoC)的技術促進了鬆耦合。當應用了IoC,一個物件依賴的其它物件會通過被動的方式傳遞進來,而不是這個物件自己建立或者查詢依賴物件。你可以認為IoC與JNDI相反——不是物件從容器中查詢依賴,而是容器在物件初始化時不等物件請求就主動將依賴傳遞給它。
面向切面——Spring提供了面向切面程式設計 (​http:​/​​/​baike.baidu.com​/​view​/​1865230.htm _blank​)的豐富支援,允許通過分離應用的業務邏輯與系統級服務(例如審計(auditing)和事務(transaction)管理)進行內聚性的開發。應用物件只實現它們應該做的——完成業務邏輯——僅此而已。它們並不負責(甚至是意識)其它的系統級關注點,例如日誌或事務支援。
容器——Spring包含並管理應用物件的配置和生命週期,在這個意義上它是一種容器,你可以配置你的每個bean如何被建立——基於一個可配置原型 (​http:​/​​/​baike.baidu.com​/​view​/​228368.htm _blank​)(prototype),你的bean可以建立一個單獨的例項或者每次需要時都生成一個新的例項——以及它們是如何相互關聯的。然而,Spring不應該被混同於傳統的重量級的EJB容器,它們經常是龐大與笨重的,難以使用。
框架——Spring可以將簡單的元件配置、組合成為複雜的應用。在Spring中,應用物件被宣告式地組合,典型地是在一個XML檔案裡。Spring也提供了很多基礎功能(事務管理、持久化框架整合等等),將應用邏輯的開發留給了你。
所有Spring的這些特徵使你能夠編寫更乾淨、更可管理、並且更易於測試的程式碼。它們也為Spring中的各種模組提供了基礎支援。
2.1.3 什麼是Hibernate
Hibernate是一個開放原始碼的物件 (​http:​/​​/​baike.baidu.com​/​view​/​2387.htm _blank​)關係對映框架,它對JDBC進行了非常輕量級的物件封裝,使得Java程式設計師可以隨心所欲的使用物件程式設計思維來操縱資料庫 (​http:​/​​/​baike.baidu.com​/​view​/​1088.htm _blank​)。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程式使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成資料持久化的重任。
Hibernate的核心介面一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心介面在任何開發中都會用到。通過這些介面,不僅可以對持久化物件 (​http:​/​​/​baike.baidu.com​/​view​/​2387.htm _blank​)進行存取,還能夠進行事務控制。下面對這五個核心介面分別加以介紹。
Session介面:Session介面負責執行被持久化物件的CRUD操作(CRUD的任務是完成與資料庫 (​http:​/​​/​baike.baidu.com​/​view​/​1088.htm _blank​)的交流,包含了很多常見的SQL語句。)。但需要注意的是Session物件 (​http:​/​​/​baike.baidu.com​/​view​/​2442531.htm _blank​)是非執行緒安全的。同時,Hibernate的session不同於JSP應用中的HttpSession。這裡當使用session這個術語時,其實指的是Hibernate中的session,而以後會將HttpSession物件稱為使用者session。
SessionFactory介面:SessionFactory介面負責初始化Hibernate。它充當資料儲存源的代理,並負責建立Session物件。這裡用到了工廠模式 (​http:​/​​/​baike.baidu.com​/​view​/​1306799.htm _blank​)。需要注意的是SessionFactory並不是輕量級的,因為一般情況下,一個專案通常只需要一個SessionFactory就夠,當需要操作多個資料庫時,可以為每個資料庫指定一個SessionFactory。
Tracsaction介面:Transaction介面負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事務處理程式碼。
Query和Criteria介面:Query和Criteria介面負責執行各種資料庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。
Configuration介面:Configuration介面負責配置並啟動Hibernate,建立SessionFactory物件。在Hibernate的啟動的過程中,Configuration類的例項首先定位對映文件位置、讀取配置,然後建立SessionFactory物件。
2.2 JSP技術介紹
JSP(JavaServer Pages)是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態網頁技術標準。它是在傳統的網頁HTML檔案(*.htm,*.html)中插入Java程式段(Scriptlet)和JSP標記(tag),從而形成JSP檔案(*.jsp)。
用JSP開發的Web應用是跨平臺的,即能在Linux下執行,也能在其他作業系統上執行。
JSP技術使用Java程式語言編寫類XML的tags和scriptlets,來封裝產生動態網頁的處理邏輯。網頁還能通過tags和scriptlets訪問存在於服務端的資源的應用邏輯。JSP將網頁邏輯與網頁設計和顯示分離,支援可重用的基於元件的設計,使基於Web的應用程式的開發變得迅速和容易。
Web伺服器在遇到訪問JSP網頁的請求時,首先執行其中的程式段,然後將執行結果連同JSP檔案中的HTML程式碼一起返回給客戶。插入的Java程式段可以運算元據庫、重新定向網頁等,以實現建立動態網頁所需要的功能。
JSP與Java Servlet一樣,是在伺服器端執行的,通常返回該客戶端的就是一個HTML文字,因此客戶端只要有瀏覽器就能瀏覽。
JSP的1.0規範的最後版本是1999年9月推出的,12月又推出了1.1規範。目前較新的是JSP1.2規範,JSP2.0規範的徵求意見稿也已出臺。
JSP頁面由HTML程式碼和嵌入其中的Java程式碼所組成。伺服器在頁面被客戶端請求以後對這些Java程式碼進行處理,然後將生成的HTML頁面返回給客戶端的瀏覽器。Java Servlet 是JSP的技術基礎,而且大型的Web應用程式的開發需要Java Servlet和JSP配合才能完成。JSP具備了Java技術的簡單易用,完全的物件導向,具有平臺無關性且安全可靠,主要面向因特網的所有特點。
2.3 SQL Server 2000資料庫簡介
SQL Server 是一個關聯式資料庫管理系統,它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同開發的,於1988 年推出了第一個OS/2 版本。在Windows NT 推出後,Microsoft與Sybase 在SQL Server 的開發上就分道揚鑣了。Microsoft 將SQL Server 移植到Windows NT系統上,專注於開發推廣SQL Server 的Windows NT 版本;Sybase 則較專注於SQL Server在UNIX 作業系統上的應用。在本書中介紹的是Microsoft SQL Server 以後簡稱為SQL Server或MS SQL Server。SQL Server 2000 是Microsoft 公司推出的SQL Server 資料庫管理系統的一個版本。該版本繼承了SQL Server 7.0 版本的優點同時又比它增加了許多更先進的功能,具有使用方便,可伸縮性好與相關軟體整合程度高等優點,可跨越從執行Microsoft Windows 98 的膝上型電腦到執行Microsoft Windows 7 的大型多處理器的伺服器等多種平臺使用。
2.4 TOMCAT技術簡介
Tomcat 很受廣大程式設計師的喜歡,因為它執行時佔用的系統資源 (​http:​/​​/​baike.baidu.com​/​view​/​53557.htm _blank​)小,擴充套件性好,支援負載平衡與郵件服務等開發應用系統常用的功能。Tomcat 是一個輕量級應用伺服器 (​http:​/​​/​baike.baidu.com​/​view​/​899.htm _blank​),在中小型系統和併發訪問使用者不是很多的場合下被普遍使用,是開發和除錯JSP 程式的首選。可以這樣認為,當在一臺機器上配置好Apache 伺服器,可利用它響應對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache 伺服器的擴充套件,但它是獨立執行的,所以當你執行tomcat 時,它實際上作為一個與Apache 獨立的程式單獨執行的。當配置正確時,Apache 為HTML頁面服務,而Tomcat 實際上執行JSP 頁面和Servlet。另外,Tomcat和IIS、Apache等Web伺服器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器 (​http:​/​​/​baike.baidu.com​/​view​/​864334.htm _blank​),獨立的Servlet容器是Tomcat的預設模式。不過,Tomcat處理靜態HTML的能力不如Apache伺服器。目前Tomcat最新版本為7.0.11 Released 。
3. 系統實現過程
3.1 系統總體設計圖
實際上我們採用的SSH設計框架是一種MVC設計模式。V層:即表現層,我們用JSP,HTML,Struts來實現。C層:即控制層,也稱為業務邏輯層,一般我們通過SSH的Action來實現。M層則是模型層,這一層負責將C層、V層連線在一起,並將資料進行持久化,持久化一般通過Hibernate來實現。大概可以將這種設計模式歸結為下圖:
圖1
3.2 系統開發方案圖
設計初始,首先我們是研究本系統開發所需要用到的資料表。經過調研,我們將會了解到系統中所參與的元素,隨後生成資料字典,再進行合理的結構安排,最終建立資料庫及相應表。做完這個步驟,我們就要開始進入SSH的開發了。
第一步:將資料庫連線到Myeclipse,用Hibernate進行逆向工程,將資料表新增到專案中。第二步:編寫FORM、ACTION程式碼,表單即JSP頁面元素,ACTION的作用則是將我們的業務編寫為JAVA程式碼。第三步:編寫表現層,即使用者接觸的介面,用JSP、HTML實現。
三個步驟中,實際上第一步在大型專案中需要做的更多,第二步第三步一般則是同時進行。這裡我們針對的是筆者自己的開發。
三個步驟詳細圖如下:
圖2
3.3 軟硬體要求及安裝
1.計算機作業系統安裝(使用WIN7)
2.編譯軟體安裝:下載安裝檔案,安裝Myeclipse 6.0,依照步驟進行註冊、工作空間設定。
3.安裝JDK,並設定系統環境變數(PATH、CLASSPATH、JAVAHOME)。
4.安裝資料庫(SQL Server 2000)
安裝後應注意打上SP3以上的補丁,並且需附加3個JDBC驅動程式包:msbase.jar、mssqlserver.jar、msutil.jar
5.安裝TOMCAT伺服器
6.軟體整合
軟體全部安裝完畢後,將Myeclipse與TOMCAT整合;將SQL Server的三個補丁包複製到JDK的*jrelibext資料夾下。
4. 系統開發
4.1需求分析
4.1.1 開發原因
現存的運動會管理系統,大多是單機的、封閉的,這樣的系統在嚴重降低管理效率的同時,也會因為太過依靠系統管理員的個人工作而導致一些資訊輸入錯誤,而且,因為系統的封閉性,往往也不利於資訊公佈,讓參與者能夠第一時間拿到第一手資料。
面對缺乏一款網路型運動會賽前管理系統的現狀,我們才著手開發這樣一個基於JSP的運動會賽前管理子系統。
4.1.2 功能及使用人員需求
本系統主要提供給三類運動會參與者使用:管理員、老師、學生。
管理員模組功能:專案稽核、報名人數及兼報人數統計、抽籤、分配號碼、預編排、釋出秩序冊等。
老師模組功能:查詢報名情況、檢視秩序冊、檢視抽籤結果。
學生模組功能:報名、取消報名、檢視本系抽籤結果、檢視自己比賽場地安排、檢視秩序冊。
4.1.3 開發影響
本系統針對高校運動會賽前管理而開發。開發完成後能夠讓各種參與者通
過網路參與到運動會,極大的方便運動會的賽前管理,大大的節省賽前報名、籌措的時間,極具意義。
5. 概要設計
5.1總體設計
5.1.1 系統基本設計
(1)需求規定:程式按人員分為:管理員模組、教師模組、學生模組;按功能分為:登入模組、報名模組、抽籤模組、統計模組、號碼分配模組、預編排模組、秩序冊生成模組。每一類參與者能根據身份實現功能模組中的幾個。
(2)執行環境:系統開發完成後,以裝有window 2003 servers系統的服務機為伺服器端,客戶端則只需要配備IE瀏覽器即可。
(3)系統設計流程:設計、搭建資料庫,確定表及表的欄位;繪製系統總體設計圖、各模組詳細流程圖、資料流圖,最後編寫程式碼。
5.1.2 系統設計圖
(1)系統完整E-R圖

(2)詳細流程圖
(3)系統資料流圖
5.13 資料庫設計
系統採用的SQL Server2000資料庫,按照需求,建立了三張表,如下:
表一:使用者表
欄位名稱 值型別 說明 是否非空 賦值型別
ID(主鍵) int 自動獲取,序號 是 自增
Name varchar 真實姓名 否 插入
Departmentname(外來鍵) varchar 所屬系別 否 插入
Age int 年齡 否 插入
Password varchar 密碼 否 插入
Game1(外來鍵) varchar 運動員報名參賽專案一 否 插入
Game2(外來鍵) varchar 運動員報名參賽專案二 否 插入
Account int 登入帳號(同學號) 否 插入
Class_ varchar 所屬班級 否 插入
haoma int 參賽號碼 否 插入
S1 varchar 比賽一場地 否 插入
S2 varchar 比賽二場地 否 插入
C1 int 比賽一場地標記 否 插入
C2 int 比賽二場地標記 否 插入
D1 int 比賽一跑道標記 否 插入
D2 int 比賽二跑道標記 否 插入
表二:專案表
欄位名稱 值型別 說明 是否非空 賦值型別
ID(主鍵) Int 自動獲取,序號 是 自增
Xname(外來鍵) varchar 專案名稱 否 插入
Place varchar 專案屬性(田賽、徑賽) 否 插入
Changci int 專案分場次 否 插入
表三:系別表
欄位名稱 值型別 說明 是否非空 賦值型別
ID(主鍵) int 自動獲取,序號 是 自增
Departname(外來鍵) varchar 系別名 否 插入
Sign int 抽籤號 否 插入
totle int 報名人數 否 插入
5.2詳細設計
5.2.1登入模組
(1)使用者登入:系統使用者為預先在資料庫匯入使用者,無法通過註冊新增。使用者帳號設定為與學號、編號一致。假設0001-9999為學生使用者,10000為管理員賬戶,10001-99999為教師賬戶,登入模組根據登入表單提交的資訊,判斷使用者身份,同時提取資料庫資訊進行帳號密碼核對,核對完成就根據身份跳轉如相應介面。
5.2.2學生模組
(2)報名模組:程式從專案表提取出專案名稱,用下拉選單的形式顯示給學生,學生通過下拉選單選擇欲報名的專案。提交以後,系統將會查詢Student表中的Game1,Game2欄位,如果兩個欄位都有值,則報名失敗,否則再判斷新輸入值是否與原來存在的某值相同,如果為否,報名成功。
(3)取消報名模組:程式從Student表中提取Game1、Game2的值給使用者,使用者通過選擇其中的專案來實現取消功能。
5.2.3教師模組
(4)按班級查詢報名情況:通過選擇班級,來顯示對應班級所有同學的參與情況。效果如圖:
5.2.4管理員模組
(5)稽核模組:程式調出運動員以及他們的報名情況,管理員通過選擇其中的一個或者多個來取消他們的報名資格。執行時,程式通過表單傳入的專案值得及運動員名字來清除資料庫中的資料,效果與運動員的取消報名一樣。效果如圖:
(6)兼報查詢:為了更好的瞭解運動員的報名情況,設定了這一模組。本模組通過橫豎座標,來顯示專案間兩兩兼報的人數。程式通過迴圈查詢到兼報人數以後,存入陣列,再通過陣列顯示到JSP頁面上。效果如圖:
(7)抽籤模組:各系部抽籤決定號碼歸屬,是秩序冊生成的一個重大前奏。通過程式碼,生成相應個數的隨機數,將這些隨機數賦給專案表的sign欄位,再將這個陣列進行氣泡排序,將隨機數換為順序的1-n的數,再存入專案表,然後顯示於頁面上。測試結果如下:
(8)號碼分配模組:系統根據抽籤結果,將專案按結果一一取出,然後按系別抽籤順序查詢人員表,統計人員數量,分配相應號碼。
(9)預編排模組:當所有運動員都被分配號碼以後,便可以對運動員進行預編排了,特別是對於徑賽專案,預編排顯得尤為重要。程式首先查詢相應徑賽專案的運動員參與者,然後對這些參與者按照號碼進行氣泡排序,按排序結果進行分配相應道次,號碼靠前的運動員,分配的跑道也相對有利。
(10)秩序冊生成模組:當所有預編排已經完成,便可以生成秩序冊了,這是賽前管理子系統的最後一步。秩序冊分為田賽跟徑賽兩塊,相應的有兩種顯示方式,測試結果如下:
5.2.5 測試結果分析
本系統經過反覆測試,本程式在功能上已經基本完成,與設計任務書基本一致。模組與模組之間耦合均不大,缺少某一模組,另外的模組也能夠順利執行。這很有利於將來進行維護、更改。
演算法方面,由於個人思維能力有限,如:抽籤、分配號碼、生成秩序冊等演算法所耗費資源較大,反映時間也較慢。
模組結構方面,由於自身並沒有類似例項的開發,對運動會流程的瞭解也較少,可能功能與功能之間存在較大獨立性,沒有整體感。
介面比較缺乏友好,由於時間問題得不到很好的完善。
總之,本系統目前只能說是粗糙版本,雖然功能相當齊全,但是卻缺乏美感,與實際投入使用的差距也較大。然而我認為,這些問題只是修飾性問題,我相信,只要給我以足夠的時間,我一定能夠開發出一個能夠投入使用的,較完善的運動會賽前管理子系統。
6.總結
畢業設計階段是一個大學生畢業前必須經歷的階段,它不僅是檢驗大學生四年大學的學習成果,也是大學生走出校園後,向社會證明自己的重要憑證。
畢業設計考驗的是大學生的綜合能力。很多人選擇的畢業設計課題是自己從未遇到過的,設計手段也是自己從未使用過的,設計的知識是自己從未學過的。這時候,我們必須很快的去學習一項新的技術,甚至瞭解一個新的領域。這就需要大學生需要極強大的自學、適應能力。能夠很快的將一門新技術上手並投之運用,這是現代企業極需要的人才,也是大學生必備的能力。
課題設計中,我們會遇到不少困難。新的知識點在不斷出現,新的錯誤也隨之而來,而我們應該如何處理這些錯誤呢?這體現的是大學生處理問題的能力。去圖書館藉資料、上網釋出論壇、聯絡老師、同學尋求幫助,這些都是解決問題的途徑。須知,個人的力量始終有限,當我們遇到自己沒法解決的問題時,應該虛心求教他人,當然,有迎難而上的決心,在困難面前決不退縮也是我們必備的。
設計是一個工程,一個工程的完成當然需要有一定的步驟。這考驗到我們處理事情的能力。並不是拿到一項任務就不顧一切埋頭苦幹,需知:磨刀不誤砍柴工!在開始畢業設計之前,我們需要做詳細的課題調查。設計開始時,我們應該明確自己需要做什麼,設計分幾個步驟,應該分配多少時間完成各個步驟,而不是做下去的時候,前後衝突,問題疊出,最後做的一塌糊塗,這也是我們走出社會後接受一項任務或者工程的大忌。
許多人曾經這樣認為:大學學不到多少有用的東西。通過這次設計,我明白了這句話是大錯特錯。大學四年,我們最主要學的不是知識,而是能力!自學的能力、處理困難的能力、交流能力、統籌能力。
畢業設計歷經三個月,最終是完成了。想想三個月前拿到課題時的茫然,以及三個月後現在完成課題後對自己的信心與肯定,它的必要性不言而喻!
致謝語
幾經努力終於完成了本次畢業設計,首先非常感謝我的指導老師樑淘導師,在樑淘導師的鼎力協助以及嚴格的監督之下,本次設計才得以順利完成,樑老師嚴謹的作風給我留下了很深的印象。
同時也要感謝其它給予我們關心和幫助的老師們,雖然他們並沒有直接指導我們,但在我們畢業設計過程中,為我們排憂解難,給我們提供了很大便利,使我可以專心地完成畢業設計。
最後還要感謝一下在工程讀書以來所有指導我的老師們,在他們悉心的教導之下,我們即將成為對社會有用的人才,使我可以跨入社會,為國家做貢獻。
參考文獻
[1]王城君,尚武網頁設計三合一實用教程.北京:清華大學出版社,2008
[2]耿祥義,張躍平.JSP實用教程.北京:清華大學出版社,2007
[3]高洪巖.至簡SSH:精通JAVA WEB實用開發技術.北京:電子工業出版社,2009
[4]鄧琨,呂志峰.Java語言程式設計教程.北京:清華大學出版社,2010
[5](美)埃克爾 著,陳昊鵬 譯.Java程式設計思想.福州:機械工業出版社,2007
[6]鄧子云.JSP網路程式設計從基礎到實踐.北京:電子工業出版社,2009
[7]曹洐龍,徐慧 編著.JSP網路開發實用工程案例.北京:人民郵電出版社,2008
[8]郭峰.我的J2EE成功之路.北京:電子工業出版社,2009
[9] Scott W.Ambler.物件導向軟體開發教程.福州:機械工業出版社
[10]明日科技.JSP開發技術大全.人民郵電出版社,2007
PAGE
第 |1 頁
獲取專案原始檔,聯絡Q:1225467431,可指導其它畢設,課設

相關文章