APP下载

基于Android平台的高职图书资源推介系统设计与实现

2014-09-26吴英宾范国渠

软件工程 2014年9期
关键词:高职教育

吴英宾 范国渠

摘 要:在高速无线网络日益成熟和智能手机大量普及的环境下,本文针对高职院校图书资源应用的实际需求,设计并实现了一款基于Android平台的图书资源推介系统,系统分为服务器端和Android客户端,服务器端通过互联网提供服务接口,Android客户端提供图书资源推介信息查询、收藏、管理、读者互动等功能。

关键词:Android;图书资源;高职教育;Web Service

中图分类号: TP311.1 文献标识码:A

1 引言(Introduction)

随着移动互联网技术的迅速发展和智能手机的大量普及,手机终端正在改变人们的生活与沟通方式[1],根据中国互联网络信息中心(CNNIC)统计,截止到2014年6月,手机端已超过PC端成为我国互联网第一入口。同时,国际数据公司(IDC)报告显示,Android平台在智能手机中的使用率达79.3%,占有绝对统治地位。在上述环境与背景下,本文结合高职院校图书资源应用需求的特点,设计并实现了基于Android平台的图书资源推介系统。

2 需求分析(Requirement analysis)

高职教育宗旨在于,培养能够适应经济社会发展要求的技能型人才[2],其最重要的特征为其“职业”性,因此,高职院师生的阅读需求也与行业企业、专业技术和职业岗位密切相关,而目前很多高职院校的图书资源推介工作仍以张贴海报、网站查询等传统方式为主,不仅更新慢、互动性差,还忽视了大部分师生都采用智能手机进行信息查询这一客观事实,图书资源推介效果不明显。

基于Android平台的高职图书资源推介系统,不仅可以适时推荐恰当图书[3],方便学生通过下载、安装手机APP实时了解最新最热的图书资源推介信息,还能邀请知名行业、企业专家作为图书资源推介者推介权威图书信息,充分体现了推介图书的专业性、职业性和实用性,最大限度满足高职师生的阅读资源需求。

3 系统设计(Architecture design)

3.1 架构设计

本系统有三个部分组成:

(1)Android客户端。负责与用户进行交互,通过Wi-Fi、TD-SCDMA等无线网络[4],将用户请求发送至服务器端,并将服务器反馈数据友好的展现给用户。

(2)WEB服务器端。负责接受Android客户端的请求,进行业务处理和相应的数据库操作,以WEB Service方式将数据封装后发回客户端。

(3)数据库。负责存储系统所有业务数据,仅由WEB服务器端进行访问,对Android客户端完全透明。

采用以上架构设计,可以使系统层次清晰、职责明确,完全符合现代软件工程的软件设计理念。首先,Android客户端专注于提供简洁优美的UI,只需通过HTTP协议访问服务器端指定服务接口,无需关心复杂的业务处理和数据存储;其次,服务器端专注于接收、解析和处理客户端请求,访问数据库获取需要的资源和信息[5],然后将处理结果以JSON格式的数据包发回客户端;只允许系统WEB服务器对数据库进行访问,保证系统的安全性、完整性和一致性。系统架构图图如图1所示。

图1 系统架构图

Fig.1 System architecture diagram

3.2 功能设计

根据系统的业务需求,系统在功能设计上分为服务端和客户端两部分,其中服务器端和Android客户端各六个功能模块,系统功能结构图如图2所示。

图2 系统功能结构图

Fig.2 System function structure diagram

(1)用户管理。对系统中的各种用户信息进行管理,对用户的权限、角色进行定义和管理。

(2)图书类别管理。对系统中的图书类别进行管理,这里除了直接导入中图分类标准外,也可进行自定义图书类型,保证图书类型的定义的灵活性。

(3)图书标签管理。对图书的标签(Tag)进行设置,通过给图书指定标签,可以突出图书的特点,便于用户进行快速搜索匹配,方便读者用户快速找到和专业、行业相匹配的的图书。

