本項目參考了《java web輕量級開發全體驗》,加入了對mysql的支持。
一、基本業務功能
通過struts2框架,結合mysql數據庫構建一個學生報到管理系統,來模擬學生報到登記的過程。基本功能包含如下:1、管理角色登錄,登錄不同的管理角色,可以進行不同的操作。
2、學生基本情況錄入和查詢。
3、專業設置和查詢。
4、班級管理和查詢。
5、收費信息設置和查詢。
6、宿舍分配和查詢。
二、業務處理流程
這里設計的基本注冊流程是:
1、首先由管理員錄入班級,宿舍和專業的基本信息。
2、根據學生的姓名和錄取通知書號錄入學生基本信息。
3、在分班界面對學生進行分班。
4、在繳費頁面錄入學生繳費情況。
5、在宿舍分配界面給學生分配宿舍。
6、以上流程進行下一個操作時必須完成上一個操作。例如如果學生沒有分班,則無法繳費。
三、系統模塊分解
根據業務需求,可以將系統分為四大模塊,各自功能如下:

四、數據庫設計
根據業務需求,需要創建多個表來進行信息登記和查詢。具體情況如下:
1、用戶角色表adminuser,有三個字段。
adminusername 用戶名
adminuserpassword 用戶密碼
adminuserrole 用戶角色 1表示管理員角色,2表示專業管理員角色,3表示財務管理員角色,4表示宿舍管理員角色。
數據表的具體信息如下:
2、學生信息表student,有9個字段。
StudentId 查詢主鍵id號
StudentName 學生姓名
SpecialityId 專業編號
ClassId 班級編號
BedchamberId 宿舍號
MatryNo 錄取通知書編號
PayAmount 交付的學費數目
PayOk 是否交清學費
RegistDate 注冊日期
數據表的具體信息如下:
3、專業表speciality ,有兩個字段。
SpecialityId 專業編號
SpecialityName 專業名稱
數據表的具體信息如下:
4、班級表classta,有兩個字段。
ClassId 班級編號
ClassName 班級名稱
數據表具體信息如下:
5、宿舍表bedchamber,有兩個字段。
BedchamberId 宿舍編號
BedchamberName 宿舍名稱
數據表具體信息如下:
五、項目文件描述

六、項目界面展示
1、初始登陸界面
2、管理角色設置界面
3、學生信息錄入界面
4、專業錄入界面
5、班級錄入界面
6、宿舍錄入界面
7、學生注冊信息查詢界面
8、分配班級界面
9、收費登記界面
10、分配宿舍界面
七、總結
項目基於struts2和mysql,實現了學生從注冊到分宿舍的一系列業務流程。github源碼地址如下:https://github.com/xiaokangjack/JavaWeb/tree/master/StudentLogin_Struts2
項目環境如下:
windows平台+eclipse neon+jdk1.8.0+Apche Tomcat V9.0+mysql 5.6.24+Struts2.3.4