畢業(yè)論文---基于android的學(xué)生考勤系統(tǒng)[共20頁]_第1頁
畢業(yè)論文---基于android的學(xué)生考勤系統(tǒng)[共20頁]_第2頁
畢業(yè)論文---基于android的學(xué)生考勤系統(tǒng)[共20頁]_第3頁
畢業(yè)論文---基于android的學(xué)生考勤系統(tǒng)[共20頁]_第4頁
畢業(yè)論文---基于android的學(xué)生考勤系統(tǒng)[共20頁]_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 本科畢業(yè)論文(設(shè)計(jì))題目:Android平臺(tái)下學(xué)生日??记谛畔⒐芾碥浖脑O(shè)計(jì)與 實(shí)現(xiàn)姓 名: 李城城 學(xué) 號(hào): 1142151214 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 院 系: 信息工程學(xué)院 指導(dǎo)老師: 丁春玲 職稱學(xué)位: 講師/碩士 完成時(shí)間: 2014年5月 教務(wù)處制 / 安徽新華學(xué)院本科畢業(yè)論文(設(shè)計(jì))獨(dú)創(chuàng)承諾書本人按照畢業(yè)論文(設(shè)計(jì))進(jìn)度計(jì)劃積極開展實(shí)驗(yàn)(調(diào)查)研究活動(dòng),實(shí)事求是地做好實(shí)驗(yàn)(調(diào)查)記錄,所呈交的畢業(yè)論文(設(shè)計(jì))是我個(gè)人在導(dǎo)師指導(dǎo)下進(jìn)行的研究工作及取得的研究成果。據(jù)我所知,除文中特別加以標(biāo)注引用參考文獻(xiàn)資料外,論文(設(shè)計(jì))中所有數(shù)據(jù)均為自己研究成果,不包含其他人已經(jīng)發(fā)表或撰寫

2、過的研究成果。與我一同工作的同志對(duì)本研究所做的工作已在論文中作了明確說明并表示謝意。畢業(yè)論文(設(shè)計(jì))作者簽名: 日期: 安徽新華學(xué)院2015屆本科畢業(yè)論文(設(shè)計(jì)) 基于Android平臺(tái)下學(xué)生日常考勤信息管理軟件的設(shè)計(jì)與實(shí)現(xiàn)摘 要學(xué)生考勤管理是高校管理重要環(huán)節(jié)之一,而高校學(xué)生考勤管理存在著人工管理效率低、信息較分散、難于統(tǒng)計(jì)、利用率低的問題,對(duì)學(xué)生出勤信息的動(dòng)態(tài)掌握造成了困難。并且考勤管理占用了較多的教學(xué)時(shí)間,往往會(huì)影響正常的教學(xué)計(jì)劃,同樣也會(huì)給學(xué)生的帶來不必要的麻煩。簡化教學(xué)工作,提高學(xué)生學(xué)習(xí)質(zhì)量已經(jīng)成為高校中要解決的問題。 這一段可以再簡潔一點(diǎn)隨著近些年移動(dòng)互聯(lián)網(wǎng)的不斷壯大和移動(dòng)平臺(tái)的飛速

3、發(fā)展,為學(xué)校管理的改善提供了新的渠道和手段。利用移動(dòng)平臺(tái)中應(yīng)用很廣泛的安卓系統(tǒng),在手機(jī)和平板電腦上搭建的便捷高效教學(xué)管理系統(tǒng)學(xué)生客戶端,提出一種包含Android移動(dòng)客戶端(Android端)、PC Web客戶端(PC端)和Web服務(wù)端(服務(wù)端)混合而成的學(xué)生考勤管理系統(tǒng)。使用基于Android平臺(tái)的移動(dòng)設(shè)備實(shí)現(xiàn)電子點(diǎn)名功能,通過網(wǎng)絡(luò)將學(xué)生考勤數(shù)據(jù)實(shí)時(shí)上傳至服務(wù)器,并用J2EE實(shí)現(xiàn)考勤數(shù)據(jù)的動(dòng)態(tài)管理和查看。為學(xué)生提供查詢各課程考勤情況的平臺(tái),優(yōu)化了教學(xué)模式,也提高了學(xué)生的學(xué)習(xí)積極性,還提高了學(xué)校管理工作效率。在這一段,應(yīng)該寫你的論文做的主要工作,如用什么技術(shù)在什么實(shí)現(xiàn)了哪些功能等。再加一個(gè)第三