(4)图书管理。对系统中所有的图书信息进行管理,可以进行批量图书导入和导出,方便推介者进行推介操作,尽量减少图书资源推介者额外进行图书添加等操作。

(5)数据统计分析。对系统的各类数据进行统计分析,如各个分类、标签的图书关注程度及读者收藏次数统计,可以分析得出图书资源推介信息排行等信息,为客户端提供数据访问支撑。

(6)系统配置。完成批量导入学生、教师及专家信息等,免去注册环节,减轻系统Android客户端负担,同时提供了数据备份恢复和系统日志的管理功能。

(7)个人信息管理。供用户对自己的个人信息进行查看、修改。

(8)推介信息管理。系统核心功能,读者角色用户可以查看热门图书资源推介信息,也可按照图书类别、标签推介者进行搜索,推介者角色用户可以进行添加图书资源推介信息,并可将推介信息推送给特定读者角色用户群体。

(9)收藏管理。提供用户对自己喜爱的图书资源推介信息进行收藏的功能,便于以后进行查看。

(10)评论管理。读者角色用户可以对推介信息进行评论,推介者用户可以对评论进行回复、删除等操作。

(11)个人偏好设置。读者角色用户可以设置自己的阅读偏好,系统会自动根据读者的偏好设置信息(如标签、推介者等)进行图书资源推介信息的推送。

(12)图书推送管理。推介者用户可以通过设置将自己图书资源推介信息推送至特定读者用户群体,如专业教师可将特定推介信息推送至自己的授课班级的全体学生用户,同时可以对推送信息进行修改、删除等操作。endprint

4 系统实现(System implementation)

4.1 服务器端功能实现

服务器端功能在实现上采用了业界最为流行的轻量级JavaEE开发框架SSH(Struts2+Spring+Hibernate[6]),利用Struts2框架进行WEB请求处理和数据封装;利用Spring框架对系统中的所有Java对象、数据库连接等资源进行统一管理,利用Hibernate框架进行ORM映射,简化数据库操作。下面以图书管理功能为例,该功能实现主要涉及的类、接口列表如表1所示。

表1 图书管理模块所涉类及接口

Tab.1 Library management function related classes and

interfaces list

类名 功能描述

Book.java 实体类,通过Java Annotation实现与数据库表tb_book的ORM映射

IBookDAO.java 图书数据库操作接口,定义了图书的增删改查等各种接口方法

BookDAOHibImpl.java 图书数据库操作接口Hibernate实现类,具体实现图书相关的各种数据库操作

IBookService.java 图书业务接口,声明了图书各种业务接口方法

BookServiceImpl.java 图书业务接口实现类,实现了各种业务的具体操作

BaseAction.java 基础控制器Action,继承ActionSupport,并提供了request,session等各种常用页面对象,主要用于被其他Action继承

BookAction.java 图书WEB层控制器,用于接受图书相关请求、处理并响应请求

Struts2在处理Android客户端请求时设置Action的视图转发类型为JSON,利用Java Annotation在处理方法前声明其返回类型为JSON,配置后可向客户端提供各种JSON数据包,Book Action类方法注解代码如下:

(value = "/book/findBookById", results = { @Result(name = "success", type = "json") })

同时,通过在Spring配置文件applicationConfig.xml中设置注解参数,让Spring自动管理Hibernate,并关注Annotation的Action,完成对Struts2和Hibernate的整合。

4.2 Android客户端功能实现

在服务器端的WEB服务支撑下,Android客户端功能实现上主要涉及到UI设计、业务处理和网络访问。在UI设计上遵循简洁、易用的原则,每个功能UI界面对应于一个Activity和一个独立的XML布局文件;业务处理上采用分而治之的设计思想,每个功能设计一个专门的业务处理类,该类主要负责响应用户输入、请求网络服务和返回处理结果;客户端实行统一网络访问,通过设计通用的网络访问和JSON解析功能的工具类,专门用于业务处理类的调用。下面以图书资源推介信息管理实现为例,说明其实现过程,该功能实现主要涉及到的类如表2所示。

