《精通Struts2 基于MVC的JavaWeb应用开发实战》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:陈云芳编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:7115178771
  • 页数:513 页
图书介绍:本书在Struts 2.0发布之后及时推出,着重介绍其体系结构、框架核心概念以及相应的高级特性话题,阐述了Struts 2.0构建Web应用的基本原理和开发步骤,最后通过两个综合案例开发向读者完整的展示基于Struts 2.0 的web应用的迭代开发过程,本书特别关注于由浅入深地展示如何在实践中使用Struts 2.0,除了教会读者学习Struts 2.0基本的知识外,如Struts 2.0的标志、API等,着重在于讲解Struts 2.0的提供的新特性和在实际开发中的具体应用,不再是单纯的工具手册,而是富有实战性的作品。以便区别于电子那本基础大而全的“鸡肋”知识,因为这些基本知识许多都是Struts 2.0帮助手册,在网络如此发达的今天,这些不必要的摘抄对读者来说有赚取篇幅之嫌。

第1篇 Struts 2快速入门第1章 Web应用开发概览 2

1.1 Web应用与Web开发框架 2

1.1.1 Web应用开发历程 2

1.1.2 为什么需要Web框架 5

1.2 MVC模式和Struts 8

1.2.1 什么是MVC模式 8

1.2.2 MVC模式的Web框架映射 9

1.2.3 Struts 2对MVC模式的改进 11

1.3 Struts 2框架概览 13

1.3.1 Struts 2框架的演变 13

1.3.2 Struts 2的特性 14

1.3.3 与其他Web框架的比较 17

1.4 小结 19

第2章 第一个Struts 2应用 20

2.1 Struts 2开发环境配置 20

2.1.1 JDK1.5.10和Tomcat的安装与配置 20

2.1.2 MyEclipse的安装和配置 23

2.1.3 Struts 2的安装 26

2.2 创建配置文件 28

2.2.1 配置web.xml文件 28

2.2.2 配置Struts 2的xml文件 29

2.2.3 配置Struts 2的properties文件 30

2.3 第一个Action 30

2.3.1 创建helloworld.action 31

2.3.2 在struts.xml中配置Action 31

2.3.3 创建视图hello.jsp 31

2.3.4 测试Action 32

2.4 体验Struts 2更高级功能 34

2.4.1 处理输入 34

2.4.2 执行结果 36

2.4.3 拦截器 36

2.5 小结 39

第2篇 Struts 2框架核心第3章 Action 42

3.1 Action简介 42

3.1.1 返回类型 43

3.1.2 execute()方法 44

3.2 Action接口 46

3.3 ActionSupport基类 46

3.4 Action实例 48

3.4.1 实现Action接口的实例 48

3.4.2 实现ActionSupport基类的实例 51

3.5 在Action中实现基本校验 54

3.5.1 使用Action的execute()方法 54

3.5.2 使用ActionSupport的validate()方法 54

3.5.3 使用注释实现校验 55

3.6 ActionContext 59

3.7 小结 60

第4章 Interceptor 61

4.1 Interceotor基础 61

4.1.1 理解Interceptor 61

4.1.2 Interceptor何时调用 62

4.1.3 Interceptor接口 63

4.1.4 Interceptor相关类 64

4.2 使用预定义的Interceptor 65

4.2.1 预定义Interceptor类 65

4.2.2 LoggingInterceptor示例 68

4.3 使用自定义的Interceptor 70

4.3.1 自定义Interceptor的配置 71

4.3.2 实现自己的Interceptor 71

4.4 Interceptor应用实例 73

4.4.1 execAndWait拦截器源码分析 73

4.4.2 项目概述 74

4.4.3 Action实现文件 74

4.4.4 页面文件 75

4.4.5 配置文件 77

4.4.6 运行 78

4.5 小结 79

第5章 Result 80

5.1 自定义Result 80

5.1.1 实现自定义Result 81

5.1.2 配置自己的Result 82

5.1.3 运行测试Result 83

5.2 常用的Result 84

5.2.1 Dispatcher 86

5.2.2 Redirect 90

5.2.3 Chain 95

5.3 其他的Result 96

5.4 小结 97

第6章 标签 99

6.1 标签介绍 99

6.2 自定义标签 100

6.2.1 标签的实现 100

6.2.2 标签的配置 101

6.2.3 运行 103

6.3 Struts 2标签概览 103

6.3.1 标签简介 103

6.3.2 使用标签的准备 104

6.4 非UI标签 105

6.4.1 数据标签 105

6.4.2 控制标签 109

6.4.3 其他标签 112

6.5 UI标签 114

6.5.1 通用属性 115

6.5.2 简单UI标签 118

6.5.3 高级UI标签 120

6.6 小结 124

第7章 表达式语言OGNL 125

7.1 OGNL的基本特性 125

7.1.1 常量的声明 126

7.1.2 方法调用 127

7.1.3 变量引用 127

7.2 操作集合 128

