出版時(shí)間:2008-7 出版社:人民郵電出版社 作者:(美)潘達(dá)(Panda,D.) 等著,馬朝暉 等譯 頁數(shù):494 字?jǐn)?shù):756000 譯者:馬朝暉
Tag標(biāo)簽:無
內(nèi)容概要
本書是公認(rèn)的EJB 3權(quán)威著作,詳細(xì)介紹了使用EJB 3進(jìn)行企業(yè)級(jí)開發(fā)的方方面面,包括EJB 3基礎(chǔ)、使用EJB 3構(gòu)造業(yè)務(wù)邏輯、Java持久化API、EJB 3的實(shí)際應(yīng)用、移植性和互操作性,等等?;诂F(xiàn)實(shí)場(chǎng)景,本書提供了大量實(shí)用的范例代碼、最佳實(shí)踐、設(shè)計(jì)模式和性能優(yōu)化技巧。通過對(duì)這些知識(shí)的學(xué)習(xí),開發(fā)者能創(chuàng)建健壯的、可擴(kuò)展的、基于標(biāo)準(zhǔn)的解決方案。 本書既為EJB的初學(xué)者提供了精彩的入門指導(dǎo),又為有經(jīng)驗(yàn)的EJB開發(fā)者提供了詳細(xì)的指南和參考。
書籍目錄
第一部分 EJB概述 第1章 EJB 3是什么 1.1 EJB概述 1.1.1 EJB作為組件 1.1.2 EJB作為框架 1.1.3 分層架構(gòu)和EJB 1.1.4 為什么選擇EJB 3 1.2 了解EJB類型 1.2.1 會(huì)話bean 1.2.2 消息驅(qū)動(dòng)bean 1.2.3 實(shí)體和JPA 1.3 深入EJB 1.3.1 訪問EJB服務(wù):EJB容器 1.3.2 訪問JPA服務(wù):持久化提供器 1.3.3 使用EJB服務(wù)的功能 1.4 EJB的新生 1.4.1 HelloUser示例 1.4.2 簡(jiǎn)化的程序設(shè)計(jì)模型 1.4.3 用注解,不用部署描述文件 1.4.4 依賴注入與JNDI查找 1.4.5 簡(jiǎn)化的持久化API 1.4.6 可進(jìn)行單元測(cè)試的POJO組件 1.4.7 EJB 3和Spring 1.5 小結(jié) 第2章 EJB 3初體驗(yàn) 2.1 新特性:簡(jiǎn)化EJB 2.1.1 使用注解替換部署描述文件 2.1.2 依賴注入簡(jiǎn)介 2.2 ActionBazaar應(yīng)用程序簡(jiǎn)介 2.2.1 從構(gòu)造的一個(gè)子集開始 2.2.2 基于EJB 3的解決方案 2.3 使用會(huì)話bean構(gòu)造業(yè)務(wù)邏輯 2.3.1 使用無狀態(tài)bean 2.3.2 無狀態(tài)bean客戶端 2.3.3 使用有狀態(tài)bean 2.3.4 有狀態(tài)bean客戶端 2.4 消息和消息驅(qū)動(dòng)bean 2.4.1 生成賬單消息 2.4.2 使用訂單賬單消息處理器MDB 2.5 使用EJB 3 JPA持久化數(shù)據(jù) 2.5.1 使用JPA 2.5.2 使用EntityManager 2.6 小結(jié) 第二部分 使用EJB 3構(gòu)造業(yè)務(wù)邏輯 第3章 使用會(huì)話bean構(gòu)造業(yè)務(wù)邏輯 3.1 會(huì)話bean簡(jiǎn)介 3.1.1 為什么使用會(huì)話bean 3.1.2 會(huì)話bean基礎(chǔ) 3.1.3 了解程序設(shè)計(jì)原則 3.1.4 會(huì)話狀態(tài)和會(huì)話bean類型 3.1.5 bean生命周期回調(diào) 3.2 無狀態(tài)會(huì)話bean 3.2.1 BidManagerBean示例 3.2.2 使用@Stateless注解 3.2.3 指定業(yè)務(wù)接口 3.2.4 使用bean生命周期回調(diào) 3.3 有狀態(tài)會(huì)話bean 3.3.1 附加程序設(shè)計(jì)原則 3.3.2 BidderAccountCreatorBean示例 3.3.3 有狀態(tài)bean的業(yè)務(wù)接口 3.3.4 有狀態(tài)bean的生命周期回調(diào) 3.4 會(huì)話bean客戶端 3.4.1 使用@EJB注解 3.4.2 注入和有狀態(tài)會(huì)話bean 3.5 有狀態(tài)bean的性能注意事項(xiàng) 3.5.1 有效地使用有狀態(tài)會(huì)話bean 3.5.2 有狀態(tài)會(huì)話bean的替代方式 3.6 會(huì)話bean最佳實(shí)踐 3.7 小結(jié) 第4章 消息和開發(fā)MDB 4.1 消息概念 4.1.1 面向消息的中間件 4.1.2 ActionBazaar中的消息 4.1.3 消息模型 4.2 Java消息服務(wù)簡(jiǎn)介 4.2.1 開發(fā)JMS消息生產(chǎn)者 4.2.2 JMS消息接口 4.3 使用消息驅(qū)動(dòng)bean 4.3.1 為什么使用MDB 4.3.2 程序設(shè)計(jì)原則 4.3.3 使用MDB開發(fā)消息消費(fèi)者 4.3.4 使用@MessageDriven注解 4.3.5 實(shí)現(xiàn)MessageListener 4.3.6 使用ActivationConfig-Property 4.3.7 使用bean生命周期回調(diào) 4.3.8 從MDB發(fā)送JMS消息 4.3.9 管理MDB事務(wù) 4.4 MDB最佳實(shí)踐 4.5 小結(jié) 第5章 學(xué)習(xí)高級(jí)EJB概念 5.1 EJB內(nèi)幕 5.1.1 幕后的EJB 5.1.2 EJB上下文:訪問運(yùn)行時(shí)環(huán)境 5.2 使用依賴注入和JNDI訪問資源 5.2.1 使用@Resource注入資源 5.2.2 @Resource注解實(shí)際應(yīng)用 5.2.3 查找資源和EJB 5.3 EJB中的AOP:攔截器 5.3.1 AOP是什么 5.3.2 攔截器是什么 5.3.3 指定攔截器 5.3.4 實(shí)現(xiàn)業(yè)務(wù)攔截器 5.3.5 攔截器類中的回調(diào)方法 5.4 調(diào)度:EJB 3計(jì)時(shí)器服務(wù) 5.4.1 計(jì)時(shí)器是什么 5.4.2 使用計(jì)時(shí)器服務(wù) 5.4.3 何時(shí)使用EJB計(jì)時(shí)器 5.5 小結(jié) 第6章 事務(wù)和安全 6.1 了解事務(wù) 6.1.1 ActionBazaar中的事務(wù)解決方案 6.1.2 ACID屬性 6.1.3 事務(wù)管理內(nèi)幕 6.1.4 兩階段提交 6.1.5 EJB中的事務(wù)管理 6.2 容器管理的事務(wù) 6.2.1 使用CMT實(shí)現(xiàn)Snag-It訂購(gòu) 6.2.2 @TransactionManagement注解 6.2.3 @TransactionAttribute注解 6.2.4 使CMT使用回調(diào) 6.2.5 事務(wù)和異常處理 6.3 bean管理的事務(wù) 6.3.1 使用BMT實(shí)現(xiàn)Snag-It訂購(gòu) 6.3.2 獲得UserTransaction 6.3.3 使用UserTransaction 6.3.4 BMT的優(yōu)缺點(diǎn) 6.4 分析EJB安全 6.4.1 驗(yàn)證和授權(quán) 6.4.2 用戶、組和角色 6.4.3 ActionBazaar中的安全問題 6.4.4 EJB 3和Java EE安全 6.4.5 聲明式安全 6.4.6 使用EJB程序式安全 6.5 小結(jié)第三部分 研究JPA 第7章 實(shí)現(xiàn)域模型 7.1 域建模和JPA 7.1.1 介紹域模型 7.1.2 ActionBazaar問題域 7.1.3 域模型參與者 7.1.4 EJB 3 Java持久化API 7.1.5 域?qū)ο笞鳛镴ava類 7.2 使用JPA實(shí)現(xiàn)域?qū)ο蟆 ?.2.1 @Entity注解 7.2.2 持久化實(shí)體數(shù)據(jù) 7.2.3 指定實(shí)體身份 7.2.4 @Embeddable注解 7.3 實(shí)體關(guān)系 7.3.1 @OneToOne 7.3.2 @OneToMany和@ManyToOne 7.3.3 @ManyToMany 7.4 小結(jié) 第8章 對(duì)象關(guān)系映射 8.1 阻抗失配 8.1.1 把對(duì)象映射到數(shù)據(jù)庫(kù) 8.1.2 介紹O/R映射 8.2 映射實(shí)體 8.2.1 指定表 8.2.2 映射列 8.2.3 使用@Enumerated 8.2.4 映射CLOB和BLOB 8.2.5 映射臨時(shí)類型 8.2.6 把實(shí)體映射到多個(gè)表 8.2.7 生成主鍵 8.2.8 映射可嵌入類 8.3 映射實(shí)體關(guān)系 8.3.1 映射一對(duì)一關(guān)系 8.3.2 一對(duì)多和多對(duì)一 8.3.3 多對(duì)多 8.4 映射繼承 8.4.1 單表策略 8.4.2 聯(lián)結(jié)表策略 8.4.3 每個(gè)類一個(gè)表策略 8.4.4 映射多態(tài)關(guān)系 8.5 小結(jié) 第9章 使用EntityManager操作實(shí)體 9.1 介紹EntityManager 9.1.1 EntityManager接口 9.1.2 實(shí)體的生命周期 9.1.3 持久化上下文、作用域和EntityManager 9.1.4 在ActionBazaar中使用EntityManager 9.2 創(chuàng)建EntityManager實(shí)例 9.2.1 容器管理的EntityManager 9.2.2 應(yīng)用程序管理的EntityManager 9.3 管理持久化操作 9.3.1 持久化實(shí)體 9.3.2 通過主鍵檢索實(shí)體 9.3.3 更新實(shí)體 9.3.4 刪除實(shí)體 9.3.5 通過轉(zhuǎn)儲(chǔ)清除控制更新 9.3.6 刷新實(shí)體 9.4 實(shí)體生命周期監(jiān)聽器 9.4.1 使用實(shí)體監(jiān)聽器 9.4.2 默認(rèn)監(jiān)聽器類 9.4.3 監(jiān)聽器類的執(zhí)行順序和排除 9.5 實(shí)體操作最佳實(shí)踐 9.6 小結(jié) 第10章 使用查詢API和JPQL檢索實(shí)體 10.1 介紹查詢API 10.1.1 背景 10.1.2 剖析查詢 10.1.3 定義命名查詢 10.2 執(zhí)行查詢 10.2.1 創(chuàng)建查詢實(shí)例 10.2.2 使用Query接口 10.2.3 指定查詢提示 10.3 介紹JPQL 10.3.1 定義語句類型 10.3.2 使用FROM子句 10.3.3 條件表達(dá)式和操作 10.3.4 使用JPQL函數(shù) 10.3.5 使用SELECT子句 10.3.6 使用聚合 10.3.7 排序查詢結(jié)果 10.3.8 使用子查詢 10.3.9 聯(lián)結(jié)實(shí)體 10.3.10 批更新和批刪除 10.4 原生SQL查詢 10.4.1 使用原生SQL的動(dòng)態(tài)查詢 10.4.2 使用命名原生SQL查詢 10.5 小結(jié) 第四部分 EJB 3的實(shí)際應(yīng)用 第11章 打包EJB 3應(yīng)用程序 11.1 給應(yīng)用程序打包 11.1.1 剖析EAR文件 11.1.2 加載EAR模塊 11.2 分析類加載 11.2.1 類加載基礎(chǔ) 11.2.2 分析典型的父委托模型 11.2.3 Java EE應(yīng)用程序中的類加載 11.2.4 Java EE模塊之間的相關(guān)性 11.3 打包會(huì)話bean和消息驅(qū)動(dòng)bean 11.3.1 打包EJB-JAR 11.3.2 部署描述文件與注解 11.3.3 使用部署描述文件覆寫注解 11.3.4 指定默認(rèn)攔截器設(shè)置 11.3.5 使用廠商專有的注解和描述文件 11.4 打包實(shí)體 11.4.1 暴露持久化模塊 11.4.2 使用persistence.xml描述持久化模塊 11.4.3 使用orm.xml執(zhí)行O/R映射 11.5 最佳實(shí)踐和常見部署問題 11.5.1 打包和部署最佳實(shí)踐 11.5.2 診斷常見部署問題 11.6 小結(jié) 第12章 有效地跨越應(yīng)用程序?qū)蛹蒃JB 12.1 設(shè)計(jì)模式和Web技術(shù) 12.1.1 表現(xiàn)層 12.1.2 使用EAO模式 12.1.3 介紹Session Facade模式 12.2 從Web層訪問會(huì)話bean 12.2.1 使用依賴注入訪問會(huì)話bean 12.2.2 從幫助器類引用會(huì)話bean 12.2.3 處理事務(wù) 12.2.4 處理有狀態(tài)會(huì)話bean 12.3 從Web層使用JPA 12.3.1 使用容器管理的實(shí)體管理器 12.3.2 通過JTA事務(wù)使用應(yīng)用程序管理的EntityManager 12.3.3 在容器外訪問應(yīng)用程序管理的EntityManager 12.4 小結(jié) 第13章 馴服EJB:性能和可伸縮性 13.1 處理實(shí)體鎖定問題 13.1.1 了解鎖定類型 13.1.2 樂觀鎖定和實(shí)體版本 13.1.3 EntityManager和鎖定模式 13.2 提高實(shí)體性能 13.2.1 重新建模和重新設(shè)計(jì)計(jì)劃 13.2.2 優(yōu)化JDBC層 13.2.3 減少數(shù)據(jù)庫(kù)操作 13.2.4 提高查詢性能 13.2.5 緩存 13.3 提高EJB 3組件的性能 13.3.1 會(huì)話bean性能 13.3.2 提高M(jìn)DB性能 13.4 集群EJB應(yīng)用程序 13.4.1 協(xié)同定位架構(gòu) 13.4.2 無狀態(tài)會(huì)話bean的負(fù)載平衡 13.4.3 集群有狀態(tài)會(huì)話bean 13.4.4 實(shí)體和集群緩存 13.5 小結(jié) 第五部分 移植和互操作性 第14章 移植到EJB 3 14.1 與EJB 2的向后兼容性和互操作性 14.1.1 將EJB 2和EJB 3打包在一起 14.1.2 從EJB 3調(diào)用EJB 2 14.1.3 從EJB 2使用EJB 3 14.2 移植會(huì)話bean 14.2.1 轉(zhuǎn)換接口和bean類 14.2.2 資源使用 14.2.3 事務(wù)和安全設(shè)置 14.2.4 客戶端應(yīng)用程序 14.3 移植消息驅(qū)動(dòng)bean 14.4 把CMP 2實(shí)體移植到EJB 3 JPA 14.4.1 重新設(shè)計(jì)域模型 14.4.2 DTO用作實(shí)體 14.4.3 實(shí)體bean類和接口 14.4.4 客戶端應(yīng)用程序 14.5 移植JDBC DAO使用EJB 3 JPA 14.5.1 標(biāo)識(shí)實(shí)體 14.5.2 重新構(gòu)造DAO實(shí)現(xiàn)類使用EntityManager API 14.5.3 SQL查詢轉(zhuǎn)換為JPQL 14.6 幫助O/R框架使用EJB 3 JPA 14.7 移植方法 14.7.1 策略 14.7.2 手工與自動(dòng) 14.8 小結(jié) 第15章 把EJB暴露為Web服務(wù) 15.1 Web服務(wù)是什么 15.1.1 認(rèn)識(shí)Web服務(wù)組件 15.1.2 Web服務(wù)樣式 15.1.3 開發(fā)Web服務(wù)的方法 15.2 JAX-WS:Java EE 5 Web服務(wù)平臺(tái) 15.2.1 介紹Web服務(wù)平臺(tái) 15.2.2 與POJO相比,為什么選擇EJB用于Web服務(wù) 15.3 使用JAX-WS 2.0開發(fā)EJB Web服務(wù) 15.3.1 使用@WebService注解 15.3.2 使用@SOAPBinding指定Web服務(wù)樣式 15.3.3 使用@WebMethod注解 15.3.4 使用@WebParam注解 15.3.5 使用@WebResult注解 15.3.6 使用@OneWay和@HandlerChain注解 15.4 從EJB訪問Web服務(wù) 15.4.1 訪問PlaceBid Web服務(wù) 15.4.2 EJB作為Web服務(wù)客戶 15.5 Web服務(wù)開發(fā)的最佳實(shí)踐 15.6 小結(jié) 第16章 EJB 3和Spring 16.1 Spring框架簡(jiǎn)介 16.1.1 Spring框架的優(yōu)勢(shì) 16.1.2 控制反轉(zhuǎn)原理 16.1.3 關(guān)注分離原理 16.2 通過Spring使用JPA 16.2.1 構(gòu)造Spring的JPA EAO 16.2.2 配置Spring使用JPA 16.3 結(jié)合EJB 3和Spring的功能 16.3.1 開發(fā)支持Spring的EJB 16.3.2 從Spring bean使用會(huì)話bean 16.4 小結(jié) 附錄A RMI和JNDI 附錄B 復(fù)習(xí)關(guān)系數(shù)據(jù)庫(kù) 附錄C 注解參考 附錄D 部署描述文件參考 附錄E 安裝和配置Java EE 5 SDK 資源 索引
章節(jié)摘錄
第一部分 EJB概述 本書的主題是EJB 3——令人注目的企業(yè)JavaBean標(biāo)準(zhǔn)的新版本。EJB的重生來得正是時(shí)候,這一切歸功于Java SE 5引入的創(chuàng)新,倒如元數(shù)據(jù)注解、依賴注入和基于對(duì)象-關(guān)系映射的持久化等概念。 第1章介紹EJB技術(shù)。本間講解了EJB作為開發(fā)平臺(tái)的獨(dú)特實(shí)力以及提高工作效率和易用性的非常好的新特性。
編輯推薦
“杰作!講述了EJB 3的方方面面,僅書中的最佳實(shí)踐就已經(jīng)物超所值。強(qiáng)烈推薦!” ——Awais Bajwa,JSR 243 JDO專家組成員 “我已經(jīng)買了所有已出版的EJB 3圖書,毫無疑問,本書是最好的,它改變了我對(duì)EJB 3的看法。” ——Ashish Srivastava,Oracle工程師 EJB 3是Java EE 5.O中最重要的創(chuàng)新。與EJB 2相比,EJB 3發(fā)生了革命性的變化。通過全面擁抱POJO程序設(shè)計(jì)模型,引入JPA以充分吸取Hibem3ate等對(duì)象一關(guān)系映射方案的優(yōu)點(diǎn),EJB 3大大簡(jiǎn)化了基于標(biāo)準(zhǔn)的企業(yè)應(yīng)用開發(fā)?! ”緯荅JB 3領(lǐng)域目前公認(rèn)的不可替代的權(quán)威著作。與其他同類圖書相比。本書沒有過多講述理論;和IEJB老版本的特性。而是從實(shí)戰(zhàn)出發(fā),緊扣讀者需求,直指EJB 3核心主題,在輕松生動(dòng)的語言中,帶你領(lǐng)略大量代碼示例、設(shè)計(jì)模式、性能調(diào)優(yōu)技巧,以及構(gòu)造和部署可伸縮應(yīng)用程序的最佳實(shí)踐。本書的另一獨(dú)特之處是充分探討了EJB與JSF、Ajax甚至Spring等相關(guān)技術(shù)的集成。通過閱讀本書,你將更加深刻地理解Java EE開發(fā)的真諦?! ∽髡吆?jiǎn)介: Debu Panda,世界級(jí)的EJB專家,Oracle Application Server開發(fā)團(tuán)隊(duì)的產(chǎn)品經(jīng)理主管,領(lǐng)導(dǎo)著Oracle.Java EE容器的開發(fā)。他有15年以上的IT從業(yè)經(jīng)驗(yàn),在Java Developers Ioumal、TheServerSide等世界一流技術(shù)媒體上發(fā)表了大量關(guān)于企業(yè)級(jí)Java技術(shù)的文章。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載