表2 图书资源推介信息管理功能所涉类

Tab.2 Book recommendation function related class list

类名 功能描述

BookIntroActivity.java 推介信息展示Activity

BookIntroListActivity.java 推介信息列表展示Activity

BookIntroBiz.java 推介信息业务处理(搜索、查看等)类

JSONUtil.java 自定义JSON数据解析工具类,处理JSON与Java对象的转换

NetUtil.java 自定义网络访问工具类,用于处理各种网络访问

Android客户端图书资源推介信息列表展示功能和图书资源推介详情展示功能的最终效果如图3所示。

图3 图书资源推介功能效果图

Fig.3 Library resources recommendation function

effect diagram

5 结论(Conclusion)

本文针对高职院校图书资源推介工作的弊端,设计并实现了基于Android平台的图书资源推介系统。系统由服务器端进行业务处理和数据库操作,通过互联网和无线网提供WEB服务;由Android客户端与用户交互,符合云计算和高速无线网络环境下“云+端”的设计理念,用户体验良好。本系统不仅适用于高职院校,也可用于各类与行业企业结合紧密的高校和科研院所,对各类图书资源推介工作的研究具有一定的实用和参考价值。

参考文献(References)

[1] 王艺璇.基于Andriod平台的移动图书馆客户端设计与实现

[J].智能计算机与应用,2011,1(4):27-33.

[2] 陶虹,曲涛.试论高职 “1+1+1”技能型人才培养模式[J].教

育与职业,2013,6(682):10-12.

[3] 李冰.论网络时代如何做好图书推荐工作[J].绥化学院学报,

2011,31(2):182-183.

[4] 魏崇毓,张菲菲.基于Android平台的视频监控系统设计[J].计

算机工程,2012,38(14):214-216.

[5] 夏帮贵.基于Android平台的移动学习系统[J].西华大学学报

(自然科学版),2011,30(5):81-84.

[6] 王磊,危建国,程伟根.基于SSH的系部教研室信息管理系统设

计与实现[J].软件导刊,2013,12(10):109-111.

作者简介:

吴英宾(1983-),男,硕士,讲师.研究领域:软件技术.

范国渠(1969-),男,硕士,副教授.研究领域:数字化校园,

信息管理.endprint

4 系统实现(System implementation)

4.1 服务器端功能实现

服务器端功能在实现上采用了业界最为流行的轻量级JavaEE开发框架SSH(Struts2+Spring+Hibernate[6]),利用Struts2框架进行WEB请求处理和数据封装;利用Spring框架对系统中的所有Java对象、数据库连接等资源进行统一管理,利用Hibernate框架进行ORM映射,简化数据库操作。下面以图书管理功能为例,该功能实现主要涉及的类、接口列表如表1所示。

表1 图书管理模块所涉类及接口

Tab.1 Library management function related classes and

interfaces list

类名 功能描述

Book.java 实体类,通过Java Annotation实现与数据库表tb_book的ORM映射

IBookDAO.java 图书数据库操作接口,定义了图书的增删改查等各种接口方法

BookDAOHibImpl.java 图书数据库操作接口Hibernate实现类,具体实现图书相关的各种数据库操作

IBookService.java 图书业务接口,声明了图书各种业务接口方法

BookServiceImpl.java 图书业务接口实现类,实现了各种业务的具体操作

BaseAction.java 基础控制器Action,继承ActionSupport,并提供了request,session等各种常用页面对象,主要用于被其他Action继承

BookAction.java 图书WEB层控制器,用于接受图书相关请求、处理并响应请求

Struts2在处理Android客户端请求时设置Action的视图转发类型为JSON,利用Java Annotation在处理方法前声明其返回类型为JSON,配置后可向客户端提供各种JSON数据包,Book Action类方法注解代码如下:

(value = "/book/findBookById", results = { @Result(name = "success", type = "json") })

