第1篇 开发工具及框架概述 2
第1章 开发前奏 2
1.1 Java Web应用概述 2
1.1.1 Java Web应用程序基础:HTTP协议 2
1.1.2 Java Web容器(Servlet+JavaBean+JSP) 3
1.1.3 两种模式:Model 1模式和Model 2模式 4
1.1.4 MVC设计思想 5
1.2 配置开发环境 6
1.2.1 下载工具包JDK 7
1.2.2 安装工具包JDK 8
1.2.3 下载服务器Tomcat 9
1.2.4 安装服务器Tomcat 10
1.2.5 下载开发环境MyEclipse 12
1.2.6 安装开发环境MyEclipse 12
1.2.7 下载数据库服务器MySQL 13
1.2.8 安装数据库服务器MySQL 14
1.2.9 下载数据库服务器Oracle 15
1.2.10 安装数据库服务器Oracle 17
1.2.11 安装数据库服务器Oracle客户端 18
1.3 基础技术简单简介 20
1.3.1 Servlet服务器端编程 20
1.3.2 关于Servlet程序的编写 21
1.3.3 JSP主流网站开发技术 25
1.3.4 JSP的一些基本语法 27
1.3.5 JavaBean组件技术 29
1.3.6 JavaBean的属性——简单属性 30
1.3.7 JavaBean的属性——复杂属性 31
1.4 核心框架初步认识 32
1.4.1 实现了MVC模式的Structs框架 32
1.4.2 无侵入性的Spring框架 34
1.4.3 简单灵活的Guice框架 35
1.4.4 实现持久化的Hibernate框架 36
1.4.5 实现JPQL语言的JPA框架 37
1.4.6 实现数据映射器的iBATIS框架 38
1.4.7 用于开发服务器端用户界面的JSF框架 39
1.4.8 实现了异步交换的AJAX框架 40
1.5 小结 41
第2章 MyEclipse开发工具对各种框架的支持 42
2.1 使用JSP的两种模式 42
2.1.1 开发环境MyEclipse对模式1的支持 42
2.1.2 开发环境MyEclipse对模式2的支持 43
2.2 Struts框架的实现 45
2.2.1 下载和分析Struts 1.x框架包 45
2.2.2 用MyEclipse实现Struts 1.x框架环境 46
2.2.3 用MyEclipse实现Struts 1.x项目 47
2.2.4 分析Struts 1.x框架 52
2.2.5 用MyEclipse实现Struts 2.x框架环境 53
2.2.6 用MyEclipse实现Struts 2.x项目 55
2.2.7 分析Struts 2.x框架 57
2.3 Hibernate框架的实现 58
2.3.1 下载和了解Hibernate框架 59
2.3.2 用MyEclipse实现Hibernate框架环境 59
2.3.3 MyEclipse对Hibernate框架支持——关系数据库到对象映射 62
2.3.4 Hibernate框架中经常用到的工具类 65
2.4 JPA框架的实现 69
2.4.1 用MyEclipse实现JPA框架环境 69
2.4.2 MyEclipse对JPA框架支持——添加实体 71
2.4.3 MyEclipse对JPA框架支持——单个类转成JPA实体 72
2.5 Spring框架的实现 75
2.5.1 用MyEclipse实现Spring框架环境 75
2.5.2 用MyEclipse实现Spring项目 77
2.5.3 MyEclipse对Spring框架方面的支持 79
2.6 JSF框架的实现 81
2.6.1 用MyEclipse实现JSF框架环境 81
2.6.2 用MyEclipse实现JSF框架项目 82
2.7 AJAX框架的实现 85
2.7.1 用MyEclipse实现AJAX 85
2.7.2 分析AJAX技术 90
2.8 使用JDBC连接数据库 90
2.8.1 JDBC的基本概念 90
2.8.2 JDBC的基本步骤 92
2.9 小结 94
第3章 实现各种框架的集成 95
3.1 Spring框架与其他框架的集成原理 95
3.1.1 依赖查找方式实现Spring与Struts集成 95
3.1.2 Action注入方式实现Spring与Struts集成 99
3.1.3 Spring集成Hibernate——事务代理功能 101
3.2 实现SSH三种框架环境集成 105
3.2.1 配置数据库字符集体 105
3.2.2 集成Hibernate 106
3.2.3 集成Spring框架 107
3.2.4 集成Struts 1.x框架 109
3.3 实现Spring与Struts 2.x集成 110
3.3.1 关于Spring框架的插件 110
3.3.2 Spring与Struts 2.x框架集成 112
3.4 实现Spring、Struts 2.x和Hibernate框架集成 114
3.4.1 Hibernate与Struts 2.x框架集成 114
3.4.2 Struts 2.x和JPA框架集成 119
3.4.3 Struts 2.x、Spring和Hibernate框架集成 124
3.5 小结 126
第2篇 典型模块开发 128
第4章 在线文本编辑器(FCKeditor) 128
4.1 分析FCKeditor在线文本编辑器 128
4.1.1 FCKeditor在线文本编辑器功能描述 128
4.1.2 下载FCKeditor在线文本编辑器相关软件 131
4.1.3 FCKeditor在线文本编辑器目录简介和开发文档 133
4.2 FCKeditor在线文本编辑器初级应用 135
4.2.1 利用JavaScript语言调用FCKeditor在线文本编辑器 135
4.2.2 利用JSP标签调用FCKeditor在线文本编辑器 138
4.3 FCKeditor在线文本编辑器常用配置 139
4.3.1 修改配置文件 139
4.3.2 自定义工具栏 141
4.3.3 设置常用的字体和键行为 143
4.3.4 修改插入表情图标 144
4.4 FCKeditor在线文本编辑器高级应用 146
4.4.1 FCKeditor在线文本编辑器上传文件配置 146
4.4.2 FCKeditor在线文本编辑器上传文件配置——中文乱码(一) 148
4.4.3 FCKeditor在线文本编辑器上传文件配置——中文乱码(二) 150
4.4.4 FCKeditor在线文本编辑器配置上传文件类型 152
4.5 小结 154
第5章 验证模块(JSP+Servlet+JSValidation) 155
5.1 表单基础 155
5.1.1 表单的基础内容 155
5.1.2 表单必备功能 157
5.1.3 表单功能具体实现 159
5.2 客户端表单验证框架 161
5.2.1 下载客户端表单验证框架(JSValidation) 162
5.2.2 JSValidation表单验证框架使用 162
5.3 服务器端验证 165
5.3.1 校验输入字符工具类 165
5.3.2 处理输入字符类 166
5.4 实现图形验证码 168
5.4.1 为什么要使用验证码技术 168
5.4.2 图形验证码的具体实现 169
5.5 避免重复提交功能 172
5.5.1 客户端避免重复提交 172
5.5.2 服务器端避免重复提交 175
5.6 缩略加水印图像 179
5.6.1 缩略加水印图像应用框架分析 179
5.6.2 实现缩略加水印工具类 180
5.6.3 对图像实现缩略加水印 181
5.7 小结 183
第6章 网络硬盘(JSP+Servlet) 184
6.1 网络硬盘功能原理 184
6.1.1 网络硬盘框架分析 184
6.1.2 网络硬盘功能描述 184
6.2 网络硬盘功能具体实现——浏览磁盘和显示文件信息 188
6.2.1 实现相关工具类 188
6.2.2 浏览磁盘 191
6.2.3 浏览磁盘里的文件夹和文件 192
6.2.4 显示文件夹和文件的内容 193
6.3 网络硬盘功能具体实现——操作文件夹和文件 195
6.3.1 删除文件夹和文件 195
6.3.2 查找文件夹和文件 196
6.3.3 创建文件夹和文件 197
6.4 小结 199
第7章 网站统计模块(JSP+Servlet) 200
7.1 网站统计模块原理 200
7.1.1 网站统计模块框架分析 200
7.1.2 网站统计功能描述 200
7.2 实现显示欢迎信息功能 202
7.2.1 登录页面 202
7.2.2 设置用户信息 203
7.2.3 获取用户信息 204
7.3 指点迷津——Cookie知识 206
7.3.1 Cookie基础知识 206
7.3.2 关于Cookie的响应头字段和请求头字段 208
7.3.3 支持Cookie相关类 209
7.4 统计访问量功能 209
7.4.1 读取和保存访问量 209
7.4.2 存在缺陷的获取访问量 210
7.4.3 改进获取访问量 211
7.5 指点迷津——Session知识 212
7.5.1 Session基础知识 212
7.5.2 支持Session相关类 213
7.6 统计在线人数功能 215
7.6.1 统计在线人数 215
7.6.2 多学两招——关于监听器分类 216
7.6.3 多学两招——关于监听器类 217
7.7 小结 219
第8章 网络购物车(JSP+Servlet+JavaBean) 220
8.1 网络购物车原理 220
8.1.1 网络购物车结构框架分析 220
8.1.2 网络购物车功能业务分析 221
8.2 实现网络购物车功能 222
8.2.1 浏览商品网页 222
8.2.2 商品和购物车 223
8.2.3 添加商品到购物车 225
8.2.4 显示购物车商品信息 228
8.3 小结 230
第9章 搜索引擎(Lucene+Web Spider) 231
9.1 关于搜索引擎的基本概念 231
9.1.1 关于搜索引擎描述 231
9.1.2 关于搜索引擎基础知识 232
9.2 网络蜘蛛(Web Spider) 233
9.2.1 关于网络蜘蛛的描述 233
9.2.2 关于网络蜘蛛的基础知识 234
9.2.3 如何创建Web Spider程序 235
9.3 下载和分析Lucene全文搜索组件 236
9.3.1 下载Lucene全文搜索组件 236
9.3.2 Lucene全文搜索组件目录简介和开发文档 238
9.4 初步使用Lucene全文搜索组件 240
9.4.1 创建索引 240
9.4.2 实现搜索 242
9.5 新闻搜索引擎具体实现 244
9.5.1 为新闻搜索引擎创建索引工具类 245
9.5.2 为新闻搜索引擎实现搜索功能 247
9.6 小结 250
第10章 在线网上支付(JSP+Servlet+JavaBean) 251
10.1 在线网上支付原理 251
10.1.1 在线网上支付结构框架分析 251
10.1.2 在线网上支付功能分析 252
10.1.3 在线网上支付功能的基础知识 252
10.2 在线网上支付功能工具类 254
10.2.1 加密工具类 254
10.2.2 生成hmac码工具类 255
10.2.3 读取配置信息工具类 257
10.3 发出支付请求过程 257
10.3.1 发出支付请求 258
10.3.2 处理请求数据 259
10.4 接受支付返回过程 261
10.4.1 接受支付响应 261
10.4.2 显示银行支付结果 263
10.5 小结 264
第11章 Java Web邮件发送系统(JSP+Servlet+JavaBean) 265
11.1 Java Web邮件发送系统原理 265
11.1.1 Java Web邮件发送结构框架分析 265
11.1.2 JavaWeb邮件发送功能描述 265
11.2 下载邮件相关jar包 270
11.2.1 下载JavaMail组件 271
11.2.2 下载JAF组件 273
11.2.3 下载Cos上传文件组件 275
11.3 普通方式电子邮件的发送 277
11.3.1 发送简单邮件页面 277
11.3.2 处理发送简单邮件 277
11.4 HTML方式电子邮件的发送 279
11.4.1 发送选择类型邮件页面 279
11.4.2 处理发送各种类型邮件 280
11.5 携带附件电子邮件的发送 281
11.5.1 发送携带附件邮件页面 281
11.5.2 处理发送附件邮件 282
11.6 多学两招——关于邮件的基础知识 284
11.6.1 关于邮件的基础概念 284
11.6.2 手工发送和接收电子邮件 286
11.6.3 设置客户端软件 289
11.6.4 邮件内容的组织结构 290
11.7 小结 293
第12章 网络留言板(JSP+Servlet+JavaBean) 294
12.1 网络留言板原理 294
12.1.1 网络留言板结构框架分析 294
12.1.2 网络留言板功能描述 294
12.2 添加留言 297
12.2.1 添加留言页面 297
12.2.2 处理留言的内容 298
12.3 浏览留言 300
12.3.1 获取所有留言内容 301
12.3.2 浏览留言页面 302
12.3.3 多学两招——转向的两种方法 303
12.4 管理留言 303
12.4.1 用户登录页面和登录失败页面 304
12.4.2 对管理员的登录处理 305
12.4.3 利用过滤器实现资源管理 306
12.4.4 管理留言内容 308
12.4.5 管理留言所需要的页面 311
12.4.6 多学两招——过滤器介绍 314
12.4.7 多学两招——过滤器开发和部署 315
12.5 使用DAO模式网络留言板 317
12.5.1 DAO模式介绍 317
12.5.2 针对留言内容MessageBook 318
12.5.3 针对留言内容Admin 321
12.6 小结 323
第13章 网络留言板续——Oracle数据库 324
13.1 连接数据库——JDBC驱动程序 324
13.1.1 利用Java到数据库协议方式连接数据库 324
13.1.2 利用Java到本地API方式连接数据库 325
13.1.3 利用JDBC-ODBC方式连接数据库 327
13.2 数据库连接池 330
13.2.1 数据库连接池简介 330
13.2.2 数据库连接池原理 331
13.2.3 配置和使用服务器Tomcat连接池 334
13.3 Commons DbUJtils组件 337
13.3.1 下载Commons DbUtils组件 337
13.3.2 Commons DbUtils架包使用 339
13.3.3 利用Commons DbUtils工具类操作数据库 342
13.4 小结 345
第14章 AJAX技术JQuery框架的经典应用 346
14.1 JQuery框架的简单应用 346
14.1.1 关于AJAX框架 346
14.1.2 JQuery框架的下载和配置 347
14.1.3 JQuery框架的简单使用 348
14.2 利用JQuery框架实现的经典运用 351
14.2.1 级联菜单 351
14.2.2 窗口的淡入、淡出 353
14.2.3 可编辑边框 355
14.3 实现仿Google Suggest功能 357
14.3.1 效果演示 357
14.3.2 数据库设计 358
14.3.3 实现查询数据库 360
14.3.4 实现对请求处理 361
14.3.5 Google Suggest功能的客户端页面 362
14.4 Google Suggest功能的相关JavaScript代码 362
14.4.1 判断按键的JavaScript代码——GiveOptions()方法 363
14.4.2 解析数据的JavaScript代码——parseMessage()方法 364
14.4.3 创建提示框的JavaScript代码——BuildList()方法 365
14.4.4 查找匹配项的JavaScript代码——MakeMatches()方法 366
14.4.5 其他JavaScript方法 367
14.5 小结 368
第15章 在线文件上传和下载(Struts 2.x+FileUpload) 369
15.1 在线文件上传和下载模块原理 369
15.1.1 在线文件上传和下载结构框架分析 369
15.1.2 在线文件上传和下载功能描述 370
15.2 文件上传组件FileUpload 372
15.2.1 下载文件上传组件(FileUpload) 372
15.2.2 了解和管理Components-FileUpload组件及其相关组件 374
15.3 初步使用文件上传组件(Components-FileUpload) 376
15.3.1 选择所要上传的文件 377
15.3.2 显示上传文件 377
15.4 单文件的上传 379
15.4.1 选择所要上传的文件 379
15.4.2 实现文件的上传功能 380
15.4.3 关于FileUpload拦截器的配置 381
15.5 多文件的上传 383
15.5.1 选择所要上传的文件 383
15.5.2 实现文件的上传功能 385
15.5.3 实现文件下载 387
15.6 小结 388
第16章 网上投票系统(Struts 2.x+JFreeChart) 389
16.1 网上投票系统原理 389
16.1.1 网上投票系统框架分析 389
16.1.2 网上投票系统功能描述 389
16.2 图表组件JFreeChart 391
16.2.1 下载图表组件(JFreeChart)和相关组件 391
16.2.2 了解和管理图表组件(JFreeChart)文档 394
16.3 初步使用图表组件(JFreeChart) 397
16.3.1 Java应用项目实现饼形图形 397
16.3.2 Java Web项目实现饼形图形 398
16.4 实现网上投票系统 401
16.4.1 实现投票页面 401
16.4.2 处理投票结果 402
16.5 小结 405
第17章 商业银行网上账户管理系统(Struts 2.x) 406
17.1 商业银行网上账户管理系统简述 406
17.1.1 商业银行网上账户管理系统设计原理 406
17.1.2 商业银行网上账户管理系统的基本原理 407
17.2 商业银行网上账户管理系统前期准备 412
17.2.1 设计数据库 412
17.2.2 关于Struts 2.0的准备 414
17.3 商业银行网上账户管理系统具体实现——持久层 415
17.3.1 关于userInfo表操作 415
17.3.2 关于trade表操作 418
17.4 商业银行网上账户管理系统具体实现——业务层 421
17.4.1 关于数据库表userinfo的业务层 421
17.4.2 关于数据库表trade的业务层 423
17.4.3 多学两招——关于Facade(门面)模式 424
17.5 商业银行网上账户管理系统具体实现——表示层 425
17.5.1 关于登录和退出的Action——LoginAction 426
17.5.2 关于账户信息的Action——UserAction 428
17.5.3 关于交易信息的Action——TradeAction 433
17.6 商业银行网上账户管理系统具体实现——工具类、校验器及拦截器 438
17.6.1 工具类 438
17.6.2 校验器和拦截器 439
17.7 小结 440
第18章 Hibernate分页系统(Hibernate 3.0) 441
18.1 Hibernate分页系统原理 441
18.1.1 Hibernate分页系统结构框架分析 441
18.1.2 Hibernate分页系统功能描述 441
18.2 封装JavaBean的Commons-BeanUtils组件 443
18.2.1 下载Commons-BeanUtils组件 443
18.2.2 了解Commons-Beanutils组件 445
18.2.3 初步学习Commons-BeanUtils组件——创建JavaBean 446
18.2.4 初步学习Commons-BeanUtils组件——使用相关API 447
18.3 关于Hibernate框架中一些通用类 451
18.3.1 操作常见对象的通用类 451
18.3.2 实现各种方法的模板类 453
18.3.3 关于页面信息类 457
18.4 实现Hibernate分页系统前期准备 457
18.4.1 数据库设计 458
18.4.2 关于Hibernate 30框架的准备 458
18.4.3 由反向工程生成的领域模型对象 459
18.5 关于Hibernate分页系统的具体实现 460
18.5.1 dept模型对应的持久层 460
18.5.2 dept模型对象对应的服务层 461
18.6 关于Hibernate分页系统的表示层 463
18.6.1 实现页面的跳转 463
18.6.2 Hibernate分页系统所涉及的页面 465
18.7 多学两招——分页标签 466
18.7.1 下载Displaytag分页标记库 466
18.7.2 了解和配置Displaytag标记库 468
18.7.3 下载和配置Pager标记库 469
18.8 小结 471
第19章 生成报表(Struts 2.x+Hibernate+JXL) 472
19.1 生成报表原理 472
19.1.1 生成报表框架分析 472
19.1.2 生成报表功能描述 472
19.2 下载JXL组件 473
19.2.1 下载JXL组件 474
19.2.2 安装和配置JXL报表组件 474
19.3 生成报表前期准备 475
19.3.1 数据库设计 475
19.3.2 关于Struts 2.x的准备 479
19.3.3 关于Hibernate 3.0的准备 480
19.4 生成报表具体开发——持久层和服务层 481
19.4.1 关于orderinfo表的持久层 481
19.4.2 关于orderitem表的持久层 482
19.4.3 实现生成报表服务层 484
19.5 生成报表具体开发——表示层 488
19.5.1 实现页面跳转Action类 488
19.5.2 关于生成报表的页面 489
19.5.3 实现生成报表工具类 491
19.6 多学两招——其他报表插件 492
19.6.1 报表插件——Jakarta POI 492
19.6.2 报表插件——JasperReport 493
19.7 小结 495
第20章 数据格式转换(Struts 2.x+Hibernate+Dom4j) 496
20.1 关于XML文件基础知识 496
20.1.1 为什么要使用XML文件 496
20.1.2 数据格式转换功能的描述 497
20.2 下载Dom4J 498
20.2.1 下载Dom4J组件 498
20.2.2 安装和配置Dom4J组件 499
20.2.3 Dom4J组件的简单使用——解析XML文件 500
20.2.4 Dom4J组件的简单使用——创建XML文件 503
20.3 数据格式转换功能前期准备 505
20.3.1 数据库设计 505
20.3.2 关于Struts 2.x的准备 507
20.3.3 关于Hibernate 3.0的准备 508
20.4 数据格式转换功能具体开发 509
20.4.1 关于Dept表的持久层 509
20.4.2 关于数据格式转换服务层 510
20.4.3 实现页面跳转Action类 513
20.4.4 关于数据格式转换功能的页面 515
20.4.5 实现生成报表工具类 517
20.5 多学两招——其他操作XML文件组件 517
20.5.1 下载SAX类库 517
20.5.2 安装和配置SAX组件 518
20.5.3 SAX组件的简单使用——解析XML文件 519
20.6 小结 522
第21章 用户维护功能(Struts 2.x+iBATIS) 523
21.1 用户维护功能 523
21.1.1 用户维护模块结构框架分析 523
21.1.2 用户维护模块功能描述 523
21.2 关于用户维护基础知识——iBATIS框架 525
21.2.1 下载和配置iBATIS框架 525
21.2.2 iBATIS框架的深入了解——SQL Map数据库配置文件 526
21.2.3 iBATIS框架的深入了解——SQL Map关于Java类映射文件 529
21.3 用户维护系统具体实现 533
21.3.1 设计数据库 533
21.3.2 创建和配置iBATIS映射文件 533
21.3.3 设计用户维护系统的DAO层 535
21.3.4 实现页面跳转的Action类 538
21.3.5 设计表示层的相关页面 540
21.4 小结 541
第22章 用户登录模块(Struts 2.x+Guice+国际化) 542
22.1 用户登录概述 542
22.1.1 用户登录结构框架分析 542
22.1.2 用户登录功能描述 542
22.2 关于用户登录的基础知识——国际化资源 544
22.2.1 初步使用国际化 544
22.2.2 深入了解国际化——全局资源文件 549
22.2.3 深入了解国际化——类资源文件 552
22.2.4 深入了解国际化——包资源文件 554
22.3 关于用户登录的基础知识——Guice框架 555
22.3.1 下载和配置Guice 555
22.3.2 Guice框架的简单使用 556
22.4 用户登录的具体实现 558
22.4.1 登录页面 558
22.4.2 实现用户验证——处理请求过程 559
22.4.3 控制页面跳转Action类及其相关页面 561
22.5 小结 562
第3篇 项目案例实战 564
第23章 在线音乐管理系统(AJAX+JSP+Struts 2.x) 564
23.1 在线音乐管理系统简述 564
23.1.1 在线音乐管理系统描述——后台系统 564
23.1.2 在线音乐管理系统描述——前台系统 567
23.2 在线音乐管理系统前期准备 578
23.2.1 设计数据库 578
23.2.2 关于Struts 2.x框架的准备 581
23.2.3 在线音乐管理系统——工具类 582
23.3 在线音乐管理系统具体实现——超级管理员操作 585
23.3.1 实现超级管理员注册功能 585
23.3.2 实现超级管理员登录功能 588
23.3.3 实现修改当前超级管理员密码功能 589
23.3.4 实现删除注册用户功能 592
23.3.5 实现删除上传音乐功能 593
23.3.6 操作友情链接 595
23.4 在线音乐管理系统具体实现——注册用户操作 598
23.4.1 实现用户注册功能 599
23.4.2 实现注册用户登录和退出功能 601
23.4.3 实现在线音乐上传 604
23.4.4 实现音乐信息更新 606
23.4.5 实现添加评论功能 608
23.4.6 实现音乐盒功能 610
23.4.7 实现短信发送 617
23.4.8 实现短信删除 619
23.4.9 实现点歌功能 621
23.5 小结 624
第24章 数据汇聚系统(Struts 2.x+Spring+iBATIS) 625
24.1 数据汇聚系统简述 625
24.1.1 数据汇聚系统概述 625
24.1.2 数据汇聚系统描述 626
24.2 数据汇聚系统简述 627
24.2.1 设计数据库——远程数据库 628
24.2.2 设计数据库——本地数据库 629
24.3 关于iBATIS框架的一些文件 631
24.3.1 关于持久化类(ParameterObject和UserInfoVo)映射文件 631
24.3.2 关于Englishdata数据库配置文件 633
24.3.3 关于Japandata数据库配置文件 634
24.3.4 关于Americaldata数据库配置文件 635
24.4 数据汇聚系统具体实现 638
24.4.1 DAO层设计——资源数据库(Englishdata和Japandata) 638
24.4.2 DAO层设计——本地数据库 641
24.4.3 Spring框架配置信息 643
24.4.4 业务层逻辑设计 646
24.5 数据汇聚系统具体实现——表示层 647
24.5.1 处理请求Action类 647
24.5.2 各种功能页面 649
24.6 小结 652
第25章 投票管理系统(Struts 2.x+Spring+Hibernate) 653
25.1 投票管理系统简述 653
25.1.1 投票管理系统功能描述 653
25.1.2 投票管理系统操作流程 654
25.2 投票管理系统前期准备 657
25.2.1 数据库设计 658
25.2.2 关于Struts 2.x的准备 659
25.2.3 关于Hibernate 3.0的准备 661
25.2.4 关于Spring 2.0的准备 662
25.3 投票管理系统的具体实现——领域模型层 663
25.3.1 由反向工程生成的领域模型对象 663
25.3.2 程序员设计领域对象 668
25.4 投票管理系统的具体实现——持久层 669
25.4.1 Admin模型对象对应的持久层 669
25.4.2 Vote模型对象对应的持久层 671
25.4.3 Voter模型对象对应的持久层 673
25.4.4 VoteContext模型对象对应的持久层 674
25.5 投票管理系统的具体实现——业务层 676
25.5.1 Admin模型对象对应的业务层 676
25.5.2 Vote模型对象对应的业务层 678
25.5.3 Voter模型对象对应的业务层 680
25.5.4 VoteContext模型对象对应的业务层 681
25.6 关于管理员表示层 683
25.6.1 关于管理员的登录和退出 683
25.6.2 创建新管理员 686
25.6.3 更改管理员密码 687
25.7 关于创建投票表示层 689
25.7.1 创建新的投票主题 690
25.7.2 创建投票选项的投票选项 691
25.8 关于管理和查找投票表示层 693
25.8.1 管理投票——查看投票信息 693
25.8.2 管理投票——添加投票选项 695
25.8.3 管理投票——删除投票选项 696
25.8.4 管理投票——更新投票主题和投票选项 697
25.8.5 查找投票模块 699
25.9 关于实现投票操作表示层 702
25.9.1 实现投票操作——显示投票主题和投票选项 702
25.9.2 实现投票操作——实现投票处理 704
25.9.3 实现投票操作——显示投票结果 705
25.10 小结 707
第26章 权限管理系统(Struts 2.x+Spring+JPA) 708
26.1 权限管理系统简述 708
26.1.1 权限管理系统的基本原理 708
26.1.2 权限管理系统描述——管理员 709
26.1.3 权限管理系统描述——其他用户 713
26.2 权限管理系统前期准备 715
26.2.1 设计数据库 715
26.2.2 关于Struts 2.0的准备 719
26.2.3 关于Spring 2.5的准备 721
26.2.4 关于JPA的准备 721
26.3 权限管理系统具体实现——关联表操作 723
26.3.1 关于role function关联表操作 723
26.3.2 关于user role关联表操作 726
26.4 权限管理系统具体实现——模块操作 728
26.4.1 模块操作的持久层 728
26.4.2 模块操作的业务层 730
26.4.3 模块操作的表现层 731
26.5 权限管理系统具体实现——功能操作 735
26.5.1 功能操作的持久层 735
26.5.2 功能操作的业务层 737
26.5.3 功能操作的表现层 739
26.6 权限管理系统具体实现——角色操作 743
26.6.1 角色操作的持久层 744
26.6.2 角色操作的业务层 745
26.6.3 角色操作的表现层 748
26.7 权限管理系统具体实现——用户操作 752
26.7.1 用户操作的持久层 752
26.7.2 用户操作的业务层 754
26.7.3 用户操作的表现层 757
26.8 小结 765
第27章 商业银行设备巡检系统(Struts 2.x+Spring+Hibernate) 766
27.1 商业银行设备巡检系统概述 766
27.1.1 需求分析 766
27.1.2 业务分析——系统管理关于超级管理用户操作 766
27.1.3 业务分析——系统管理关于银行员工操作 771
27.1.4 业务分析——系统管理关于巡检工操作 775
27.1.5 业务分析——系统管理关于设备巡检 778
27.1.6 业务分析——设备报修中关于银行报修 780
27.1.7 业务分析——设备报修中关于巡检工维修 782
27.2 商业银行设备巡检系统前期准备 784
27.2.1 设计数据库 784
27.2.2 关于Struts 2.0的准备 788
27.2.3 关于Spring 2.0的准备 790
27.2.4 关于Hibernate 3.0的准备 790
27.3 商业银行设备巡检系统具体实现——系统管理应用 792
27.3.1 系统管理的领域模型层 792
27.3.2 系统管理的持久层 808
27.3.3 系统管理的业务层 829
27.3.4 系统管理的表示层 854
27.4 商业银行设备巡检系统具体实现——设备报修管理 902
27.4.1 设备报修管理的领域模型层 903
27.4.2 设备报修管理的持久层 905
27.4.3 设备报修管理的业务层 906
27.4.4 设备报修管理的表示层 908
27.5 商业银行设备巡检系统具体实现——设备巡检管理 911
27.5.1 设备巡检管理的持久层 912
27.5.2 设备巡检管理的业务层 914
27.5.3 设备巡检管理的表示层 916
27.6 多学两招——关于PostgreSQL数据库 918
27.6.1 下载PostgreSQL数据库管理系统 918
27.6.2 安装PostgreSQL数据库 920
27.7 小结 922