第1章 Java EE概述 1
1.1 Java EE的产生与发展 1
1.2 Java EE 6架构 1
1.3 Java EE 6常用技术 3
1.4 Java EE 6特性 4
1.5 Java EE 6应用服务器介绍 5
1.6 Java EE开发环境的配置 6
1.6.1 JDK 7安装与配置 6
1.6.2 Eclipse IDE安装 9
1.6.3 JBoss AS 7.1.1.Final安装 9
1.6.4 Mysql安装与配置 11
1.7 小结 13
习题 13
第2章 Servlet程序开发 14
2.1 Servlet概述 14
2.2 一个简单的Servlet例子 14
2.3 Servlet工作原理 15
2.3.1 Servlet的调用过程 15
2.3.2 Servlet的生命周期 16
2.4 Servlet开发过程 17
2.4.1 创建工程 17
2.4.2 创建Servlet类 19
2.4.3 配置Servlet类 20
2.4.4 发布Servlet类 22
2.4.5 调用Servlet类 24
2.5 Servlet主要接口和类 25
2.5.1 Servlet接口 25
2.5.2 ServletRequest接口 26
2.5.3 ServletResponse接口 27
2.5.4 GenericServlet抽象类 27
2.5.5 HttpServlet抽象类 27
2.5.6 HttpServlettRequest接口 28
2.5.7 HttpServletResponse接口 29
2.5.8 HttpSession接口 30
2.6 Servlet共享变量 30
2.7 用Servlet读写文件 35
2.7.1 读文件 35
2.7.2 写文件 36
2.7.3 文件上传 38
2.7.4 文件下载 39
2.8 用Servlet访问数据库 41
2.9 小结 50
习题 50
第3章 JSP程序开发 51
3.1 JSP概述 51
3.2 一个简单的JSP例子 51
3.3 JSP运行原理 53
3.4 JSP基本构成 53
3.4.1 JSP声明 54
3.4.2 JSP程序块 55
3.4.3 JSP表达式 55
3.4.4 JSP指令 55
3.4.5 JSP动作 57
3.4.6 JSP注释 60
3.5 JSP内置对象 60
3.6 JSP页面调用Servlet 64
3.7 JSP页面调用JavaBean 65
3.8 JSP开发实例 66
3.9 小结 76
习题 76
第4章 JSF程序开发 77
4.1 JSF概述 77
4.2 一个简单的JSF例子 77
4.2.1 创建JSF工程 78
4.2.2 例子分析 80
4.3 JSF请求处理生命周期 83
4.3.1 恢复视图 84
4.3.2 应用请求值 84
4.3.3 处理验证 84
4.3.4 更新模型值 84
4.3.5 调用应用程序 84
4.3.6 显示响应 84
4.4 JSF组件 85
4.4.1 JSF核心标签 85
4.4.2 JSF HTML标签 86
4.5 F acelet 94
4.5.1 模板例子 95
4.5.2 复合组件 96
4.6 托管Bean 98
4.6.1 Bean作用域 98
4.6.2 使用XML配置Bean 99
4.7 EL表达式 100
4.7.1 值表达式 100
4.7.2 复合表达式 100
4.7.3 方法表达式 102
4.7.4 隐含变量 102
4.8 导航 103
4.8.1 静态导航 103
4.8.2 动态导航 103
4.8.3 重定向 104
4.9 转换和验证 104
4.9.1 使用标准转换器 105
4.9.2 使用标准验证器 106
4.9.3 使用自定义转换器 108
4.9.4 使用自定义验证器 110
4.10 事件处理 112
4.10.1 动作事件 112
4.10.2 值更改事件 114
4.10.3 阶段事件 116
4.11 上下文和依赖注入 117
4.11.1 概述 117
4.11.2 基本概念 118
4.11.3 例子 119
4.12 小结 124
习题 125
第5章 JDBC 126
5.1 JDBC概述 126
5.2 JDBC驱动程序 126
5.3 JDBC的主要接口和类 127
5.4 使用JDBC访问数据库 128
5.5 JDBC开发实例 129
5.6 小结 134
习题 134
第6章 JNDI 135
6.1 JNDI概述 135
6.2 命名服务与目录服务主要概念 136
6.3 JNDI的主要接口和类 136
6.4 JNDI的使用 138
6.5 JNDI开发实例 138
6.6 小结 141
习题 141
第7章 EJB 142
7.1 EJB概述 142
7.2 EJB 3.1组件类型及组成 143
7.2.1 类型 143
7.2.2 组成 143
7.3 EJB运行原理 143
7.4 EJB 3.1新特性 144
7.5 小结 146
习题 146
第8章 会话Bean 147
8.1 会话Bean概述 147
8.2 会话Bean组成 148
8.3 无状态会话Bean开发方法 148
8.3.1 无状态会话Bean例子 149
8.3.2 无状态会话Bean生命周期 156
8.3.3 无状态会话Bean的生命事件 157
8.4 有状态会话Bean开发方法 158
8.4.1 有状态会话Bean例子 158
8.4.2 有状态会话Bean生命周期 160
8.4.3 与无状态会话Bean区别 161
8.4.4 有状态会话Bean生命周期事件 161
8.5 单例会话Bean开发方法 162
8.5.1 单例会话Bean例子 162
8.5.2 单例会话Bean的并发控制 164
8.5.3 单例会话Bean生命周期 165
8.6 多接口会话Bean 165
8.7 会话Bean异步调用 167
8.8 小结 169
习题 169
第9章 JMS与消息驱动Bean 170
9.1 JMS概述 170
9.1.1 JMS基本模型 170
9.1.2 JMS消息结构 171
9.1.3 JMS消息传递模型 172
9.2 JBoss MQ配置 173
9.3 JMS程序的开发方法 174
9.3.1 JMS API模型 174
9.3.2 JMS消息发送 175
9.3.3 JMS消息接收 177
9.4 消息驱动Bean概述 182
9.5 消息驱动Bean组成 182
9.6 消息驱动Bean开发方法 182
9.6.1 监听点对点消息的MDB例子 183
9.6.2 监听Pub/Sub消息的MDB例子 184
9.7 消息驱动Bean生命周期 185
9.8 消息驱动Bean生命事件 186
9.9 小结 187
习题 187
第10章 JPA 188
10.1 JPA概述 188
10.2 一个简单的JPA例子 189
10.2.1 创建JPA工程 189
10.2.2 编写实体类代码 190
10.2.3 配置persistence.xml 191
10.2.4 客户端直接调用JPA 192
10.2.5 EJB调用JPA 193
10.3 JPA实体映射 194
10.3.1 映射实体 195
10.3.2 映射表和字段 197
10.3.3 主键映射 199
10.3.4 复合主键 201
10.4 实体关系映射 203
10.4.1 关联的基本概念 203
10.4.2 一对一单向 205
10.4.3 一对一双向 210
10.4.4 一对多单向 211
10.4.5 多对一单向 218
10.4.6 一对多/多对一双向 219
10.4.7 多对多单向 220
10.4.8 多对多双向 222
10.4.9 有额外字段的多对多双向 223
10.5 实体管理器 225
10.5.1 Entity Manager API 226
10.5.2 实体操作 227
10.5.3 实体的生命周期 228
10.5.4 实体管理器的获取 230
10.6 事务 233
10.6.1 事务与EntityManager 233
10.6.2 RESOURCE LOCAL事务 234
10.6.3 JTA事务 235
10.7 小结 237
习题 237
第11章 JPQL 238
11.1 JPQL概述 238
11.2 基本语句 238
11.2.1 select语句 238
11.2.2 update语句 239
11.2.3 delete语句 239
11.3 基本查询 239
11.3.1 查询的目标 239
11.3.2 标识变量 240
11.3.3 路径表达式 241
11.4 连接查询 241
11.5 操作符表达式 242
11.5.1 between表达式 243
11.5.2 in表达式 243
11.5.3 like表达式 243
11.5.4 空值比较表达式 243
11.5.5 空集合比较表达式 244
11.5.6 集合成员表达式 244
11.6 函数 244
11.6.1 字符串函数 244
11.6.2 算术函数 245
11.6.3 日期/时间函数 245
11.7 子查询 245
11.7.1 exists表达式 245
11.7.2 all和any表达式 245
11.8 select子句 246
11.9 order by子句 247
11.10 group by和having子句 247
11.11 在Java中使用JPQL 247
11.12 查询参数 248
11.13 JPQL实例 248
11.14 小结 249
习题 249
第12章 Web Service 250
12.1 Web Service概述 250
12.2 相关标准与技术 250
12.3 Web Service架构 251
12.4 Web Service的种类 251
12.4.1 Big Web Service 252
12.4.2 RESTful Web Service 252
12.4.3 选择使用哪种类型的Web服务 253
12.5 利用JAX-WS建立Web Service 253
12.5.1 JAX-WS简述 253
12.5.2 Web Service例子 253
12.5.3 创建客户端 255
12.6 用JAX-RS建立RESTful Web Service 256
12.6.1 JAX-RS简述 256
12.6.2 RESTful Web Service例子 257
12.7 小结 259
习题 259
第13章 Java EE安全性 260
13.1 Java EE安全性概述 260
13.2 应用程序安全目标 260
13.3 安全机制 261
13.3.1 Java SE安全机制 261
13.3.2 Java EE安全机制 261
13.3.3 安全容器 262
13.4 安全认证过程 262
13.5 声明式安全 264
13.6 编程式安全 267
13.7 小结 271
习题 271
第14章 SSH框架开发 272
14.1 SSH概述 272
14.2 Struts2 272
14.2.1 Struts2概念 273
14.2.2 Struts2体系结构 274
14.2.3 Struts2的配置文件 274
14.2.4 Action类文件 275
14.2.5 Struts2校验框架 276
14.2.6 Struts2拦截器 279
14.2.7 Struts2转换器 280
14.2.8 Struts2标签使用 282
14.3 Hibernate 286
14.3.1 Hibernate架构 287
14.3.2 O/R mapping 288
14.3.3 Hibernate常见操作 302
14.3.4 Hibernate多表操作 304
14.4 Spring 305
14.4.1 Spring开源框架 305
14.4.2 Spring控制反转 306
14.4.3 Spring依赖注入 308
14.4.4 Spring bean的作用域 313
14.4.5 Spring自动装配 314
14.4.6 AOP概念 315
14.4.7 Spring AOP编程 316
14.5 Spring、Struts2、Hibernate整合 317
14.5.1 Struts2配置 318
14.5.2 Spring配置 318
14.5.3 Hibernate配置 318
14.6 小结 319
习题 320