同时,通过在Spring配置文件applicationConfig.xml中设置注解参数,让Spring自动管理Hibernate,并关注Annotation的Action,完成对Struts2和Hibernate的整合。

4.2 Android客户端功能实现

在服务器端的WEB服务支撑下,Android客户端功能实现上主要涉及到UI设计、业务处理和网络访问。在UI设计上遵循简洁、易用的原则,每个功能UI界面对应于一个Activity和一个独立的XML布局文件;业务处理上采用分而治之的设计思想,每个功能设计一个专门的业务处理类,该类主要负责响应用户输入、请求网络服务和返回处理结果;客户端实行统一网络访问,通过设计通用的网络访问和JSON解析功能的工具类,专门用于业务处理类的调用。下面以图书资源推介信息管理实现为例,说明其实现过程,该功能实现主要涉及到的类如表2所示。

表2 图书资源推介信息管理功能所涉类

Tab.2 Book recommendation function related class list

类名 功能描述

BookIntroActivity.java 推介信息展示Activity

BookIntroListActivity.java 推介信息列表展示Activity

BookIntroBiz.java 推介信息业务处理(搜索、查看等)类

JSONUtil.java 自定义JSON数据解析工具类,处理JSON与Java对象的转换

NetUtil.java 自定义网络访问工具类,用于处理各种网络访问

Android客户端图书资源推介信息列表展示功能和图书资源推介详情展示功能的最终效果如图3所示。

图3 图书资源推介功能效果图

Fig.3 Library resources recommendation function

effect diagram

5 结论(Conclusion)

本文针对高职院校图书资源推介工作的弊端,设计并实现了基于Android平台的图书资源推介系统。系统由服务器端进行业务处理和数据库操作,通过互联网和无线网提供WEB服务;由Android客户端与用户交互,符合云计算和高速无线网络环境下“云+端”的设计理念,用户体验良好。本系统不仅适用于高职院校,也可用于各类与行业企业结合紧密的高校和科研院所,对各类图书资源推介工作的研究具有一定的实用和参考价值。

参考文献(References)

[1] 王艺璇.基于Andriod平台的移动图书馆客户端设计与实现

[J].智能计算机与应用,2011,1(4):27-33.

[2] 陶虹,曲涛.试论高职 “1+1+1”技能型人才培养模式[J].教

育与职业,2013,6(682):10-12.

[3] 李冰.论网络时代如何做好图书推荐工作[J].绥化学院学报,

2011,31(2):182-183.

[4] 魏崇毓,张菲菲.基于Android平台的视频监控系统设计[J].计

算机工程,2012,38(14):214-216.

[5] 夏帮贵.基于Android平台的移动学习系统[J].西华大学学报

(自然科学版),2011,30(5):81-84.

[6] 王磊,危建国,程伟根.基于SSH的系部教研室信息管理系统设

计与实现[J].软件导刊,2013,12(10):109-111.

作者简介:

吴英宾(1983-),男,硕士,讲师.研究领域:软件技术.

范国渠(1969-),男,硕士,副教授.研究领域:数字化校园,

信息管理.endprint

4 系统实现(System implementation)

4.1 服务器端功能实现

服务器端功能在实现上采用了业界最为流行的轻量级JavaEE开发框架SSH(Struts2+Spring+Hibernate[6]),利用Struts2框架进行WEB请求处理和数据封装;利用Spring框架对系统中的所有Java对象、数据库连接等资源进行统一管理,利用Hibernate框架进行ORM映射,简化数据库操作。下面以图书管理功能为例,该功能实现主要涉及的类、接口列表如表1所示。

表1 图书管理模块所涉类及接口

Tab.1 Library management function related classes and

interfaces list

类名 功能描述

Book.java 实体类,通过Java Annotation实现与数据库表tb_book的ORM映射

IBookDAO.java 图书数据库操作接口,定义了图书的增删改查等各种接口方法

BookDAOHibImpl.java 图书数据库操作接口Hibernate实现类,具体实现图书相关的各种数据库操作

IBookService.java 图书业务接口,声明了图书各种业务接口方法

