论文部分内容阅读
〔摘 要〕互联网的普及和信息技术的发展成就了信息时代的数字图书馆,随着无线互联网技术的飞速发展,一种崭新的以手机为终端的图书馆服务模式——移动图书馆悄然兴起。本文首先介绍了无线应用协议,在此基础上,设计并实现了基于WAP的移动图书馆系统。
〔关键词〕移动图书馆;WAP;无线Internet
DOI:10.3969/j.issn.1008-0821.2010.09.023
〔中图分类号〕G250.71 〔文献标识码〕B 〔文章编号〕1008-0821(2010)09-0092-04
Design and Implementation of Mobile Library System Based on WAPMeng Yong
(Library,Nanjing University,Nanjing 210093,China)
〔Abstract〕Popularity of internet and development of information technology result in digital library in the information age.Along with the rapid progress of wireless Internet technology,a fully new kind of digital library services model,whose terminal is mobile library comes into our vision stealthily.This paper based on wireless application protocol,designed and implemented the mobile library system.
〔Keywords〕mobile library;WAP;wireless Internet
随着互联网和移动通讯技术的飞速发展,全球信息化时代已经到来,人类的通信方式发生了革命性的变化,网络和手机成为人们越来越常用的通信工具。根据工业与信息化部于2010年4月26日发布的通信业运行状况及主要指标完成情况分析报告,截至2010年3月我国的移动电话用户已经突破7.7亿,互联网用户达到了1亿,本年度前3个月的移动短信业务量已达到2 056亿条[1]。通过手机人们不仅可以打电话、收发短信,还可以WAP上网、阅读新闻、收发EMAIL、游戏娱乐、订购商品与服务等等。手机短信与WAP上网作为手机的特殊服务功能,以其低廉的资费及便捷性而深受广大用户的喜爱。
越来越多的移动增值服务应时而生,并渗透至诸多行业领域中,产生了不少行业应用产品。无线移动通信技术渗透于图书馆领域,一种以手机为终端的数字图书馆的新服务方式——基于手机的“移动图书馆”悄然兴起[2]。移动图书馆的到来不仅可以使读者不受时间、空间限制、随时随地地访问图书馆的电子资源,同时在一定程度上可以提升图书馆的服务质量与服务水平。
1 无线应用协议(WAP)
1.1 WAP的涵义
WAP是Wireless Application Protocol的英文缩写,中文全称是“无线应用协议”,它是一种向移动终端提供互联网内容和先进增值服务的全球统一的开放式协议标准,是简化了的无线Internet协议[3]。该协议用来标准化无线通信设备,用于Internet访问,包括收发E-mail、访问WAP网站等等。
1.2 WAP通信模型
传统的WWW通信是采用浏览器/服务器端(B/S)结构,即用户通过浏览器向Web服务器发出服务请求,Web服务器在接收到请求后进行响应将处理结果返回给浏览器。
与传统的WWW通信模型相比,WAP同样也是采用了B/S方式,但是两者的主要区别在于:在浏览器和服务器之间,WAP通信模型多了一个WAP网关。WAP的通信模型则由WAP网关、WAP手机、WAP内容服务器这三部分组成,且三者缺一不可。WAP网关在通信过程中起着协议“翻译”的作用,是无线移动通信网与互联网之间连接的桥梁,WAP内容服务器上存储着服务信息,以供手机用户通过WAP来访问。WAP通信模型如图1所示:
图1 WAP通信模型
从图1中,我们可以看出,当用户通过WAP手机输入要访问的WAP服务器的URL地址后,信号经过无线通信网络,以WAP协议方式将请求发送至WAP网关,然后经过WAP网关的“翻译”,再以HTTP协议方式与WAP服务器之间进行交互,最后WAP网关将返回的内容压缩处理成BINARY流返回到客户的WAP手机上。
WAP网关在通信过程中完成HTTP协议向无线Internet传输协议(WSP/WTP)的转换(Protocol Adapters),并对无线Internet内容进行压缩(WML Encoder)和编译(WML Script Compiler)。
1.3 无线标记语言WML
1.3.1 无线标记语言WML
WML(Wireless Markup Language)无线标记语言:是WAP论坛制定的一个基于XML的移动通信设备的标记语言[4]。用HTML语言编写出的网页内容,可在PC机上用IE或Fire Fox等网页浏览器进行阅读,而用WML语言编写出的文件内容,则是专门用在手机等一些无线终端显示屏上显示,供人们阅读;目前新出品的Opera浏览器和WAP手机模拟器等浏览器支持用户通过PC机来浏览WML文件,极大地方便编程人员调试WML代码。此外,WML语言也可以像HTML语言一样向用户提供人机交互界面,接受用户输入的查询等操作,然后向用户返回其所想要获得的信息资源。
1.3.2 WML文件结构
WML的页面一般称作为“桌面(DECK)”,它由一组互相链接的卡片(CARD)组成。当用户通过手机的WAP浏览器来访问某一WML页面的时候,该页面的所有CARD都会从远程WAP网站服务器上下载到手机设备里。CARD之间的切换则是由手机里内置的计算机处理,而不需要再次访问远程WAP服务器获取信息了。在一个CARD卡片里可以包含文本、标记、图像、链接、任务(TASK)、输入控制等等。同时,CARD与CARD之间可以互相链接。
WML文件的整个文档的实体包含在与 标记之间,文档里每个CARD又包含在与 标记之间,文字段落则包含在
与标记之间。
期基于WAP的移动图书馆系统的设计与实现2 系统的设计与实现
2.1 系统功能模块分析
本系统主要完成用户通过手机访问移动图书馆WAP网站进行用户的身份认证,同时可以续借图书、查询已借书信息、查询OPAC馆藏信息、查看图书馆新闻公告、发布建议留言等等[5]。具体的用户服务功能包括:(1)用户身份认证,(2)图书馆概况介绍,(3)图书馆新闻动态,(4)馆藏书目检索,(5)查询读者借阅信息,(6)续借已借图书,(7)读者证挂失,(8)建议留言,(9)使用帮助。
系统后台管理模块主要完成所有的与系统相关的业务管理,包括系统参数配置、统计查询、用户管理、新闻管理、留言管理等功能[6]。
基于以上系统功能分析,系统功能结构图如图2所示:
图2 系统功能结构图
系统部分核心功能的详细分析如下:
2.1.1 系统参数配置功能
系统参数配置功能主要是完成将系统基本参数和业务参数能够在系统启动时应用到整个系统中;系统管理员可以在后台管理操作中对部分参数进行修改重新配置。系统要求所有的系统相关参数都存储在数据库的参数表中,在WAP服务器系统每次启动时,自动从数据库中读取已经设置好的系统参数信息,同时系统参数也可由其他相关文件调用。
2.1.2 身份认证功能
用户身份认证功能主要完成对用户的身份合法性进行判断,用户每次登录时都需要通过API接口到远程的数字图书馆业务系统上验证用户信息的合法性,同时更新本地系统的用户数据[7]。该功能流程图如图3所示。
图3 身份认证功能流程图
当用户输入“读者证号”和“登录密码”,点击登录按钮,系统将该证件号和密码传递到远程数字图书馆业务系统上验证其身份合法性,若该用户不存在或认证失败,则返回错误信息。
若该用户存在且密码正确,则其身份合法,检查本地数据库用户表中是否存在该用户信息,若存在则更新本地库中该用户的相关信息,否则,将该用户的读者证号、密码等信息添加到用户信息表中,进而,该用户可成功进入用户中心。进入用户中心后,该读者可以查询已借图书信息、续借图书、查询OPAC馆藏书目、挂失读者证、留言反馈等。
2.2 系统开发环境
由于系统开发采用了基于MVC模式的Struts框架和JSP技术,所以开发平台选择了Eclipse3.2.1和MyEclipse 5.5.1GA作为系统集成开发环境。WAP服务器采用Tomcat 6.0.16版本,JDK版本为JDK6.0U5,数据库为SQLServer2000SP4版本,WAP采用WAP1.3版本,WAP浏览器为Opera 9.5beta,MVC框架采用Struts 1.2,数据库连接池为Proxool 0.9.0RC3。进行系统开发之前,在服务器端和开发环境主机端都预先安装相同版本的JAVA运行环境并配置好相应的环境变量,同时所有的开发工具、WAP服务器和数据库版本都与服务器上配置的版本相同,以确保系统能够在移植时产生不必要的错误。
2.3 系统开发框架设计
在系统开发框架设计上将该系统从逻辑上分为五层,即客户层、表示层、业务层、数据层和数据访问层。客户层一般指系统的界面,实现人机交互,主要负责用户手机数据录入和信息显示。表示层则负责对用户发送来的URL请求做出响应,而后调用业务层的相关组件,并将处理的结果返回到客户层。业务层则负责对数据层的操作,实现对数据添加、修改、删除和查询等业务逻辑操作。数据层主要负责数据的存储、组织和管理。数据访问层则是用于专门与数据库进行交互,执行数据的添加、删除、更新、显示等。
基于上述的Struts开发框架设计,首先将系统分为表示层、业务层和控制层。然后将Proxool数据连接池集成到Struts框架中作为数据连接层,两者结合起来作为系统的开发框架[8]。图4为系统开发框架。图4 系统开发框架图
具体来说,整个系统开发采用了基于MVC设计模式的Struts框架和Proxool数据库连接池技术。表示层中控制器的功能由ActionServlet和Action-Mapping来实现,其中ActionServlet用来接受客户端发来的请求,Action-Mapping则负责将一个请求映射到一个具体的Action。表示层中的视图由JSP页面来展现给客户。表示层中模型则是由Action和Action Form共同来实现,Action对象负责调用业务逻辑模块的相关接口,并将处理结果返回给相应的视图组件,Action Form组件负责实现对客户端表单数据的封装。业务层包含了由Java Bean实现的业务逻辑类,并提供与Action类之间调用的接口,同时还封装了与数据库连接池Proxool之间的交互。
2.4 数据库设计
通过对系统功能及业务需求的分析,同时考虑到数据库结构分明、逻辑体系严谨,在功能和性能上能够满足系统数据处理的要求,总结出的部分核心数据表的设计及功能如下:
(1)用户信息表:存放读者的基本信息,包括读者证号、密码、身份证号、惟一标识号、注册时间、用户状态等。
(2)留言信息表:存放读者建议与留言以及管理员的回复信息,包括读者证号、留言标题、内容、回复内容、发布时间、回复时间等。
(3)新闻信息表:存放图书馆新闻公告信息,包括标题、内容、发布日期、发布者、发布状态等。
(4)管理员信息表:存放管理员相关信息,包括管理员ID、密码、权限组ID、状态。
(5)管理员组信息表:存放管理员分组权限的信息,包括权限组名称、权限、权限状态等。
(6)管理员日志表:存放管理员的操作日志,包括操作员名称、操作类型、操作内容、操作时间和IP地址等,日志信息不允许被删除。
2.5 系统实现
目前本系统处于试运行状态,功能都已实现,考虑到篇幅问题,本文仅给出系统部分界面,如图5所示。
图5 WAP网站首页
3 结束语
本文深入研究了基于WAP服务的图书馆移动服务系统,目前已实现了与力博图书馆业务系统集成,并能够为读者提供了图书馆手机WAP服务。WAP服务功能主要包括图书馆公告信息、馆藏书名查询、续借图书、查询已借书信息、挂失读者证等,同时还实现了后台管理维护模块,用于对数据的及时更新和管理。随着3G时代的到来,无线移动通信技术的不断发展,图书馆移动业务也将迎来前所未有的发展,其研究意义非常深远。
参考文献
[1]中国工业与信息化部.2010年3月通信业运行状况及主要指标完成情况[EB/OL].http:∥www.miit.gov.cn/n11293472/n11293832/n11294132/n12858447/13178391.html,2010-03-15.
[2]陈素梅.手机图书馆开辟移动阅读的新时代[J].图书馆建设,2007,(5):83-86.
[3]钱丽丹,杨凌云.基于WAP的移动电子商务系统的设计与实现[J].商场现代化,2009,(12):141-142.
[4]刘闯.WAP技术研究[J].辽宁工学院学报,2005,(6):372-375.
[5]茆意宏,武立斌,黄水清.图书馆手机服务系统的建设:需求调查与分析——以南京地区图书馆为例[J].图书馆工作与研究,2008,(12):55-58.
[6]茆意宏.基于手机移动通信网络的图书馆服务研究述评[J].图书馆理论与实践,2008,(2):22-24.
[7]孙萍.基于WAP的图书馆移动服务系统的构建[J].图书馆理论与实践,2008,(6):81-82.
[8]Proxool Configuration[EB/OL].http:∥proxool.sourceforge.net/configure.html,2008-03-04.
〔关键词〕移动图书馆;WAP;无线Internet
DOI:10.3969/j.issn.1008-0821.2010.09.023
〔中图分类号〕G250.71 〔文献标识码〕B 〔文章编号〕1008-0821(2010)09-0092-04
Design and Implementation of Mobile Library System Based on WAPMeng Yong
(Library,Nanjing University,Nanjing 210093,China)
〔Abstract〕Popularity of internet and development of information technology result in digital library in the information age.Along with the rapid progress of wireless Internet technology,a fully new kind of digital library services model,whose terminal is mobile library comes into our vision stealthily.This paper based on wireless application protocol,designed and implemented the mobile library system.
〔Keywords〕mobile library;WAP;wireless Internet
随着互联网和移动通讯技术的飞速发展,全球信息化时代已经到来,人类的通信方式发生了革命性的变化,网络和手机成为人们越来越常用的通信工具。根据工业与信息化部于2010年4月26日发布的通信业运行状况及主要指标完成情况分析报告,截至2010年3月我国的移动电话用户已经突破7.7亿,互联网用户达到了1亿,本年度前3个月的移动短信业务量已达到2 056亿条[1]。通过手机人们不仅可以打电话、收发短信,还可以WAP上网、阅读新闻、收发EMAIL、游戏娱乐、订购商品与服务等等。手机短信与WAP上网作为手机的特殊服务功能,以其低廉的资费及便捷性而深受广大用户的喜爱。
越来越多的移动增值服务应时而生,并渗透至诸多行业领域中,产生了不少行业应用产品。无线移动通信技术渗透于图书馆领域,一种以手机为终端的数字图书馆的新服务方式——基于手机的“移动图书馆”悄然兴起[2]。移动图书馆的到来不仅可以使读者不受时间、空间限制、随时随地地访问图书馆的电子资源,同时在一定程度上可以提升图书馆的服务质量与服务水平。
1 无线应用协议(WAP)
1.1 WAP的涵义
WAP是Wireless Application Protocol的英文缩写,中文全称是“无线应用协议”,它是一种向移动终端提供互联网内容和先进增值服务的全球统一的开放式协议标准,是简化了的无线Internet协议[3]。该协议用来标准化无线通信设备,用于Internet访问,包括收发E-mail、访问WAP网站等等。
1.2 WAP通信模型
传统的WWW通信是采用浏览器/服务器端(B/S)结构,即用户通过浏览器向Web服务器发出服务请求,Web服务器在接收到请求后进行响应将处理结果返回给浏览器。
与传统的WWW通信模型相比,WAP同样也是采用了B/S方式,但是两者的主要区别在于:在浏览器和服务器之间,WAP通信模型多了一个WAP网关。WAP的通信模型则由WAP网关、WAP手机、WAP内容服务器这三部分组成,且三者缺一不可。WAP网关在通信过程中起着协议“翻译”的作用,是无线移动通信网与互联网之间连接的桥梁,WAP内容服务器上存储着服务信息,以供手机用户通过WAP来访问。WAP通信模型如图1所示:
图1 WAP通信模型
从图1中,我们可以看出,当用户通过WAP手机输入要访问的WAP服务器的URL地址后,信号经过无线通信网络,以WAP协议方式将请求发送至WAP网关,然后经过WAP网关的“翻译”,再以HTTP协议方式与WAP服务器之间进行交互,最后WAP网关将返回的内容压缩处理成BINARY流返回到客户的WAP手机上。
WAP网关在通信过程中完成HTTP协议向无线Internet传输协议(WSP/WTP)的转换(Protocol Adapters),并对无线Internet内容进行压缩(WML Encoder)和编译(WML Script Compiler)。
1.3 无线标记语言WML
1.3.1 无线标记语言WML
WML(Wireless Markup Language)无线标记语言:是WAP论坛制定的一个基于XML的移动通信设备的标记语言[4]。用HTML语言编写出的网页内容,可在PC机上用IE或Fire Fox等网页浏览器进行阅读,而用WML语言编写出的文件内容,则是专门用在手机等一些无线终端显示屏上显示,供人们阅读;目前新出品的Opera浏览器和WAP手机模拟器等浏览器支持用户通过PC机来浏览WML文件,极大地方便编程人员调试WML代码。此外,WML语言也可以像HTML语言一样向用户提供人机交互界面,接受用户输入的查询等操作,然后向用户返回其所想要获得的信息资源。
1.3.2 WML文件结构
WML的页面一般称作为“桌面(DECK)”,它由一组互相链接的卡片(CARD)组成。当用户通过手机的WAP浏览器来访问某一WML页面的时候,该页面的所有CARD都会从远程WAP网站服务器上下载到手机设备里。CARD之间的切换则是由手机里内置的计算机处理,而不需要再次访问远程WAP服务器获取信息了。在一个CARD卡片里可以包含文本、标记、图像、链接、任务(TASK)、输入控制等等。同时,CARD与CARD之间可以互相链接。
WML文件的整个文档的实体包含在
与标记之间。
期基于WAP的移动图书馆系统的设计与实现2 系统的设计与实现
2.1 系统功能模块分析
本系统主要完成用户通过手机访问移动图书馆WAP网站进行用户的身份认证,同时可以续借图书、查询已借书信息、查询OPAC馆藏信息、查看图书馆新闻公告、发布建议留言等等[5]。具体的用户服务功能包括:(1)用户身份认证,(2)图书馆概况介绍,(3)图书馆新闻动态,(4)馆藏书目检索,(5)查询读者借阅信息,(6)续借已借图书,(7)读者证挂失,(8)建议留言,(9)使用帮助。
系统后台管理模块主要完成所有的与系统相关的业务管理,包括系统参数配置、统计查询、用户管理、新闻管理、留言管理等功能[6]。
基于以上系统功能分析,系统功能结构图如图2所示:
图2 系统功能结构图
系统部分核心功能的详细分析如下:
2.1.1 系统参数配置功能
系统参数配置功能主要是完成将系统基本参数和业务参数能够在系统启动时应用到整个系统中;系统管理员可以在后台管理操作中对部分参数进行修改重新配置。系统要求所有的系统相关参数都存储在数据库的参数表中,在WAP服务器系统每次启动时,自动从数据库中读取已经设置好的系统参数信息,同时系统参数也可由其他相关文件调用。
2.1.2 身份认证功能
用户身份认证功能主要完成对用户的身份合法性进行判断,用户每次登录时都需要通过API接口到远程的数字图书馆业务系统上验证用户信息的合法性,同时更新本地系统的用户数据[7]。该功能流程图如图3所示。
图3 身份认证功能流程图
当用户输入“读者证号”和“登录密码”,点击登录按钮,系统将该证件号和密码传递到远程数字图书馆业务系统上验证其身份合法性,若该用户不存在或认证失败,则返回错误信息。
若该用户存在且密码正确,则其身份合法,检查本地数据库用户表中是否存在该用户信息,若存在则更新本地库中该用户的相关信息,否则,将该用户的读者证号、密码等信息添加到用户信息表中,进而,该用户可成功进入用户中心。进入用户中心后,该读者可以查询已借图书信息、续借图书、查询OPAC馆藏书目、挂失读者证、留言反馈等。
2.2 系统开发环境
由于系统开发采用了基于MVC模式的Struts框架和JSP技术,所以开发平台选择了Eclipse3.2.1和MyEclipse 5.5.1GA作为系统集成开发环境。WAP服务器采用Tomcat 6.0.16版本,JDK版本为JDK6.0U5,数据库为SQLServer2000SP4版本,WAP采用WAP1.3版本,WAP浏览器为Opera 9.5beta,MVC框架采用Struts 1.2,数据库连接池为Proxool 0.9.0RC3。进行系统开发之前,在服务器端和开发环境主机端都预先安装相同版本的JAVA运行环境并配置好相应的环境变量,同时所有的开发工具、WAP服务器和数据库版本都与服务器上配置的版本相同,以确保系统能够在移植时产生不必要的错误。
2.3 系统开发框架设计
在系统开发框架设计上将该系统从逻辑上分为五层,即客户层、表示层、业务层、数据层和数据访问层。客户层一般指系统的界面,实现人机交互,主要负责用户手机数据录入和信息显示。表示层则负责对用户发送来的URL请求做出响应,而后调用业务层的相关组件,并将处理的结果返回到客户层。业务层则负责对数据层的操作,实现对数据添加、修改、删除和查询等业务逻辑操作。数据层主要负责数据的存储、组织和管理。数据访问层则是用于专门与数据库进行交互,执行数据的添加、删除、更新、显示等。
基于上述的Struts开发框架设计,首先将系统分为表示层、业务层和控制层。然后将Proxool数据连接池集成到Struts框架中作为数据连接层,两者结合起来作为系统的开发框架[8]。图4为系统开发框架。图4 系统开发框架图
具体来说,整个系统开发采用了基于MVC设计模式的Struts框架和Proxool数据库连接池技术。表示层中控制器的功能由ActionServlet和Action-Mapping来实现,其中ActionServlet用来接受客户端发来的请求,Action-Mapping则负责将一个请求映射到一个具体的Action。表示层中的视图由JSP页面来展现给客户。表示层中模型则是由Action和Action Form共同来实现,Action对象负责调用业务逻辑模块的相关接口,并将处理结果返回给相应的视图组件,Action Form组件负责实现对客户端表单数据的封装。业务层包含了由Java Bean实现的业务逻辑类,并提供与Action类之间调用的接口,同时还封装了与数据库连接池Proxool之间的交互。
2.4 数据库设计
通过对系统功能及业务需求的分析,同时考虑到数据库结构分明、逻辑体系严谨,在功能和性能上能够满足系统数据处理的要求,总结出的部分核心数据表的设计及功能如下:
(1)用户信息表:存放读者的基本信息,包括读者证号、密码、身份证号、惟一标识号、注册时间、用户状态等。
(2)留言信息表:存放读者建议与留言以及管理员的回复信息,包括读者证号、留言标题、内容、回复内容、发布时间、回复时间等。
(3)新闻信息表:存放图书馆新闻公告信息,包括标题、内容、发布日期、发布者、发布状态等。
(4)管理员信息表:存放管理员相关信息,包括管理员ID、密码、权限组ID、状态。
(5)管理员组信息表:存放管理员分组权限的信息,包括权限组名称、权限、权限状态等。
(6)管理员日志表:存放管理员的操作日志,包括操作员名称、操作类型、操作内容、操作时间和IP地址等,日志信息不允许被删除。
2.5 系统实现
目前本系统处于试运行状态,功能都已实现,考虑到篇幅问题,本文仅给出系统部分界面,如图5所示。
图5 WAP网站首页
3 结束语
本文深入研究了基于WAP服务的图书馆移动服务系统,目前已实现了与力博图书馆业务系统集成,并能够为读者提供了图书馆手机WAP服务。WAP服务功能主要包括图书馆公告信息、馆藏书名查询、续借图书、查询已借书信息、挂失读者证等,同时还实现了后台管理维护模块,用于对数据的及时更新和管理。随着3G时代的到来,无线移动通信技术的不断发展,图书馆移动业务也将迎来前所未有的发展,其研究意义非常深远。
参考文献
[1]中国工业与信息化部.2010年3月通信业运行状况及主要指标完成情况[EB/OL].http:∥www.miit.gov.cn/n11293472/n11293832/n11294132/n12858447/13178391.html,2010-03-15.
[2]陈素梅.手机图书馆开辟移动阅读的新时代[J].图书馆建设,2007,(5):83-86.
[3]钱丽丹,杨凌云.基于WAP的移动电子商务系统的设计与实现[J].商场现代化,2009,(12):141-142.
[4]刘闯.WAP技术研究[J].辽宁工学院学报,2005,(6):372-375.
[5]茆意宏,武立斌,黄水清.图书馆手机服务系统的建设:需求调查与分析——以南京地区图书馆为例[J].图书馆工作与研究,2008,(12):55-58.
[6]茆意宏.基于手机移动通信网络的图书馆服务研究述评[J].图书馆理论与实践,2008,(2):22-24.
[7]孙萍.基于WAP的图书馆移动服务系统的构建[J].图书馆理论与实践,2008,(6):81-82.
[8]Proxool Configuration[EB/OL].http:∥proxool.sourceforge.net/configure.html,2008-03-04.