APP下载

基于Android和SpringBoot的高校宿舍管理系统设计

2019-05-14

铜陵职业技术学院学报 2019年1期
关键词:晚归服务端宿舍

李 昂

(九江职业大学,江西 九江 332000)

1 引言

随着移动互联网技术的高速发展,校园信息化与智能化发展迅速。学生宿舍管理是高校学生管理的一个重要组成部分。由于办学质量的不断提高,学生数量不断增加,传统的宿舍管理模式已不能够满足现阶段学生管理的需求。因此,需要开发一套基于移动平台的学生宿舍管理系统以方便宿舍管理员的日常工作。

国外有关学生宿舍管理系统的研究起步较早,在注重人力物力的节省上有更加成熟的管理经验。美国早在二十世纪九十年代就开始推行智能化校园,美国教授Kenneth C.Green在1990年第一次提出校园信息化的概念,并于当年进行了针对美国的高校信息化研究项目,目前美国的宿舍管理信息系统已经十分成熟。随着信息技术的不断发展以及移动设备的日益普及,我国也将移动平台用于宿舍管理系统的建立,并且结合国外先进的管理经验,应用于实际的宿舍管理中[1-3]。

图1 系统总体构架

本文所述系统面向高校宿舍管理中的实际需求,针对宿舍管理员和学生用户。建立了新闻公告、宿舍设施报修、入住迁出、水电费查询、失物招领、好友通讯录等功能模块。学生可以通过手机app查看并使用相关功能,宿舍管理人员可以通过后台管理系统对相关信息进行管理。通过该系统构建一个稳定方便的平台,使学生、教师、各管理部门有效结合,提升高校宿舍管理的信息化管理水平。

2 系统总体设计

整个校园宿舍管理系统分为服务端和客户端两大部分。服务端系统总体构架如图1所示。服务端采用Tomcat7.0作为服务器,使用SpringBoot开发功能服务,利用Mybaits连接MySQL数据库。客户端使用Android作为操作系统,使用OkHttp框架处理HTTP请求,,从服务器获取Json数据,利用Android系统中内置SQLite数据库缓存从服务器获取的数据,提升系统运行速度。

3 Android客户端设计

3.1 界面布局设计

在Android开发中,可以使用XML和JAVA两种文件进行页面布局。为了使界面代码与逻辑代码尽量分离,降低代码耦合度,本客户端中界面主要使用XML文件来编写。采用相对布局与线性布局混合的方式进行界面布局。Android客户端界面主要由闪屏页、注册登录界面、主页界面以及各个功能模块界面组成。app整体使用Viewpager+Fragment实现左右滑动切换页面,底部使用RadioButton布局实现3个按钮,用于点击切换不同页面。在主页界面中使用Xunit框架实现轮播图效果,使用Scrollview布局实现新闻条目的滚动效果。各个功能界面中使用ListView控件来显示数据库中的记录信息。APP部分界面如图2所示。

3.2 功能模块设计

客户端主要实现校园宿舍管理系统的相关功能,根据设计需求,主要分为以下几个部分:

(1)登录注册:主要提供新用户注册功能,用户注册后可使用用户名和密码进行登陆,登陆后方可使用app中的功能。

(2)主页新闻:主页提供新闻公告浏览功能,可以查看到管理员通过后台发布的新闻、通知以及公告。

(3)宿舍报修:学生用户如果发现宿舍设施损坏,可以通过宿舍报修功能进行报修,宿舍管理员可以通过后台查看提交的保修单,从而实现报修信息的及时反馈。

(4)入住迁出:可使用该功能实现新生入住、毕业生离校登记,方便无纸化管理。

(5)晚归登记:晚归的学生需要登记,宿舍管理员可以使用该功能填写晚归信息,该信息会传输至后台服务器进行记录。

(6)失物招领:可作为校园失物招邻平台,捡到的失物可通过该板块公布出来,以便失主寻找自己丢失的物品。

