1. <li id="3se62"></li>
      <th id="3se62"></th>

      <progress id="3se62"></progress>
         你好,歡迎來到電腦編程技巧與維護雜志社! 雜志社簡介廣告服務讀者反饋編程社區  
        合訂本訂閱
         
         
        您的位置:雜志經典 / 網絡與通信
        在線生成Word文檔的實現與應用(一)
         

        摘要:本文從開發者的角度介紹了如何在B/S架構下實現在線Word文檔的生成,并通過開發實例對此應用進行詳細說明。通過本文,讀者不僅可以了解在B/S平臺下實現在線文檔生成的開發過程,而且還能體會到在B/S平臺進行辦公組件開發的技巧和樂趣。

        關鍵詞:在線文檔生成 B/S架構 COM組件 JACOB

        1 概述

        1.1 在線生成Word文檔應用實例

        所謂在線生成Word文檔就是在網頁上控制Word文檔的生成,而生成后的Word文檔經過下載后即可作為本地Word文檔,訪問者可以直接編輯和打印文檔;而相比之下,大多數情況下,由于網頁結構的復雜性(例如DIV、IFRAME等組件的嵌套),訪問者無法實現直接對網頁內容進行打印,或者將網頁內容轉換到本地Word文檔。

        簡而言之,在線生成Word文檔實際上是辦公需求(辦公文檔處理)與B/S應用(門戶網站等)的結合,其既可實現B/S應用下的共享方式,又延續了處理辦公文檔的習慣。

        12分別是在線生成Word的網頁內容和生成Word后的網頁效果。

         


         

        1 在線生成Word文檔網頁


        2 在線Word文檔生成頁面

         

               通過將21對比可知,在線生成的Word文檔內容與網頁同步,且格式和排版已經制定,用戶無需再花費過多精力進行文檔的處理,由此提高了文檔處理的效率。

              

        1.2 實現要點

        實際上,在線生成Word文檔在內容展現形式上結合了B/S架構特性(例如:基于HTTP的內容推送、OLE對象的嵌入),而其后臺處理與開發者熟知的單機應用并沒有什么太大的不同,其實質上還是對Office COM組件的應用。

        通過Office COM組件,開發者可以方便地對Office文檔進行操作,例如:新建、保存、另存為、選取文本塊、插入文等。如此一來,使用Office COM組件即可實現Word文檔的生成。而要實現文檔的在線生成,一則需要B/S服務端后臺使用Office COM組件,另則需要有數據源支撐所生成文檔的內容的動態性。在線Word文檔生成示意如3所示。

         


        3 在線Word文檔生成示意

         

        3中,Web服務端采用的是J2EE平臺,則其數據源提取將會采用JDBC方式。由此可見,在線生成Word文檔的關鍵點:Word程序COM組件應用、文檔內容提供和頁面交互。

        1.2.1 Word程序COM組件的使用

        Word程序COM組件是生成Word文檔的核心,而對于COM組件的應用,大多數開發者的開發環境恐怕還是以微軟公司的VS或寶蘭公司的C++ BuilderDelphi開發環境為主。對于Java開發者,接觸COM組件的機會顯然要C++程序員要少得多。那么如何讓Java程序員用上Word程序的COM組件呢?

        鑒于數量龐大的Java程序員和Office用戶群體,該問題很快得到了較好地解決,一個叫JACOBJAVA-COM Bridge)的開源項目提供了橋接JavaCOM組件的庫,Java程序員可以借助該庫來調用COM組件。1中是該庫中重要類的及說明。

        1 JACOB庫中重要類及說明

        /接口

        說明

        com.jacob.activeX.ActiveXComponent

        ActiveX組件,表示COM組件對象

        com.jacob.com.Dispatch

        調度接口,用于調用接口方法

        com.jacob.com.Variant

        多格式數據類型,作為接口方法的參數類型

         

        需要注意的是,JACOB通過Java本地化接口(JNI)的方式來實現JavaCOM的橋接,所以其部署時還需要同時分發本地庫(動態鏈接庫,即DLL文件)。

        1.2.2 文檔內容的提供

        結合筆記的開發經驗,文檔內容的提供可分為兩個部分:第一是文檔模板,第二是后臺數據。

        1. 文檔模板

        文檔模板可以理解為文檔中模式相對固定的內容,例如:頁眉、標題以及內容標簽,如4示的就是本案例中的文檔模板。

         

        4 WORD模板文件

         

               4中的模板中,文檔的標題文字和表格的頭部都是固定內容,而表格的單元格采用的是描述內容的標簽,其格式為:[%=RS(數據集ID,行號,列號)%],這些標簽最終將要被實際數據所替換。

        2. 后臺數據

        后臺數據即從數據庫中所獲取的內容,JSP頁面從數據庫獲取數據后,利用Word程序COM組件的替換方法將后臺數據替換文檔模板中的標簽。

        1.2.3 頁面交互

        JSP頁面中,前端傳給后端的內容主要是文檔模板編號,即替換哪個文檔模板;后端推送給前端的內容主要是生成后的文檔。

          推薦精品文章

        ·2023年7月目錄
        ·2023年6月目錄 
        ·2023年5月目錄
        ·2023年4月目錄 
        ·2023年3月目錄 
        ·2023年2月目錄 
        ·2023年1月目錄 
        ·2022年12月目錄 
        ·2022年11月目錄 
        ·2022年10月目錄 
        ·2022年9月目錄 
        ·2022年8月目錄 
        ·2022年7月目錄 
        ·2022年6月目錄 

          聯系方式
        TEL:010-82561037
        Fax: 010-82561614
        QQ: 100164630
        Mail:gaojian@comprg.com.cn

          友情鏈接
         
        Copyright 2001-2010, www.1wcdp.top, All Rights Reserved
        京ICP備14022230號-1,電話/傳真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
        地址:北京市海淀區遠大路20號寶藍大廈E座704,郵編:100089 
        1. <li id="3se62"></li>
          <th id="3se62"></th>

          <progress id="3se62"></progress>
            操美女小骚逼