BookServiceImpl.java 图书业务接口实现类,实现了各种业务的具体操作

BaseAction.java 基础控制器Action,继承ActionSupport,并提供了request,session等各种常用页面对象,主要用于被其他Action继承

BookAction.java 图书WEB层控制器,用于接受图书相关请求、处理并响应请求

Struts2在处理Android客户端请求时设置Action的视图转发类型为JSON,利用Java Annotation在处理方法前声明其返回类型为JSON,配置后可向客户端提供各种JSON数据包,Book Action类方法注解代码如下:

(value = "/book/findBookById", results = { @Result(name = "success", type = "json") })

同时,通过在Spring配置文件applicationConfig.xml中设置注解参数,让Spring自动管理Hibernate,并关注Annotation的Action,完成对Struts2和Hibernate的整合。

4.2 Android客户端功能实现

在服务器端的WEB服务支撑下,Android客户端功能实现上主要涉及到UI设计、业务处理和网络访问。在UI设计上遵循简洁、易用的原则,每个功能UI界面对应于一个Activity和一个独立的XML布局文件;业务处理上采用分而治之的设计思想,每个功能设计一个专门的业务处理类,该类主要负责响应用户输入、请求网络服务和返回处理结果;客户端实行统一网络访问,通过设计通用的网络访问和JSON解析功能的工具类,专门用于业务处理类的调用。下面以图书资源推介信息管理实现为例,说明其实现过程,该功能实现主要涉及到的类如表2所示。

表2 图书资源推介信息管理功能所涉类

Tab.2 Book recommendation function related class list

类名 功能描述

BookIntroActivity.java 推介信息展示Activity

BookIntroListActivity.java 推介信息列表展示Activity

BookIntroBiz.java 推介信息业务处理(搜索、查看等)类

JSONUtil.java 自定义JSON数据解析工具类,处理JSON与Java对象的转换

NetUtil.java 自定义网络访问工具类,用于处理各种网络访问

Android客户端图书资源推介信息列表展示功能和图书资源推介详情展示功能的最终效果如图3所示。

图3 图书资源推介功能效果图

Fig.3 Library resources recommendation function

effect diagram

5 结论(Conclusion)

本文针对高职院校图书资源推介工作的弊端,设计并实现了基于Android平台的图书资源推介系统。系统由服务器端进行业务处理和数据库操作,通过互联网和无线网提供WEB服务;由Android客户端与用户交互,符合云计算和高速无线网络环境下“云+端”的设计理念,用户体验良好。本系统不仅适用于高职院校,也可用于各类与行业企业结合紧密的高校和科研院所,对各类图书资源推介工作的研究具有一定的实用和参考价值。

参考文献(References)

[1] 王艺璇.基于Andriod平台的移动图书馆客户端设计与实现

[J].智能计算机与应用,2011,1(4):27-33.

[2] 陶虹,曲涛.试论高职 “1+1+1”技能型人才培养模式[J].教

育与职业,2013,6(682):10-12.

[3] 李冰.论网络时代如何做好图书推荐工作[J].绥化学院学报,

2011,31(2):182-183.

[4] 魏崇毓,张菲菲.基于Android平台的视频监控系统设计[J].计

算机工程,2012,38(14):214-216.

[5] 夏帮贵.基于Android平台的移动学习系统[J].西华大学学报

(自然科学版),2011,30(5):81-84.

[6] 王磊,危建国,程伟根.基于SSH的系部教研室信息管理系统设

计与实现[J].软件导刊,2013,12(10):109-111.

作者简介:

吴英宾(1983-),男,硕士,讲师.研究领域:软件技术.

范国渠(1969-),男,硕士,副教授.研究领域:数字化校园,

信息管理.endprint

猜你喜欢

高职教育
人文主义视野下的高职教育研究
以就业为导向的高职学生综合素质培养研究
微商思维在高职市场营销教学中的应用探究
浅析高职院校学生厌学现象及应对措施
论高职生未来职业发展