4、段,簡要說一下你的論文工作的意義關(guān)鍵字:安卓;教學(xué)管理系統(tǒng);學(xué)生客戶端IDesign and implementation of studentattendanceinformation management softwarebased on Android platform AbstractKey Words: Graphical User Interface;Plane game;Java LanguageII目 錄1 緒 論21.1 開發(fā)背景21.2 可行性分析32 開發(fā)環(huán)境和工具簡介42.1 Android及SDK介紹42.2 Eclipse簡介42.3 MyEclipse簡介53 需

5、求分析63.1 系統(tǒng)性能要求63.2 功能需求分析64 詳細(xì)設(shè)計(jì)84.1手機(jī)客戶端84.1.1 用戶登陸模塊84.1.2 學(xué)生信息管理模塊104.1.3 課程管理模塊114.1.4 簽到模塊124.2服務(wù)器端模塊134.2.1通訊數(shù)據(jù)格式定義134.2.2通訊數(shù)據(jù)格式定義144.2.3發(fā)送返回?cái)?shù)據(jù)模塊154.3網(wǎng)頁客戶頓164.3.1登錄模塊164.3.2學(xué)生信息管理模塊174.3.3課程管理模塊174.3.4簽到模塊175 結(jié) 論19致 謝20參考文獻(xiàn)211 緒 論隨著科技的發(fā)展,移動(dòng)通訊平臺(tái)在不斷地發(fā)展中愈來愈加成熟,中國手機(jī)市場(chǎng)銷量很龐大,其中,安卓系統(tǒng)在手機(jī)中的發(fā)展最為迅速。2012年

6、1月20日,谷歌報(bào)告顯示,通過谷歌服務(wù)器激活的Android設(shè)備用戶總數(shù)已經(jīng)超過2.5億,而Android在中國大陸的智能手機(jī)操作系統(tǒng)市場(chǎng)占有率達(dá)到了68.4%。安卓系統(tǒng)以其開放的平臺(tái),眾多、免費(fèi)的應(yīng)用,華麗、新鮮的運(yùn)行界面,簡單、親切的用戶體驗(yàn)而備受消費(fèi)者的喜愛。在高校中,學(xué)生管理對(duì)學(xué)校至關(guān)重要,學(xué)生考勤管理是學(xué)校校管理部分之一。但是傳統(tǒng)教學(xué)中,學(xué)生的考勤信息僅作為教師課程總評(píng)結(jié)果中對(duì)學(xué)生日常表現(xiàn)的評(píng)價(jià)依據(jù)。而且還存在以下一些問題:考勤信息由教師人工操作、管理,效率低下;不同教師所掌握的考勤信息分散、缺乏聯(lián)系;信息匯總往往發(fā)生在期末總評(píng)期間,實(shí)時(shí)性差;記錄形式不規(guī)范統(tǒng)計(jì)困難;教師對(duì)教學(xué)期間的

7、缺勤信息缺乏及時(shí)的處理,用率低下。筆紙記錄,分析整理在學(xué)校的日常管理中發(fā)揮的作用微乎其微,從而導(dǎo)致考勤信息在高??记诠芾碇袩o法發(fā)揮重要作用。為了充分利用教師的考勤信息,提出首先以Android平臺(tái)為出發(fā)點(diǎn)建立學(xué)生考勤管理系統(tǒng)輔助高校管理?;贏ndroid系統(tǒng)的考勤管理系統(tǒng)分為兩個(gè)部分,一部分為教師客戶端,為教師對(duì)學(xué)生的考勤,另一部分為網(wǎng)頁客戶端,管理員通過此客戶端可以對(duì)學(xué)生老師和班級(jí)等信息進(jìn)行管理。1.1 開發(fā)背景考勤管理系統(tǒng)客戶端已經(jīng)基本實(shí)現(xiàn)了預(yù)期的功能,實(shí)現(xiàn)了在安卓手機(jī)客戶端的基本功能。教師用戶可以通過客戶端實(shí)現(xiàn)了登錄功能、查看相應(yīng)課程簽到情況功能,并能添加學(xué)生簽到記錄,查詢學(xué)生信息,添