3.3 移动端安全功能设计

本系统Android客户端使用签名机制与本地数据库加密两个方面来保证系统安全。

(1)签名机制能保证软件的授权唯一性,如果用户下载到未经授权并含有恶意代码的非正常软件,会导致重要信息被窃取,造成严重的危害。因此所有手机app在发布之前都要经过签名加密。本文系统使用Eclipse来生成带有数据签名的apk安装文件。基本操作流程为:File--Export Android Application—Create new keystore—填写密钥信息。在下一次升级版本时只需要选择之前保存过的数据证书文件即可。

图2 宿舍管理APP部分界面

(2)通过对比SQLCipher所提供API和Android原生的数据库API,实际的使用效果基本上是完全相同的。这是由于SQLCipher对Android SDK中的与数据库相关的API都备份了,整个过程中,SQLCipher同步实现了加密和解密的步骤,而没有造成额外的延时。

4 服务端设计

4.1 SpringBoot技术

本系统服务端采用SpringBoot框架进行开发。传统的Spring框架在搭建、配置与部署过程中都依赖大量的配置,对于小型项目的配置工作都会十分繁琐,开发效率低下,并容易产生大量异常。Spring-Boot框架是一种基于Spring框架的全新框架,其基于“约定优先配置”的原则,大大简化了配置。在部署时,SpringBoot内置的Tomcat容器使单一的jar包部署和管理变得十分简单,该框架还可对应用程序进行监控,即支持关系型数据库也可支持非关系型数据库。SpringBoot作为Spring项目组的微服务产品,正在大规模的占领软件市场[4]。

4.2 Mybatis技术

Mybatis是一种对象关系映射框架,它是当前最主流的JAVA持久化框架之一。其性能优异且灵活性高,可以让开发人员使用面向对象的思想来开发数据库,并使用XML或注解代替JDBC代码和参数的手动配置。Mybatis可以配置动态SQL并支持存储过程,适合一些复杂且需要不断优化的项目使用。本项目将其作为持久化框架来映射关系型数据库。

4.3 数据库设计

本系统后台采用MySQL数据库来存储数据,通过HTTP协议传输Json格式数据与移动端进行数据交互。需要建立用户信息表、晚归登记表、宿舍报修表以及失物招领表等,如表1所示。用户信息表用于存储用户名、密码、学生姓名所属学院等信息,晚归登记表用于登记学生的晚归信息,宿舍报修表用于存储宿舍的设施报修信息,失物招领表用于存储失物招领的填报信息。

4.4 前后端分离数据通信

本系统采用Android移动端与服务端前后端分离开发,服务端提供JSON数据接口,移动端解析数据后将数据进行显示。本系统使用RESTful API风格来设计接口。RESTful是目前最为流行的一套互联网软件构架,它结构清晰、符合标准、易于理解、扩展方便[5]。其最早由Roy Thomas Fielding在他2000年的博士论文中提出。REST是Representation al State Transfer的缩写,翻译为“表现层状态转化”。包括GET,DELETE,PUT和POST等典型用法。

表1 部分数据库信息表

5 结束语

本文设计了一种基于Android和SpringBoot的高校宿舍管理系统,将移动互联网与高校宿舍管理相结合。移动端使用Android技术进行开发,服务端基于SpringBoot+Mybaits框架进行搭建。阐述了移动端安全功能设计与前后端分离的通信实现方式。本系统可实现校园新闻浏览、宿舍报修,学生入住迁出以及晚归登记等操作。经过测试,本系统运行稳定,能够满足设计需求,具有一定的实用价值。

猜你喜欢

晚归服务端宿舍
晚归
热得快炸了
其实我也是一只鸟
学校到底是谁的
作品四
云存储中基于相似性的客户-服务端双端数据去重方法
新时期《移动Web服务端开发》课程教学改革的研究
在Windows Server 2008上创建应用
山村晚归
一个都跑不掉