出版時(shí)間:2010-6 出版社:清華大學(xué)出版社 作者:(美)袁俊濤(Yuan,M.J.)(美)歐夏利克(Orshalick,J.) 等著,楊明軍,顧劍 譯 頁(yè)數(shù):400
Tag標(biāo)簽:無(wú)
前言
JBoss Seam是一個(gè)功能強(qiáng)大的Web應(yīng)用程序框架,Seam的英文含義是“縫合”,顧名思義,它是極具粘合力的技術(shù)縫合劑,能夠?qū)SF、EJB3、Ajax以及jBPM等諸多技術(shù)縫合在一起。Seam的劍鋒直指下一代的Web 2.0應(yīng)用程序,而它所統(tǒng)一和集成的這些技術(shù)正是Web 2.0所必需的。Seam提供了多種不同粒度的上下文狀態(tài),其作用域涵蓋從對(duì)話級(jí)別到業(yè)務(wù)流程級(jí)別,將程序員從HTTP Session狀態(tài)管理方法的局限性中解脫出來(lái)。JBoss Seam屬于一款集成框架,它為開(kāi)發(fā)人員提供了大量開(kāi)箱即用的組件,這樣就為程序員免除了編寫(xiě)大量樣板代碼的煩惱。統(tǒng)一的編程模型、簡(jiǎn)單明晰的狀態(tài)管理以及大量的現(xiàn)成組件,這些工具使得開(kāi)發(fā)Web應(yīng)用程序成為一件舒心的事情?! ∮蒘eam團(tuán)隊(duì)開(kāi)發(fā)成員編寫(xiě)的本書(shū)深入闡述了Seam的核心概念、運(yùn)行原理,并使用大量的示例加以詮釋。無(wú)論是剛從事Java Web應(yīng)用程序開(kāi)發(fā)的新手,還是希望了解Java EE最新進(jìn)展的老手,本書(shū)都非常適合?! ”緯?shū)主要由楊明軍、顧劍翻譯。Be Flying工作室負(fù)責(zé)人肖國(guó)尊負(fù)責(zé)本書(shū)譯員的選定、翻譯質(zhì)量和進(jìn)度的控制與管理。
內(nèi)容概要
僅僅在初次發(fā)行的6個(gè)月之后,JBoss Seam就已經(jīng)成為企業(yè)Java領(lǐng)域中最熱門的框架,每個(gè)月都有超過(guò)一萬(wàn)次的下載。Seam將標(biāo)準(zhǔn)Java EE技術(shù)與幾個(gè)非標(biāo)準(zhǔn)但有趣的技術(shù)整合成一個(gè)一致的、統(tǒng)一的編程模型。這些技術(shù)包括JSF、EJB3、JPA、Hibernate、Facelets、jBPM、JBoss Rules(Drools)、iText以及更多其他技術(shù)。Seam能夠在幾乎所有領(lǐng)先的Java應(yīng)用服務(wù)器上運(yùn)行,包括但不僅限于JBoss應(yīng)用服務(wù)器和Tomcat。 本書(shū)是由來(lái)自Seam團(tuán)隊(duì)的開(kāi)發(fā)人員撰寫(xiě)的第一本綜合性指南。我們將帶來(lái)有關(guān)Seam的最新信息,講解它的設(shè)計(jì)背后的基本原理,并討論Seam中的各種可選方法。根據(jù)我們的實(shí)踐經(jīng)驗(yàn),本書(shū)還給出了有關(guān)如何使用Seam的提示和最佳實(shí)踐。 當(dāng)然,考慮到Seam正在快速改進(jìn)的特點(diǎn),本書(shū)將不停地奮力直追幾乎每個(gè)月都發(fā)表的Seam新發(fā)行版本。本書(shū)內(nèi)容涵蓋Seam發(fā)行版本2.1.0。在可預(yù)見(jiàn)的未來(lái),Seam的后續(xù)發(fā)行版本至少應(yīng)該兼容2.1.0。為了滿足希望始終站在最前沿的讀者,我們?cè)趙ww.michaelyuan.com/blog和www.solufionsfit.com/blog上維護(hù)本書(shū)的博客,為您帶來(lái)有關(guān)Seam的最新更新。請(qǐng)?jiān)L問(wèn)本書(shū)的博客!
作者簡(jiǎn)介
袁俊濤(Michael Juntao Yuan),是Ringful有限責(zé)任公司的創(chuàng)始人之一,這是一家開(kāi)發(fā)電話語(yǔ)音RESTful APl和移動(dòng)消息短信解決方案的公司。他為Seam項(xiàng)目貢獻(xiàn)代碼,并在WWW.michaelyuan.com/blog中撰寫(xiě)有關(guān)Seam的博客文章。Yuan曾經(jīng)在Red Hat的JBoss部門擔(dān)任過(guò)技術(shù)產(chǎn)品經(jīng)理,并著有5本有關(guān)軟件開(kāi)發(fā)的書(shū)籍?! W夏利克(Jacob Orshalick),是一位獨(dú)立咨詢師,擁有Focus IT Solutions有限責(zé)任公司。Jacob是Seam項(xiàng)目的活躍貢獻(xiàn)者,他-直在其博客網(wǎng)站上撰寫(xiě)有關(guān)SeamgnJava EE技術(shù)的文章?! homas Heute,曾經(jīng)是JBoss公司的JBoss Seam Framework的共同領(lǐng)導(dǎo)者,現(xiàn)在是JBoss Portal項(xiàng)目成員。他曾經(jīng)在美國(guó)國(guó)家標(biāo)準(zhǔn)技術(shù)研究院和美國(guó)國(guó)家安全局從事高級(jí)研究工作。
書(shū)籍目錄
第1部分 Seam入門 第1章 Seam的定義 1.1 集成和增強(qiáng)Java EE框架 1.2 能夠理解ORM的Web框架 1.3 支持有狀態(tài)的Web應(yīng)用程序 1.4 為Web 2.0做好準(zhǔn)備 1.5 通過(guò)雙向依賴注入實(shí)現(xiàn)POJO服務(wù) 1.6 慣例優(yōu)先原則 1.7 避免濫用XML 1.8 為方便測(cè)試而設(shè)計(jì) 1.9 優(yōu)秀的工具支持 1.10 開(kāi)始編寫(xiě)代碼 第2章 Seam Hello World 第3章 推薦使用的JSF增強(qiáng)功能 第4章 無(wú)需EJB3的Seam 第5章 快速應(yīng)用程序開(kāi)發(fā)工具第II部分 簡(jiǎn)化有狀態(tài)應(yīng)用程序開(kāi)發(fā) 第6章 Seam有狀態(tài)框架簡(jiǎn)介 第7章 組件編程思想 第8章 對(duì)話 第9章 工作區(qū)和并發(fā)對(duì)話 第10章 嵌套對(duì)話 第11章 事務(wù)與持久化第III部 分整合Web與數(shù)據(jù)組件 第12章 驗(yàn)證輸入數(shù)據(jù) 第13章 可單擊數(shù)據(jù)表 第14章 利用事件解耦組件 第15章 可收藏網(wǎng)頁(yè) 第16章 Seam CRUD應(yīng)用程序框架 第17章 適當(dāng)?shù)靥幚礤e(cuò)誤 第18章 Seam安全框架第IV部分 Seam對(duì)AJAX的支持 第19章 自定義AJAX UI組件 第20章 讓已有組件支持AJAX 第21章 在Seam中直接集成JavaScript第V部分 業(yè)務(wù)流程和規(guī)則 第22章 基于規(guī)則的安全框架 第23章 在Web應(yīng)用程序中集成業(yè)務(wù)規(guī)則 第24章 管理業(yè)務(wù)流程 第25章 集成業(yè)務(wù)流程和規(guī)則第VI部分 Seam應(yīng)用程序測(cè)試 第26章 單元測(cè)試 第27章 集成測(cè)試第VII部分 生產(chǎn)部署 第28章 使用生產(chǎn)數(shù)據(jù)庫(kù) 第29章 Java EE 5.0部署 第30章 性能調(diào)整和集群第VIII部分 新興技術(shù) 第31章 Web應(yīng)用程序中周期性作業(yè)的調(diào)度 第32章 利用多層緩存提高可伸縮性 第33章 Seam對(duì)Groovy的支持 第34章 Web Beans簡(jiǎn)介附錄
章節(jié)摘錄
某個(gè)類的名稱拼寫(xiě)錯(cuò)誤而造成的運(yùn)行時(shí)出錯(cuò),是很難在運(yùn)行時(shí)追蹤到產(chǎn)生問(wèn)題的根源的。缺乏合理的默認(rèn)配置信息就會(huì)進(jìn)一步把這個(gè)問(wèn)題擴(kuò)大化。實(shí)際上,在某些框架中,偽裝成XML文件的樣板代碼差不多等同于甚至超過(guò)應(yīng)用程序中實(shí)際可運(yùn)行的Java代碼數(shù)量。Java開(kāi)發(fā)人員將這些XML文件稱為“XML地獄”?! ∑髽I(yè)級(jí)Java.社區(qū)認(rèn)識(shí)到了這個(gè)問(wèn)題的嚴(yán)重性,并試圖使用Java源代碼中的注解替代XML文件。EJB3就是Java官方組織努力的結(jié)果,它提出了在企業(yè)級(jí)Java組件中使用注解。EJB3使得XML文件完全可選,這就朝著正確的方向邁進(jìn)了一步。Seam將EJB3的注解信息添加進(jìn)來(lái),并對(duì)基于注解的編程模型進(jìn)行擴(kuò)展,將其擴(kuò)展到整個(gè)Web應(yīng)用程序。當(dāng)然,XML對(duì)于配置數(shù)據(jù)來(lái)說(shuō)并非完全都是壞事。Seam的設(shè)計(jì)人員意識(shí)到,XML最適合于指定Web應(yīng)用程序的頁(yè)面流,或者定義業(yè)務(wù)流程工作流。使用:XMlL文件可以集中精力管理整個(gè)應(yīng)用程序的工作流,而不會(huì)將這些信息散落到各個(gè)Java源文件中。工作流的信息甚少和源代碼相匹配,因此,XML文件不必要將已經(jīng)存在于源代碼中的信息再次復(fù)制到自身中。有關(guān)這方面主題的更多內(nèi)容,請(qǐng)參閱第24.5節(jié)?! ?.8 為方便測(cè)試而設(shè)計(jì) Seam是基于方便測(cè)試的目的而設(shè)計(jì)的。所有的Seam組件都只是帶有注解的POJO對(duì)象,因此很容易對(duì)Seam組件進(jìn)行單元測(cè)試:只需要首先利用普通的Java關(guān)鍵字new創(chuàng)建POJO對(duì)象的實(shí)例,然后再運(yùn)行測(cè)試框架(例如Unit或者TestNG)中的任意方法即可。如果需要對(duì)多個(gè)Seam組件之間的交互進(jìn)行測(cè)試,那么可以首先將這些組件分別進(jìn)行實(shí)例化,然后再手動(dòng)建立它們之間的相互關(guān)系(即明確調(diào)用seRer方法,而不是依靠Seam的“依賴注入”特性)。第26章 將講述如何為Seam應(yīng)用程序建立單元測(cè)試,以及如何為測(cè)試用例模擬數(shù)據(jù)庫(kù)服務(wù)。 Seam中的集成測(cè)試甚至可能比單元測(cè)試更為容易。在Seam測(cè)試框架中,可以通過(guò)編寫(xiě)一些簡(jiǎn)單的腳本來(lái)模擬Web用戶交互,并對(duì)交互的結(jié)果進(jìn)行測(cè)試。也可以在測(cè)試腳本中使用JSFEL(Expressionl,anguage,表達(dá)式語(yǔ)言)來(lái)引用Seam組件,就像在JSFWeb頁(yè)面中所做的一樣。類似于單元測(cè)試,也可以直接從JavaSE環(huán)境中的命令行直接運(yùn)行集成測(cè)試,不需要專門為了運(yùn)行這些測(cè)試而啟動(dòng)應(yīng)用服務(wù)器。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
Seam Framework Web開(kāi)發(fā)寶典 PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版