課程簡介
這門課程適合對基于Java EE技術的企業(yè)軟件系統(tǒng)負有總體軟件架構的學員。學員還要求能深入了解企業(yè)架構師的作用,并希望在n層企業(yè)系統(tǒng)中使用Java EE技術?,F(xiàn)有的架構師也可以通過學習這門課程,了解如何使用Java EE技術提高其企業(yè)系統(tǒng)中服務的質量。
目標收益
1. 軟件架構的本質
2. 軟件架構的設計過程
3. 軟件架構模式
4. 深入理解J2EE和架構模式和反模式,以及如何對架構重構
5. 深入理解J2EE架構各層(表示層/業(yè)務邏輯層/數(shù)據(jù)存取層/基礎服務層/實體層)如何設計和如何權衡
6. 深入理解J2EE 技術(JSP,TagLib,Ajax,EJB,JPA以及常見的開源技術Spring和Hibernate,Ibatis)
7. 充分運用Java EE組件技術,解決典型的系統(tǒng)架構問題
8. 使用Java EE藍圖中的技術和Java EE 模式目錄中的解決方案,推導出軟件系統(tǒng)
9. 使用工程權衡技術,用高性價比的方式應對服務
培訓對象
這門課程適合對基于Java EE技術的企業(yè)軟件系統(tǒng)負有總體軟件架構的學員。學員還要求能深入了解企業(yè)架構師的作用,并希望在n層企業(yè)系統(tǒng)中使用Java EE技術?,F(xiàn)有的架構師也可以通過學習這門課程,了解如何使用Java EE技術提高其企業(yè)系統(tǒng)中服務的質量。
課程大綱
內容一:介紹基本的架構概念 |
1. 理解企業(yè)應用中的難題 2. 定義軟件架構 3. 理解軟件架構需求 4. 理解架構師的作用、責任和交付項目 5. 理解使用統(tǒng)一建模語言(UML)的架構模型 6. 理解架構與設計之間的差別和相似點 |
內容二:理解架構質量屬性度量 |
1. 描述企業(yè)應用的系統(tǒng)性度量 2. 描述用于改善系統(tǒng)性度量的一般做法 3. 對服務質量(QoS)的要求劃分優(yōu)先級 4. 檢查是否存在良好的機遇,并進行權衡 5. 結合實際項目案例分析,質量屬性的權衡 |
內容三:J2EE核心技術 |
1. J2EE平臺概述 2. Web應用技術 3. Servlet,JSP,JSPTaglib,JSF 4. EJB技術,JMS,JTA,JNDI 5. JDBC,JPA 6. Java EE5 新特性 7. 基于J2EE 核心技術的架構 |
內容四:J2EE開源框架 |
1. Better,Faster,Lighter Java 2. 經(jīng)常使用的J2EE開源框架 3. Web層常見框架Struts1/2,Webwork,JSF 4. 業(yè)務邏輯層常見開源框架 5. 數(shù)據(jù)存取層常見開源框架 |
內容五:J2EE技術和其他對比(.Net, Ruby/Rails,LAMP) |
1. J2EE技術和。Net技術對比 2. J2EE技術和Ruby/Rails技術對比 3. J2EE技術和相關PHP技術對比 |
內容六:檢查系統(tǒng)架構應于開發(fā)的風險 |
1. 了解分布式企業(yè)系統(tǒng)的關鍵風險因素 2. 設計靈活的對象模型 3. 理解創(chuàng)建網(wǎng)絡模型的指導原則 4. 驗證事務/異常/性能/安全的設計 5. 規(guī)劃系統(tǒng)容量 |
2ndDay 內容一:J2EE分層架構模式 |
1. J2EE架構模式 2. 表示層的設計原則和注意事項 3. 業(yè)務邏輯層的設計原則和注意事項 4. 持久化層的設計原則和注意事項 5. 基礎服務架構層設計原則和注意事項 6. 業(yè)務實體層的設計原則和注意事項 |
內容二:開發(fā)客戶端層的架構 |
1. 理解信息架構客戶端層的注意事項 2. 理解如何選擇滿足具體應用要求的用戶界面設備 3. 描述如何在客戶端層上實現(xiàn)重復使用 4. 理解開發(fā)基于Java桌面的應用的策略 5. 熟悉客戶端層的安全注意事項 |
內容三:Web層的架構 |
1. 描述與開發(fā)Web層相關的角色 2. 理解分離注意事項 3. 描述有關實施Web層展示問題的策略 4. 描述有關實施Web層數(shù)據(jù)問題的策略 5. 描述有關管理Web層展示、數(shù)據(jù)和邏輯問題的策略 6. 理解面向請求的和面向組件的Web層框架的優(yōu)點和缺點 7. 描述有關在Web層中實施驗證和授權的策略 8. 解決Web應用擴展問題 |
內容四:基于Ajax技術架構 |
1. 傳統(tǒng)BS應用系統(tǒng)的缺點 2. RIA應用的誕生原因 3. Ajax應用系統(tǒng) 4. 基于Ajax的BS架構 |
內容五:基于Struts1/2技術架構 |
1. 開發(fā)基于Struts的Web應用程序 2. 將MVC應用于您的應用程序架構 3. 使用單元測試來測試Struts應用程序 4. 運用重要的Struts最佳實踐 5. 使用常用的Struts擴展功能提高生產(chǎn)效率 6. 保護Struts應用程序的安全 |
內容六:基于JSF技術架構 |
1. 使用基于組件和事件驅動的JavaServer Faces框架開發(fā)Web應用程序 2. JSF的應用與開發(fā) 3. JSF組件的開發(fā) 4. JSF最佳實踐 |
3rdDay 內容一:業(yè)務邏輯層的架構 |
1. 理解有關使用企業(yè)應用容器服務的價值 2. 描述用于實施域模型服務的架構選項 3. 描述用于實施域模型實體的架構選項 4. 分發(fā)域模型組件 5. 理解例外處理和日志的最佳做法 |
內容二:基于EJB業(yè)務邏輯層的架構 |
1. 深入理解EJB原理和EJB30新特性 2. EJB的核心服務 3. EJB事務管理 4. EJB異常處理 5. EJB攔截服務 6. 如果基于EJB技術進行構建業(yè)務邏輯層 7. EJB項目經(jīng)驗 |
內容三:基于Spring業(yè)務邏輯層的架構 |
1. Spring輕量級容器技術 2. Spring的Ioc/DI技術 3. Spring的數(shù)據(jù)存取技術 4. Spring AOP技術 5. Sping事務管理 6. Spring在業(yè)務邏輯層的應用 7. Spring項目經(jīng)驗 |
4thDay內容一:開發(fā)集成和資源層的架構 |
1. 描述與企業(yè)信息系統(tǒng)(EIS)集成相關的難題 2. 描述集成層的角色 3. 描述EIS資源層 4. 回顧Java集成技術和最佳做法,以及和其他系統(tǒng)集成 5. 數(shù)據(jù)存取架構模式 6. 數(shù)據(jù)存取架構技術發(fā)展 7. 數(shù)據(jù)存取架構的策略 8. 數(shù)據(jù)存取層事務和連接管理模式 |
內容二:數(shù)據(jù)存取技術基石-JDBC |
1. JDBC概述和JDBC Driver類型選擇 2. 使用JDBC進行數(shù)據(jù)庫訪問和JDBC 核心類 3. JDBC連接池的原理和使用 4. DataSource原理和使用 5. JDBC3.0/4.0新特性 6. 數(shù)據(jù)存取層的性能監(jiān)控和調優(yōu)(結合應用服務器) |
內容三:基于ORM數(shù)據(jù)存取技術-Hibernate和JPA |
1. J2EE數(shù)據(jù)存取技術 2. Hibrnate映射技術 3. Hibernate 對象實體級聯(lián) 4. Hinbernate緩存處理 5. Hinbernate并發(fā)控制與鎖的管理 6. Hinbernate事務管理 7. JPA技術概述 8. Hinbernate項目經(jīng)驗 |
內容四:基于SQLMapper數(shù)據(jù)存取技術-IBatis |
1. What is iBATIS? 2. Working with mapped statements 3. Executing nonquery statements 4. Using advanced query techniques 5. Transactions 6. Using Dynamic SQL 7. Improving performance with caching |
內容五:J2EE架構的事務管理 |
1. 事務的概述 2. 本地事務和分布式事務JTA 3. 本地事務的管理的模式 4. 分布式事務管理的模式 5. 聲明方式和編程方式事務管理 6. 事務,鎖,并發(fā) |
內容六:J2EE架構的安全管理 |
1. 分析分布式計算環(huán)境中的安全影響 2. 理解Java EE技術中的安全服務 3. 理解Web服務的安全要求 4. 基于Spring Acegi安全架構設計 |
內容一:J2EE架構時性能考慮 |
1. 架構時的性能考慮 2. J2EE項目調優(yōu)概述 3. 利用應用服務器的調優(yōu) 4. web層架構的性能考慮 5. 業(yè)務邏輯的性能設計考慮 6. 數(shù)據(jù)訪問層的性能 |
內容二:J2EE架構模式 |
1. 描述J2EE模式的哲學 2. 描述J2EE模式體系中的J2EE模式和層 3. 介紹表示層模式 4. 介紹業(yè)務邏輯層模式 5. 介紹數(shù)據(jù)訪問層模式 6. 定義反模式 7. 描述集成層反模式 8. 描述業(yè)務層反模式 9. 描述展示層反模式 |
內容三:J2EE架構設計專題技術 |
1. J2EE異常處理 2. J2EE事務管理 3. 緩存技術在架構之中的應用 4. AOP技術在架構之中的應用 5. J2EE架構的數(shù)據(jù)校驗 6. 可擴展性和可靠性對架構的影響 7. 安全性在架構的考慮 8. 分布式計算中數(shù)據(jù)傳輸?shù)奶攸c 9. 多個實際項目的架構分析(為何這樣設計/優(yōu)點/缺點/當初的考慮) |
內容四:J2EE架構案例 |
1. 電信行業(yè)J2EE架構項目案例分析 2. 電力行業(yè)J2EE架構項目案例分析 3. 政府行業(yè)J2EE架構項目案例分析 4. 金融行業(yè)J2EE架構項目案例分析 5. 重點分析為何這樣設計/優(yōu)點/缺點/當初的考慮 |
內容一:介紹基本的架構概念 1. 理解企業(yè)應用中的難題 2. 定義軟件架構 3. 理解軟件架構需求 4. 理解架構師的作用、責任和交付項目 5. 理解使用統(tǒng)一建模語言(UML)的架構模型 6. 理解架構與設計之間的差別和相似點 |
內容二:理解架構質量屬性度量 1. 描述企業(yè)應用的系統(tǒng)性度量 2. 描述用于改善系統(tǒng)性度量的一般做法 3. 對服務質量(QoS)的要求劃分優(yōu)先級 4. 檢查是否存在良好的機遇,并進行權衡 5. 結合實際項目案例分析,質量屬性的權衡 |
內容三:J2EE核心技術 1. J2EE平臺概述 2. Web應用技術 3. Servlet,JSP,JSPTaglib,JSF 4. EJB技術,JMS,JTA,JNDI 5. JDBC,JPA 6. Java EE5 新特性 7. 基于J2EE 核心技術的架構 |
內容四:J2EE開源框架 1. Better,Faster,Lighter Java 2. 經(jīng)常使用的J2EE開源框架 3. Web層常見框架Struts1/2,Webwork,JSF 4. 業(yè)務邏輯層常見開源框架 5. 數(shù)據(jù)存取層常見開源框架 |
內容五:J2EE技術和其他對比(.Net, Ruby/Rails,LAMP) 1. J2EE技術和。Net技術對比 2. J2EE技術和Ruby/Rails技術對比 3. J2EE技術和相關PHP技術對比 |
內容六:檢查系統(tǒng)架構應于開發(fā)的風險 1. 了解分布式企業(yè)系統(tǒng)的關鍵風險因素 2. 設計靈活的對象模型 3. 理解創(chuàng)建網(wǎng)絡模型的指導原則 4. 驗證事務/異常/性能/安全的設計 5. 規(guī)劃系統(tǒng)容量 |
2ndDay 內容一:J2EE分層架構模式 1. J2EE架構模式 2. 表示層的設計原則和注意事項 3. 業(yè)務邏輯層的設計原則和注意事項 4. 持久化層的設計原則和注意事項 5. 基礎服務架構層設計原則和注意事項 6. 業(yè)務實體層的設計原則和注意事項 |
內容二:開發(fā)客戶端層的架構 1. 理解信息架構客戶端層的注意事項 2. 理解如何選擇滿足具體應用要求的用戶界面設備 3. 描述如何在客戶端層上實現(xiàn)重復使用 4. 理解開發(fā)基于Java桌面的應用的策略 5. 熟悉客戶端層的安全注意事項 |
內容三:Web層的架構 1. 描述與開發(fā)Web層相關的角色 2. 理解分離注意事項 3. 描述有關實施Web層展示問題的策略 4. 描述有關實施Web層數(shù)據(jù)問題的策略 5. 描述有關管理Web層展示、數(shù)據(jù)和邏輯問題的策略 6. 理解面向請求的和面向組件的Web層框架的優(yōu)點和缺點 7. 描述有關在Web層中實施驗證和授權的策略 8. 解決Web應用擴展問題 |
內容四:基于Ajax技術架構 1. 傳統(tǒng)BS應用系統(tǒng)的缺點 2. RIA應用的誕生原因 3. Ajax應用系統(tǒng) 4. 基于Ajax的BS架構 |
內容五:基于Struts1/2技術架構 1. 開發(fā)基于Struts的Web應用程序 2. 將MVC應用于您的應用程序架構 3. 使用單元測試來測試Struts應用程序 4. 運用重要的Struts最佳實踐 5. 使用常用的Struts擴展功能提高生產(chǎn)效率 6. 保護Struts應用程序的安全 |
內容六:基于JSF技術架構 1. 使用基于組件和事件驅動的JavaServer Faces框架開發(fā)Web應用程序 2. JSF的應用與開發(fā) 3. JSF組件的開發(fā) 4. JSF最佳實踐 |
3rdDay 內容一:業(yè)務邏輯層的架構 1. 理解有關使用企業(yè)應用容器服務的價值 2. 描述用于實施域模型服務的架構選項 3. 描述用于實施域模型實體的架構選項 4. 分發(fā)域模型組件 5. 理解例外處理和日志的最佳做法 |
內容二:基于EJB業(yè)務邏輯層的架構 1. 深入理解EJB原理和EJB30新特性 2. EJB的核心服務 3. EJB事務管理 4. EJB異常處理 5. EJB攔截服務 6. 如果基于EJB技術進行構建業(yè)務邏輯層 7. EJB項目經(jīng)驗 |
內容三:基于Spring業(yè)務邏輯層的架構 1. Spring輕量級容器技術 2. Spring的Ioc/DI技術 3. Spring的數(shù)據(jù)存取技術 4. Spring AOP技術 5. Sping事務管理 6. Spring在業(yè)務邏輯層的應用 7. Spring項目經(jīng)驗 |
4thDay內容一:開發(fā)集成和資源層的架構 1. 描述與企業(yè)信息系統(tǒng)(EIS)集成相關的難題 2. 描述集成層的角色 3. 描述EIS資源層 4. 回顧Java集成技術和最佳做法,以及和其他系統(tǒng)集成 5. 數(shù)據(jù)存取架構模式 6. 數(shù)據(jù)存取架構技術發(fā)展 7. 數(shù)據(jù)存取架構的策略 8. 數(shù)據(jù)存取層事務和連接管理模式 |
內容二:數(shù)據(jù)存取技術基石-JDBC 1. JDBC概述和JDBC Driver類型選擇 2. 使用JDBC進行數(shù)據(jù)庫訪問和JDBC 核心類 3. JDBC連接池的原理和使用 4. DataSource原理和使用 5. JDBC3.0/4.0新特性 6. 數(shù)據(jù)存取層的性能監(jiān)控和調優(yōu)(結合應用服務器) |
內容三:基于ORM數(shù)據(jù)存取技術-Hibernate和JPA 1. J2EE數(shù)據(jù)存取技術 2. Hibrnate映射技術 3. Hibernate 對象實體級聯(lián) 4. Hinbernate緩存處理 5. Hinbernate并發(fā)控制與鎖的管理 6. Hinbernate事務管理 7. JPA技術概述 8. Hinbernate項目經(jīng)驗 |
內容四:基于SQLMapper數(shù)據(jù)存取技術-IBatis 1. What is iBATIS? 2. Working with mapped statements 3. Executing nonquery statements 4. Using advanced query techniques 5. Transactions 6. Using Dynamic SQL 7. Improving performance with caching |
內容五:J2EE架構的事務管理 1. 事務的概述 2. 本地事務和分布式事務JTA 3. 本地事務的管理的模式 4. 分布式事務管理的模式 5. 聲明方式和編程方式事務管理 6. 事務,鎖,并發(fā) |
內容六:J2EE架構的安全管理 1. 分析分布式計算環(huán)境中的安全影響 2. 理解Java EE技術中的安全服務 3. 理解Web服務的安全要求 4. 基于Spring Acegi安全架構設計 |
內容一:J2EE架構時性能考慮 1. 架構時的性能考慮 2. J2EE項目調優(yōu)概述 3. 利用應用服務器的調優(yōu) 4. web層架構的性能考慮 5. 業(yè)務邏輯的性能設計考慮 6. 數(shù)據(jù)訪問層的性能 |
內容二:J2EE架構模式 1. 描述J2EE模式的哲學 2. 描述J2EE模式體系中的J2EE模式和層 3. 介紹表示層模式 4. 介紹業(yè)務邏輯層模式 5. 介紹數(shù)據(jù)訪問層模式 6. 定義反模式 7. 描述集成層反模式 8. 描述業(yè)務層反模式 9. 描述展示層反模式 |
內容三:J2EE架構設計專題技術 1. J2EE異常處理 2. J2EE事務管理 3. 緩存技術在架構之中的應用 4. AOP技術在架構之中的應用 5. J2EE架構的數(shù)據(jù)校驗 6. 可擴展性和可靠性對架構的影響 7. 安全性在架構的考慮 8. 分布式計算中數(shù)據(jù)傳輸?shù)奶攸c 9. 多個實際項目的架構分析(為何這樣設計/優(yōu)點/缺點/當初的考慮) |
內容四:J2EE架構案例 1. 電信行業(yè)J2EE架構項目案例分析 2. 電力行業(yè)J2EE架構項目案例分析 3. 政府行業(yè)J2EE架構項目案例分析 4. 金融行業(yè)J2EE架構項目案例分析 5. 重點分析為何這樣設計/優(yōu)點/缺點/當初的考慮 |