8、加學(xué)生信息的功能,并在網(wǎng)頁端實(shí)現(xiàn)了包括學(xué)生查詢自己的考勤情況和個(gè)人信息,幫助同學(xué)解決了不能應(yīng)用考勤管理系統(tǒng)的問題,管理員可以后臺(tái)登陸對(duì)學(xué)生和教師信息等進(jìn)行管理。手機(jī)客戶端和網(wǎng)頁客戶端共同實(shí)現(xiàn)了C/S和B/S兩種模式,讓考勤管理系統(tǒng)更加完整和豐滿。不過由于技術(shù)水平有限,可能系統(tǒng)仍然存在著不完善的地方,如安全性考慮這段內(nèi)容不應(yīng)該放在第一章不足等等。仍然需要進(jìn)一步的完善和改進(jìn)。1.2 可行性分析近些年,移動(dòng)設(shè)備的高速發(fā)展,使得手機(jī)等移動(dòng)設(shè)備高速智能化,移動(dòng)網(wǎng)絡(luò)通信正在以前所未有的驚人速度走入人們的生活、工作和學(xué)習(xí)中,提高了工作學(xué)習(xí)的效率,增加了獲取信息的渠道,突破了相互交流的時(shí)空界限??记诠芾硐到y(tǒng)可

9、以基于移動(dòng)平臺(tái)安卓系統(tǒng)進(jìn)行開發(fā),幫助師生輕松解決教學(xué)中工作學(xué)習(xí)等問題??尚行苑治黾炔荒芤云w全,也不能過于追求細(xì)節(jié),必須為決策提供有價(jià)值的證據(jù)。軟件領(lǐng)域的可行性分析主要考慮四個(gè)因素:技術(shù)可行性分析,經(jīng)濟(jì)、社會(huì)效益分析,法律可行性分析,開發(fā)人員與進(jìn)程可行性分析。技術(shù)可行性分析:安卓系統(tǒng)是基于Java編寫的,因此手機(jī)客戶端采用Eclipse配上AndroidSDK,完全可以實(shí)現(xiàn)系統(tǒng)功能,開發(fā)人員都具有一定Java功底,加之安卓平臺(tái)開放性,網(wǎng)上很輕松的可以查看到各種實(shí)現(xiàn)代碼,手機(jī)客戶端在技術(shù)上是可行的。網(wǎng)頁客戶端用javaweb (java)編寫,在Myeclipse環(huán)境下實(shí)現(xiàn),運(yùn)用面向?qū)ο蟮木幊趟?/p>

10、想進(jìn)行Web開發(fā),并且是以編譯方式執(zhí)行,具有較高的開發(fā)效率和運(yùn)行性能。后臺(tái)數(shù)據(jù)庫軟件選用微軟公司的大型數(shù)據(jù)庫服務(wù)器MySQL。因此在技術(shù)上是可行的。經(jīng)濟(jì)、社會(huì)效益分析:主要進(jìn)行成本-效益分析。從成本方面看,本系統(tǒng)的實(shí)現(xiàn),計(jì)算機(jī)和網(wǎng)絡(luò)硬件已經(jīng)擁有,由于安卓是個(gè)開放的平臺(tái),Eclipse與AndroidSDK都是免費(fèi)提供的,網(wǎng)絡(luò)客戶端所用軟件也都已經(jīng)配備,因此成本很低;從效益方面看,本客戶端主要是為廣大師生提供便利,暫時(shí)還不會(huì)帶來任何經(jīng)濟(jì)收益,不過經(jīng)過完善后可以考慮作為產(chǎn)品在社會(huì)上推廣,加上安卓系統(tǒng)的廣泛應(yīng)用,相信產(chǎn)品的盈利空間是很大的。法律可行性分析:從法律角度看,Android是個(gè)開放的平臺(tái),

