第1部分JSP基础 3
第1章 走进JSP 3
1.1 JSP概述 4
1.1.1什么是JSP 4
1.1.2项目成功案例 4
1.1.3如何学好JSP 6
1.2 JSP技术特征 6
1.2.1跨平台 7
1.2.2业务代码分离 7
1.2.3组件重用 7
1.2.4继承Java Servlet功能 7
1.2.5预编译 7
1.3 Java Web服务器 7
1.3.1 Tomcat服务器 8
1.3.2 Resin服务器 8
1.3.3 JBoss服务器 8
1.3.4 WebSphere服务器 8
1.3.5 WebLogic服务器 8
1.4 MySQL数据库的下载与安装 8
1.4.1下载MySQL 9
1.4.2安装与配置MySQL 10
1.4.3下载并安装GUI工具 12
1.5 MyEclipse的下载、安装与配置 12
1.5.1下载MyEclipse 12
1.5.2安装MyEclipse 14
1.5.3配置MyEclipse 16
1.5.4修改JSP编辑器编码格式 16
1.5.5设置JSP文件关联编辑器 17
1.5.6配置外置服务器 17
1.6开发第一个JSP程序 18
1.6.1编写JSP程序 19
1.6.2运行JSP程序 20
1.7 JSP常用资源 21
1.7.1 JSP资源 21
1.7.2 Eclipse资源 21
1.8本章小结 22
第2章 掌握JSP语法 23
2.1了解JSP的基本构成 24
2.2指令标签 24
2.2.1 page指令 25
2.2.2.include指令 28
2.2.3 taglib指令 29
2.3嵌入Java代码 29
2.3.1代码片段 29
2.3.2声明 31
2.3.3 JSP表达式 31
2.4注释 31
2.4.1 HTML注释 31
2.4.2 JSP注释 32
2.4.3动态注释 32
2.4.4代码注释 32
2.5 JSP动作标签 33
2.5.1 <jsp:include> 33
2.5.2 <jsp:forward> 35
2.5.3 <jsp:param> 36
2.5.4操作JavaBean的动作标签 36
2.6实战 37
2.7本章小结 38
2.8实战练习 38
第3章JSP内置对象 39
3.1 JSP内置对象的概述 40
3.2 request对象 40
3.2.1获取请求参数值 40
3.2.2解决中文乱码 41
3.2.3获取Form表单的信息 41
3.2.4获取请求客户端信息 43
3.2.5在作用域中管理属性 44
3.2.6 cookie管理 45
3.2.7获取浏览器使用的语言 47
3.3 response对象 47
3.3.1重定向网页 47
3.3.2处理HTTP文件头 47
3.3.3设置输出缓冲 48
3.4 session对象 48
3.4.1创建及获取session信息 49
3.4.2从会话中移除指定的绑定对象 50
3.4.3销毁session 50
3.4.4会话超时的管理 50
3.4.5 session对象的应用 51
3.5 application对象 53
3.5.1访问应用程序初始化参数 54
3.5.2管理应用程序环境属性 54
3.6 out对象 55
3.6.1管理响应缓冲 55
3.6.2向客户端输出数据 55
3.7其他内置对象 56
3.7.1获取会话范围的pageContext对象 56
3.7.2读取web.xml配置信息的config对象 56
3.7.3应答或请求的page对象 57
3.7.4获取异常信息的exception对象 57
3.8实战 58
3.8.1 application实现网页计数器 58
3.8.2在提交表单时加入验证码 59
3.9本章小结 61
3.10实战练习 62
第4章Servlet技术 63
4.1 Servlet基础 64
4.1.1 Servlet与Servlet容器 64
4.1.2 Servlet技术特点 64
4.1.3 Servlet技术功能 65
4.1.4 Servlet与JSP的区别 65
4.1.5 Servlet代码结构 66
4.1.6简单的Servlet程序 67
4.2 Servlet开发 68
4.2.1 Servlet的创建 68
4.2.2 Servlet配置的相关元素 69
4.3 Servlet API编程常用的接口和类 70
4.3.1 Servlet接口 70
4.3.2 ServletConfig接口 71
4.3.3 HttpServletRequest接口 71
4.3.4 HttServletResponse接口 73
4.3.5 GenericServlet类 74
4.3.6 HttServlet类 74
4.4 Servlet过滤器 75
4.4.1过滤器概述 75
4.4.2 Filter API 75
4.4.3过滤器的配置 77
4.4.4过滤器典型应用 78
4.5实战 80
4.5.1 JSP与Servlet实现用户注册 80
4.5.2过滤非法文字 84
4.6本章小结 87
4.7实战练习 88
第5章JSP使用Model2实现登录模块 89
5.1 JavaBean 90
5.1.1 JavaBean简介 90
5.1.2 <jsp:userBean> 90
5.1.3 <jsp:setProperty> 92
5.1.4 <jsp:getProperty> 94
5.1.5 JavaBean的作用域 96
5.2 Model1模式 97
5.3 Model2模式 100
5.3.1 MVC原理 100
5.3.2 JSP+Servlet+JavaBean 101
5.4两种模式的比较 102
5.5登录模块的实现 103
5.5.1模块介绍 103
5.5.2关键技术 104
5.5.3数据库设计 105
5.5.4 JavaBean设计 105
5.5.5实现过程 109
5.6运行项目 115
5.7本章小结 116
5.8实战练习 116
第2部分 高级技术 119
第6章EL表达式语言 119
6.1 EL概述 120
6.1.1使用EL表达式的前提条件 120
6.1.2 EL表达式的基本语法 121
6.1.3 EL表达式的特点 121
6.2 EL表达式的存取范围 122
6.3 EL表达式的运算符 122
6.3.1存取数据运算符“[]”和“.” 122
6.3.2算术运算符 123
6.3.3关系运算符 124
6.3.4逻辑运算符 124
6.3.5 empty运算符 125
6.3.6条件运算符 126
6.3.7运算符的优先级 126
6.4 EL表达式中的保留字 126
6.5 EL表达式中的隐含对象 127
6.5.1 pageContext对象的应用 127
6.5.2 param和paramValues对象的应用 127
6.5.3 header和headerValues对象的应用 128
6.5.4访问作用域范围的隐含对象 129
6.5.5 cookie对象的应用 129
6.5.6 initParam对象的应用 129
6.6实战 130
6.6.1应用EL表达式访问JavaBean的属性 130
6.6.2 应用EL表达式显示投票结果 131
6.7本章小结 134
6.8实战练习 134
第7章JSTL核心标签库 135
7.1 JSTL简介 136
7.1.1下载和配置JSTL 136
7.1.2 JSTL标签库简介 137
7.2表达式标签 138
7.2.1 <c:out>输出标签 138
7.2.2 <c:set>设置标签 139
7.2.3 <c:remove>移除标签 141
7.2.4 <c:catch>捕获异常标签 142
7.3条件标签 142
7.3.1 <c:if>标签 143
7.3.2 <c:choose>、<c:when>和<c:otherwise>标签 144
7.4循环标签 146
7.4.1 <c:forEach>标签 146
7.4.2 <c:forTokens>标签 148
7.5 URL操作标签 149
7.5.1 <c:import>文件导入标签 149
7.5.2 <c:redirect>重定向标签 151
7.5.3 <c:url>生成URL地址标签 152
7.5.4 <c:param>参数传递标签 153
7.6实战 154
7.6.1应用JSTL显示数据库中的商品信息 154
7.6.2 JSTL在电子商城网站中的应用 159
7.7本章小结 162
7.8实战练习 162
第8章 结合JSTL与EL技术开发通讯录模块 163
8.1模块概述 164
8.1.1功能描述 164
8.1.2系统流程 164
8.1.3主页预览 165
8.2关键技术 165
8.3数据库设计 166
8.4实现过程 167
8.4.1搭建开发环境 167
8.4.2编写数据库连接及操作的公共类 167
8.4.3实现用户注册 170
8.4.4实现用户登录 173
8.4.5实现通讯录模块主页 176
8.4.6实现添加联系人 180
8.4.7实现修改联系人 183
8.4.8实现删除联系人 186
8.5运行项目 186
8.6本章小结 188
第9章JSP操作XML 189
9.1 XML简介 190
9.1.1 XML文档结构 190
9.1.2 XML语法要求 191
9.1.3为XML文档中的元素定义属性 192
9.1.4 XML的注释 192
9.1.5处理字符数据 192
9.2 dom4j概述 194
9.2.1 dom4j简介 194
9.2.2 dom4j的下载与配置 195
9.3创建XML文档 196
9.3.1创建XML文档对象 196
9.3.2创建根节点 197
9.3.3添加注释 197
9.3.4添加属性 198
9.3.5创建子节点 198
9.3.6设置节点的内容 198
9.3.7设置编码 199
9.3.8设置输出格式 199
9.3.9输出XML文档 200
9.4解析XML文档 201
9.4.1构建XML文档对象 201
9.4.2获取根节点 201
9.4.3获取子节点 202
9.5修改XML文档 203
9.5.1修改节点 203
9.5.2删除节点 204
9.6实战 204
9.6.1保存公告信息到XML文件 204
9.6.2对保存到XML文件中的公告信息进行管理 207
9.7本章小结 214
9.8实战练习 214
第10章JavaScript脚本语言 215
10.1了解JavaScript 216
10.1.1什么是JavaScript 216
10.1.2 JavaScript的主要特点 216
10.1.3 JavaScript与Java的区别 216
10.2在Web页面中使用JavaScript 217
10.2.1在页面中直接嵌入JavaScript 217
10.2.2链接外部JavaScript 218
10.3 JavaScript语言基础 219
10.3.1 JavaScript的语法 219
10.3.2 JavaScript中的关键字 220
10.3.3了解JavaScript的数据类型 220
10.3.4变量的定义及使用 222
10.3.5运算符的应用 224
10.4流程控制语句 226
10.4.1 if条件判断语句 227
10.4.2 switch多路分支语句 229
10.4.3 for循环语句 231
10.4.4 while循环语句 233
10.4.5 do...while循环语句 234
10.4.6 break语句 235
10.4.7 continue语句 236
10.5使用正则表达式 236
10.5.1正则表达式的语法 236
10.5.2创建正则表达式(RegExp)对象 238
10.5.3使用RegExp对象执行模式匹配 239
10.6函数 242
10.6.1函数的定义 242
10.6.2函数的调用 243
10.6.3匿名函数 244
10.7事件和事件处理程序 244
10.7.1什么是事件和事件处理程序 244
10.7.2 JavaScript的常用事件 245
10.7.3事件处理程序的调用 245
10.8常用对象 246
10.8.1 String对象 247
10.8.2 Math对象 251
10.8.3 Date对象 252
10.8.4 Window对象 255
10.9 DOM技术 259
10.9.1 DOM概述 259
10.9.2 DOM的分层结构 259
10.9.3遍历文档 260
10.9.4获取文档中的指定元素 262
10.9.5操作文档 263
10.9.6与DHTML相对的DOM 265
10.10实战 266
10.10.1检测表单元素是否为空 266
10.10.2屏蔽鼠标右键和键盘相关事件 267
10.11本章小结 270
10.12实战练习 270
第11章Ajax实现用户注册模块 271
11.1 Ajax简介 272
11.1.1什么是Ajax 272
11.1.2 Ajax的开发模式 272
11.1.3 Ajax的优点 273
11.2Ajax使用的技术 273
11.2.1 XMLHttpRequest 273
11.2.2 JavaScript脚本语言 276
11.2.3 DOM 276
11.2.4 XML语言 277
11.2.5 CSS 277
11.3 Ajax工作流程 277
11.3.1发送请求 277
11.3.2处理服务器响应 279
11.3.3一个完整的实例 280
11.4 Ajax重构 282
11.5 Ajax开发需要注意的几个问题 286
11.5.1浏览器兼容性问题 286
11.5.2安全问题 287
11.5.3性能问题 287
11.5.4中文编码问题 288
11.6开发用户注册模块 288
11.6.1模块概述 288
11.6.2系统流程 289
11.6.3关键技术 291
11.6.4数据库设计 291
11.6.5实现过程 291
11.7实战 303
11.8本章小结 307
11.9实战练习 307
第3部分 框架技术 311
第12章Struts框架 311
12.1 MVC设计模式 312
12.2 Struts体系结构 313
12.2.1 Struts介绍 313
12.2.2 Struts体系结构 313
12.3 Struts工作流程 313
12.4 struts-confiig.xml配置文件 315
12.4.1 data-sources元素 315
12.4.2 form-beans元素 316
12.4.3 global-exceptios元素 316
12.4.4 global-forwards元素 317
12.4.5 controller元素 318
12.4.6 action-mappings元素 319
12.4.7 message- resources元素 320
12.4.8 plug-in元素 321
12.4.9配置多应用模块 321
12.5视图组件ActionForm 323
12.5.1视图概述 323
12.5.2创建ActionForm 324
12.5.3配置动态ActionForm 326
12.6控制器组件Action 331
12.6.1控制器组件类 331
12.6.2 org.apache.actions.Action类 332
12.6.3 org.apache.struts.actions.DispatchAction类 334
12.6.4 org.apache.struts.actions.ForwardAction 336
12.7 Struts标签库 337
12.7.1 HTML标签库 338
12.7.2 Bean标签库 340
12.7.3 Logic标签库 342
12.8实战 343
12.9本章小结 346
12.10实战练习 346
第13章 应用Struts实现网站流量统计模块 347
13.1模块概述 348
13.1.1功能结构 348
13.1.2系统流程 348
13.1.3逻辑分层结构 349
13.2技术要点 350
13.2.1绘制条形统计图 350
13.2.2获取客户端信息 352
13.2.3 iframe浮动框架 352
13.2.4获取百分比 353
13.3数据库设计 353
13.4实现过程 355
13.4.1获取系统时间 355
13.4.2配置数据源 356
13.4.3编写与数据表对应的Java Bean 356
13.4.4首页设计 357
13.4.5日时段分析 364
13.4.6月回访统计 371
13.4.7日客户端分析 378
13.5运行项目 382
13.6本章小结 382
第14章Hibernate框架 383
14.1 Hibernate简介 384
14.1.1理解ORM原理 384
14.1.2 Hibernate的结构体系 384
14.1.3 Hibernate实例状态 386
14.1.4 Hibernate的适用性 387
14.2 Hibernate入门 387
14.2.1 Hibernate包的下载与放置 387
14.2.2 Hibernate配置文件解析 388
14.2.3编写持久化类 389
14.2.4编写映射文件 390
14.2.5编写Hibernate的初始化类 392
14.3自动建表技术 394
14.4 Hibernate持久化对象 395
14.4.1添加数据 396
14.4.2查询数据 397
14.4.3删除数据 400
14.4.4修改数据 401
14.5 Hibernate缓存及延迟加载 403
14.5.1一级缓存 403
14.5.2二级缓存 404
14.5.3 Lazy策略 406
14.6实战 408
14.6.1用户注册 408
14.6.2修改数据 412
14.7本章小结 416
14.8实战练习 416
第15章Hibernate高级应用 417
15.1关联关系映射 418
15.1.1单向关联与双向关联 418
15.1.2多对一单向关联映射 418
15.1.3多对一双向关联映射 420
15.1.4一对一主键关联映射 422
15.1.5一对一外键关联映射 424
15.1.6多对多关联映射 425
15.1.7级联操作在关联中的使用 426
15.2继承映射 428
15.2.1类继承树映射成一张表 428
15.2.2每个子类映射成一张表 430
15.2.3每个具体类映射成一张表 431
15.2.4多态查询 432
15.3 HQL检索方式 432
15.3.1 HQL的基本语法 433
15.3.2实体对象与动态实例化对象查询 433
15.3.3条件查询与别名的使用 434
15.3.4 HQL语句的动态赋值 435
15.3.5对象导航查询 435
15.3.6排序查询 436
15.3.7聚合函数 436
15.3.8分组操作 437
15.3.9对日期时间的处理 437
15.3.10联合查询 438
15.3.11子查询 439
15.4实战 440
15.4.1多对一数据的添加与查询 440
15.4.2模糊查询药品信息 445
15.4.3内连接查询图书信息 447
15.5本章小结 450
15.6实战练习 450
第16章JSP+Hibernate实现留言模块 451
16.1实例说明 452
16.1.1实现功能 452
16.1.2系统流程 453
16.1.3逻辑分层结构 453
16.2技术要点 454
16.2.1确定实体及关系 454
16.2.2 ThreadLocal的使用 454
16.3实现过程 455
16.3.1搭建开发环境 455
16.3.2实体类与映射 457
16.3.3注册模块 461
16.3.4用户登录 464
16.3.5实现留言 466
16.3.6分页查看留言信息 469
16.3.7管理员相关操作 475
16.4运行项目 480
16.5本章小结 480
第17章Spring框架 481
17.1 Spring简介 482
17.2下载与配置 482
17.2.1下载 482
17.2.2配置 483
17.3 Spring IoC 484
17.3.1控制反转 484
17.3.2依赖注入的3种类型 486
17.3.3接口注入 487
17.3.4设值注入 487
17.3.5构造注入 488
17.3.6选择合适的注入方式 489
17.4 Spring AOP 489
17.4.1 AOP简介 489
17.4.2 AOP术语 490
17.4.3 Spring对AOP的支持 490
17.5 Spring Bean工厂 490
17.5.1 BeanFactory简介 490
17.5.2装配一个Bean 491
17.5.3为Bean命名 491
17.5.4 Bean的赋值标签 491
17.5.5自动装配 496
17.6 Spring的高级应用 496
17.6.1使用BeanFactory管理Bean 496
17.6.2使用ApplicationContext管理Bean 497
17.6.3 ApplicationContext访问资源文件 497
17.6.4 ApplicationContext输出国际化信息 498
17.6.5 Web应用中自动加载ApplicationContext 498
17.7 Spring持久化操作 499
17.7.1 JdbcTemplate与Spring数据源 500
17.7.2在Spring中配置DBCP数据库连接池 500
17.7.3 Spring整合Hibernate 501
17.8实战 504
17.8.1使用Spring对员工表进行增、删、改、查操作 504
17.8.2使用Spring整合Hibernate操作商品库存表 512
17.9本章小结 518
17.10实战练习 518
第18章Spring MVC框架 519
18.1 Spring MVC简介 520
18.1.1 Spring MVC的特点 520
18.1.2 Spring MVC的不足 520
18.2 Spring MVC中的组件 520
18.2.1核心控制器 521
18.2.2业务控制器 521
18.2.3控制器映射 521
18.2.4模型与视图 521
18.2.5视图解析器 521
18.2.6 Command对象 521
18.3 Spring MVC核心控制器 522
18.4 Spring MVC控制器映射 522
18.4.1配置BeanNameUrlHandlerMapping 523
18.4.2配置SimpleUrlHandlerMapping 523
18.4.3多个控制器映射 524
18.5 Spring MVC业务控制器 524
18.5.1简单控制器 524
18.5.2参数映射控制器 527
18.5.3文件名映射控制器 527
18.5.4表单控制器 528
18.5.5 Spring编码过滤器解决中文乱码 531
18.5.6多动作控制器 531
18.6视图解析器 534
18.6.1视图解析器介绍 534
18.6.2配置InternalResourceViewResolver 535
18.7常见的其他第三方MVC框架 535
18.7.1 Struts 536
18.7.2 JSF 536
18.7.3 Struts2 536
18.8 Spring整合Struts 536
18.8.1通过 ActionSupport类整合 536
18.8.2通过DelegatingRequestProcessor类整合 539
18.8.3通过DelegatingActionProxy类整合 541
18.9实战 542
18.9.1使用Spring MVC编写在线通讯录 542
18.9.2使用Spring整合Struts编写多页面用户注册模块 549
18.10本章小结 553
18.11实战练习 553
第19章Spring+Hibernate实现用户管理模块 555
19.1系统功能模块设计 556
19.2数据库设计 556
19.3技术要点 557
19.4文件夹结构设计 557
19.5实体映射 558
19.5.1部门信息 558
19.5.2用户信息 559
19.6设计操作数据库的接口与类 560
19.6.1部门信息DAO接口IDeptInfoDao 560
19.6.2部门信息DAO实现类DeptInfoDao 560
19.6.3用户信息DAO接口IUserInfoDao 561
19.6.4用户信息DAO实现类IUserInfoDao 561
19.7登录子模块 562
19.7.1登录子模块控制器 563
19.7.2登录子模块JSP页面 563
19.8部门管理子模块 566
19.8.1部门管理子模块控制器 567
19.8.2部门管理子模块JSP页面 569
19.9用户管理子模块 570
19.9.1用户管理子模块文件上传类 571
19.9.2用户管理子模块控制器类 572
19.9.3用户管理子模块JSP页面 574
19.10配置文件 577
19.10.1在src文件内编写log4j.properties 577
19.10.2创建Spring配置文件applicationContext.xml 578
19.10.3配置web.xml 580
19.11运行项目 581
19.12本章小结 581
第4部分 实用技术 585
第20章 数据分页 585
20.1 SQL Server数据库分页 586
20.1.1获取前n条记录 586
20.1.2获取分页数据 587
20.2 MySQL数据库分页 587
20.2.1 LIMIT函数 588
20.2.2获取分页数据 588
20.2.3获取总页数 589
20.3 Hibernate分页 589
20.3.1 HQL分页 589
20.3.2 QBC分页 590
20.4分页商品信息查询模块 590
20.4.1模块介绍 590
20.4.2系统流程 591
20.4.3关键技术 591
20.4.4数据库设计 592
20.4.5实现过程 592
20.5实战 599
20.6本章小结 604
20.7实战练习 604
第21章 文件上传与下载 605
21.1上传组件比较 606
21.1.1 jspSmartUpload文件上传组件 606
21.1.2 commons-fileUpload文件上传组件 606
21.2 commons-fiileUpload上传组件 606
21.3 Struts文件上传 609
21.3.1 <html:file>标签 609
21.3.2 ActionForm Bean编写 610
21.3.3实现文件上传 610
21.4 Spring文件上传 611
21.4.1配置文件上传解析器 611
21.4.2编写文件上传表单页面 611
21.4.3编写文件上传控制器 612
21.5文件下载 613
21.5.1组件下载 613
21.5.2输出流方式下载 615
21.6 MP3乐园 618
21.6.1模块介绍 618
21.6.2系统流程 619
21.6.3关键技术 619
21.6.4数据库设计 620
21.6.5公共类编写 620
21.6.6实现系统登录 622
21.6.7实现用户注册 624
21.6.8实现文件上传 626
21.6.9文件下载 629
21.7本章小结 630
21.8实战练习 630
第22章PDF与Excel组件 631
22.1 PDF概述 632
22.1.1 PDF的优点 632
22.1.2 PDF阅读工具 632
22.2 PDF组件简介 632
22.2.1 iText组件简介 632
22.2.2 iText组件的获取 633
22.2.3 iText组件关键类简介 633
22.3应用iText组件生成PDF文档 634
22.3.1创建Document对象的实例 634
22.3.2获取PdfWrite实例 635
22.3.3为PDF文档添加内容 635
22.3.4字体与中文字符的显示 635
22.3.5创建表格 636
22.3.6插入图像 638
22.4应用PDFBox组件解析PDF文档 638
22.4.1 PDFBox组件简介 639
22.4.2 PDFBox组件的获取 639
22.4.3应用PDFBox组件解析PDF文档 639
22.5 Excel组件简介 640
22.5.1常用Excel组件 640
22.5.2 POI组件简介 640
22.5.3 POI组件的获取 640
22.5.4 POI组件关键类简介 641
22.6应用POI组件读写Excel文档 641
22.6.1创建一个Excel文档 642
22.6.2设置字体样式 642
22.6.3合并单元格 643
22.6.4读取Excel文档内容 645
22.7实战 646
22.7.1将数据库中的内容导出为PDF文档 646
22.7.2将数据库中的内容导出为Excel文档 649
22.8本章小结 651
22.9实战练习 651
第23章E-mail组件 653
23.1电子邮件协议简介 654
23.1.1 SMTP简单邮件传输协议 654
23.1.2 POP3邮局协议 654
23.1.3 IMAP接收邮件协议 654
23.1.4 MIME邮件扩充协议 654
23.2建立Java Mail开发环境 655
23.2.1获取Java Mail API 655
23.2.2获取Java Mail API的激活框架 655
23.2.3安装和配置邮件服务器 655
23.3发送邮件的API 657
23.3.1 Session类 658
23.3.2 Message类中与发送邮件相关的方法 659
23.3.3 Address类 661
23.3.4 Authenticator类 662
23.3.5 Transport类 662
23.4接收邮件的API 664
23.4.1 Store类 664
23.4.2 Folder类 665
23.4.3 Flags类 666
23.4.4 Message类中与接收邮件相关的方法 666
23.5实战 667
23.5.1发送普通文本邮件 667
23.5.2发送HTML格式的邮件 669
23.5.3发送带附件的邮件 672
23.5.4接收已读邮件和未读邮件 675
23.6本章小结 684
23.7实战练习 684
第24章 动态图表 685
24.1 JFreeChart简介 686
24.1.1认识JFreeCart组件 686
24.1.1 JFreeChart的下载与使用 686
24.2 JFreeChart的核心对象 687
24.2.1制图对象 687
24.2.2制图工厂对象 688
24.2.3数据集合对象 688
24.2.4绘图区对象 690
24.2.5坐标轴对象 691
24.2.6图片渲染对象 693
24.3 JFreeChart的应用 693
24.3.1如何获取图片 693
24.3.2创建数据集合与JFreeChart实例 695
24.3.3图表相关属性的设置 696
24.3.4 JFreeChart内置JDBC的使用 698
24.3.5中文乱码的解决方案 701
24.4实战 702
24.4.1 JFreeChart绘制折线图 702
24.4.2 JFreeChart绘制区域图 706
24.4.3 JFreeChart绘制时序图 708
24.5本章小结 710
24.6实战练习 710
第5部分 项目实战 713
第25章 医药管理系统 713
25.1系统分析 714
25.1.1开发背景 714
25.1.2需求分析 714
25.2系统设计 714
25.2.1系统目标 714
25.2.2系统功能结构 715
25.2.3系统流程图 715
25.3软件架构 716
25.3.1逻辑分层结构设计 716
25.3.2系统文件夹组织结构 717
25.3.3实体对象设计 717
25.3.4定义ActionForm 718
25.3.5持久层结构设计 718
25.3.6业务层结构设计 719
25.3.7页面结构设计 720
25.4配置文件 721
25.4.1配置web.xml 721
25.4.2配置struts-config.xml 722
25.4.3配置hibemate.cfg.xml 725
25.5实体及映射 726
25.5.1药品实体映射 726
25.5.2药品类别实体映射 727
25.5.3销售明细实体映射 728
25.5.4用户实体映射 730
25.6 公共类设计 730
25.6.1 Hibernate过滤器 731
25.6.2 SuperDao类 733
25.6.3 BaseAction类 737
25.6.4 DeleteAction类 740
25.6.5字符串工具类 741
25.7国际化 742
25.7.1国际化资源文件 743
25.7.2国际化实现 743
25.8系统登录模块设计 744
25.9药品类别信息管理 747
25.9.1药品类别持久层设计 747
25.9.2药品类别的添加 748
25.9.3分页查看类别信息 750
25.9.4类别的修改与删除 752
25.9.5药品类别统计 753
25.10药品信息管理 755
25.10.1药品对象持久层设计 755
25.10.2药品信息的添加与修改 756
25.10.3分页查看所有药品 758
25.10.4查看药品详细信息 759
25.10.5模糊查询药品 760
25.10.6高级查询 761
25.10.7查看库存 762
25.10.8药品批量删除 763
25.11购买药品 765
25.11.1选购药品 765
25.11.2结账 766
25.12销售管理 767
25.12.1明细信息查询 768
25.12.2销售排行统计 768
25.13进货/需求管理 769
25.14系统管理 770
25.14.1添加管理员 770
25.14.2修改密码 771
25.14.3系统初始化 772
25.15 运行项目 773
25.16本章小结 773
第26章 高校学生选课系统 775
26.1系统分析 776
26.1.1需求分析 776
26.1.2可行性分析 776
26.1.3编写项目计划书 777
26.2系统设计 779
26.2.1系统功能结构 779
26.2.2系统编码规范 780
26.3项目运行环境 780
26.3.1服务器最低配置 780
26.3.2客户端最低配置 781
26.4数据库与数据表设计 781
26.5文件夹组织结构 782
26.6实体映射 782
26.6.1用户登录信息 783
26.6.2专业信息 784
26.6.3课程信息 784
26.6.4学生信息 785
26.6.5学生与课程关联信息 786
26.7设计操作数据库的接口与实现类 787
26.7.1用户登录信息DAO接口IUserLoginDao 787
26.7.2用户登录信息DAO接口实现类UserLoginDao 787
26.7.3专业信息DAO接口ISpecialtyDao 789
26.7.4专业信息DAO接口实现类 SpecialtyDao 789
26.7.5课程信息DAO接口ICourseDao 790
26.7.6课程信息DAO接口实现类CourseDao 791
26.7.7学生信息DAO接口IStuUserDao 792
26.7.8学生信息DAO接口实现类StuUserDao 793
26.8用户模块 794
26.8.1用户注册流程 794
26.8.2用户注册控制器类 795
26.8.3用户注册JSP页面 796
26.8.4用户登录流程 798
26.8.5用户登录控制器类 799
26.8.6用户登录JSP页面 800
26.8.7密码修改流程 800
26.8.8密码修改控制器类 801
26.9管理模块 802
26.9.1专业管理流程 804
26.9.2专业管理控制器类 804
26.9.3专业管理页面 805
26.9.4课程管理流程 807
26.9.5课程管理控制器类 807
26.9.6课程管理页面 809
26.9.7信息统计流程 813
26.9.8信息统计控制器类 813
26.9.9信息统计页面 817
26.9.10修改密码 819
26.9.11退出系统 820
26.10学生模块 821
26.10.1学生模块控制器类 821
26.10.2学生基本信息页面 824
26.10.3选择新课程页面 824
26.10.4查询已选课程页面 825
26.10.5课程详细信息页面 826
26.10.6修改登录密码页面 827
26.11配置文件 828
26.11.1配置web.xml文件 828
26.11.2配置struts-confiig.xml文件 829
26.11.3配置applicationContext.xml文件 831
26.12运行项目 834
26.13本章小结 834