唐盛平++蒋争明
摘 要
随着移动通信技术、互联网的快速发展以及移动智能手机的普遍应用,人们的生活质量得到了极大的提高。怎样利用这些技术来改善我们的生活,成为了研究的热点之一。本文提出了一种基于当今流行的WebService技术的自助打印系统的设计,该系统能够将手机端、PC端以及不同的操作系统平台无缝结合起来,并且能够提供文档的打印管理等功能,具有使用方便快捷的特点,应用场景也非常的广泛。
【关键词】WebService 打印管理 Java-Web 应用软件
1 引言
随着移动通信技术、互联网的快速发展以及智能手机等手持设备的普遍使用,人们的生活方式也呈现出多元化,不仅使用传统的PC机来完成工作,还需要利用智能手机等手持设备来进行工作。打印文件成了生活中必不可少的一部分,传统的打印方式已经不能满足人们的需要。快节奏的生活要求有个随时随地的打印方式,就算身边没有打印机,也照样能够实现打印文件的服务;此外,还要满足不同客户端的正常使用。
本文提出一种基于WebService的自助打印系统,该系统能够提供远程的打印服务,支持不同的客户端的使用,实现了不同客户端随时随地的打印文档的功能,给人们的生活提供了极大的便利性,具有广泛的应用场景。
2 问题分析
实现不同客户端的程序与服务器端正常地进行信息的交互,就需要将PC端、智能手机端的应用程序与服务端的服务无缝地结合起来,这是软件设计过程中需要考虑的重要问题之一,也是难点之一。
不同程序设计语言设计出的软件如何有效地、方便地进行信息交互,是设计分布式系统必须考虑的问题。例如服务端软件运行在Linux操作系统平台下,而客户端运行在Android、Window、IOS等平台下,服务端程序与客户端应用程序有效的信息交互就显得格外的重要,信息交互包括简单类型的变量值的传递,还包括复杂的对象类型的传递。为了满足这些需要,就必须提供一种有效的信息交互机制,其中WebService就是当今流行的一种有效的解决不同应用程序之间进行信息交互的解决方案。
3 WebService简介
Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序,其最大的特点是平台无关性。Web服务的平台无关性体现在其语言的透明性,服务的实现和客户端的实现可以使用不同的程序设计语言来实现。WebService的定义总的来说可以分为2种:基于SOAP和REST风格的Web服务。现在的很多软件系统可能由不同的程序语言来开发,并且这些软件会部署在不同的地方、不同的系统平台上。若要将这些软件联系起来,WebService起着非常重要的作用。
4 基于WebService的自助打印系统的设计
本文提出的打印系统主要包括2个部分:服务端程序和客户端程序,其中服务器端程序主要负责文件的接收和打印文档,客户端程序即用户用来连接服务器、上传文档以及发出打印文件的命令。客户端可以使用不同的语言来开发,只要该语言支持WebService的接口。此外,客户端可以运行在不同的系统平台上,例如Android、Windows和IOS等平台。
当用户身边没有打印机时,照样可以使用该自助打印系统来实现打印的任务。例如,用户身边没有打印机时,而在办公室的电脑安装了服务端程序,那么用户就可以利用办公室的打印机来完成打印任务。
4.1 服务器端程序的设计
服务器端的程序可以使用支持WebService接口的任何一种语言来编写,例如C#、Java等,本文的设计针对Java程序语言来设计。服务程序的功能包括:接收客户端的登陆、接收客户端的文件、执行打印操作、通知客户端打印结果、定时打印服务以及文件管理。
4.1.1 接收客户的登陆功能
用户要使用打印服务时,必须先登陆服务器端,然后服务器端程序对该用户的合法性进行认证,从而保证了系统使用的安全性。
4.1.2 接收客户端的文件功能
由于文件是二进制的数据,所以要实现文件的传递,就要用到FileOutPutStream文件流的类库的相应接口;客户端将文件以二进制的方式传输到服务器端,服务器端程序接收二进制数据,并且保存到与客户端发送的文件同名同类型的文件中,从而实现了客户端发送文件到服务器端的功能。
4.1.3 执行打印操作
该功能需要用到Java的API中提供的打印服务接口PrintService,根据用户的要求打印指定的文件。
4.1.4 通知客户端打印结果
执行打印操作完成之后,服务器端向客户端返回“打印成功”或者“打印失败”结果信息。
4.1.5 定时打印服务
本系统还提供人性化的打印时间的设置,用户可以根据自己的具体需要合理安排打印时间。服务端程序会检测设定了定时打印服务时间的用户,一旦到了预定的打印时间,将执行打印操作。打印操作完成之后,返回打印结果通知用户。
4.1.6 文件管理
用户可以对自己上传到服务器端的文件进行管理,可以根据需要删除指定的文件,方便用户对上传的文件的管理。
此外,为了能够提高打印服务的质量,满足多个用户同时使用打印服务,服务器端使用多线程编程技术来接收用户的登陆以及其他的操作。
4.2 客户端程序的设计
客户端程序可以以应用软件和Web网页的形式出现,其主要功能包括:登陆功能、上传打印文件功能、预定打印功能和文件管理功能。用户可以以网页形式或者应用软件的方式来获取打印服务,可以在不同的平台上正常使用,大大提高了用户操作的便捷性。
4.2.1 登陆功能
为了方便有效管理用户的信息及其文档,用户使用自助打印系统之前,必须先提供合法的登陆信息;用户信息经过服务端验证以后,才能进入并且正常使用系统的功能。
4.2.2 上传文件功能
客户端通过文件上传功能,上传本地的文档到服务器端进行打印,服务器端将会根据不同的用户标识组织保存需打印的文档。为了防止用户上传非可打印类型的文件到服务器端,在上传文件时,将过滤文件类型,使用户只能上传可打印类型的文件。
4.2.3 预定打印功能
用户可以根据自己的需要,设定文档打印的时间。
4.2.4 文件管理功能
用户可以对其上传的文件进行管理,可以删除文件,发出打印指定文件的命令,还可以设置打印文档的份数。
5 结束语
随着智能手机的广泛使用和电信网络速度的提升,为了更好地方便人们的生活,本文提出了一种基于WebService的自助打印系统,用户可以使用网页、不同的系统平台的应用软件来使用该系统,做到了跨平台的无缝操作。此外,由于使用WebService技术,客户端可以根据不同的平台与对不同编程语言的熟练程度来选择开发语言。
参考文献
[1]冯钧,张立霞,唐志贤.一种基于WebService的多系统水利日志存储方法[J].计算机与现代化,2016(02).
[2]Martin Kalin.Java WebService:Up and Running[M].南京:东南大学出版社,2010(01).
[3]Bill Brogden著,高春蓉等译.SOAP与Java编程指南[M].北京:电子工业出版社,2002(05).
电子技术与软件工程2016年18期