基于Android的学生信息管理大作业
本課題客戶端采用JAVA語(yǔ)言,通過(guò)Android studio作為開(kāi)發(fā)工具,服務(wù)端采用JAVA語(yǔ)言,通過(guò)Eclipse作為開(kāi)發(fā)工具進(jìn)行開(kāi)發(fā),數(shù)據(jù)庫(kù)選用SQLServer 2008。
本應(yīng)用的后臺(tái)搭載在服務(wù)端,具體的數(shù)據(jù)表為學(xué)生用戶信息表。
如下表所示為學(xué)生用戶信息數(shù)據(jù)表:
學(xué)生用戶信息表
屬性 數(shù)據(jù)類型 說(shuō)明 備注
id Int 用戶id 主鍵,不允許空
stu_id String 學(xué)號(hào) 不允許為空
name String 姓名
sex String 性別
phone String 電話
depart_address String 宿舍地址
home_address String 家庭地址
parent_name String 監(jiān)護(hù)人姓名
parent_phone String 監(jiān)護(hù)人電話
各功能模塊詳細(xì)說(shuō)明:
導(dǎo)航頁(yè)面:作為系統(tǒng)的首頁(yè)面,該界面按功能展示新增學(xué)生信息按鈕和展示學(xué)生列表按鈕,用于導(dǎo)航進(jìn)入不同的功能界面;
新增學(xué)生信息頁(yè)面:點(diǎn)擊新增學(xué)生信息按鈕,可進(jìn)入學(xué)生信息新增編輯界面,通過(guò)在不同的編輯欄中輸入不同的信息,再點(diǎn)擊保存可以實(shí)現(xiàn)學(xué)生信息的新增和編輯功能;
學(xué)生信息列表頁(yè)面:點(diǎn)擊學(xué)生信息列表按鈕,可進(jìn)入學(xué)生信息列表界面,該界面以列表形式展示出所有學(xué)生信息,通過(guò)點(diǎn)擊對(duì)應(yīng)條目可以進(jìn)入該學(xué)生信息的詳情界面;
學(xué)生信息詳情頁(yè)面:進(jìn)入學(xué)生詳情界面后,按照學(xué)生信息的對(duì)應(yīng)條目展示出該學(xué)生的所有基本信息,可通過(guò)點(diǎn)擊刪除,編輯實(shí)現(xiàn)學(xué)生信息的變更;
2.實(shí)現(xiàn)過(guò)程
導(dǎo)航頁(yè)面:
導(dǎo)航頁(yè)面
導(dǎo)航頁(yè)面通過(guò)線性布局實(shí)現(xiàn)兩個(gè)Button縱向排布,監(jiān)聽(tīng)Button的點(diǎn)擊,分別實(shí)現(xiàn)不同頁(yè)面的跳轉(zhuǎn)
學(xué)生列表信息界面:
通過(guò)ListView實(shí)現(xiàn)列表,進(jìn)入頁(yè)面后,向服務(wù)器發(fā)送請(qǐng)求,通過(guò)Socket實(shí)現(xiàn)網(wǎng)絡(luò)連接請(qǐng)求,服務(wù)端和客戶端連通后,接收到服務(wù)端的查詢請(qǐng)求,將查詢請(qǐng)求解析,拼接成對(duì)應(yīng)sql語(yǔ)句,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的查詢,將查詢結(jié)果拼接成字符串,通過(guò)Socket通信再返回給客戶端,客戶端接收到結(jié)果后,解析結(jié)果,添加到學(xué)生信息列表中, 更新adapter刷新界面,展示學(xué)生信息列表數(shù)據(jù)。
ListView通過(guò)監(jiān)聽(tīng)單個(gè)Item的點(diǎn)擊事件,跳轉(zhuǎn)到學(xué)生信息詳情頁(yè)面,將學(xué)生信息放入Intent中一同傳入詳情界面。
學(xué)生信息詳情界面:
通過(guò)解析Intent中對(duì)應(yīng)的參數(shù),獲取到傳入的學(xué)生信息詳情,將對(duì)應(yīng)的屬性賦予對(duì)應(yīng)的TextView中予以顯示出來(lái),同時(shí)設(shè)置刪除,修改按鈕的監(jiān)聽(tīng),點(diǎn)擊刪除按鈕向服務(wù)器發(fā)送刪除請(qǐng)求,傳入對(duì)應(yīng)學(xué)生的ID,服務(wù)器接收到請(qǐng)求后,通過(guò)sql語(yǔ)句對(duì)該學(xué)生ID的數(shù)據(jù)信息進(jìn)行刪除,刪除完成返回客戶端刪除結(jié)果,客戶端刷新界面。
點(diǎn)擊修改按鈕,拉起學(xué)生信息的編輯界面,將學(xué)生信息通過(guò)Intent傳入編輯界面。
新增/編輯界面:
界面加載的時(shí)候通過(guò)判斷Intent中是否含有學(xué)生信息來(lái)判斷是否為編輯還是新增,如果Intent中含有學(xué)生信息,則為編輯模式,將學(xué)生信息的不同屬性賦予對(duì)應(yīng)的EditText,顯示出來(lái)。編輯后,點(diǎn)擊保存,將EditText中對(duì)應(yīng)的屬性拼接成字符串,向服務(wù)端發(fā)送請(qǐng)求,服務(wù)端接受請(qǐng)求后,執(zhí)行update操作,解析學(xué)生信息,執(zhí)行sql語(yǔ)句,將對(duì)應(yīng)ID的學(xué)生信息更新。
如果是新增界面,EditText全部不設(shè)置字符顯示,點(diǎn)擊保存后,向服務(wù)端發(fā)送插入請(qǐng)求,服務(wù)端接收到請(qǐng)求后解析學(xué)生信息,執(zhí)行sql語(yǔ)句,實(shí)現(xiàn)插入操作。
3.測(cè)試過(guò)程
本課題的測(cè)試通過(guò)各個(gè)功能模塊的測(cè)試,就能基本達(dá)到測(cè)試的目的。故采用黑盒測(cè)試方法。
導(dǎo)航頁(yè)面點(diǎn)擊列表按鈕可以拉起列表并能正確展示出所有學(xué)生的信息。
點(diǎn)擊列表中的列表項(xiàng)可以正常進(jìn)入列表詳情界面,列表詳情界面的學(xué)生信息可以和列表項(xiàng)中的對(duì)應(yīng),信息展示正確。
點(diǎn)擊刪除可以刪除數(shù)據(jù)庫(kù)中的學(xué)生信息,返回列表可以正常刷新獲取最新的列表數(shù)據(jù)。
點(diǎn)擊編輯可以正常進(jìn)入學(xué)生信息的編輯界面,學(xué)生信息展示正確,點(diǎn)擊保存按鈕,可以更新學(xué)生信息,并且在列表中可以刷新獲取最新的列表數(shù)據(jù)。
點(diǎn)擊新增學(xué)生信息可以正常進(jìn)入新增界面,界面展示無(wú)異常,填寫對(duì)應(yīng)數(shù)據(jù)后,點(diǎn)擊保存按鈕,可以插入學(xué)生信息,返回列表界面后,可以刷新獲取到最新的列表數(shù)據(jù)。
a)
學(xué)習(xí)心得
通過(guò)此課題的實(shí)現(xiàn),使自己學(xué)習(xí)掌握了Android Studio開(kāi)發(fā)工具的使用,熟悉了安卓系統(tǒng)的UI顯示框架,能夠熟練編寫界面布局文件,實(shí)現(xiàn)按鈕的監(jiān)聽(tīng),界面的跳轉(zhuǎn)。
了解了C/S架構(gòu)中,客戶端與服務(wù)端的通信過(guò)程,Socket鏈接的數(shù)據(jù)傳輸過(guò)程,以及服務(wù)端對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)操作方式和方法。掌握了網(wǎng)絡(luò)請(qǐng)求耗時(shí)操作應(yīng)該置于工作線程,通過(guò)handler實(shí)現(xiàn)UI線程的更新原理。
使自己充分認(rèn)識(shí)到了自己的不足和缺點(diǎn),也針對(duì)自己在學(xué)習(xí)過(guò)程中的不足制定了新的學(xué)習(xí)計(jì)劃,幫助自己在今后安卓的學(xué)習(xí)
日子里迎頭趕上。
總結(jié)
以上是生活随笔為你收集整理的基于Android的学生信息管理大作业的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【2022-03-23】JS逆向之爱奇艺
- 下一篇: Android轻松实现高效的启动页