7.2.1 操作列表Lists 128

7.2.2 操作映射Maps 128

7.2.3 操作数组Array 128

7.2.4 集合操作 129

7.3 OGNL的高级特性 130

7.3.1 类型转换 130

7.3.2 与值栈的联系 131

7.3.3 lamuda表达式 132

7.3.4 Java和OGNL的比较 132

7.4 在JSP中使用OGNL 134

7.4.1 项目概述 134

7.4.2 工程代码编写 134

7.4.3 运行 137

7.5 小结 137

第8章 多视图 138

8.1 Velocity 138

8.1.1 Velocity简介 138

8.1.2 语法 139

8.1.3 Velocity实例分析 140

8.2 FreeMarker 143

8.2.1 FreeMarker简介 143

8.2.2 语法 144

8.2.3 FreeMarker实例分析 146

8.2.4 FreeMarker和Velocity的比较 147

8.3 JasperReports 148

8.3.1 JasperReports介绍 148

8.3.2 JasperReports实例分析 150

8.4 小结 153

第9章 数据持久化——使用Hibernate 154

9.1 数据持久化与Hibernate基础 154

9.1.1 数据持久化基础 154

9.1.2 Hibernate基础 155

9.2 Hibernate简单应用 156

9.3 Hibernate核心 160

9.3.1 Hibernate的核心接口 160

9.3.2 Hibernate的配置文件 162

9.3.3 Hibernate的对象关系映射 163

9.3.4 Hibernate的检索方式 163

9.4 Hibernate实例 164

9.5 小结 177

第3篇 Struts 2高级特性第10章 校验框架 180

10.1 使用Struts 2自带的校验器 180

10.1.1 配置拦截器 180

10.1.2 配置校验器 181

10.1.3 自带校验器实例 184

10.2 使用自定义校验器 191

10.2.1 创建自定义校验器 191

10.2.2 自定义校验器的注册 192

10.2.3 自定义校验器实例 193

10.3 小结 196

第11章 类型转换 197

11.1 为什么需要类型转换 197

11.1.1 没有类型转换的实例 197

11.1.2 类型转换带来的好处 201

11.2 Struts 2自带的转换器 202

11.2.1 自带转换器的数据类型 202

11.2.2 转换器的源码分析 203

11.3 自定义转换器 206

11.3.1 编写转换器类 206

11.3.2 配置 207

11.4 高级类型转换 208

11.4.1 空值属性处理 208

11.4.2 类型转换错误处理 209

11.5 小结 210

第12章 国际化 211

12.1 国际化基础 211

12.2 Struts 2与国际化 212

12.2.1 Struts 2对国际化的支持 212

12.2.2 资源包相关 212

12.2.3 国际化信息的获取 214

12.3 Struts 2国际化实现 214

12.3.1 初始页面的国际化 214

12.3.2 Action的国际化 216

12.3.3 校验的国际化 217

12.4 国际化实例 217

12.4.1 项目配置与开发 217

12.4.2 结果测试 223

12.5 小结 225

第13章 Struts 2调试 226

13.1 MyEclipse中的Java程序调试 226

13.1.1 调试配置 226

13.1.2 调试视图 227

13.1.3 控制程序执行 229

13.2 调试Struts 2程序 229

13.2.1 调试入门 229

13.2.2 连接Struts 2的源代码 231

13.3 Struts 2调试应用 234

13.3.1 实例的概述 235

13.3.2 实例工程的源文件 235

13.3.3 调试工程 240

13.4 小结 243

第14章 Struts 2原理探究 244

14.1 控制反转(IOC) 244

14.1.1 什么是控制反转 244

14.1.2 控制反转的设计方式 246

14.1.3 Struts 2中的控制反转 248

14.2 源码探究 251

14.2.1 Struts 2启动 251

14.2.2 Action处理过程 256

14.2.3 Interceptor工作机制 260

14.2.4 ActionContext 261

14.3 小结 262

第15章 Struts 2与其他网络框架整合 263

15.1 与SiteMesh整合 263

15.1.1 SiteMesh简介 263

15.1.2 SiteMesh的安装 264

15.1.3 SiteMesh应用实例 265

15.2 Quartz作业调度 267

15.2.1 Quartz简介 268

15.2.2 作业调度简介 268

15.2.3 Quartz应用实例 269

15.3 Acegi-Security用户管理 271

15.3.1 Acegi-Security简介 271

15.3.2 Acegi认证过程 272

15.3.3 保护Web应用程序 274

15.4 小结 275

第16章 Ajax与Struts 2 276

16.1 Ajax入门 276

16.1.1 Ajax发展过程 276

16.1.2 Ajax魅力所在 277

16.2 Ajax核心 278

16.2.1 使用XMLHttpRequest对象 278

16.2.2 发送请求与处理响应 282

16.2.3 实现基本的Ajax技术 286

16.3 Struts 2与Ajax框架的整合 290

16.3.1 Dojo框架 290