11、代碼是開放的,加上基于Android的學(xué)生考勤管理系統(tǒng)主要為師生提供便利,作為畢業(yè)設(shè)計(jì),并不以盈利為目的,且是自主開發(fā)設(shè)計(jì),因此不會(huì)在社會(huì)上引起侵權(quán)或其它責(zé)任問題,在法律上是可行的。開發(fā)人員與進(jìn)程可行性分析:開發(fā)人員都有一定的Java開發(fā)功底,并且學(xué)習(xí)能力較強(qiáng)以及指導(dǎo)老師的悉心教導(dǎo)完全可以勝任此次開發(fā)。由于此系統(tǒng)開發(fā)并不是以盈利為目的,開發(fā)周期可以相對(duì)較長,因此開發(fā)進(jìn)程方面是可行的。2 開發(fā)環(huán)境和工具簡介2.1 Android及SDK介紹SDK指是軟件開發(fā)包,被軟件開發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、操作系統(tǒng)等建立應(yīng)用軟件的開發(fā)工具的集合。因此,Android SDk指的既是An

12、droid專屬的軟件開發(fā)工具包。Android是Google公司推出的手機(jī)開發(fā)平臺(tái),和iPhone相似,Android使用了WebKit瀏覽器引擎,具備觸摸屏、高級(jí)圖形顯示和上網(wǎng)功能,在手機(jī)上可以實(shí)現(xiàn)查看電子郵件、搜索網(wǎng)址和觀看視頻節(jié)目等功能,較iPhone等其他手機(jī)更強(qiáng)調(diào)搜索功能,界面更強(qiáng)大,可以說是一種融入全部Web應(yīng)用的單一平臺(tái)。Android手機(jī)系統(tǒng)最震撼人心之處在于其開放性和服務(wù)免費(fèi)。Android是一個(gè)對(duì)第三方軟件完全開放的平臺(tái),開發(fā)者在為其開發(fā)程序時(shí) 擁有更大的自由度,突破了iPhone等只能添加為數(shù)不多的固定軟件的枷鎖,使得應(yīng)用的安裝更加方便;同時(shí)與Windows Mobile

13、、Symbian等廠商不同,Android操作系統(tǒng)免費(fèi)向開發(fā)人員提供,這樣可節(jié)省近三成成本。對(duì)Android的相關(guān)技術(shù)介紹可以再適當(dāng)增加一些2.2 Eclipse簡介Eclipse是一個(gè)著名的跨平臺(tái)的自由集成開發(fā)環(huán)境軟件。最初主要用來Java語言開發(fā),現(xiàn)在人們可以通過安裝插件使其作為C+、Python、PHP等其他語言的開發(fā)工具。Eclipse的本身只是一個(gè)框架平臺(tái),但是隨著眾多插件的產(chǎn)生,使得Eclipse擁有很好的靈活性。許多軟件開發(fā)商以Eclipse為框架開發(fā)自己的IDE。雖然大多數(shù)用戶更加樂于將Eclipse當(dāng)作Java集成開發(fā)環(huán)境來使用,但Eclipse的作用已經(jīng)不僅限于此。Ecli

14、pse還是含有插件開發(fā)環(huán)境,這個(gè)組件主允許希望擴(kuò)展Eclipse的軟件開發(fā)人員構(gòu)建與Eclipse環(huán)境無縫集成的工具。由于Eclipse中的每樣?xùn)|西都是插件,對(duì)于給Eclipse提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場(chǎng)所。這種平等和一致性并不僅限于Java開發(fā)工具。盡管Eclipse是使用 Java 語言開發(fā)的,但它的用途并不限于 Java 語言;例如,支持諸如 C/C+ 和 COBOL 等編程語言的插件已經(jīng)可用,或預(yù)計(jì)將會(huì)推出。Eclipse 框架還可用來作為與軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容管理系統(tǒng)。本系統(tǒng)即通過Eclipse,

