同時,J2EE平台還有其他技術方麵的優勢。
二、J2EE適應數字圖書館的發展趨勢
因為J2EE本身就是針對分布式應用而提出的,其層次化結構和納入異構係統的能力正是分布式數字圖書館係統所需要的,其用戶界麵可利用現有的各種全球信息網技術,也必然能適應將來發展起來的新技術。
三、J2EE對數據庫的選擇具有很大的靈活性數據庫是數字圖書館資源最基本的保存形式。目前的數字圖書館已經有多種類型的數據庫,隨著技術的推進,新形式的數據庫將會不斷出現,J2EE係統對於底層數據庫的選擇具有很大的靈活性。便於利用已有的各種資源。如果將來需要擴充、更換數據庫,也很容易實現。
四、J2EE有成功範例可資借鑒
在J2EE實際使用中已總結出很多成功的模式,可供開發者參考例如網絡的安全性,用戶權限管理等問題是所有的數字圖書館實用係統都必須處理的,但也是其他J2EE應用程序開發時反複研究過,實踐過的問題,所以容易找到可供參考的模式,必要時還可以通過購買現成的組件來解決。
在應用軟件裝上運行之後的相當長時間內,還有很多問題需要開發或銷售單位解決。存在上述問題的原因,也在於應用軟件涉及麵寬,未經充分調試。如果以J2EE組件形式開發軟件,則與其他應用程序有共性的部分可選用成熟的技術方案或組件,開發者可以專注於圖書館特有的業務邏輯部分,減輕開發負擔,提高可靠性。而且對這部分組件可以在調試和應用過程中逐步積累經驗,不斷改進。
五、J2EE易於與互聯網上資源的整合
由傳統的圖書館資源轉化而來的信息資源隻是未來數字圖書館信息資源的一個組成部分,來自數字資源供應商的信息將是另一重要組成部分。這些資源必然有很大一部分建立在J2EE平台上。采用J2EE平台的係統自然可以與之無縫銜接。例如以客戶端的形式查詢、獲取有關係統的有關信息,與其他信息一起作綜合處理後,再用適當的形式提交給用戶。從軟件的角度看,這種過程與本係統內的查詢過程無本質差別。未來的數字圖書館將擁有更多形式的信息資源,提供更多更複雜的服務。例如,個性化、智能化的信息報務,盡管目前處於起步階段,將來必定隨著相關技術的進步而逐漸發展。建立在J2EE平台上的應用係統可以通過添加組件等方式將新功能納入其中,而不必對原係統作大的改動。
六、J2EE便於軟件開發時的分工合作
在圖書館自動化軟件的初期,不少軟件隻是一二個人單兵作戰。而到了自動化集成係統及數字圖書館係統時期,需要有一個開發團隊的協同作戰。J2EE平台上的角色分離和組件複用為軟件開發的分工合作與競爭提供了良好環境。
七、J2EE便於開發三層/多層分布式應用程序由於數字圖書館係統軟件利用互操作來管理和檢索,信息資源的濃度和廣度不斷拓展,因此會更迫切地需要三層/多層結構和新一代分布式計算機模型的Web服務。開發分布應用程序是J2EE的一大優勢,利用J2EE平台可以很輕鬆的實現數據庫的分布式處理和業務邏輯的分布式處理。這對中小學圖書館利用網絡實現資源共享,提供了一項技術支持。例如,在一個縣教育係統圖書館中心,在開發係統的時候並不需要知道學校圖書館室的數據庫的位置,而隻需要預先分配一個JNDI名字,程序根據這個名字找到相應的數據庫;然後在發布應用程序的時候根據數據庫的位置在J2EE服務器中配置數據源Data Source,並把這個數據源對應到JNDI名字即可實現對數據庫的訪問。另外,利用J2EE的JTA事務支持,就可以很容易地在各分布的數據庫間實現分布事務管理。
用J2EE平台來開發一個圖書館係統,它與傳統的C/S結構的圖書館係統最大的區別是:MVC(模型、視圖控製器)分層結構清晰,分布式和可移植性更強。這個係統的客戶端可以是基於瀏覽器的,它可以是基於用各種編程語言開發的應用程序。