本文是J2EE企业级开发四步走完全攻略索引,因内容比较广泛,涉及整个JAVA EE开发相关知识,这是一个长期的计划,单个发blog比较零散,所以整理此索引,决定以后每发一季JAVA EE blog后会在此索引文中相应小节添加链接,这样我感觉比较有条理,【RHEL5企业级LINUX服务攻略】专题及【51CTO_RHCE讲座】RHCE课程笔记专题也将整理推出,敬请期待!

从零开始学JAVA

Java SE基础部分 | Java SE面向对象部分 | Java SE应用部分 | Java SE实战开发

Java SE基础部分
01. Java发展及JDK配置         2008-11-08
本季介绍了JAVA的发展过程,包括JDK的发展历程,path路径的配置和classpath的配置及作用。并简单讲解了一个简单的JAVA程序,并通过此程序讲解了JAVA程序的基本组成。
02. 标识符和数据类型         2008-11-24
本季介绍了Java中的标识符的命名规则,各种关键字及数据类型的划分,并对各种数据类型的使用进行了详细的讲解。本季主要知识点有:标识符的组成及限制、JAVA中的保留字、java中的数据类型划分 和JAVA中的八种基本数据类型的定义和使用。
03. 运算符和表达式         2008-12-02
讲解了JAVA中各种运算符的使用,包括与、或、非、大于、小于等。
04. 分支、循环语句        2008-12-02
本季为JAVA程序中最重要的部分,在讲解的时候除了讲解各种主要的控制语句(分支语句和循环语句),也讲解了大量的实例。
05. 数组与方法         2008-12-12
数组是JAVA引用数据类型的一种,在本季中讲解了数组的定义与使用,同时为了便于读者更好的理解JAVA中的数组操作,也讲解了数组的各种案例。最后讲解方法及方法的重载,以及在方法中如何传递数组等操作。

