标题：Java Web开发指南
基本信息
作者： 张晶  丛书名： 网站开发指南
出版社：清华大学出版社
ISBN：9787302217626
上架时间：2010-1-22
出版日期：2010 年1月
开本：16开
页码：469
版次：1-1
内容简介
目前从网络上的招聘信息可以看到，市场对java web开发人员有着很大的需求，许多企事业单位都在寻求这样的人才。从嵌入式系统的小游戏到一些企业级应用系统，都有java web技术的身影。尽管java web如此优秀，学习这门语言的过程却很生涩。本书就致力于带领读者更轻松、更愉快地进入java web世界的大门。
本书根据实际开发经验编写，不拘泥于深奥的理论，从最基础的知识点讲起。书中以一个全新的面孔介绍了java web的基本概念和开发经验，包括jsp、xml、jmail、ejb 3.0和mvc模式等，并为读者准备了一个大型项目，引领读者体验java web技术的强大与界面的美观。
本书非常适合对java web感兴趣，思维活跃，期望以一种轻松愉快的心态进行学习的读者。本书完全不需要读者有任何编程方面的知识，只要有兴趣，本书就是最合适的选择。
目录
第1章  jsp技术简介        1
1.1  认识http协议        1
1.1.1  http请求        1
1.1.2  http响应        3
1.2  客户端web程序设计介绍        3
1.2.1  css        4
1.2.2  javascript        4
1.2.3  vbscript        4
1.2.4  动态html        4
1.2.5  java applet（java小应用程序）        5
1.2.6  浏览器技术的作用与局限性        5
1.3  jsp与其他动态网页技术        6
1.3.1  jsp的开发背景及发展历史        6
1.3.2  cgi        7
1.3.3  asp        7
1.3.4  php        8
1.4  jsp的运行原理与优点        8
1.5  jsp的运行环境        9
1.6  运行第一个jsp应用程序        10
1.6.1  安装jdk        10
.1.6.2  安装tomcat        11
1.6.3  编写并发布运行jsp文件        12
1.7  小结        13
第2章  jsp语法        14
2.1  jsp容器与jsp页面生命周期        14
2.1.1  jsp容器        14
2.1.2  jsp页面生命周期        14
2.2  jsp注释        15
2.3  jsp声明        17
2.4  jsp指令        17
2.4.1  定义jsp文件的全局属性——page
指令        17
2.4.2  包含一个文件——include指令        19
2.5  jsp动作        19
2.5.1  包含一个静态文件或其他web组件
的结果——include动作        20
2.5.2  重定向资源——forward动作        22
2.5.3  声明使用的java插件——plugin动作        23
2.5.4  声明使用一个javabean——usebean
动作        24
2.5.5  设置javabean的属性值——setproperty
动作        26
2.5.6  获取javabean的属性值——getproperty
动作        27
2.6  java小程序段（scriptlet）        27
2.7  jsp表达式        28
2.8  小结        29
第3章  jsp内置对象        30
3.1  jsp内置对象介绍        30
3.2  处理客户请求信息——request对象        31
3.2.1  request对象        31
3.2.2  访问请求参数        32
3.2.3  在请求作用域中管理属性        35
3.2.4  获取cookie        36
3.2.5  访问请求报头        39
3.2.6  访问请求行元素        40
3.2.7  访问安全信息        42
3.2.8  访问国际化信息        42
3.3  控制服务器的响应信息——response
对象        43
3.3.1  response对象        44
3.3.2  输出缓冲        44
3.3.3  设置响应报头        47
3.3.4  重定向资源        48
3.4  管理客户的会话——session对象        48
3.4.1  url重写        48
3.4.2  安装cookie        49
3.4.3  ssl会话        49
3.4.4  会话服务        49
3.5  web应用全局对象——application
对象        50
3.5.1  访问应用程序初始化参数        51
3.5.2  管理应用程序环境属性        51
3.5.3  支持资源的提取        51
3.5.4  requestdispatcher方法        52
3.5.5  其他实用方法        52
3.6  当前页面的引用——page变量        53
3.6.1  契约服务        53
3.6.2  访问服务器小程序信息        53
3.7  servlet的配置信息——config
对象        54
3.8  向客户输出数据——out对象        54
3.8.1  管理响应缓冲        55
3.8.2  写入内容        55
3.9  异常处理——exception变量        55
3.10  小结        56
第4章  servlet技术介绍        57
4.1  servlet简介        57
4.2  快速体验servlet——servlet的简单
例子        58
4.3  servlet的生命周期        60
4.3.1  加载servlet——servlet容器负责        61
4.3.2  初始化servlet——init()方法        61
4.3.3  请求处理——service()方法        62
4.3.4  终结servlet——destroy()方法        62
4.3.5  卸载servlet        62
4.4  httpservlet        62
4.5  web程序的异常处理        64
4.5.1  java的异常处理        64
4.5.2  web程序中的异常处理        65
4.6  小结        66
第5章  javabeans与jsp技术        67
5.1  javabeans技术简介        67
5.2  javabeans规范        67
5.2.1  javabeans构造方法        68
5.2.2  javabeans属性        68
5.2.3  javabeans事件        70
5.3  javabeans在jsp技术中的应用        71
5.3.1  快速体验在jsp中使用javabeans        71
5.3.2  尝试使用javabeans        73
5.3.3  不共享的javabeans——作用域为
页面        76
5.3.4  在请求域内共享javabeans        77
5.3.5  在会话域内共享javabeans        77
5.3.6  在应用程序域内共享javabeans        77
5.3.7  javabeans在不同的范围内共享时的
效果        77
5.4  使用javabeans实现购物车        79
5.5  小结        84
第6章  jsp文件操作        85
6.1  快速体验jsp文件操作——使用jsp
读取文本文件的简单例子        85
6.2  java文件操作基础介绍        88
6.2.1  使用文件类——file类        88
6.2.2  使用字节流        89
6.2.3  使用字符流        90
6.3  文件的上传        90
6.3.1  组件安装        91
6.3.2  commons-fileupload文件上传介绍        91
6.3.3  文件上传的例子        92
6.4  小结        97
第7章  jsp web应用的会话管理        98
7.1  jsp的会话管理机制简介        98
7.1.1  session简介        98
7.1.2  一个利用会话跟踪的例子        99
7.2  会话跟踪实现方法介绍        101
7.2.1  使用隐藏表单字段        101
7.2.2  使用cookie跟踪session        101
7.3  在tomcat中配置session        105
7.3.1  为单个web应用配置session        106
7.3.2  为所有的web应用配置session        107
7.4  小结        107
第8章  jsp 2.4技术        108
8.1  jsp 2.4的表达式语言        108
8.2  jsp 2.4新加指令介绍        111
8.2.1  提示错误信息——[jsp:fallback]        111
8.2.2  动态产生xml元素——
[jsp:element]        111
8.2.3  定义属性——[jsp:attribute]        112
8.2.4  定义元素体——[jsp:body]        113
8.2.5  对标签体内容求值——
[jsp:dobody]        113
8.2.6  调用标签片段——[jsp:invoke]        114
8.2.7  指定文件类型声明——[jsp:output]        114
8.2.8  定义标签库的标准元素和命名
空间——[jsp:root]        115
8.2.9  封装模板数据——[jsp:text]        116
8.3  jsp 2.4简单标签扩展        116
8.3.1  使用simpletag接口        116
8.3.2  使用标签文件        119
8.4  小结        122
第9章  自定义jsp标签        123
9.1  自定义jsp标签实例        123
9.2  自定义jsp标签相关的api        126
9.2.1  bodytagsupport类        126
9.2.2  simpletagsupport类        128
9.2.3  标签处理中处理异常        129
9.3  标签描述文件        129
9.3.1  taglib标签库元素        130
9.3.2  tag标签元素        130
9.3.3  attribute元素        131
9.3.4  在web应用中使用自定义标签        132
9.3.5  打包自定义标签库        132
9.4  相关问题        133
9.5  小结        133
第10章  jsp标准标签库（jstl）        134
10.1  jstl简介        134
10.2  el表达式语言        135
10.2.1  限制了作用域的变量        136
10.2.2  隐含对象        137
10.2.3  存取器        140
10.2.4  运算符        141
10.3  使用jstl的核心标签库        145
10.3.1  通用标签        145
10.3.2  流程控制标签        149
10.3.3  循环迭代标签        150
10.3.4  导入文件和url操作标签        151
10.4  小结        152
第11章  关系数据库与jdbc基础        153
11.1  使用jsp和jdbc开发第一个
数据库应用        153
11.1.1  准备数据库驱动程序和数据库        153
11.1.2  编写访问数据库的jsp文件        154
11.1.3  发布访问数据库的web应用        157
11.2  关系数据库与sql语言介绍        158
11.2.1  表操作（定义、删除和修改）        158
11.2.2  查询操作        160
11.2.3  数据更新（插入、修改）        161
11.3  jdbc基础知识        163
11.3.1  jdbc简介        163
11.3.2  jdbc两层模型和三层模型        163
11.3.3  指定数据库的url连接串        164
11.3.4  jdbc api介绍        164
11.4  通过jdbc访问数据库        167
11.4.1  使用jdbc-odbc桥连接数据库        168
11.4.2  使用本地协议纯java驱动程序
连接数据库        172
11.4.3  使用preparedstatement接口发送
sql语句——数据录入例子        187
11.4.4  使用jdbc的数据库事务操作——
银行转账        190
11.5  jsp与数据库连接池        194
11.6  小结        195
第12章  jsp与java mail web应用        196
12.1  java mail的简单实例        196
12.1.1  准备邮件服务器        196
12.1.2  编写程序        196
12.2  java mail api简介        198
12.3  创建可发送附件的java mail web
应用        199
12.3.1  java mail web应用的程序分析        199
12.3.2  邮件账户管理        200
12.3.3  包含文件        203
12.3.4  登录邮件服务器        203
12.3.5  管理邮件夹中的邮件        207
12.3.6  查看邮件        211
12.3.7  写新邮件        215
12.3.8  退出系统        218
12.4  小结        218
第13章  xml在jsp中的应用        220
13.1  xml与jsp        220
13.1.1  什么是xml        220
13.1.2  xml的特点        222
13.1.3  xml与jsp的工具介绍        222
13.2  使用dom解析接口操作xml
文件        223
13.2.1  dom api        223
13.2.2  使用dom读写xml文件
例子        225
13.3  使用jdom操作xml文件        228
13.3.1  jdom的安装与简介        228
13.3.2  使用jdom读写xml文件        229
13.4  使用sax操作xml文件        231
13.5  使用xslt给xml定制样式        232
13.6  小结        234
第14章  使用servlet过滤器和监听器        235
14.1  servlet过滤器简介        235
14.2  实现一个servlet过滤器        236
14.2.1  编写实现类的程序        236
14.2.2  配置发布servlet过滤器        238
14.3  servletrequest和servletresponse的
包装类        239
14.4  用servlet过滤器过滤文本信息        239
14.4.1  输出流管理类        239
14.4.2  编写servlet过滤器        240
14.4.3  编写jsp和servlet文件        243
14.5  servlet监听器简介        247
14.5.1  监听服务器servletcontext
对象        247
14.5.2  监听客户会话        248
14.5.3  监听客户请求        249
14.6  小结        249
第15章  jsp web应用的安全性        250
15.1  jsp/servlet容器认证        250
15.1.1  使用基本认证（basic）        252
15.1.2  使用摘要认证（digest）        253
15.1.3  使用基于表单的认证（form）        253
15.2  为web应用配置使用ssl        255
15.2.1  ssl简介        255
15.2.2  在tomcat中为web应用配置
使用ssl        257
15.3  小结        259
第16章  tomcat容器的jsp
特色应用        260
16.1  使用tomcat阀        260
16.1.1  客户访问日志阀        260
16.1.2  远程地址过滤器        262
16.1.3  远程主机过滤器        262
16.1.4  客户请求记录器        263
16.1.5  单点登录阀        263
16.2  使用基于jndi的应用程序开发
（介绍tomcat的jndi资源）        264
16.2.1  使用通用javabean资源        264
16.2.2  使用javamail sessions资源        267
16.2.3  使用jdbc data sources        268
16.3  小结        268
第17章  在jsp中使用hibernate
实现数据持久化        269
17.1  快速体验jsp结合hibernate——jsp和hibernate结合的例子        269
17.1.1  hibernate简介        269
17.1.2  准备数据库和数据库连接池        271
17.1.3  编写持久化类        274
17.1.4  编写hibernate配置文件        276
17.1.5  编写映射文件        277
17.1.6  编写jsp应用文件        278
17.2  hibernate技术介绍        282
17.2.1  映射定义        282
17.2.2  hibernate的类型        285
17.2.3  hibernate事务        286
17.3  hibernate配置        286
17.3.1  可编程的配置方式        287
17.3.2  xml配置文件方式        289
17.4  小结        290
第18章  jsp web应用的设计与实践        291
18.1  可维护性与可扩展性设计        291
18.1.1  可维护性        291
18.1.2  可扩展性        292
18.2  jsp web应用的设计        292
18.2.1  以页面为中心的设计
（model 1）        292
18.2.2  mvc设计模式（model 2）        293
18.3  web应用的架构框架        294
18.3.1  struts        295
18.3.2  webwork2        295
18.3.3  spring        295
18.3.4  javaserver faces        295
18.4  web应用的测试        295
18.5  日志        296
18.5.1  log4j        296
18.5.2  jakarta commons logging        296
18.6  小结        296
第19章  mvc模式实现——struts 2        297
19.1  快速体验struts 2——使用struts 2
框架的简单应用实例        297
19.1.1  下载struts 2所需要的包与搭建
struts 2开发环境        297
19.1.2  实例介绍        299
19.1.3  创建model组件        299
19.1.4  创建view组件        300
19.1.5  编写配置文件        301
19.1.6  发布运行web应用        302
19.2  struts 2框架的体系结构与
运行原理        303
19.2.1  从组件来看struts 2的工作
原理        303
19.2.2  struts 2配置文件struts-config.xml        305
19.3  struts 2组件        307
19.3.1  actionservlet控制器类        307
19.3.2  action组件        308
19.3.3  action mapping        309
19.3.4  actionform bean获取表单数据        309
19.4  小结        310
第20章  mvc模式实现——webwork 2        311
20.1  快速体验webwork 2——使用webwork 2框架的简单应用实例        311
20.1.1  webwork 2简介        311
20.1.2  建立webwork 2开发环境        312
20.1.3  实例介绍        312
20.1.4  开发构成类和jsp文件        312
20.2  webwork 2组件介绍        318
20.2.1  action介绍        319
20.2.2  actioncontext介绍        319
20.2.3  servletdispatcher介绍        320
20.2.4  interceptor（拦截器）框架        321
20.2.5  验证框架        322
20.3  小结        323
第21章  javaserver faces技术        324
21.1  快速体验javaserver faces——使用 javaserver faces开发的简单例子        324
21.1.1  javaserver faces技术介绍        324
21.1.2  建立javaserver faces开发环境        325
21.1.3  编写相关类和文件        325
21.1.4  编译发布web应用        330
21.2  javaserver faces的生命周期        331
21.3  jsf定义的组件        332
21.3.1  管理bean        333
21.3.2  验证器和转换器        333
21.4  javaserver faces导航规则        335
21.5  小结        336
第22章  jsp结合ejb开发j2ee应用        337
22.1  快速体验ejb——jsp结合ejb
开发的简单例子        337
22.1.1  j2ee简介（j2ee体系结构）        337
22.1.2  jboss入门        338
22.1.3  一个简单的j2ee应用介绍        339
22.1.4  开发ejb组件        339
22.1.5  在web应用中访问ejb组件        342
22.1.6  在jboss中发布运行j2ee应用        344
22.2  ejb技术介绍        345
22.2.1  ejb组件介绍        345
22.2.2  实体ejb        346
22.2.3  会话ejb        347
22.2.4  在web应用中访问ejb组件的
过程        347
22.3  小结        348
第23章  使用log4j进行web应用的
日志管理与程序调试        349
23.1  快速体验log4j——使用log4j的
简单例子        349
23.1.1  log4j简介        349
23.1.2  建立log4j环境        349
23.1.3  使用log4j的web应用        350
23.2  log4j关键类和接口介绍        352
23.2.1  logger：日志写出器        352
23.2.2  level：日志级别        353
23.2.3  appender接口        353
23.2.4  layout类：日志输出格式        354
23.2.5  log4j的logger继承性        355
23.3  配置log4j        356
23.3.1  使用java properties配置        356
23.3.2  配置log4j.xml        359
23.3.3  log4j配置实现过程        363
23.4  web应用中使用log4j的例子        363
23.5  小结        365
第24章  使用xdoclet简化jsp的
web开发        366
24.1  快速体验xdoclet——使用xdoclet
的简单例子        366
24.1.1  xdoclet介绍        366
24.1.2  安装配置xdoclet        366
24.1.3  java源程序和添加注释        366
24.2  xdoclet生成配置文件过程
介绍        371
24.3  小结        373
第25章  使用ant管理jsp web应用        374
25.1  快速体验ant——使用ant的
简单例子        374
25.1.1  ant简介        374
25.1.2  安装配置ant        374
25.1.3  编写应用类文件        375
25.2  编写build.xml文件        379
25.2.1  project元素        380
25.2.2  target元素        380
25.2.3  task元素        381
25.2.4  property元素        381
25.2.5  常用ant task        382
25.3  用ant发布复杂的web应用        383
25.3.1  init目标        383
25.3.2  compile目标        383
25.3.3  copyjar目标        384
25.3.4  使用ant发布web应用        384
25.4  小结        385
第26章  使用eclipse开发jsp        386
26.1  eclipse基本配置        386
26.1.1  安装eclipse        386
26.1.2  安装多国语言包插件        387
26.2  使用eclipse的lomboz插件
开发jsp        388
26.2.1  lomboz插件介绍        388
26.2.2  安装配置lomboz插件        388
26.2.3  安装tomcat插件        390
26.2.4  使用lomboz插件开发jsp程序        391
26.2.5  使用lomboz插件调试jsp程序        394
26.3  小结        394
第27章  餐费管理系统        395
27.1  项目需求分析        395
27.1.1  需求概述        395
27.1.2  功能模块需求分析        395
27.1.3  用例需求分析        396
27.1.4  员工就餐账户注册用例        397
27.1.5  员工刷卡就餐用例        397
27.1.6  员工查询账户余额用例        398
27.1.7  就餐账户充值用例        398
27.1.8  员工账户管理用例        399
27.2  系统分析和设计        399
27.2.1  数据库分析和设计        399
27.2.2  业务逻辑层和dao层设计        402
27.2.3  系统的包        404
27.2.4  系统的mvc结构        404
27.3  系统的开发环境        406
27.3.1  struts在eclipse中的配置        406
27.3.2  spring在eclipse中的配置        407
27.3.3  hibernate在eclipse中的配置        407
27.3.4  hibernate synchronizer在eclipse中的
配置        408
27.4  在eclipse中用struts建立视图        408
27.4.1  jsp页面        408
27.4.2  actionform        409
27.5  在eclipse中使用struts建立jsp
页面        410
27.5.1  建立模板页面        410
27.5.2  建立tiles-defs.xml        411
27.6  在eclipse中使用struts建立页面的
不变部分        413
27.6.1  建立banner页面和菜单导航页面        413
27.6.2  建立版权页面        413
27.7  在eclipse中使用struts实现
国际化        414
27.8  在eclipse中使用struts建立页面的
可变部分        416
27.8.1  员工就餐刷卡页面        417
27.8.2  员工刷卡成功页面        417
27.8.3  员工账户注册页面        418
27.8.4  员工账户查询页面        420
27.8.5  管理员登录页面        421
27.8.6  管理员管理账户页面        422
27.8.7  修改员工账户页面        423
27.8.8  员工账户充值页面        423
27.9  在eclipse中用struts建立控制
部分        424
27.9.1  配置web.xml        424
27.9.2  配置struts-config.xml        426
27.9.3  建立action        430
27.10  自定义的action        430
27.10.1  处理员工注册请求的action        430
27.10.2  处理员工其他请求的action        432
27.10.3  处理管理员操作请求的action        434
27.11  在eclipse中使用struts进行错误
处理        438
27.12  在eclipse中建立模型部分        440
27.12.1  员工账户类        440
27.12.2  员工类        443
27.12.3  管理员类        444
27.13  在eclipse中建立业务逻辑类        445
27.13.1  员工业务逻辑        446
27.13.2  管理员业务逻辑        449
27.14  在eclipse中使用hibernate
建立dao类        452
27.14.1  建立对象-关系映射文件        452
27.14.2  建立dao类        455
27.15  在eclipse中使用spring装配
各个组件        459
27.15.1  struts和spring的集成        459
27.15.2  建立applicationcontext.xml        460
27.16  在eclipse中使用junit进行
单元测试        464
27.16.1  测试accountdao        464
27.16.2  测试employeedao        465
27.16.3  测试employeeserviceimpl        466
27.16.4  测试managerserviceimpl        467
27.17  小结        469