15、添加Android做插件,匹配上AndroidSDK進(jìn)行軟件的開發(fā)。2.3 MyEclipse簡介Eclipse和MyEclipse你用到哪一個(gè)就寫哪一個(gè)。MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對(duì)EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML、Struts、JSP、CSS、Javascript、Spring、SQL,Hibernate。M

16、yEclipse 是一個(gè)十分優(yōu)秀的用于開發(fā)Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開源產(chǎn)品的支持十分不錯(cuò)。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC數(shù)據(jù)庫鏈接工具等多項(xiàng)功能。在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類:JavaEE模型、WEB開發(fā)工具、EJB開發(fā)工具、應(yīng)用程序服務(wù)器的連接器、JavaEE項(xiàng)目部署服務(wù)、數(shù)據(jù)庫服務(wù)、MyEclipse整合幫助。對(duì)于以上每一種功能上的類別,在Eclipse中都有相應(yīng)

17、的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。3 需求分析3.1 系統(tǒng)性能要求一個(gè)好的教學(xué)管理系統(tǒng)應(yīng)該具有一下特性:(1)易操作和功能簡單明確不令人誤解。一個(gè)良好的考勤管理系統(tǒng)應(yīng)該功能明確,沒有二義性,用戶可以很明了的通過界面明白各項(xiàng)功能的實(shí)現(xiàn)方法,而不是看到界面不知道各按鈕的具體用途,即操作簡單,界面友好。老師可以根據(jù)網(wǎng)頁界面很快明白簽到的記錄。(2)軟件功能流暢,不拖沓。軟件登陸,連接網(wǎng)絡(luò)不能讓用戶等待時(shí)間過長,引起用戶的煩躁。軟件在運(yùn)行不能發(fā)生崩潰,卡頓等問題,整個(gè)界面操作起來很流暢。(

18、3)系統(tǒng)應(yīng)該容易維護(hù)以及更新。系統(tǒng)各個(gè)模塊設(shè)計(jì)應(yīng)該很明確,核心代碼處應(yīng)有必要的注釋,使得今后的軟件維護(hù),軟件更新等操作應(yīng)該能夠順利的進(jìn)行。3.2 功能需求分析你后面寫到你的系統(tǒng)分為手機(jī)客戶端、服務(wù)器端、網(wǎng)頁客戶端,怎么思考的?這里要有素體現(xiàn)。手機(jī)客戶端考勤管理系統(tǒng)能完成主要四種功能包括登錄功能,課程信息管理功能,簽到管理功能,學(xué)生信息管理功能,并且能手機(jī)客戶端形式與網(wǎng)頁客戶端兩種形式實(shí)現(xiàn)上述功能,保證系統(tǒng)的正常運(yùn)行。系統(tǒng)用例圖如圖3-1。圖3.1學(xué)生考勤系統(tǒng)用例圖(1) 登錄功能進(jìn)行教師身份的驗(yàn)證。手機(jī)客戶端把老師用戶名和密碼通過網(wǎng)路傳遞給服務(wù)器,有服務(wù)器進(jìn)行數(shù)據(jù)庫查詢,如若用戶名和密碼匹配,

19、則將教師信息和數(shù)據(jù)庫內(nèi)容傳遞到手機(jī)端,不匹配則返回錯(cuò)誤信息提示錯(cuò)誤。(2)學(xué)生信息管理功能是老師可以選擇查詢的學(xué)生,查看學(xué)生相關(guān)信息。老師也可以添加學(xué)生信息。(3) 課程管理模塊功能是老師可以查看課程情況,也可以添加課程,增強(qiáng)課程的實(shí)時(shí)性。(4)簽到功能是老師可以查詢自己所教的課程的學(xué)生到課情況和課程時(shí)間,也可以根據(jù)學(xué)生到課情況進(jìn)行到課情況記錄。4 詳細(xì)設(shè)計(jì)改為 設(shè)計(jì)與實(shí)現(xiàn)功能結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)存儲(chǔ)設(shè)計(jì)4.1手機(jī)客戶端4.1.1 用戶登陸模塊手機(jī)客戶端首先下載或更新“mydata.db”更新本地?cái)?shù)據(jù)庫。然后客戶端通過查詢本地?cái)?shù)據(jù)庫檢驗(yàn)用戶輸入的登錄信息是否正確,如若信息不正確則傳遞提示錯(cuò)誤信息,由客

