基于Android平台的移动图书管理系统架构分析与设计
2015-05-30夏利青
摘 要:该文在介绍Android平台、JSON轻量级数据解析格式、分析当前市场上移动图书管理系统架构特点的基础上,设计并实现了一种基于Android平台移动图书管理系统架构。系统给用户带来了更好的体验,更加方便、快捷、数字化地为广大师生提供了优质服务;满足了用户提出的多样性及个性化需求,随时检索所需要图书资源、通过手机登录可以随时随地提前预约、挂失图书等;可扩展性的移动图书管理系统亦大大简化了相关人员对系统升级、维护过程,提高了工作效率。
关键词:Android 图书管理系统 架构
中图分类号:TP31 文献标识码:A 文章编号:1674-098X(2015)11(a)-0154-02
随着国内智能手机的普及,基于手机移动平台的APP应用增长迅速,基于B/S架构的传统的Web应用开始向智能手机终端的App应用转移,尤其是基于Android平台的智能终端中运行的App应用越加丰富。作为知识、技术及信息的重要传播载体的国内外各大高校的传统图书管理系统软件,也加入了时代发展潮流,许多高校开始跃跃欲试,为了吸引更多的用户,越发注重App给用户带来更好的体验。
1 Android平台移动图书管理系统架构分析
(1)应用背景。
通过对当前市场上已经存在的Android平台移动图书管理系统进行详细、深入的分析和研究,发现大部分Android平台移动图书管理系统仅仅是对传统的B/S图书管理系统的简单改造与升级,即在原来系统的基础上,增加移动终端的App应用,将部分功能搬到App应用上,但App应用的功能实现完全是在移动终端完成。这种简单的改造与升级虽然可以节省不少升级改造的成本,但也带来了很大的问题:虽然目前智能手机的性能及配置有了很大的提升,但这些性能和配置的提升不足以支撑图书管理系统的部分功能完全搬到智能手机上实现及运行。相比PC电脑,智能机的性能及配置很大程度上限制了App运行的速度。为了提高运行速度,能给用户带来更好的体验,需要设计更合理的Android平台移动图书管理系统架构。
(2)改进系统架构的思考。
Android是目前智能手机终端用的最广的操作系统。鉴于智能机的性能和配置瓶颈,在APP实现时,可以将复杂、耗时且占用较多智能机性能的功能实现放在配置及性能更高的PC服务器端,智能移动客户端仅仅作为一个终端接收用户的请求后将请求发送到服务器端,即告诉服务器客户需要什么数据,服务器进行功能的实现。当结果被服务器完成后再发送到智能客户端,智能客户端接收到相应数据后呈现给用户。这种基于服务器端+Android智能客户端的架构模式可以将智能手机“解放”出来,客户端只要进行数据的发送、接收和呈现,极大的提升了智能终端的用户体验。
2 Android平台移动图书管理系统架构设计
(1)系统架构设计。
根据上述架构分析思路,整个系统架构分为服务器端和Android移动客户端。系统架构图如图1所示。
①服务器端采用基于MVC设计模式的B/S架构模式,其中Model层采用JavaBean组件封装相关的业务逻辑和数据逻辑,View视图层采用JSP+JSTL技术,Control控制器基于Serlet技术实现。
②Servlet作为智能客户端发送请求的接收入口,即在Servlet中处理来自Android客户端的请求。具体实现步骤:第一,获取来自客户端的请求;第二,取出来自客户端的请求数据封装在Java对象中;第三,调用服务器端功能模块实现功能时将Java对象作为参数传递进来;第四,将操作的结果在返回到Android客户端。
(2)移动客户端与服务器端通信。
Android平台的用户终端采用Apache JakartaCommon下的子项目HttpClient和服务器通信,它可以提供高效的、功能强大的支持HTTP协议的客户端变成工具包。其主要的功能和优势是实现了所有HTTP的方法,如get、post、put和head等方法,支持自动转向、HTTPS协议和代理服务器。HttpClient向服务器端的Web站点发送请求并通信的步骤如下(见图2)。
①通过调用构造方法DefultHTTPClient() new一个HttpClient对象;
②基于HttpGet或HttpPost向服务器端发送请求;
③设置请求参数;
④调用HttpResponse对象的execute()方法返回response;
⑤获取HttpEntity对象,获取服务器的响应内容。
(3)服务器端与客户端的数据交换。
客户端和服务器端数据传递有三种方式,即基于XML的数据交换格式、基于HTML的数据交换格式和基于JSON的数据交换方式。用在移动客户端和服务器之间的数据交换主要是第一种和第三种。基于XML的数据交换由于存在XML难于解析、体积比较大且读写不够灵活等问题,该文在对Android平台移动图书管理系统的架构设计是采用JSON数据交换方式。由于这种轻量级的数据解析技术可以使用JavaScript进行解析并支持AJAX进行数据传输的纯文本,更容易阅读和编写,使得它目前在移动开发市场上流行起来。
服务器端采用经典的三层架构即表示层、业务逻辑层和数据访问层,表示层和业务逻辑层之间、业务逻辑层和数据访问层之间采用面向接口的编程方式,极大的降低了层间的耦合度。下面以登录模块为例说明一下数据交换过程:首先创建一个JSON对象jObject,获取客户端传递过来的参数并调用服务器端用户登录方法,调用JSON对象jObject的put方法将服务器返回的结果保存,在移动客户端取出即可。
3 结语
采用上述服务器端+移动客户端方式实现的移动图书管理系统架构,通过对常州机电职业技术学院图书馆管理系统改造项目进行测试及运行,该系统运用效果良好,该系统优化了图书管理及相关流程,提升了服务的满意度,良好的系统架构给用户带来了更好的体验,更加方便、快捷、数字化地为广大师生提供了优质图书馆服务。
参考文献
[1] 夏帮贵.基于Android平台的图书馆服务系统设计与实现[J].现代图书情报技术,2011(6):85-89.
[2] 郭文丽,严潮斌,吴旭.基于Android客户端的图书馆微服务研究与实践[J].图书情报工作,2013(4):22-26.
[3] 樊涛.基于Android平台的手机图书馆系统的设计与实现[D].南昌大学,2014.
[4] 杨艳妮,明均仁,张杰.基于Android的移动图书馆APP功能设计与实现[J].图书馆学研究,2015(4):24-30.
[5] 褚鹏.基于Android移动平台的图书借阅与管理系统设计与实现[D].华中师范大学,2014.
[6] 孙华林,夏利青.Android平台移动图书管理App的构建与实现[J].电脑知识与技术,2015(5):66-68,73.