于龙斌,贾欣欣 (东北石油大学软件学院,黑龙江 大庆163318)
随着移动通信技术的快速发展以及人们对手机功能需求的不断提高,智能手机逐渐成为人们的日常消费品。在高校校园里,学生手机用户使用的智能手机一般利用Android系统平台[1-3]。为了给学生提供及时准确的课程信息、考试信息和相关生活信息,同时便于相关院系和教学职能部门进行各种管理工作,笔者基于Android系统设计和实现了高校校园移动秘书系统。
该系统物理架构主要由后台数据库服务器、Web服务器、无线网络、Android校园秘书前端等部分组成 (见图1)。客户端Android系统智能手机通过无线网络访问后台服务器,后台服务器的URL应保证与后台服务器IP地址一致。如果需要数据访问,则访问后台数据库,与后台数据库的链接主要通过MyEclipse的MVC模式来实现,运行过程中要保证TomCat处于启动状态[4]。
图1 校园移动秘书系统物理架构
Android客户端采用Java技术,网络通信使用Apache HTTP协议客户端,中间Web服务器采用Servlet响应客户请求。后台服务器采用JDBC访问数据库,客户端的一部分数据存储采用SQLite数据库,应保持Android客户端的数据和服务器中的数据同步(见图2)。
图2 技术选型图
在设计系统数据库时,系统Web服务器可以采用WebLogic或者WebSpere,也可以使用JBoss,数据库采用SQL Server,这样系统在提供客户端数据和服务器端数据的同步功能的同时,也提高了程序的运行效率[5]。系统后台服务器中的数据库主要包括用户表、课程表 (见表1)、答疑表和测试表等,这些数据表通过Web服务器进行及时更新。
该系统实现包括前端Android界面程序实现和后端服务器实现。客户端Android系统智能手机具有前段处理与计算能力,而且通过无线网络访问Web服务器,如果需要数据访问,则访问后台数据库。对于系统中需求分析和模块设计采用UML统一建模语言,分别进行用例视图、逻辑视图和组件视图设计。采用MVC 3层架构模式,采用Android的UI技术来展现表现层,采用JavaBean技术来实现业务逻辑层,采用Servlet完成业务和表现之间的松散耦合,最后设计底层数据操作模块来完成数据层的统一操作。该系统主要功能及其实现内容如下。
表1 课程表
为了增强系统的使用安全,使用系统之前必须登录该系统。登录过程是用户利用无线网络在后台数据库通过用户名称和密码进行查询并注册用户后方可使用该系统。系统登录成功后便可进入系统主菜单,主菜单通过一个GridView以图形菜单的方式来展现系统的功能,单击某个选项便进入该功能的操作界面。
学习助手功能主要体现用户在前台发出查询命令,命令通过WIFI传达到后台服务器,后台Web服务器接到命令之后传达给后台MyEclipse,通过MVC模式访问数据库,进行各种查询,并将查询的结果通过网络发送到前台主界面,用户就可以在前台获取所需信息,如课程信息、学术讲座信息、学生活动信息等 (见图3)。
1)课程信息查询 系统通过无线网络获得后台数据库中课程相关信息,并在前台客户服务端接收数据,并将其具体信息显示在当前页面下方,从而方便用户随时随地了解相关课程信息 (见图4)。
2)考研信息查询 用户利用该功能可以随时随地查询考研信息,以便及时了解考研动态。当用户输入相应考研学校和考研专业即可查询出相应考研信息 (见图5)。
图3 信息查询界面
图4 课程相关信息查询界面
图5 考研信息
3)招聘信息查询 用户利用手机通过连接无限路由器访问后台服务器,这样招聘资讯可显示在前台客户端 (见图6)。
1)理财助手 通过该功能采集的信息主要包括消费账目、消费的类型、金额、日期以及备注等。系统将上述信息录入到数据库中以备用户随时随地查询 (见图7)。
2)备忘录 备忘录也称为日程安排,可以方便学生在繁忙的学习中对自身生活计划进行安排。利用该功能可以在设定时间内提醒学生完成某项工作,具体包括日程规划、日程提醒、查看明细和日程维护等 (见图8)。
图6 招聘信息
图7 理财助手界面
图8 备忘录
为了给学生提供及时准确的课程信息、考试信息和相关生活信息,同时方便高校相关院系和教学职能部门相互联系,设计和实现了高校校园移动秘书系统。通过该系统可以随时随地为用户提供信息,用户无需进行繁琐的登录相关网站的操作过程。目前,该系统已经在东北石油大学得到应用,受到师生的好评。
[1]刘卫国,姚昱禹.Android与J2ME平台间即时通信的研究与实现 [J].计算机系统与应用,2008(12):118-120.
[2]刘平.Android手机访问服务器的一种数据交互方法 [J].电子设计工程,2010,18(9):96-102.
[3]刘玉平.Java输入输出流及在网站开发中的应用探讨 [J].电子编程技巧与维护,2009(18):35-49.
[4]陈璟,陈平华,李文亮 .Android内核分析 [J].现代计算机,2009(10):112-115.
[5]刘卫国,姚昱禹 .Android的架构与应用开发研究 [J].计算机系统应用,2008(11):110-112.