天天看點

傳智播客周末高手精華班

本次課程将以《Spring 2.0核心技術與最佳實踐》的完整執行個體Live線上書店為參考,全面講述J2EE應用程式的設計,編碼和測試技術。課程對于書中已有的知識點不再作詳細介紹,而是側重于項目開發的實際問題,重點突出J2EE設計難點,讨論各種技術和架構的特點、常用的設計模式和有效測試技術,深入架構設計思想,真正做到領會精髓,靈活運用。學員在完成課程學習後将有能力獨立設計Live線上書店系統,Blog系統,BBS系統等常用Web應用程式。

教育訓練目标:

手把手教您實作www.livebookstore.net站點的所有前背景功能!

登入www.livebookstore.net,即可體驗您教育訓練後的傑作!

本項目所涉及到的核心技術:

使用Spring作為核心架構并內建其他元件或架構

使用Hibernate+JPA+泛型DAO實作資料存取

使用Lucene+Compass實作全文搜尋

使用JMS背景異步發送Email

使用Acegi控制頁面和邏輯權限

使用AOP+JMX實作遠端性能監控

使用Velocity替代JSP作為表示層

使用XFire+StAX輸出Web Services

使用Ant+XDoclet自動生成配置檔案

講師介紹:廖雪峰,JavaEE開發網(www.javaeedev.com)的創立者,《Spring 2.0核心技術與最佳實踐》一書的作者,長期從事J2EE/J2ME開發,對Open Source架構有深入研究,曾參與網易商城等大型J2EE應用的開發。

課程安排:

第一天 LiveBookstore設計

1. 傳統JavaEE設計與輕量級應用程式設計

2. 配置開發環境:JDK5/Eclipse/Ant/XDoclet/HSQLDB/MySQL

3. Ant和XDoclet介紹

4. 深入Spring IoC容器

5. JavaEE三層應用模型介紹

6. 配置資料庫環境

7. 編寫LiveBookstore的Ant腳本

8. 編寫JUnit單元測試

9. 自動運作JUnit單元測試

10. 代碼覆寫率測試

第二天 LiveBookstore域模型設計

1. ORM與JPA規範

2. 為LiveBookstore的Domain Object編寫JPA注解

3. 通過Ant+HibernateTools自動生成LiveBookstore資料庫腳本

4. 深入JDBC

5. 使用Spring JdbcTemplate通路JDBC

6. DAO模式在LiveBookstore的應用

第三天 深入ORM,幾種ORM架構的比較:Hibernate,JDO,IBatis,JPA

1. 深入Hibernate

2. Hibernate分頁原理

3. 為LiveBookstore簡化分頁

4. 為LiveBookstore編寫泛型DAO

5. LiveBookstore樹形目錄設計

6. 如何擴充Hibernate

第四天 深入JavaEE事務

1. JDBC事務與JTA事務

2. Spring事務模型介紹

3. 使用Spring程式設計式事務

4. 使用Spring聲明式事務

5. 使用Spring 2.0注解配置聲明式事務

第五天 內建Hibernate事務

1. 常見的事務模型

2. 設計LiveBookstore的事務模型

3. 确定事務邊界

第六天 深入HTTP協定

1. Servlet和JSP模型

2. Filter和Listener模型

3. MVC原理剖析

4. 自己動手編寫最簡單的MVC架構

5. 常見的MVC架構介紹:Struts,WebWork2,Spring MVC

第七天 深入Spring MVC

1. 編寫LiveBookstore的Controller體系

2. 設計View

3. 配置ViewResolver

4. 幾種View技術比較:JSP,Velocity,FreeMarker,XSLT

第八天 深入Velocity

1. 可視化編寫Velocity頁面

2. 編寫Velocity宏簡化頁面

3. 簡化LiveBookstore分類清單和分頁顯示

第九天 Spring MVC的進階應用

1. 攔截請求

2. 處理異常:讓未登入使用者自動導向登入頁面

3. 上傳書籍封面:處理檔案上傳并生成縮略圖

4. 生成二進制内容

第十天 內建第三方MVC架構

1. 內建Struts

2. 內建WebWork2

3. 內建JSF

第十一天 深入介紹全文搜尋原理

1. 全文搜尋引擎Lucene

2. 什麼是OSEM

3. 配置Book類使其可被全文搜尋

4. 使用Compass+Lucene實作全文搜尋

第十二天 深入Lucene API

1. 構造各種查詢

2. 擴充Lucene

第十三天 深入JavaMail

1. 通過Spring發送Email

2. 發送HTML格式的Email

3. 發送附件

第十四天 深入JMS程式設計模型

1. 配置JMS1.1

2. 通過Spring通路JMS

3. 使用JMS異步發送Email

第十五天 使用Timer排程任務

1. 排程引擎Quartz介紹

2. 使用Quartz定時排程Email任務

第十六天 Web服務架構介紹:Axis和XFire

1. XFire的優勢:利用StAX大幅提高性能

2. 內建Xfire在LiveBookstore中釋出Web服務

3. 在Spring容器中配置AOP

4. 使用AOP統計LiveBookstore代碼性能

第十七天 深入JMX

1. 發送和接收MBean通知

2. 使用JMX動态配置LiveBookstore

3. 使用JMX收集LiveBookstore性能資料

4. 配置HtmlAdopterServer通過浏覽器通路JMX

第十八天 深入了解權限控制

1. 通過Filter控制URL通路

2. 內建Acegi實作安全通路

3. 設計角色

4. 兩層權限控制:Web和Business

5. 單點登入介紹

6. 配置單點登入伺服器

7. 使用Acegi讓LiveBookstore實作單點登入

第十九天 緩存設計概述

1. 使用ReadWriteLock設計緩存

2. OSCache緩存簡介

3. 利用JavaScript将動态頁面轉化為靜态頁面

4. 緩存LiveBookstore頁面到記憶體或檔案

第二十天 編寫Filter設定用戶端緩存

1. 設定站點首頁

2. 和Apache伺服器內建

3. 和IIS伺服器內建

4. 使用JMeter測試LiveBookstore

5. 課程回顧與總結

開班日期: 12月15日

繼續閱讀