Java SE面向对象部分
06. 面向对象基础(01         2008-12-14
本季介绍了面向对象与面向过程的区别,重点阐述了类与对象的关系及JAVA中如何定义类和使用对象。之后又详细讲解了对象的引用传递和垃圾的产生。
07. 面向对象基础(02        2008-12-19
本季讲解了类的封装性的实现及JAVA EE中对封装属性的访问标准。又通过构造方法的概念详细讲解了对象实例化时的每一步操作及匿名对象的使用。本季的知识点有:类的封装性、构造方法的使用和匿名对象。
08. 面向对象基础(03        2008-12-23
本季详细讲解了JAVA中最常用的类 —— String的具体操作,包括字符串的比较,String类的特性,以及String类中一系列方法(包括赋值方法)的使用。
09. 面向对象基础(04        2008-12-26
本季主要知识点:引用传递this关键字。本季开头先讲解了三种引用传递的范例帮助读者加强对引用传递的理解,之后重点阐述了this关键字的使用及对象的比较操作实现方式。
10. 面向对象基础(05       2009-01-01
本次课程是习题课程,将之前所学到的各种知识综合应用在题目之中, 并进行综合讲解,在讲解的时候为读者提供了解决问题的基本思路。
11. 面向对象基础(06       2009-01-02
本季要点:内部类的定义、使用和外部调用。本季重点讲解了JAVA中的内部类和对象数组的使用,以及对上季中的习题进一步引申。 
12. 面向对象基础(07)      2009-01-05
本季要点:static关键字的使用。本季讲解了Java中static关键字的使用以及单态设计模式。 
13. 面向对象高级(01)     2009-01-08
本季讲解了JAVA中继承产生的原因及继承的基本实现,之后本季又重点阐述了JAVA中对于继承实现的各种限制,包括子类对象的实例化过程,方法的覆写、super关键字的使用等。
14. 面向对象高级(02)       2009-01-11
本季先重点回顾了方法的重载与覆写、super与this关键字的区别。之 后主要以实例讲解为主,主要回顾了JAVA中的继承及数组的基本概念,之后又为读者讲解了JAVA中继承的图形表示。
15. 面向对象高级(03)      2009-01-13
本季要点:final关键字、简单了解一下抽象类与接口(JAVA中最重要的部分)。 本季讲解了Java中的final关键字、抽象类和接口的基本概念及使用限制。
16. 面向对象高级(04)      2009-01-15
本季要点:对象的多态性、instanceof关键字、Object类。本季为Java基础中面向对象的重要一季,讲解了对象的多态性,以及对象多态性在抽象类和接口中的实际应用。 
17. 面向对象高级(05)      2009-02-07
本季要点:抽象类和接口的实际应用。本季作为上一讲的后续内容,详细讲解了Java中的抽象类和接口的使用,并讲解了工厂设计模式。
18. 面向对象高级(06)      2009-02-08
本季要点:讲解抽象类与接口的关系。本季讲解了java中关于抽象类与接口的具体区别,同时讲解了两者的一 些其他联系。之后讲解了模板设计模式、代理设计模式,最后又重点强调了抽象类和接口之间的关系
19. 面向对象高级(07)      2009-02-09
本季以题目讲解为主,详细的讲解了抽象类和接口的实际应用及典型的实例分析。
20. 异常的捕获与处理          2009-02-11
本季讲解了Java中的异常处理程序,讲解了异常的捕获与处理的基本过程,throw与throws关键字、自定义异常操作类等。
21. 包及访问权限                  2009-02-13
本季讲解了Java中包的定义及使用,之后使用jar命令发布一个包,之后又讲解了JAVA中的四种访问权限,Applet简介。

Java SE应用部分
22. eclipse使用、正则应用        2009-02-15
本季知识点:Eclipse开发工具开发JAVA程序、正则表达式的使用。介绍了Eclipse的安装、建立JAVA项目、debug技术、Junit测试程序的使用,之后有讲解了JAVA中正则表达式的使用,以及String类中对正 则的支持。
23. 多线程(01)                         2009-02-15
本季知识点:线程与进程的区别、java中多线程的实现方式及区别、java线程的同步与死锁。本季介绍了进程与线程的区别,之后又讲解了JAVA中对于多线程的两种实现方式以及两种实现方式的区别。
24. 多线程(02)                        2009-02-16
本季知识点:线程的控制方法。本季继续介绍了JAVA多线程中线程运行状态、线程的休眠、线程的强制运行等常用的线程操作方法。
25. 多线程(03)                      2009-02-17
本季知识点:题目讲解、其他的操作方法、同步与死锁的操作。本季首先先以一个实例复习了前面讲解的主要内容,之后又重点讲解了线程的同步实现,以及同步后的问题 —— 死锁。
26. 多线程(04)                        2009-02-19
本季讲解了线程通讯的经典案例,之后又讲解了Object类中对线程的支持,以及面试题目。
27. Java IO操作(01)               2009-02-24
本季知识点:File类、RandomAccess类。本季作为IO操作的第一部分,讲解了File类与RandomAccessFile类的使用,并通过创建文件、删除文件、文件列表、文件读写等实例详细讲解了其应用。
28. Java IO操作(02)                2009-02-25
本季知识点:字节流:InputStream、OutputStream和字符流:Reader、Writer。本季详细的讲解了JAVA中字节流与字符流的基本操作,实现了向文件中写入数据的功能,之后又讲解了字节流与字符流的区别。
29. Java IO操作(03)              2009-02-28
本季首先讲解了如何用IO流实现文件的拷贝操作,之后介绍了内存的输入、输出流、管道操作流等,最后重点讲解了PrintStream的基本原理以及System.out与PrintStream及OutputStream的关系。
30.Java IO操作(04)               2009-03-01
本季知识点:System.in、缓冲流、对象序列化。本季讲解了System.in及由键盘输入数据的标准格式,之后又重点阐述了IO包中最重要的概念 —— 对象序列化(串行化)的使用和transient关键字的作用
  31. Java IO 操作实例               2009-03-03
本季主要实现了一个简单的MIS系统,通过对象序列化完成。
  32. Java网络编程                    2009-03-05
本季讲解了JAVA中TCP和UDP程序的设计,同时讲解了多线程在服务器编程上的作用。
33. JAVA数据库编程
本季知识点:JDBC的分类 、JDBC的主要操作类和接口:DriverManager、Connection、Statement、PreparedStatement、ResultSet 、如何使用JDBC连接MySQL数据库。
本季讲解了JAVA数据库编程的步骤,以及主要的编程接口的使用,在最后又讲解了如何使用JDBC连接mysql数据库的操作步骤步骤。[url]www.mldn.cn[/url]上有MYSQL的教程。
本季讲解了线程通讯的经典案例,之后又讲解了Object类中对线程的支持,以及面试题目。

[零基础学JAVA]Java SE应用部分-33.Java数据库编程(JDBC)之一           09-03-2009更新

[零基础学JAVA]Java SE应用部分-33.Java数据库编程(JDBC)之二           09-03-2009更新
34. Java 常用 API                11-03-2009更新
本季重点讲解了Java中比较常用的类库:StringBuffer、Runtime类、包装类、日期的操作类、 Math类、Random类,在讲解中又重点阐述了JDK 1.5的泛型技术。

35. Java 类集讲解
本季讲解了JAVA中类集的完整架构,如:Collection、List、Set、Map、Iterator等常用接口,并详细讲解了每个子类的特点以及二叉树排序操作,对象比较器的使用,在讲解中还讲解类集应用的两个实例,以帮助读者加深对类集的印象,为后续的JAVA EE学习打下坚实的基础。

[零基础学JAVA]Java SE应用部分-35.JAVA类集之一         17-03-2009更新

[零基础学JAVA]Java SE应用部分-35.JAVA类集之二        17-03-2009更新

[零基础学JAVA]Java SE应用部分-35.JAVA类集之三        17-03-2009更新

[零基础学JAVA]Java SE应用部分-35.JAVA类集之四        17-03-2009更新

36. 反射机制与工厂设计模式             21-03-2009更新
本季要点:Java的反射机制、工厂模式综合讲解。本季讲解了JAVA中的反射机制的应用,之后通过反射机制实现了一个灵活的工厂设计模式

Java SE实战开发
37. 信息管理系统
本季综合应用了之前讲解的全部知识,通过边分析边讲解的方式详细的讲解了一个即可以用于文件也可以用于数据库存储的小型管理系统,在程序的讲解中使用了Eclipse作为开发工具。

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[文件保存](1)     25-03-2009更新

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[文件保存](2)     25-03-2009更新

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](1)     02-04-2009更新

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](2)     02-04-2009更新

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](3)     02-04-2009更新

Java EE WEB 工程师培训

——JDBC+Servlet+JSP整合开发

JDBC | Servlet | JSP | 附录

JDBC
01. JDBC 简介                              16-04-2009更新
本季要点:JDBC 简介、 JDBC 驱动、 JDBC 包、 JDBC 常用接口和类、 JDBC 编程步骤、 实例: 查询用户信息
02. JDBC Connection                     18-04-2009更新
本季要点:Connection 简介、 获得数据连接 Connection、 获得一个可配置的连接
03. JDBC Statement  
本季要点: 获得Statement、 使用Statement 执行DDL、 使用Statement 执行DML

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之03.JDBC Statement(1)    20-04-2009更新

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之03.JDBC Statement(2)    20-04-2009更新
04. JDBC Resultset        2009-05-26更新
本季要点:ResultSet 简介、Java 数据类型与SQL数据类型的映射、ResultSet 常用方法、实例
05. JDBC MetaData       2009-06-02更新        
本季要点:结果集的MetaData、数据库的MetaData  
06. JDBC PreparedStatement       2009-06-04更新
本季要点:PreparedStatement、为占位符“?”赋值、 使用PreparedStatement动态执行SQL语句
07. JDBC CallableStatement          2009-06-06更新
本季要点:CallableStatement 简介、 调用简单的存储过程、 调用有输入参数的存储过程、 调用有输入输出参数的存储过程
08. JDBC 可更新的ResultSet及RowSet        2009-06-08更新
本季要点:设置可滚动ResultSet、 滚动ResultSet、 更新ResultSet、 RowSet  
09. JDBC DAO 设计模式                       2009-06-13更新
本季要点:DAO 设计模式、 DAO 实例

Servlet
10. Web工程结构                    2009-06-14更新
本季要点:简介、 Web应用程序的思想、 Web应用程序的目的、 Web工程结构、 web.xml 文件、 实例
11. Servlet 简介 2009-06-16更新
为什么需要动态创建Web页面?、 Servlet 的功能、 Servlet 相对“传统” CGI的优势、 Servlet 的相关类和接口、 Servlet 实例
12. Servlet 基础
本季要点:提交表单的方法、 Servlet 生命周期、 使用Servlet 输出HTML页面、 获得Servlet初始化参数、 页面导航

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之12.Servlet基础(1)      2009-06-19更新

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之12.Servlet基础(2)      2009-06-19更新

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之12.Servlet基础(3)    2009-06-21更新
13. Form 表单处理
本季要点: Form 表单简介、 创建并提交表单、 使用Servlet处理表单、 实例

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之13.Form表单处理(1)   2009-06-20更新

Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之13.Form表单处理(2)    2009-06-21更新

14. Servlet 请求头信息                 2009-06-21更新
本季要点:典型的请求头信息、 读取HTTP请求头、 使用表格显示所以请求头信息、 理解各种请求头的含义、 区分不同的浏览器类型
15. Servlet 响应头信息                2009-06-23更新
本季要点:HTTP响应的格式、 设置响应报头、 常见MIME类型、 常见HTTP 1.1响应报头、 构建Excel电子表格、 动态生成JPEG图像、 定时刷新页面
16. Cookie 2009-07-06更新
本季要点: Cookie 简介、 设置Cookie、 创建Cookie、 获得Cookie、 Cookie应用实例
17. Session                                          2009-07-09更新
本季要点:Session 简介、 Session API、 Session 实例
18. Servlet共享变量与变量的作用域                      2010-02-02更新
本季要点: 共享变量: setAttribute, getAttribute; 变量的作用域: ServletContext, HttpSession, HttpServletRequest; 实例: 测试变量的作用域
19. Filter                                                                          2010-03-17更新
本季要点: Filter 简介、 创建Filter的步骤、 获得Filter的初始化参数、 Filter 实例: 字符编码 Filter, 权限验证 Filter 
20. Listener                                                                    2010-03-28更新
本季要点: Listenter 分类, 和ServletContext相关的: ServletContextListener, ServletContextAttributeListener; 和HttpSession相关的: HttpSessionListener, HttpSessionAttributeListener; 和ServletRequest相关的: ServletRequestListener, ServletRequestAttributeListener: Listener 实例: 用户在线计数
21. Servlet_资源访问                                                   2010-03-21更新
本季要点: B/S结构程序、B/A/S结构程序简介、 Servlet 资源访问: Servlet 和 JDBC; 实例: 维护客户列表

JSP
22. JSP 简介                                                                  2010-04-04更新
本季要点: 对JSP的需求、 JSP的结构、 JSP的好处、 JSP实例
23. JSP 脚本元素                                                         2010-04-12更新
本季内容如下: 本季要点: JSP声明、 JSP声明中JSP/servlet之间的对应、 JSP声明:示例 JSP表达式: JSP表达式中JSP/servlet的对应、 JSP表达式:示例 JSP .let(代码块): JSP 代码块中JSP/servlet的对应、 JSP声明和预定义变量、 JSP处理的两个阶段
24. JSP 指令元素                                            2010-04-14更新
本季要点: JSP page指令、 JSP taglib指令、 JSP include指令
25. JSP 动作元素                                         2010-04-15更新
本季要点: jsp:useBean、 jsp:setProperty、 jsp:getProperty、 jsp:forward、 jsp:include、 jsp:param、 实例
26. JSP 内建对象                                           2010-04-20更新
本季要点: 使用内建对象的目的 、 内建对象、 out 内建对象、 request 内建对象、 response 对象、 session 内建对象、 pageContext 内建对象、 exception 内建对象、 config 内建对象、 page 内建对象、 exception 内建对象
27. JSP 自定义标签                                      2010-04-28更新
本季要点: 简介 、 标签接口和类、 标签的分类、 标签实例: HelloWorld 简单标签 、 有属性的标签 、 有标签体,有属性的标签 、 嵌套标签 、 循环标签
28. JSP 标准标签(JSTL)                           2010-05-06更新
本季要点: JSTL 简介、 JSTL的分类: 基本标签 c:out 的用法、 基本标签 c:set 的用法、 条件判断标签 c:if 的用法、 条件判断标签 c:choose、c:when、c:otherwise 的用法、 迭代循环c:forEach的用法
29. JSP 表达式语言(EL)                             2010-05-11更新
本季要点: EL 简介、 EL的应用场合、 EL 的基本语法、 EL中的算术运算符、 EL中的关系运算符、 EL中的逻辑运算符
30. JDBC、Servlet、JSP的MVC                 2010-05-16更新
本季要点: Servlet 的优势与弊端、 JSP 的优势与弊端、 MVC 设计模式、 MVC 实例
31. JSP 项目实战                2010-05-16更新
本季要点: 编程思想: 分层开发思想, 面向接口编程思想; 设计模式: DAO设计模式, MVC设计模式; 实例: 收藏管理

附录
32. HTML 简介                  09-04-2009更新
本季要点: HTML 简介、 简单HTML元素、 HTML元素和属性 、 Style 和 class 属性 、 超级链接 、 图片、 标题、 给文本分组、 格式化文本 、 列表、 表 、 在表中的 rowspan 和 colspan 、 注释
33. HTML 表单                 15-04-2009更新
本季要点: HTML 表单(Form)简介、 表单简介: Input、 Text、 Password、 hidden、 Checkbox、 Radio、 File、 Button、 Reset、 submit、 Select: Option; Textarea 
34. Tomcat 安装与配置     12-04-2009更新
本季要点: Tomcat 简介、 Tomcat 的下载与安装、 Tomcat 的启动与关闭、 修改Tomcat端口、 在Eclipse中使用Tomcat、 将Web工程部署到Tomcat中
35. 安装使用MySQL及SQL Manager 2005       13-04-2009更新
本季要点: 安装 MySQL、 安装 SQL Manager 2005、 创建数据库、 创建表、 使用SQL编辑器

Java EE高级工程师I培训

——框架核心技术Struts、Spring、Hibernate

Struts框架 | Hibernate框架 | Spring框架 | 附录

Struts框架
01. Struts 预备知识
本季要点: Web开发基础(HTML、Servlet、JSP、Web服务器)、编程思想(面向接口编程思想、分层开发思想)、设计模式(DAO、MVC)。
本季讲解了Web开发需要的基础知识,以及如何运用分层开发思想和面向接口编程思想;在Web开发中的两个重要设计模式MVC和DAO的具体应用。
02. Struts 简介
本季要点:Struts 框架简介、Struts框架的下载安装和配置、Struts中的常用组件类、Struts实例演示。
本季首先对Struts做了一个基本介绍,然后讲述了Struts的下载、安装和配置,还有Struts中的五大组件:ActionServlet、Action、ActionForm、ActionForward、ActionMapping,最后以实例的方式演示了一个Struts应用。
03. Struts Action
本季要点:Action 的作用、Action的配置和使用、Struts的执行流程、映射结果。
本季首先讲述的Struts的作用:响应用户请求,并且和Servlet做了比较,接着讲述了如何定义、配置和调用Action,最后讲述了如何映射结果。
04. Struts ActionForm
本季要点:ActionForm的意义、定义ActionForm、映射ActionForm、使用ActionForm、动态Form。 本季首页讲述了ActionForm的意义:传递数据(“邮递员”)、重新显示数据,接着讲述了如何定义、映射和使用ActionForm,最后讲述了动态Form的使用。
05. Struts 标签表单
本季要点:标签Form的意义、标签Form的使用,本季讲述了标签Form的意义:自动装载数据、自动重新显示数据,以及如何使用标签Form。
06. Struts Message
本季要点:在Strus中使用属性文件、使用Struts实现国际化(I18N)。
本季主要首先讲述了Struts属性文件的使用,接着讲述了如何使用Struts进行国际化。
07. Struts 高级 Action
本季要点:Struts高级Action、DispatchAction的使用和配置。
本季主要讲述了Struts中除了Action之外的几个高级Action,重点讲述了DispatchAction的作用和使用。
08. MyEclipse自动生成Struts
本季主要讲述了如何使用MyEclipse来自动生成Struts,包括如何生成Action、ActionForm 、JSP、Forward等。
09. Struts 手动验证
本季要点:验证的意义、客户端验证、服务器端验证、Struts 手动验证。
本季首先讲述了验证的意义:“输入的是垃圾,输出的也是垃圾!”,保证数据的正确性、有效性。接着,讲述了客户端验证和服务器验证,最后讲述了Struts中的自动验证,在ActionForm的validate方法中做验证, 在Action的execute中做验证。
10. Struts 自动验证
本季要点:手动验证的弊端、自动验证的优势、Struts中的自动验证。 本季首先讲述了手动验证的弊端,自动验证的优势,接着详细讲述了Struts中自动验证的配置、和使用。
11. Struts 标签
本季要点:Struts标签、HTML标签、表单标签、单选按钮和复选按钮、选择标签、错误输出标签、文件上传标签、 Struts Bean 标签、Struts逻辑标签 。
12. Struts 项目实战
本季通过一个订餐项目来综合总结Struts中所学的知识,订餐项目的功能:用户登录、用户注册、添加订餐信息、查询订餐、结算、权限验证, 综合运用了Struts中的如下知识:Struts基础流程及配置、Struts验证、国际化、标签的使用、DispatchAction的使用, 并且讲述了使用Filter进行权限验证。

Hibernate框架
13. Hibernate 简介
本季要点:持久化、对象持久化、持久层的概念;Java的对象持久化方案;ORM 、Hibernate简介;Hibernate实例演示。
本季首先讲述了什么是持久化、对象持久化、持久层的概念,接着,讲述了Java的对象持久化方案:JDBC和ORM,还有对Hibernate做了详细的介绍,最后以实例来演示Hibernate项目。
14. Hibernate 配置
本季详细讲述了如何配置Hibernate,首先讲述了编程式配置,接着讲述了声明式配置,还有如何获得SessionFactory, 如何配置JDBC属性和日志等。
15.Hibernate 映射基础
本季要点:Hibernate映射基础、映射的定义、Hibernate数据类型、XDoclet和Annotation生产配置文件。
本季首先讲述Hibernate的基本映射:表结构映射类结构、字段映射属性、主键的映射、对象对应记录等映射基础;接着讲述了 Hibernate数据类型的意义和使用,最后讲述了如何使用XDoclet和Annotation来生成Hibernate映射文件。
16. Hibernate API
本季要点:Hibernate API、对象状态。
本季首先讲述了Hibernate中对象的状态:瞬时(Transient)、持久(Persistent)、脱管(Detached), 接着讲述了如何使用Hibernate API 来操作对象,从而操作数据库。
17. Hibernate 复合主键映射
本季要点:复合主键、Hibernate复合主键的应用。
本季首先讲述了复合主键,接着讲述了Hibernate中复合主键的使用:基于实体类属性的复合主键、基于主键类的复合主键, 最后,以实例的方式来演示。
18. Hibernate 组件映射
本季要点:组件映射、对象的细粒度划分。
本季首先讲述了Hibernate对组件映射的支持,然后讲述了组件映射的目的是对象的细粒度划分。
19. Hibernate 大数据类型映射
本季讲述了Hibernate如何操作大数据类型,例如大文本(Clob)、大二进制文件(Blob)。
20. Hibernate 继承映射
本季要点:继承映射、继承映射策略。
本季首先讲述了Hibernate对继承映射的支持:表与子类独立的一对一关系(Table per concrete class)、每个子类一个子表,并与主类共享主表(Table per subclass)、表与类一对多关系(Table per class hierarchy),然后以实例的方式演示了如何实现之。
21. Hibernate 集合映射
本季首先对Java集合框架做了讲述,接着讲述了Hibernate对集合支持:无序集合Set、Bag、Map,有序集合 List,最后以实例的方式实现之。
22.Hibernate 关联映射
本季首先讲述了Java中的关联关系:一对一(one-to-one)、一对多(one-to-many)、多对多(many-to-many) ,然后讲述了Hibernate如何将对象的关系映射到数据库中的表之间的关系。
23. Hibernate HQL查询
本季讲述了如何使用Hibernate HQL进行查询,包括实体的查询、属性的查询、实体的批量更新与删除、 分组与排序、参数绑定、引用的查询、联合查询、子查询等。
24. Hibernate Criteria查询
本季讲述了如何使用Hibernate Criteria 以面向对象的方式进行各种查询,包括如何创建Criteria 实例 、限制结果集内容、结果集排序、Example类、投影(Projections)聚合(aggregation)和分组(grouping)等
25. Hibernate SQL查询
本季讲述了如何使用 Hibernate native SQL 来进行查询,包括使用SQLQuery:标量查询(Scalar queries)、实体查询(Entity queries) ;命名SQL查询;使用return-property来明确地指定字段/别名;定制SQL用来create,update和delete;定制装载SQL等。
26. MyEclipse自动生成Hibernate
本季讲述了如何使用MyEclipse插件自动生成Hibernate工程,包括创建一个Java工程、 创建数据库驱动配置、 使用MyEclipse添加Hibernate Capabilities 、 自定义Hibernate配置文件、 根据表结构映射类和映射文件、 使用HQL编辑器、 测试该工程等。
27. Hibernate 项目实战
本季以一个问答系统来对Hibernate所学的知识做了一个总结,本系统包括会员登录、注册、提问问题、回答问题。 查询问题等功能,综合使用Hibernate中的如下技术:Hibernate 基本配置、Hibernate API 来操作对象、关联映射、Hibernate 查询。

Spring框架
28. Spring 简介
本季内容如下:预备知识,什么是轻量级框架、什么是容器、什么是IOC/DI、什么是AOP; Spring简介; IOC容器; AOP实现; 对持久层的支持; 对Web层的支持; 对其他框架和技术的集成; Spring起步实例; Spring依赖注入方法等
29. Spring 使用IOC容器管理Bean 
本季内容如下: IOC容器简介, 容器简介、 BeanFactory、 ApplicationContext; Bean的定义标识和别名: 定义、 标识、 别名; Bean的实例化: 默认构造方法、 静态工厂方法、 工厂类的工厂方法; Bean的Scope: Singleton、 Prototype、 Request、 Session、 Globalsession 。
30.Spring 依赖注入(DI)
本季内容如下: 依赖注入的分类: 设置注入、 构造方法注入、 接口注入; 依赖注入的属性设置: 值属性、 基本类型和字符串、 空值null、 空字符串“”、 引用属性; 引用属性的三种形式: Bean、 Local、 parent; 集合对象属性: 数组和List、 Set、 Map、 Properties。
31. Spring AOP 简介
本季内容如下: Spring AOP 的概念, 切面(Aspect)、 通知(Advice)、 连接点(Joinpoint)、 切入点(Pointcut)、 目标(Target)、 代理(Proxy)、 织入(Weaving); 用代理来理解AOP: 静态代理、 动态代理。
32. Spring AOP API 实现
本季内容如下: 简介,在这里我们将讨论更底层的Spring AOP API,以及如何在Spring 1.2应用中使用这些API、 对于新的应用程序,推荐使用Spring 2.0 AOP支持(将在后面讨论): 基于XML配置文件的、 基于annotation的; 代理类ProxyFactoryBean: 在Spring里创建一个AOP代理的基本方法是使用org.springframework.aop.framework.ProxyFactoryBean 这个类对应用的切入点和通知提供了完整的控制能力、 重要属性: proxyInterfaces:被代理接口、 target:被代理的实例、 interceptorNames:Advice实例;
33.Spring AOP Annotation 实现
本季内容如下: @AspectJ 简介; 启用@AspectJ支持; 声明一个切面; 声明一个切入点(pointcut); 切入点简介: 切入点的匹配表达式、 execution pointcut 表达式、 示例; 声明通知(advice): Before advice、 After advice、 Around advice、 Throwing advice。
34. Spring AOP XML 实现
本季内容如下: 简介; 声明一个切面; 声明一个切入点 ; 声明通知: Before advice、 After returning advice、 After (finally) advice、 Around advice、 Throw advice。
35. Spring 事务处理
本季内容如下: 简介, 事务的抽象: PlatformTransactionManager 接口、 TransactionDefinition 接口、 TransactionStatus 接口; 声明式事务管理: 简介、 理解Spring的声明式事务管理实现、 示例、 回滚、 为不同的bean配置不同的事务语义、 使用 @Transactional; 编程式事务管理: 使用 TransactionTemplate、 使用 PlatformTransactionManager 。
36. Spring 封装JDBC
本季内容如下: Spring JDBC 简介, 简介, 包简介; Spring JDBC核心类与基本操作: JDBC核心类: JdbcTemplate类、 NamedParameterJdbcTemplate类、 DataSource接口; 基本操作: 执行SQL语句、 执行查询、 更新数据库; Spring JDBC 事务处理: 编程式、 声明式。
37. Spring 集成Hibernate
本季内容如下: Hibernate 简介; 在Spring的application context中创建 SessionFactory : 创建DataSource、 创建SessionFactory; HibernateTemplate 的使用: HibernateDaoSupport; 事务管理: 编程式事务、 声明式事务。
38. Spring MVC
本季内容如下: Spring MVC “HelloWorld”; DispatcherServlet; WebApplicationContext; Handler Mapping: BeanNameUrlHandlerMapping, SimpleUrlHandlerMapping; HandlerInterceptor; ModelAndView; View Resolver: InternalResourceViewResolver; Controller; Controller 接口; MultiActionController; AbstractCommandController; SimpleFormController。
39. Spring 集成Struts
本季内容如下: Struts 简介: Struts 是 应用最广的 Java Web 开发框架,主要是因为它是最先发行的几个框架之一(2001年6月) 这个框架由 Craig McClanahan 开发完成,现在作为 Apache 软件基金会的一个开源项目、 当时,它极大地简化了 JSP/Servlet 编程范例并且赢得了大多数正在使用私人框架的开发人员的亲睐、 它简化了编程模型,它是开源的,它具有一个庞大的社区,这些都使得这个项目快速成长,同时变得越来越流行; Spring 集成Struts的选择: 配置 Spring 将 Action 作为 bean 托管,使用 ContextLoaderPlugin, 并且在 Spring context中设置依赖关系、 继承 Spring 的 ActionSupport 类并且使用getWebApplicationContext() 方法获取 Spring 管理的 bean。
40. Spring 项目实战
本季讲述的是一个文季发布系统,项目功能如下:会员注册、登录 发布文季、 发表文季评论、 系统权限管理。 该项目综合了Spring中的各种应用,包括Spring的IOC容器、依赖注入、集成Hibernate、集成Struts等的应用。

附录
41. CVS 配置管理
本季了解CVS以及CVS的安装和配置,使用CVS Check out 工程,commit文件、update文件等。
42.Weblogic 配置管理
本季讲述了如何安装Weblogic Server、配置一个域(Domain)、 使用管理控制台、 部署Web应用程序: 手动部署、 使用集成开发环境MyEclipse; 配置连接池、 配置数据源等内容。

Java EE高级工程师II培训

——EJB+Web service+JMS整合开发

EJB 技术介绍 | 集成开发工具RAD | Session bean Session bean发布为web service | Entity bean | web ServiceSession BeanEntity Bean 集成消息驱动Bean | MDB集成到企业应用系统 | EJB最佳实践 | 附录

第一季 EJB 技术介绍
01. EJB的概念
本节要点:EJB技术特点、分布式应用,重点掌握EJB的概念,和EJB作为分布式应用的一些特点。
02. 架构、框架、模式
本节要点:架构,框架,模式。重点掌握三者的概念三者之间的关系。
03. EJB的用途
本节要点:我们都可以用EJB做什么,重点理解EJB的用途,以及使用EJB技术的都有那些好处。
04. EJB的消费者
本节要点:谁来调用EJB组件,重点来理解什么组件可以调用EJB,或者说EJB的客户端都可以是谁。
05. EJB容器
本节要点:EJB容器和EJB的开发工具,重点理解EJB容器的作用,了解EJB的常用开发工具有哪些。
06. EJB的分类
本节要点:EJB分类,重点了解EJB按照功能划分的Session bean、MDB和Entity Bean三种类型的bean。了解两种Session bean,即有状态的Stateful Session bean和无状态的Stateless Session bean,以及两种Entity Bean ,即CMP 和BMP。

第二季 集成开发工具RAD
01. 集成开发工具RAD
本节要点:掌握RAD集成开发工具,了解其常用的功能,及其为开发带来极大的便利性。 我们在后面的例子就是采用在RAD集成开发工具进行讲解。

第三季 Session bean
01. 创建一个 Stateless Session bea
本节要点:Session bean 的众多接口和类。通过使用RAD创建一个Stateless Session bean,重点理解远程和本地的区别。
02.Session bean的bean类
本节要点:bean类,重点在于bean类的EJB规范定义的接口继承的方法,以及规范的要求。
03.Session bean的远程接口和本地接口
本节要点:Session bean的远程接口和本地接口,重点理解本地接口和远程接口的类继承关系,以及接口和Bean类之间的关系,掌握将EJB的bean类中实现的业务方法提升到远程或本地接口。
04. Session bean的远程Home接口和本地Home接口
本节要点:Session bean的远程Home接口和本地Home接口,重点理解Home接口的作用,以及Home接口和JVM之间的关系,以及Home接口的继承。
05.EJB部署描述符
本节要点:EJB部署描述符,重点掌握EJB部署描述符的作用,以及EJB部署描述符的配置。
06. 将Session bean部署到WebSphere 服务器上
本节要点:如何将Session bean部署到 WebSphere 服务器上,重点掌握如何使用RAD集成开发工具和Websphere服务器,将EJB部署到Websphere服务器和把EJB从Websphere服务器上卸载。
07.Stateless Session bean 实现分布式应用的基本原理
本节要点:Stateless Session bean 实现分布式应用的基本原理。本节重点掌握实现远程调用的机制,特别是通过JNDI去lookup一个EJB的Home接口的含义和机制保证。
08. 调用并测试EJB
本节要点:EJB测试和调用。本节重点掌握使用RAD的通用测试客户端来测试Session Bean方法,以及客户端程序中如何调用Session bean。

第四季 Session bean发布为web service
01.Web Service 的基本概念
本节要点:Web Service的基本概念,重点理解Web Service的作用,以及Web Service和EJB之间的关系。
02.理解WSDL
本节要点:理解WSDL,重点理解什么是WSDL,及WSDL的作用和结构组成。
03. 理解SOAP
本节要点:理解SOAP,重点理解标准通信协议SOAP的作用和分类,理解SOAP请求消息和SOAP响应消息。
04.理解UDDI
本节要点:理解UDDI,重点理解UDDI规范的作用,了解什么是UDDI registries。
05. Web Service 实践的两种途径
本节要点:Web Service 实践的两种途径,重点掌握使用RAD将Session bean发布为Web Service。

第五季 Entity bean
01.Entity Bean简介
本节要点:Entity Bean简介,回顾了Entity Bean的作用,重点理解两种Entity bean(CMP和BMP)的作用。
02.CMP Entity bean
本节要点:用RAD上创建一个的 CMP Entity bean,重点 掌握CMP和数据库中各个表的对应关系和CMP的组成部分
03. CMP Entity bean 的远程接口和本地接口
本节要点:CMP Entity bean的 远程接口和CMP Entity bean的本地接口。重点掌握“CMP Entity bean远程接口、本地接口”和“Session Bean的远程接口、本地接口”不同。
04.CMP Entity bean的远程Home接口和本地Home接口
本节要点:CMP Entity bean远程Home接口和本地Home接口,重点掌握Home接口的一些方法,以及Home接口的继承,掌握如何得到CMP Entity bean的Home接口。
05.CMP Entity bean的bean类
本节要点:CMP Entity bean的bean类。重点理解CMP Entity bean的bean类和Entity Bean 中其他组成部分的关系,掌握CMP Entity bean的bean类实现的接口和方法。
06.完成创建数据库结构
本节要点:创建数据库表结构,本节主要是为后面的例子的数据库基础,要求创建网上购物系统的数据库的一些表结构,注意,该数据库是以DB2为例进行说明。
07.建立CMP Entity bean 与数据库的映射关系
本节要点:建立CMP Entity bean 与数据库的映射关系,本节要求掌握使用RAD集成开发环境建立CMP Entity bean 与数据库的映射关系。
08. 扩充CMP中对数据库记录的创建方法及其原理
本节要点:CMP Entity bean增加一条数据库记录的原理,重点掌握扩充CMP增加数据库记录的方法。
09. 扩充CMP中对数据库记录的查询方法及其原理
本节要点:CMP Entity bean查询数据库记录的原理,重点掌握扩充CMP 查询数据库记录的方法。

第六季 web Service Session Bean Entity Bean 集成
01. 实现Web Service ,Session Bean 和 Entity Bean 的集成的整体构架设计
本节要点:实现Web Service ,Session Bean 和 Entity Bean 的集成的整体构架设计,重点理解一个企业应用中最常用,最经典的构架设计。
02. 在RAD 中实现Session Bean 和 CMP的集成
本节要点:在RAD 中实现Session Bean 和CMP的集成,重点理解集成的模式是什么,什么是Seseion Bean 对CMP的引用,掌握使用RAD集成开发环境Session Bean创建CMP的引用,实现Session Bean 和CMP的集成。
03. CMP部署到 WebSphere 服务器上
本节要点:在CMP中配制安全的数据源,将CMP部署到 WebSphere 服务器上,重点理解配置安全的数据源几个步骤,创建安全机制、创建JDBC Provider、创建数据源、配置CMP和数据源JNDI的关联。
04.Session Bean调用CMP对数据库进行操作
本节要点:Session Bean 调用CMP对数据库进行增删改查操作,重点理解在客户端程序中通过调用Session Bean的某个方法,Session Bean的这个方法又通过调用CMP的方法对数据库进行操作,根据抛出的异常给出解决方案等整个过程,更新网上购物系统的设计。
05.扩充网上购物系统的业务逻辑
本节要点:扩充网上购物系统的业务逻辑。重点理解添加在数据库中创建一条商品信息记录的Session Bean方法,理解添加在数据库中创建一条订单信息记录的逻辑,和扩充业务逻辑时所应用到的设计模式。
06.Session bean发布为Web Service
本节要点:Session bean发布为Web Service,重点掌握在RAD中用WSDL生成 Web Service Client的代码
07. 在客户端程序中如何调用Web Service
本节要点:在客户端程序中如何调用Web Service,本节重点掌握如何创建一个Java Application 作为Web Service 的客户端并通过引用Web Service Client的代码调用Web Service。

第七季 消息驱动Bean
01. 在企业系统中使用消息传递
本节要点:在企业系统中使用消息传递。重点理解为什么要在企业系统中使用消息传递,理解消息传递是怎么满足异步的、可靠的、支持多个发送者和多个接受者的要求。
02. Java 消息服务(JMS)
本节要点:Java 消息服务(JMS)。重点理解什么是JMS,掌握JMS 提供的两种类型的消息传递模型。还要学会用JMS API 发送一个消息的步骤。
03. 消息驱动MDB
本节要点:消息驱动Bean MDB(Message Driven Bean ),本节重点要求理解什么是MDB,以及MDB和JMS的关系,掌握怎么用MDB处理一个JMS消息。

第八季 MDB集成到企业应用系统
01. Web Service+EJB+JMS的集成的整体构架设计
本节要点:实现Web Service+EJB+JMS的集成的整体构架设计,重点理解并掌握JMS、MDB和模式集成到企业系统的设计中的整体构架设计。
02.集成Web Service+EJB+JMS
本节要点:在RAD中完成JMS API和MDB的开发。重点掌握JMS API实现一个发送JMS消息的方法,并在Session Bean中通过调用这个方法发消息,最后在MDB中加入处理这个消息的程序。
03. 点到点JMS消息传递部署到Websphere服务集成总线中的原理
本节要点:点到点JMS消息传递部署到Websphere服务集成总线中的原理,重点理解什么是服务集成总线 (SIB) ,理解点到点JMS消息传递部署到Websphere服务集成总线中的原理。
04. 将点到点的JMS消息传递部署到Websphere集成总线中
本节要点:将点到点JMS消息传递部署到Websphere服务集成总线中,重点掌握使用RAD如何将点到点的JMS消息传递部署到Websphere集成总线中。
05.发布/订阅的JMS消息传递部署到Websphere集成总线中的原理
本节要点:发布/订阅的JMS消息传递部署到Websphere集成总线中的原理。重点理解发布/订阅的消息传递部署到集成总线中的原理,以及订阅消息的应用程序两种订阅方式。
06. 将发布/订阅的JMS消息传递部署到Websphere集成总线中
本节要点:将发布/订阅的JMS消息传递部署到Websphere集成总线中。本节重点掌握使用RAD将发布/订阅的JMS消息传递部署到Websphere集成总线中。

第九季 EJB最佳实践经验总结
01. 无状态Session Bean的调优—调整实例池的大小
本节要点:无状态Session Bean的调优—调整实例池的大小,重点理解什么是Stateless Session Bean的实例池,为什么要调整实例池的大小。
02. 是选用消息机制还是选用Session Bean,我们可以借鉴的经验
本节要点:根据情况确定是选用消息机制还是选用Session Bean。本节重点掌握什么条件下使用JMS是更好的选择,什么情况下使用Session Bean是更好的选择。
03. 消息传递的事务问题我们可以借鉴的经验
本节要点:消息传递的事务问题我们可以借鉴的经验。本节重点掌握消息传递加上事务为我们解决了什么样的问题,以及这个事务怎么定义。
04. EJB中事务的管理
本节要点:EJB中事务的管理。本节重点掌握什么是EJB容器管理事务,以及都有什么事务类型。
05.EJB的安全机制
本节要点:EJB的安全机制。本节重点要理解全的一些基础概念,理解什么是基于角色的访问控制,掌握使用RAD对EJB组件进行安全角色映射。

附录
01. DB2安装说明
02. RSA
安装说明