国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

基于J2EE的三層B/S信息系統研究

2019-11-18 12:29:37
字體:
來源:轉載
供稿:網友

  摘要:隨著互聯網和軟件開發結構的不斷發展,目前出現比較流行的B/S結構,在實現B/S結構方面有多種解決方案。但是隨著多平臺應用的出現,J2EE成為最受軟件應用歡迎的企業解決方案,本文結合實際應用講述了J2EE解決方案在實際企業應用中的實現,并與其他分布式解決方案做了對比。
  
  要害詞:J2EE,B/S,三層結構,SERVLET
  隨著軟件系統的規模和復雜性的增加 ,軟件體系結構的選擇成為比數據結構和算法的選擇更為重要的因素 ,三層客戶/服務器體系結構為企業資源規劃的整合提供了良好的框架 ,是建立企業級治理信息系統的最佳選擇。隨著體系結構的發展,軟件框架結構方面也在不斷發展,目前在多層應用結構方面出現java技術和.net技術的實現的不同的解決方案,二者各有優缺點,分別適用于不同規模的系統的要求。 本文將結合電信計劃建設治理信息系統的實現,說明三層模式的體系結構,介紹基于三層模式的應用系統的分布式組件技術 ,闡述應用J2EE框架結構來實現應用系統的實現方法。
  
  一、系統結構的選擇
  1、 傳統兩層C/S結構的缺點
  
  傳統的兩層客戶/服務器模式比較適合于小規模、用戶較少、單一數據庫且在安全、快速的網絡環境下 (例如局域網 )運行 。但是,隨著應用系統的規模不斷擴大 ,復雜性越來越高在多用戶、多數據庫且非安全的網絡環境下(例如:Internet) ,這種兩層結構的應用模型將無法適應 。而且傳統的兩層結構還存在以下缺陷:
  
  (1)它是單一服務器且以局域網為中心的 ,所以難以擴展至大型企業廣域網或 Intranet;
  
  (2)受限于供給商,程序的升級維護必須由供給商重新開發擴展;
  
  (3)軟、硬件的組合及集成能力有限;在軟件上呈現出胖客戶端,用戶必須在客戶端安裝特定的客戶端應用程序,而且企業的業務邏輯都寫在客戶端應用程序中,程序維護困難,程序升級需要每個客戶端都要安裝新的客戶端應用程序,同時,對于程序開發商來說,程序模塊的重用性差,各個模塊相對獨立;
  
  (4)C/S模式很難治理大量的客戶機。
  
  基于以上原因,傳統的C/S模式已經不能適應發展的需要,隨著網絡技術的普及和用戶需求的進一步提高,三層WEB模式應運而生。
  
  2、 三層WEB結構的優點
  
  三層客戶/服務器模式 (以下簡稱三層模式 )在兩層模式的基礎上,增加了新的一級。這種模式在邏輯上將應用功能分為三層:客戶顯示層、業務邏輯層、數據層。客戶顯示層是為客戶提供給用服務的圖形界面,有助于用戶理解和高效的定位應用服務。業務邏輯層位于顯示層和數據層之間,專門為實現企業的業務邏輯提供了一個明確的層次,在這個層次封裝了與系統關聯的應用模型,并把用戶表示層和數據庫代碼分開 。這個層次提供客戶應用程序和數據服務之間的聯系,主要功能是執行應用策略和封裝應用模式,并將封裝的模式呈現給客戶應用程序。數據層是三層模式中最底層,他用來定義、維護、訪問和更新數據并治理和滿足應用服務對數據的請求。
  
  三層模式的主要優點為 :
  
  ①良好的靈活性和可擴展性。對于環境和應用條件經常變動的情況,只要對應用層實施相應的改變,就能夠達到目的。
  
  ②可共享性。單個應用服務器可以為處于不同平臺的客戶應用程序提供服務,在很大程度上節省了開發時間和資金投入;
  
  ③較好的安全性。在這種結構中,客戶應用程序不能直接訪問數據,應用服務器不僅可控制哪些數據被改變和被訪問,而且還可控制數據的改變和訪問方式 。
  
  ④增強了企業對象的重復可用性。“企業對象”是指封裝了企業邏輯程序代碼,能夠執行特定功能的對象。隨著組件技術的發展,這種可重用的組件模式越來越為軟件開發所接受。
  
  ⑤三層模式成為真正意義上的“瘦客戶端”,從而具備了很高的穩定性、延展性和執行校率。
  
  ⑥三層模式可以將服務集中在一起治理,統一服務于客戶端,從而具備了良好的容錯能力和負載平衡能力。
  
  
 基于J2EE的三層B/S信息系統研究(圖一)

  電信計劃建設治理信息系統是由省電信公司對下屬地市電信公司進行統一治理,所有業務邏輯都集中在省公司治理和制定,地市公司負責數據的錄入和查詢統計,用戶的分布廣泛,數據集中處理,因此在設計時充分考慮各種體系結構的優缺點,選擇三層WEB模式進行開發實現。
  二、體系架構的選擇
  1、 DCOM分布式技術和CORBA分布式技術
  
  Microsoft的分布式COM(DCOM)技術是將組建對象模型技術COM大大進行了擴展,是對在局域網、廣域網甚至是Internet上計算機對象之間的通信提供了完全的支持。通過使用DCOM用戶的應用程序就可以在任何網絡位置上達到真正的分布性,從而滿足客戶應用的需要。整體結構如下圖所示:
  
 基于J2EE的三層B/S信息系統研究(圖二)

  由OMG提出的公共對象請求代理結構CORBA對象是目前比較流行的一種中間件規范,也是一種構件實現規范,主要目標是使對象在分布式環境中可重用、可移植和可互操作,CORBA的整體結構如下圖所示:
  
 基于J2EE的三層B/S信息系統研究(圖三)

  以上兩種分布式結構可以實現在統一特定的環境下的應用,對于局域網中的實現比較流行,但是針對不同平臺的應用和Internet上的應用,二者缺少靈活性。
  
  2、 J2EE體系結構介紹
  
  J2EE體系結構分為三個層次,分別是客戶表示層、中間邏輯層和數據治理層及應用系統。本結構具有跨平臺的特性,結構中的三個層次可以處于不同的平臺下進行協作應用;因為客戶表示層可以使用不同的客戶端程序,因此具有很好的分布性,可以適應分布式治理的要求;在后臺的應用系統集成中,可以把企業不同的應用系統集成到該結構中,因此可以有效的保護現有的資源不被破壞。基于J2EE來實現的WEB服務的核心框架如下圖所示:
  
  
 基于J2EE的三層B/S信息系統研究(圖四)

  用基于J2EE的體系結構開發的WEB服務還具有以下的優點:
  
  ① 可以跨越中間防火墻進行通信。因為WEB服務是利用HTTP最為傳輸媒介,中間層使用WEB服務的話,可以從客戶界面直接調用中間層組件,而不必建立頁面。
  
  ② 應用系統的集成。要把企業里不同語言寫成的,運行于不同平臺上的各種程序集成起來必然會花費很大的開發力量。通過WEB服務可以使用標準的方法把功能和數據暴露出來,供其他程序使用。
  
  ③ 所有的企業邏輯和服務都集成封裝在可重用、可移植的EJB組件中,因此系統維護性和可重用性好。
  
  ④中間件代碼可以集中在處理業務邏輯上,無需考慮數據表示。
  
  因為本次電信計劃建設治理信息系統的業務邏輯和數據處理規則都是由集團公司和省公司統一治理,數據和程序集中在統一的服務器上,并且服務器運行平臺與客戶端的運行平臺不同,因此采用J2EE的框架結構解決比較合適。
  
  三、系統設計和實現
  通過對各種解決方案和框架結構的比較,選擇JAVA技術作為本次系統設計的應用技術,我們對系統的設計如下:
  
  前臺用戶顯示層使用jsp和servlet在瀏覽器上實現,中間使用EJB組件實現企業業務邏輯,后臺數據庫使用Sybase數據庫。具體的企業應用結構如下所示:
  
  
 基于J2EE的三層B/S信息系統研究(圖五)

  其中中間件使用Bea公司的Weblogic7.0,開發工具使用JBuilder9.0,數據庫使用SYBASE數據庫。
  
  在用戶登錄過程中,因為在整個客戶端使用的用戶比較多,因此在連接上我們使用連接池進行處理。具體的連接池實現如下:
  
  class DBConnectionPool
  {
  public DBConnectionPool(String name, String URL, String user, String passWord)
  {
  this.name = name;
  this.URL = URL;
  this.user = user;
  this.password = password;
  this.maxConn = maxConn;
  }
  PRivate void createPools(Properties props)
  {
  private Hashtable pools = new Hashtable();
  String poolName = props.getProperty("poolname").trim();
  String url = props.getProperty(poolName+".url").trim();
  String user = props.getProperty(poolName + ".user");
  String password = props.getProperty(poolName + ".password");
  String maxconn = props.getProperty(poolName + ".maxconn", "0");
  int max;
  DBConnectionPool pool=New DBConnectionPool(poolName, url, user, password);
  Utility.log(pool.toString());
  pools.put(poolName, pool);
  Utility.log("成功創建連接池" + poolName);
  }
  }
  
  為了使用sessionBean進行登錄確認處理,同時利用Bean的監聽功能對用戶的登錄時間進行監聽,超過一定時間,自動切斷用戶登錄連接,讓用戶進行重新登錄。在應用系統中,用戶登錄后的權限控制是一個重點,我們在使用J2EE框架結構的過程中,使用SERVLET的過濾功能來實現權限的控制,具體的實現結構如下:
  
  
基于J2EE的三層B/S信息系統研究(圖六)

  過濾器的定義標記如下:
  
  
  
  IE Filter
  com.ibm.devworks.filters.IEFilter
  

    
  在業務邏輯處理上,我們對各個業務進行相應的分解,然

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚宁县| 扶风县| 吴旗县| 仙居县| 绵竹市| 西吉县| 安陆市| 南陵县| 诸城市| 麻江县| 湖南省| 都昌县| 渭源县| 呼玛县| 南昌市| 读书| 清水县| 呼图壁县| 建宁县| 廊坊市| 修文县| 株洲县| 昭通市| 汽车| 瑞昌市| 凤凰县| 洛扎县| 呼玛县| 比如县| 时尚| 康定县| 略阳县| 高要市| 治多县| 师宗县| 洛南县| 沁水县| 六枝特区| 五峰| 清水河县| 年辖:市辖区|