JBoss Seam Web應用開發入門篇
JBoss Seam Web入門
根據JBoss的官方網站的介紹,JBoss Seam 是一個“為java ee 5.0量身定制的輕量級的框架”。這是什么意思呢?難道java ee(企業版)5.0本身不是一套“框架”嗎?為什么在官方規范之外還需要另外一個框架呢?簡單地說,我們把seam看成本應該包括在java ee 5.0中的一個“遺漏的框架”。它位于java ee 5.0框架的上層,為所有在企業web應用中的組件提供一個一致的、易于理解的編程模型。它同樣使得基于狀態的應用程序和業務流程驅動的應用程序的開發易如反掌。換句話說,seam的一切都是圍繞開發者的開發效率和應用擴展性而存在的。
JBoss Seam Web應用開發還將介紹seam如何使開發變得容易,并通過幾個web應用程序的例子進行闡明。但是在接觸具體的代碼例子之前,首先解釋seam到底是做什么的,其關鍵的設計原則有哪些。這樣可有助于更好地通過貫穿JBoss Seam Web應用開發的應用程序實例理解seam是如何工作的。
整合和強化java ee框架
java ee 5.0的核心框架是ejb(enterprise javabeans)3.0和jsf(javaserver faces)1.2。ejb 3.0是在plain old java objects(pojo)的基礎上為業務服務和數據庫的持久化而開發的輕量級框架;jsf則是為web應用而開發的基于model.view.controller(mvc)組件的框架。大多數java ee 5.0 web應用都包含業務邏輯的ejb 3.0模塊和web應用前端顯示的jsf模塊。不過,盡管ejb 3.0和jsf互為補充,但它們還是根據各自的理念設計或獨立的框架。例如,ejb 3.0使用注解配置服務,而jsf則用xml文件進行配置,并且ejb 3.0和jsf組件在框架層面是互不敏感的,要想使ejb 3.0和jsf一起工作,就需要開發者手動構造facade對象(如:jsf支持bean),將業務組件與web頁面和樣板代碼(又名管道代碼,plumbing code)進行綁定,以便實現跨框架調用方法,有效地把這些技術集成在一起是seam的職責之一。
seam打破了ejb 3.0和jsf間的人為屏障,為整合ejb 3.0和jsf提供了一個統一的、基于注解的解決方法。通過幾個簡單的注解,seam中的ejb 3.0業務組件能夠直接用來支持jsf web表單或直接處理web ul事件。有了seam,開發者就可以為所有的應用組件使用帶有注解的poj0。
【編輯推薦】