20、戶端Toast出錯(cuò)誤提示(如圖4-2),若信息正確,提示登陸成功(如圖4-3),并進(jìn)入下一功能界面。網(wǎng)絡(luò)功能使用Socket來傳遞客戶端和服務(wù)器端的信息。客戶端需要Socket這個(gè)類的對(duì)象,而服務(wù)器端同樣需要一個(gè)叫ServerSocket的類對(duì)象,由客戶端發(fā)送一個(gè)Socket請(qǐng)求,服務(wù)器端的ServerSocket監(jiān)聽計(jì)算機(jī)的某一個(gè)端口號(hào)(4567),監(jiān)聽到客戶端發(fā)送的請(qǐng)求之后,那么服務(wù)器端和客戶端通訊通道就建立起來了,此時(shí)客戶端和服務(wù)器端可同時(shí)向?qū)Ψ桨l(fā)送數(shù)據(jù)及相應(yīng)信息。客戶端發(fā)送數(shù)據(jù)需要用到IO流里面的OutputStream,通過OutputStream將數(shù)據(jù)發(fā)送給服務(wù)器端,服務(wù)器端用In

21、putStream來讀取客戶端當(dāng)中用OutputStream所寫入的數(shù)據(jù),同樣,服務(wù)器端想將數(shù)據(jù)庫文件發(fā)送給客戶端時(shí),那么就使用OutputStream寫出數(shù)據(jù),在客戶端通過InputStream把服務(wù)器端當(dāng)中通過OutputStream所寫入的數(shù)據(jù)給它讀取出來。圖4.1 登陸界面圖4.2 登陸成功提示圖4.3 登陸失敗提示 查詢登錄信息的SQL語句為:(例如:服務(wù)器端接收的用戶為a,密碼為a)Select uername,passwordFrom student Where studentid = a若數(shù)據(jù)庫中無a對(duì)應(yīng)信息,則返回錯(cuò)誤信息,若有, 服 務(wù)器端驗(yàn)證password=a,匹配則返

22、回成功信息,傳遞“mydata.db”,不匹配則返回錯(cuò)誤信息 若登陸成功,則進(jìn)入下一個(gè)功能界面,即手機(jī)端主界面,如圖4.4所示。圖4.4 手機(jī)客戶端主界面 4.1.2 學(xué)生信息管理模塊學(xué)生信息管理模塊功能是授課老師可以選擇查詢的學(xué)生,查看學(xué)生相關(guān)信息。使老師更方便看到學(xué)生信息。通過學(xué)生學(xué)號(hào)查詢?cè)搶W(xué)生相關(guān)信息,查詢學(xué)生信息SQL語句為(例如學(xué)號(hào)為01)Select student.*From student where studentnumber=02查詢到學(xué)號(hào)為02的學(xué)生信息。查找到的學(xué)生信息通過listview顯示在界面中。如圖4.5所示4.1.3 課程管理模塊課程管理模塊功能就是是老師可以

23、查詢課程信息。如通過課程號(hào)查詢?cè)撜n程相應(yīng)信息,此時(shí)查詢課程信息的SQL語句為(例如課程號(hào)為KC001)Select course.*From course where coursenumber=KC001查詢到課程號(hào)為KC001的課程相應(yīng)信息。如圖4.6所示。圖4.6 課程查詢4.1.4 簽到模塊簽到功能是老師可以查詢自己所教的課程的學(xué)生到課情況,也可以根據(jù)學(xué)生到課情況添加到課信息記錄。如查詢某課程的簽到情況,查詢某課程的到課信息的SQL語句如下:(例如:課程名為java)Select *From course,studentWhere student.studentNo=course.stu

