譯者序
序言
前言
致謝
關(guān)于作者
第一部分 EJB模式語言
第1章 EJB層次構(gòu)架模式 2
1.1 會(huì)話外觀(Session Fa峚de) 3
1.2 消息外觀(Message Fa峚de) 9
1.3 EJB 命令(EJB Command) 14
1.4 數(shù)據(jù)傳送對(duì)象工廠(Data Transfer
Object Factory) 20
1.5 通用屬性訪問(Generic Attribute
Access) 25
1.6 業(yè)務(wù)接口(Business Interface) 31
第2章 層間數(shù)據(jù)傳送模式 35
2.1 數(shù)據(jù)傳送對(duì)象(DTO) 35
2.2 域數(shù)據(jù)傳送對(duì)象(Domain Dto) 39
2.3 定制數(shù)據(jù)傳送對(duì)象(Custom DTO) 43
2.4 數(shù)據(jù)傳送散列映像(Data Transfer
HashMap) 45
2.5 數(shù)據(jù)傳送行集(Data Transfer RowSet) 48
第3章 事務(wù)和持久性模式 53
3.1 版本號(hào) 53
3.2 用JDBC 讀取數(shù)據(jù) 59
3.3 數(shù)據(jù)訪問命令bean 63
3.4 雙重持久性實(shí)體bean 69
第4章 客戶端EJB交互模式 72
4.1 EJBHome工廠 72
4.2 業(yè)務(wù)代理 77
第5章 主鍵生成策略 83
5.1 序列塊 83
5.2 EJB的全局惟一標(biāo)識(shí)符 89
5.3 自動(dòng)生成鍵的存儲(chǔ)過程 93
第二部分 EJB設(shè)計(jì)與實(shí)現(xiàn)的最佳實(shí)踐
第6章 從需求到模式驅(qū)動(dòng)的設(shè)計(jì) 98
6.1 TheServerSide論壇消息系統(tǒng)用例 98
6.2 設(shè)計(jì)問題和術(shù)語的快速回顧 100
6.2.1 什么是域模型 100
6.2.2 理解J2EE系統(tǒng)中的層 101
6.3 模式驅(qū)動(dòng)EJB架構(gòu) 103
6.4 服務(wù)層模式 107
6.4.1 異步用例 107
6.4.2 同步用例 107
6.4.3 其他服務(wù)層模式 109
6.5 層間數(shù)據(jù)傳送模式 110
6.6 應(yīng)用層模式 113
6.7 小結(jié) 114
第7章 EJB開發(fā)過程:用Ant構(gòu)建, 用
Junit單元測試 115
7.1 開發(fā)順序 115
7.1.1 獨(dú)立于層的編碼 117
7.1.2 首先是域?qū)?117
7.1.3 其次是持久層 118
7.1.4 第三是服務(wù)層 119
7.1.5 最后是客戶端層 119
7.2 自動(dòng)化環(huán)境: 用Ant管理 120
7.2.1 什么是J2EE應(yīng)用環(huán)境 120
7.2.2 管理J2EE應(yīng)用環(huán)境意味著什么 120
7.2.3 使用Ant 122
7.3 用JUnit進(jìn)行單元測試 136
7.4 小結(jié) 144
第8章 實(shí)體bean的替代品 146
8.1 實(shí)體bean的特性 146
8.2 實(shí)體bean和認(rèn)知差異 147
8.3 捍衛(wèi)實(shí)體bean 148
8.4 實(shí)體bean的替代品簡介 149
8.4.1 使用直接JDBC操作/存儲(chǔ)過程 150
8.4.2 使用第三方的O/R映像產(chǎn)品 150
8.4.3 構(gòu)建定制的持久性框架 150
8.4.4 使用java數(shù)據(jù)對(duì)象 150
8.5 Java數(shù)據(jù)對(duì)象簡介 151
8.5.1 需要的類及其依賴關(guān)系 151
8.5.2 構(gòu)建和部署過程 152
8.5.3 繼承 153
8.5.4 客戶端API 154
8.5.5 動(dòng)態(tài)與靜態(tài)的查找機(jī)制 154
8.6 EJB開發(fā)者使用JDO的指南 154
8.6.1 準(zhǔn)備EJB環(huán)境 155
8.6.2 配置會(huì)話bean 155
8.6.3 執(zhí)行用例和事務(wù)管理 156
8.6.4 容器管理的事務(wù) 156
8.6.5 bean管理的事務(wù) 158
8.6.6 緩存/惰性加載和引用定位 159
8.6.7 查找JDO 159
8.6.8 層間數(shù)據(jù)傳送 161
8.7 小結(jié) 162
第9章 EJB的設(shè)計(jì)策略. 習(xí)慣用語和
技巧 163
9.1 不使用組合實(shí)體bean模式 163
9.2 采用Field命名慣例以允許在EJB 2.0
CMP 實(shí)體bean中執(zhí)行數(shù)據(jù)確認(rèn) 164
9.3 不要在實(shí)體bean上Get和Set值/數(shù)據(jù)
傳送對(duì)象 164
9.4 如果能夠被正確使用, 就可以使用
Java的Singleton類 164
9.5 使用預(yù)定更新而不是實(shí)時(shí)計(jì)算 165
9.6 使用一個(gè)被序列化的java類來將編譯器
類型檢查添加到與消息驅(qū)動(dòng)bean的交互
操作中 166
9.7 在發(fā)生應(yīng)用異常時(shí)總是調(diào)用setRollback
Only 166
9.8 限制傳遞給ejbCreate的參數(shù) 167
9.9 不要在ejbCreate中使用數(shù)據(jù)傳送對(duì)象 167
9.10 不要使用XML作為一種DTO機(jī)制來
進(jìn)行通信, 除非確實(shí)需要使用它 168
附錄 模式代碼清單 169
參考文獻(xiàn) 204