JSF+EJB+JPA之整體思想
來源:互聯網
上載者:User
序言: JSF+EJB+JPA 其實沒有想象中的難,不過要做好應用以及在合適的地方建立應用,才是真正的痛點. 好的技術在不合適的地方做了應用,那也只能是垃圾. 所以這個東西並不適合於太小規模的公司專屬應用程式. 重量級公司專屬應用程式可以使用這個基本的3層結構的實現,來增加更多的企業級應用.而這些基本上不怎麼需要修改,可以說是可以獨立開來維護的部分.至於耦合性,關鍵看如何建立應用了,這個又和項目開始的分析和設計密切相關.
目的: 建立JSF,EJB,JPA 之間的串連以達成基礎結構建設
功能: JSF: 表述層應用. 用來輸出處理結果和與使用者互動介面. 業務層邏輯可以用JSF的manage bean 和EJB 的 session bean 來一起承擔.
EJB: 邏輯層應用. 主要處理商務邏輯和系統邏輯.
JPA: 持久層應用. 在邏輯層和資料層之間作為資料緩衝的存在.以提高對資料存取和操作的效率和穩定.
表述層->邏輯層->持久層->資料層
所需檔案:
JSF: 分頁檔(jsp),管理bean,face定義檔案(可以與頁面導航合用)
JEB: 以entity bean(實體bean)為基礎的 session bean(會話bean).系統邏輯單元.另外包含各種自訂exception
JPA: entity bean,資料庫映射,持久層定義檔案.
例子: 使用者輸入username 和 password 來進行驗證.
JSF: 頁面 login.jsp. LoginBean.java(作為controller的作用).faces-config.xml
EJB: Login.java(session bean),LoginRemote.java,UserFacade.java,UserFacadeLocal.java,LoginException.java
JPA: User.java(entity bean), xxx.dbschema,persistence.xml
以上10個檔案,完成了基礎的結構設定.
當然了,根據需要可以對這種結構進行更多的擴充,以達到事務分類的目的.
這樣的結構可以與JCA,JAAS,JCE,JMS,Web Service等企業級其他應用相結合,以適合項目的應用建設.