24、dent.No and couse.coursename=java 查詢到j(luò)ava課程的到課信息,查找到的課程名通過listview顯示在界面中,如圖4.7所示。圖4.7 課程簽到信息如添加學(xué)生簽到記錄,即學(xué)生到課信息:已到,遲到,缺席,添加某學(xué)生的到課信息的SQL語句為(例如姓名為141,時(shí)間為第一課時(shí),也可為日期)添加學(xué)生到課信息的SQL語句如下:Insert into attendance(studentname,coursename,timeInfo,attendancestate)Values (141,java,第一課時(shí),已到) 添加了某學(xué)生的java到課記錄。如圖4.8所示圖4.

25、8 添加簽到信息4.2服務(wù)器端模塊4.2.1通訊數(shù)據(jù)格式定義服務(wù)器端主要用來接收客戶端發(fā)來的信息,進(jìn)行相應(yīng)的操作,并將數(shù)據(jù)返回給客戶端,同時(shí)對(duì)服務(wù)器端數(shù)據(jù)庫進(jìn)行管理。本系統(tǒng)利用Socket機(jī)制實(shí)現(xiàn)服務(wù)器端與客戶端之間數(shù)據(jù)的傳送,并且要對(duì)數(shù)據(jù)格式進(jìn)行規(guī)范。服務(wù)器端向客戶端發(fā)送數(shù)據(jù)的格式定義為表4-1的形式。表4-1客戶端向服務(wù)器端發(fā)送數(shù)據(jù)的格式頭信息客戶端IP地址信息內(nèi)容0202.124.252.2XXXX頭信息定義為:0該信息為請(qǐng)求下載數(shù)據(jù)庫文件和傳遞用戶參數(shù),1該信息為請(qǐng)求添加數(shù)據(jù),2該信息為請(qǐng)求刪除數(shù)據(jù),3該信息為請(qǐng)求刪除數(shù)據(jù)。服務(wù)器端向客戶端發(fā)送數(shù)據(jù)的格式定義為表4-2的形式。表4-2服

26、務(wù)器端向客戶端發(fā)送數(shù)據(jù)的格式頭信息服務(wù)器端IP地址信息內(nèi)容0193.154.2.3XXXXX頭信息定義為:1該信息為數(shù)據(jù)庫文件,2該信息為操作返回信息。4.2.2通訊數(shù)據(jù)格式定義服務(wù)器端接收客戶端的請(qǐng)求信息,通過建立一個(gè)一直運(yùn)行的線程保持監(jiān)聽客戶端發(fā)來的請(qǐng)求信息。部分代碼如下:n private class ServerThread extends Thread /接收信息線程public void run()/聲明一個(gè)ServerSocket對(duì)象ServerSocket server= null;while(true)/無線循環(huán)tryserver = new ServerSocket(456

27、7);/定義接受端口client = server.accept();/in = new BufferedReader(new InputStreamReader( client.getInputStream();/定義輸入流this.request = in.readLine();/獲取信息this.head = this.request.substring(0,1);/剝離頭信息if(this.head.equals(“0”)/判斷頭信息數(shù)據(jù)庫參數(shù)請(qǐng)求格式如下:(以添加為例)Insert into table1,table2,table3(context1,context2,context

28、3,context4,context5,context6,context7,context8,context9,context10)Values (?,?,?,?,?)在本系統(tǒng)所用添加刪除修改最多不超過三個(gè)表,添加內(nèi)容不會(huì)超過10個(gè)內(nèi)容,傳遞數(shù)據(jù)時(shí)參數(shù)形式為:data=new byte1024,data=“table1”, “table2” , “table3”,“context1” ,“context2” ,“context3” ,“context4” ,“context5” ,“context6” ,“context7” ,“context8” ,“context9” ,“context1

29、0”其中若table或context為空,我們統(tǒng)一設(shè)定其為-1。同樣,修改,刪除形式如上。4.2.3發(fā)送返回?cái)?shù)據(jù)模塊在服務(wù)器端接收到客戶端發(fā)來的請(qǐng)求時(shí),服務(wù)器端將從數(shù)據(jù)庫中查詢相關(guān)內(nèi)容返回給客戶端。將模擬器的4567端口綁定到4568端口,代碼如下:Runtime.getRun().exec(this.ADB_PATH+”forward tcp:4568 tcp:4567”);Qizhong ADB_PATH為adb即為Android Debug Bridge所在路徑。綁定端口后,想模擬器4567端口發(fā)送的信息其實(shí)是通過4568端口發(fā)送的。服務(wù)器端發(fā)送返回?cái)?shù)據(jù)的代碼如下:Socket clie

