唐盛平++蔣爭明
摘 要
隨著移動通信技術、互聯網的快速發展以及移動智能手機的普遍應用,人們的生活質量得到了極大的提高。怎樣利用這些技術來改善我們的生活,成為了研究的熱點之一。本文提出了一種基于當今流行的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期