16.3.2 DWR框架 292

16.3.3 使用JSON插件 296

16.4 Struts 2的Ajax标签 301

16.5 小结 308

第17章 Struts 2测试 309

17.1 软件测试与JUnit基础 309

17.1.1 软件测试基础 309

17.1.2 JUnit基础 310

17.2 JUnit的使用 312

17.2.1 JUnit的安装 312

17.2.2 创建测试类 313

17.2.3 创建被测试类 313

17.2.4 运行测试 314

17.3 在Eclipse中使用JUnit测试Action 315

17.3.1 创建Struts 2项目 315

17.3.2 创建测试类 319

17.3.3 运行测试 322

17.4 JUnit高级 323

17.4.1 类级别的fixture 323

17.4.2 限时测试 324

17.4.3 异常测试 324

17.4.4 忽略测试 324

17.4.5 测试运行器 325

17.4.6 测试套件 325

17.4.7 参数化测试 325

17.5 小结 326

第18章 Spring整合 327

18.1 Spring初步 327

18.1.1 Spring概述 327

18.1.2 Spring准备 328

18.1.3 入门实例 328

18.2 Spring基础特性 331

18.2.1 依赖注入 331

18.2.2 Spring封装机制 333

18.3 Spring高级特性 339

18.3.1 Spring MVC 339

18.3.2 数据持久层 344

18.4 小结 346

第4篇 Struts 2综合项目实战第19章 网络商店实例编程(Struts 2+Hibernate+Velocity) 348

19.1 项目概述 348

19.1.1 网络商店概况 348

19.1.2 网络商店的需求分析 348

19.1.3 网络商店的业务建模 349

19.1.4 迭代式开发介绍 349

19.1.5 项目功能模块分割 350

19.2 迭代一游客浏览商品 351

19.2.1 本阶段迭代的目标 351

19.2.2 本阶段页面概述 352

19.2.3 商品的数据模型和数据库设计 354

19.2.4 实现步骤 354

19.3 迭代二用户管理 361

19.3.1 本阶段迭代的目标 361

19.3.2 本阶段页面概述 362

19.3.3 用户数据模型和数据库设计 364

19.3.4 实现步骤 364

19.4 迭代三购物车管理 373

19.4.1 本阶段的迭代目标 373

19.4.2 本阶段页面概述 374

19.4.3 购物车的功能需求和设计实现 378

19.4.4 实现步骤 379

19.5 迭代四后台管理员功能 386

19.5.1 本阶段的迭代目标 386

19.5.2 本阶段页面概述 388

19.5.3 实现步骤 390

19.6 小结 398

第20章 网络文件管理系统(Struts 2+Hibernate+FreeMarker) 399

20.1 项目概述 399

20.1.1 网络文件管理系统概况 399

20.1.2 网络文件管理系统需求分析 400

20.1.3 网络文件管理系统业务建模 401

20.1.4 项目功能模块分割 401

20.2 迭代一实现上传、下载、删除文件 402

20.2.1 本阶段迭代的目标 402

20.2.2 本阶段页面概述 403

20.2.3 文件的数据模型 406

20.2.4 实现步骤 406

20.3 迭代二添加用户管理 418

20.3.1 本阶段迭代的目标 418

20.3.2 本阶段页面概述 419

20.3.3 用户以及用户空间的数据模型 424

20.3.4 实现步骤 425

20.4 迭代三添加消息处理,备忘录管理 441

20.4.1 本阶段迭代的目标 441

20.4.2 本阶段页面概述 442

20.4.3 消息和备忘录的数据模型 447

20.4.4 实现步骤 447

20.5 迭代四添加管理员功能 457

20.5.1 本阶段迭代的目标 457

20.5.2 本阶段页面概述 457

20.5.3 管理员的数据模型 459

20.5.4 实现步骤 459

20.6 小结 466

第21章 基于Struts 2和Ajax的网上购书系统(Struts 2+Hibernate+Ajax+FreeMarker) 467

21.1 项目概述 467

21.1.1 购书系统概况 467

21.1.2 购书系统需求分析 468

21.1.3 购书系统业务建模 468

21.1.4 项目功能模块分割 468

21.2 迭代一用户登录,书籍浏览 469

21.2.1 本阶段迭代目标 469

21.2.2 本阶段页面概述 470

21.2.3 本阶段数据模型 472

21.2.4 实现步骤 474

21.3 迭代二用户购书 485

21.3.1 本阶段迭代目标 485

21.3.2 本阶段页面概述 486

21.3.3 实现步骤 487

21.4 迭代三管理员登录,用户信息查看 492

21.4.1 本阶段迭代目标 492

21.4.2 本阶段页面概述 493

21.4.3 本阶段数据模型 496

21.4.4 实现步骤 496

21.5 迭代四管理员添加书籍以及添加用户 505

21.5.1 本阶段迭代目标 505

21.5.2 本阶段页面概述 505

21.5.3 实现步骤 509

21.6 小结 513