30、nt=new Socket(“l(fā)ocalhost”,4567);ObjectOutputStream out=new ObjectOutputStream(client.getOutputSrtream();Out.writeObject(data);/data為數(shù)據(jù)內(nèi)容4.3網(wǎng)頁客戶頓 為了更好的對(duì)學(xué)生考勤信息進(jìn)行管理,設(shè)計(jì)了一個(gè)網(wǎng)頁客戶頓,管理員通過此客戶端可以對(duì)學(xué)生、老師和學(xué)生考勤信息等信息進(jìn)行管理。網(wǎng)頁客戶端主要分為這些模塊:登錄功能模塊,課程信息管理功能模塊,簽到管理功能模塊,學(xué)生信息管理功能模塊等。4.3.1登錄模塊 (1)登錄模塊同樣用于用戶身份的驗(yàn)證,在服務(wù)器端驗(yàn)證用戶名與密碼

31、正確與否,如圖4.9所示。圖4.9網(wǎng)頁端登錄界面 (2)若登錄用戶名或密碼錯(cuò)誤則提示錯(cuò)誤,如圖4.10所示。圖4.10登錄信息提示4.3.2學(xué)生信息管理模塊學(xué)生信息管理模塊功能是管理員可以選擇查詢的學(xué)生,查看某學(xué)生相關(guān)信息。也可修改學(xué)生的信息和添加學(xué)生信息,還可以刪除某學(xué)生信息。如圖4.11所示。圖4.11學(xué)生信息管理4.3.3課程管理模塊課程管理模塊是管理員可以查詢莫課程信息,即查看有哪有些課程,課程的教師信息,也可以對(duì)課程編輯、添加和刪除,如圖4.12所示。圖4.12課程管理4.3.4簽到模塊 簽到模塊功能是管理員可以查詢某學(xué)生的到課情況,也可添加學(xué)生考勤記錄,也可對(duì)學(xué)生考勤信息進(jìn)行修改和

32、刪除,如圖4.13所示。圖4.13簽到管理 5 結(jié) 論在此次的畢業(yè)設(shè)計(jì)中,我也遇到了一些問題,如:剛開始不知道怎么實(shí)現(xiàn)程序的功能,對(duì)面向?qū)ο蟾拍畹睦斫獠粔?在運(yùn)用到實(shí)際的軟件來進(jìn)行開發(fā)的時(shí)候存在著困難;至于對(duì)Java的了解不是很多,以前學(xué)習(xí)到的只是一些最基本的知識(shí),要在短時(shí)間內(nèi)用Java語言來開發(fā)游戲?qū)τ谖沂且粋€(gè)很大的挑戰(zhàn);另外對(duì)于開發(fā)游戲的流程不太熟悉,剛開始著手起來比較慢,編寫需求說明書和設(shè)計(jì)規(guī)格說明書時(shí),自己無從下手,這些都表明自己所學(xué)的知識(shí)是遠(yuǎn)遠(yuǎn)不夠來進(jìn)行游戲設(shè)計(jì)與開發(fā)的。因?yàn)槲覍?duì)于以上的問題,自己心中有清楚的認(rèn)識(shí),所以我知道該怎么去解決,我努力閱讀大量的書籍,并且仔細(xì)研究別人項(xiàng)目的源代碼,推敲其中道理。我也經(jīng)常去網(wǎng)上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論