新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论Java, J2SE, J2ME, J2EE, 以及Eclipse, NetBeans, JBuilder等Java开发环境,还有JSP, JavaServlet, JavaBean, EJB以及struts, hibernate, spring, webwork2, Java 3D, JOGL等相关技术。
    [返回] 中文XML论坛 - 专业的XML技术讨论区计算机技术与应用『 Java/Eclipse 』 → [分享]Tomcat与Java Web开发技术详解(第2版)已正式出版 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 6072 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [分享]Tomcat与Java Web开发技术详解(第2版)已正式出版 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     hongjunli 帅哥哟,离线,有人找我吗?魔羯座1978-1-20
      
      
      威望:5
      头衔:为振兴论坛而努力!
      等级:研二(中了一篇WWWC Poster)(版主)
      文章:808
      积分:7964
      门派:IEEE.ORG.CN
      注册:2006/3/9

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给hongjunli发送一个短消息 把hongjunli加入好友 查看hongjunli的个人资料 搜索hongjunli在『 Java/Eclipse 』的所有贴子 引用回复这个贴子 回复这个贴子 查看hongjunli的博客楼主
    发贴心情 [分享]Tomcat与Java Web开发技术详解(第2版)已正式出版




    此主题相关图片如下:
    按此在新窗口浏览图片

    【内容简介】本书结合最新的Tomcat 6版本,详细介绍了开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方提供的实用软件(如Struts、Velocity和Log4J)的方法,以及Tomcat的各种高级功能。
    书中内容注重理论与实践相结合,列举了大量具有典型性和实用价值的Web应用实例,并提供了详细的开发和部署步骤。由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此本书讲解的Java Web应用例子可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。随书附赠光盘的内容为本书范例的源程序,以及本书涉及的部分软件的安装程序。
    本书语言深入浅出、通俗易懂,无论对于Java Web开发的新手还是行家来说,本书都是精通Tomcat和开发Java Web应用的必备的实用手册。本书还可作为高校相关专业学生学习Java Web开发的参考书,以及企业Java Web培训教材,也可作为SUN公司的SCWCD(SUN Certified Web Component Developer)认证的辅导教材。
    本书语言深入浅出、通俗易懂,无论对于Java Web开发的新手还是行家来说,本书都是精通Tomcat和开发Java Web应用的必备的实用手册。本书还可作为高校相关专业学生学习Java Web开发的参考书,以及企业Java Web培训教材,也可作为SUN公司的SCWCD(SUN Certified Web Component Developer)认证的辅导教材。

    图书目录
    第1篇  Java Web开发技术详解
    依据SUN的Java Servlet规范和JSP规范,深入介绍了开发Java Web应用的各种技术。

    第1章  Web运作原理探析 3
    利用Java套接字(Socket)实现了一个简单的基于HTTP协议的客户程序和服务器程序。

    1.1  Web的概念 3
    1.2  HTML简介 4
    1.3  URL简介 7
    1.4  HTTP协议简介 7
    1.4.1  HTTP请求格式 9
    1.4.2  HTTP响应格式 11
    1.4.3  正文部分的MIME类型 13
    1.5  用Java套接字创建HTTP
    客户与服务器程序 14
    1.5.1  演示异构系统之间用HTTP
    协议通信 17
    1.5.2  演示对网页中的超级链接的
    处理过程 19
    1.5.3  演示对网页中的图片的
    处理过程 20
    1.6  Web发展历程 21
    1.6.1  发布静态HTML文档 21
    1.6.2  发布静态多媒体信息 22
    1.6.3  提供浏览器端与用户的
    动态交互功能 22
    1.6.4  提供服务器端与用户的
    动态交互功能 24
    1.6.5  发布Web应用 29
    1.6.6  发布Web服务 30
    1.6.7  Web 2.0:全民共建的Web 32
    1.7  处理HTTP请求参数及
    HTML表单 33
    1.8  客户端向服务器端上传文件 36
    1.9  小结 41
    1.10  思考题 42

    第2章  Tomcat简介 45
    Tomcat除了能够充当运行Servlet的容器,还提供了作为Web服务器的一些实用功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。Tomcat已成为目前开发企业JavaWeb应用的最佳Servlet容器选择之一。

    2.1  Tomcat概述 46
    2.2  Tomcat作为Servlet容器的
    基本功能 47
    2.3  Tomcat的组成结构 48
    2.4  Tomcat的工作模式 50
    2.5  Tomcat的版本 52
    2.6  安装和配置Tomcat
    所需的资源 53
    2.7  安装Tomcat 55
    2.8  启动Tomcat并测试
    Tomcat的安装 57
    2.9  Tomcat的运行脚本 58
    2.10  小结 59
    2.11  思考题 60


    第3章  第一个JavaWeb应用 63
    以一个简单的helloapp应用为例,让初学者迅速获得开发JavaWeb应用的实际经验。


    3.1  JavaWeb应用简介 63
    3.2  创建JavaWeb应用 64
    3.2.1  JavaWeb应用的目录结构 64
    3.2.2  创建HTML文件 65
    3.2.3  创建Servlet类 66
    3.2.4  创建JSP文件 67
    3.2.5  创建web.xml文件 68
    3.3  在Tomcat中发布
    JavaWeb应用 70
    3.3.1  Tomcat的目录结构 70
    3.3.2  按照默认方式发布
    JavaWeb应用 71
    3.3.3  Web组件的URL 72
    3.3.4  配置Tomcat的<Context>
    元素 75
    3.3.5  配置Tomcat的虚拟主机 78
    3.4  创建、配置和使用自定义
    JSP标签 80
    3.5  用批处理文件或ANT
    编译范例 84
    3.6  小结 85
    3.7  思考题 86

    第4章  Servlet技术(上) 89
    要想精通Servlet编程,不仅要了解Servlet自身的用法,还要了解容器为它提供的十八般武器的用法。

    4.1  Servlet API 90
    4.1.1  Servlet接口 90
    4.1.2  GenericServlet抽象类 91
    4.1.3  HttpServlet抽象类 93
    4.1.4  ServletRequest接口 96
    4.1.5  HttpServletRequest接口 97
    4.1.6  ServletResponse接口 100
    4.1.7  HttpServletResponse接口 101
    4.1.8  ServletConfig接口 104
    4.1.9  ServletContext接口 105
    4.2  JavaWeb应用的生命周期 108
    4.2.1  启动阶段 108
    4.2.2  运行时阶段 109
    4.2.3  终止阶段 109
    4.2.4  用Tomcat的管理平台管理
    Web应用的生命周期 109
    4.3  Servlet的生命周期 111
    4.3.1  初始化阶段 111
    4.3.2  运行时阶段 112
    4.3.3  销毁阶段 112
    4.3.4  演示Servlet的生命
    周期的范例 113
    4.4  ServletContext与Web
    应用范围 115
    4.4.1  在Web应用范围内存放
    共享数据的范例 116
    4.4.2  使用ServletContextListener
    监听器 119
    4.5  Servlet的服务方法
    抛出异常 121
    4.6  防止页面被客户端缓存 122
    4.7  小结 123
    4.8  思考题 124

    第5章 Servlet技术(下) 129
    进一步介绍Servlet的一些高级用法。


    5.1  下载文件 129
    5.2  上传文件 130
    5.3  动态生成图像 136
    5.4  读写Cookie 139
    5.5  访问Web应用的工作目录 145
    5.6  转发和包含 147
    5.6.1  请求转发 148
    5.6.2  包含 152
    5.6.3  请求范围 154
    5.7  重定向 155
    5.8  访问Servlet容器内的其他
    Web应用 158
    5.9  避免并发问题 160
    5.9.1  合理决定在Servlet中定义
    的变量的作用域类型 162
    5.9.2  使用Java同步机制对
    多线程同步 164
    5.9.3  被废弃的SingleThreadModel
    接口 165
    5.10  小结 166
    5.11  思考题 169

    第6章  JSP技术 171
    包括JSP的运行机制和语法、JSP包含其他Web组件的方法、把请求转发给其他Web组件的方法,以及JSP的异常处理。

    6.1  比较HTML、Servlet和
    JSP 171
    6.1.1  静态HTML文件 171
    6.1.2  用Servlet动态生成
    HTML页面 171
    6.1.3  用JSP动态生成
    HTML页面 173
    6.2  JSP语法 177
    6.2.1  JSP指令(Directive) 178
    6.2.2  JSP声明 180
    6.2.3  Java程序片段(Scriptlet) 181
    6.2.4  Java表达式 182
    6.2.5  隐含对象 184
    6.3  JSP的生命周期 185
    6.4  请求转发 188
    6.5  包含 190
    6.5.1  静态包含 190
    6.5.2  动态包含 192
    6.5.3  混合使用静态包含和
    动态包含 194
    6.6  JSP异常处理 200
    6.7  再谈发布JSP 202
    6.8  预编译JSP 203
    6.9  PageContext抽象类 204
    6.10  JSP技术的发展趋势 206
    6.11  小结 207
    6.12  思考题 207

    第7章  bookstore应用简介 211
    介绍bookstore应用的软件结构、各个JSP网页的功能,以及部分Web组件的实现。


    7.1  bookstore应用的软件结构 211
    7.1.1  Web服务器层 211
    7.1.2  数据库层 212
    7.2  浏览bookstore应用的JSP
    网页 212
    7.3  JavaBean和实用类 217
    7.3.1  实体类 218
    7.3.2  购物车的实现 219
    7.4  发布bookstore应用 222
    7.5  小结 223

    第8章  访问数据库 225
    介绍通过JDBC API访问数据库、在Tomcat中配置数据源,以及在Web应用中通过数据源连接数据库的方法。

    8.1  安装和配置MySQL数据库 225
    8.2  JDBC简介 228
    8.2.1  java.sql包中的接口和类 230
    8.2.2  编写访问数据库程序的
    步骤 234
    8.2.3  事务处理 236
    8.3  通过JDBC API访问数据库的
    JSP范例程序 237
    8.4  bookstore应用通过JDBC API
    访问数据库 239
    8.5  数据源(DataSource)简介 243
    8.6  配置数据源 244
    8.6.1  在context.xml中加入
    <Resource>元素 244
    8.6.2  在web.xml中加入
    <resource-ref>元素 245
    8.7  程序中访问数据源 246
    8.7.1  通过数据源连接数据库的
    JSP范例程序 246
    8.7.2  bookstore应用通过数据源
    连接数据库 248
    8.8  处理中文编码 251
    8.9  分页显示批量数据 252
    8.10  小结 256
    8.11  思考题 257

    第9章  HTTP会话的使用与管理 259
    介绍如何通过会话来实现服务器对客户的状态的跟踪。


    9.1  会话简介 259
    9.2  HttpSession的生命周期及
    会话范围 263
    9.3  使用会话的JSP范例程序 265
    9.4  使用会话的Servlet
    范例程序 269
    9.5  通过重写URL来
    跟踪会话 273
    9.6  会话的持久化 277
    9.6.1  标准会话管理器
    StandardManager 279
    9.6.2  持久化会话管理器
    PersistentManager 280
    9.7  会话的监听 284
    9.7.1  用HttpSessionListener统计
    在线用户人数 289
    9.7.2  用HttpSessionBindingListener
    统计在线用户人数 291
    9.8  小结 294
    9.9  思考题 295


    第10章  JSP访问JavaBean 299
    介绍JavaBean的概念和创建方法, JSP访问JavaBean的语法,JavaBean在Web应用中的4种存在范围,如何在bookstore应用中运用JavaBean。

    10.1  JavaBean简介 299
    10.2  JSP访问JavaBean的语法 300
    10.3  JavaBean的范围 302
    10.3.1  JavaBean在页面(page)
    范围内 302
    10.3.2  JavaBean在请求(request)
    范围内 305
    10.3.3  JavaBean在会话(session)
    范围内 306
    10.3.4  JavaBean在Web应用
    (application)范围内 307
    10.4  在bookstore应用中访问
    JavaBean 308
    10.4.1  访问BookDB类 308
    10.4.2  访问ShoppingCart类 309
    10.5  小结 313
    10.6  思考题 314


    第11章  开发JavaMail Web应用 317
    介绍了一个JavaMail Web应用,通过它,客户可以访问邮件服务器上的邮件账号、收发邮件和管理邮件夹。

    11.1  E-mail协议简介 317
    11.1.1  SMTP简单邮件
    传输协议 317
    11.1.2  POP3邮局协议 318
    11.1.3  接收邮件的新协议IMAP 318
    11.2  JavaMail API简介 319
    11.3  建立JavaMail应用程序的
    开发环境 321
    11.3.1  获得JavaMail API的
    类库 321
    11.3.2  安装和配置邮件服务器 321
    11.4  创建JavaMail应用程序 324
    11.5  JavaMail Web应用简介 328
    11.6  JavaMail Web应用的
    程序结构 328
    11.6.1  重新封装Message数据 329
    11.6.2  用于保存邮件账号信息的
    JavaBean 332
    11.6.3  定义所有JSP文件的
    相同内容 334
    11.6.4  登录IMAP服务器上的
    邮件账号 336
    11.6.5  管理邮件夹 339
    11.6.6  查看邮件夹中的
    邮件信息 342
    11.6.7  查看邮件内容 345
    11.6.8  创建和发送邮件 346
    11.6.9  退出邮件系统 348
    11.7  在Tomcat中配置邮件会话
    (Mail Session) 349
    11.7.1  在context.xml中配置
    Mail Session资源 349
    11.7.2  在web.xml中加入对
    JNDI Mail Session资源的
    引用 350
    11.7.3  在javamail应用中获取
    JNDI Mail Session资源 350
    11.8  发布和运行javamail应用 352
    11.9  小结 352
    11.10  思考题 353

    第12章  EL表达式语言 355
    EL(Expression Language)表达式语言是在JSP 2.0版本中引入的新特性,它用于JSP文件中的数据访问。

    12.1  基本语法 355
    12.1.1  访问对象的属性及
    数组的元素 356
    12.1.2  EL运算符 356
    12.1.3  隐含对象 357
    12.1.4  命名变量 359
    12.2  使用EL表达式的
    JSP范例 360
    12.2.1  关于基本语法的例子 360
    12.2.2  读取HTML表单
    数据的例子 362
    12.2.3  访问命名变量的例子 363
    12.3  定义和使用EL函数 363
    12.4  小结 366
    12.5  思考题 367

    第13章  自定义JSP标签 369
    结合具体的范例,进一步介绍自定义标签的创建过程,以及它在JSP文件中的使用方法。


    13.1  自定义JSP标签简介 369
    13.2  JSP Tag API 370
    13.2.1  JspTag接口 370
    13.2.2  Tag接口 371
    13.2.3  IterationTag接口 373
    13.2.4  BodyTag接口 374
    13.2.5  TagSupport类和
    BodyTagSupport类 376
    13.3  创建和使用message标签
    (访问标签属性) 380
    13.3.1  创建message标签的处理类
    MessageTag 382
    13.3.2  创建标签库描述文件 385
    13.3.3  在Web应用中使用标签 388
    13.3.4  发布支持中、英文版本的
    helloapp应用 390
    13.4  创建和使用iterate标签
    (重复执行标签主体) 391
    13.5  创建和使用greet标签
    (访问标签主体内容) 395
    13.6  小结 399
    13.7  思考题 400

    第14章  采用模板设计网上书店应用 403
    以bookstore应用为例,介绍如何通过自定义JSP标签来为网站设计模板,从而使所有在客户端展示的网页都通过模板来生成。

    14.1  如何设计网站的模板 403
    14.2  创建负责流程控制的
    Servlet 404
    14.3  创建模板标签和
    模板JSP文件 406
    14.3.1  <parameter>标签和
    其处理类 408
    14.3.2  <screen>标签和处理类 411
    14.3.3  <definition>标签和
    处理类 413
    14.3.4  <insert>标签和处理类 417
    14.4  修改JSP文件 419
    14.5  发布采用模板设计的
    bookstore应用 420
    14.6  小结 423

    第15章  JSTL Core标签库 425
    本章对JSTL做了概要介绍,并且着重介绍了JSTL中的Core标签库的用法。


    15.1  使用第三方提供的
    标签库的步骤 425
    15.2  JSTL标签库简介 426
    15.3  一般用途的标签 427
    15.3.1  <c:out>标签 427
    15.3.2  <c:set>标签 428
    15.3.3  <c:remove>标签 430
    15.3.4  <c:catch>标签 430
    15.4  条件标签 431
    15.4.1  <c:if>标签 431
    15.4.2  <c:choose>、<c:when>和
    <c:otherwise>标签 432
    15.5  迭代标签 433
    15.5.1  <c:forEach>标签 433
    15.5.2  <c:forTokens>标签 437
    15.6  URL相关的标签 437
    15.6.1  <c:import>标签 437
    15.6.2  <c:url>标签 438
    15.6.3  <c:redirect>标签 440
    15.7  小结 440
    15.8  思考题 441




    第16章  JSTL I18N标签库 443
    I18N标签库主要用于编写国际化的Web应用,本章对I18N标签库进行了详细介绍。


    16.1  国际化的概念 443
    16.2  Java对I18N的支持 444
    16.2.1  Locale类 444
    16.2.2  ResourceBundle类 448
    16.2.3  MessageFormat类和
    复合消息 449
    16.3  国际化标签 452
    16.3.1  <fmt:setLocale>标签 452
    16.3.2  <fmt:setBundle>标签 453
    16.3.3  <fmt:bundle>标签 453
    16.3.4  <fmt:message>标签 454
    16.3.5  <fmt:param>标签 455
    16.3.6  <fmt:requestEncoding>
    标签 455
    16.4  创建国际化的Web应用 456
    16.4.1  创建支持国际化的网页 456
    16.4.2  创建资源文件 459
    16.5  格式化标签 460
    16.5.1  <fmt:setTimeZone>标签 460
    16.5.2  <fmt:timeZone>标签 461
    16.5.3  <fmt:formatNumber>标签 461
    16.5.4  <fmt:parseNumber>标签 462
    16.5.5  <fmt:formatDate>标签 463
    16.5.6  <fmt:parseDate>标签 465
    16.6  小结 465
    16.7  思考题 466

    第17章  JSTL SQL标签库 469
    在JSP中直接通过Java程序代码来访问数据库,会降低JSP页面的可读性和可维护性,为了解决这一问题,可以在JSP中通过JSTL SQL标签库中的标签来访问数据库。

    17.1  <sql:setDataSource>标签 469
    17.2  <sql:query>标签 470
    17.2.1  设置数据源 470
    17.2.2  设置select查询语句 470
    17.2.3  控制实际取出的记录 471
    17.2.4  访问查询结果 471
    17.2.5  使用<sql:query>
    标签的范例 472
    17.3  <sql:param>标签 474
    17.4  <sql:dateParam>标签 475
    17.5  <sql:update>标签 475
    17.6  <sql:transaction>标签 476
    17.7  小结 478
    17.8  思考题 478

    第18章  JSTL Functions标签库 481
    介绍Functions标签库中常用的16个函数的用法。


    18.1  fn:contains函数 481
    18.2  fn:containsIgnoreCase
    函数 481
    18.3  fn:startsWith函数 482
    18.4  fn:endsWith函数 482
    18.5  fn:indexOf函数 482
    18.6  fn:replace函数 483
    18.7  fn:substring函数 483
    18.8  fn:substringBefore函数 483
    18.9  fn:substringAfter函数 484
    18.10  fn:split函数 484
    18.11  fn:join函数 485
    18.12  fn:toLowerCase函数 485
    18.13  fn:toUpperCase函数 485
    18.14  fn:trim函数 486
    18.15  fn:escapeXml函数 486
    18.16  fn:length函数 487
    18.17  小结 488
    18.18  思考题 489

    第19章  简单标签和标签文件 491
    为了简化开发标签的过程,JSP 2.0引入了一种新的标签扩展机制,称为“简单标签扩展”。


    19.1  实现SimpleTag接口 491
    19.1.1  创建和使用<hello>
    简单标签 493
    19.1.2  创建和使用带属性和
    标签主体的<welcome>
    简单标签 494
    19.1.3  创建和使用带动态属性的
    <max>简单标签 495
    19.2  使用标签文件 497
    19.2.1  标签文件的隐含对象 500
    19.2.2  标签文件的指令 501
    19.2.3  标签文件的<jsp:invoke>和
    <jsp:doBody>动作元素 503
    19.2.4  创建和使用带属性和
    标签主体的display
    标签文件 503
    19.2.5  创建和使用带属性和
    标签主体的welcome
    标签文件 505
    19.2.6  创建和使用带变量的
    precode标签文件 506
    19.3  小结 507
    19.4  思考题 507


    第20章  过滤器 509
    如果在多个Web组件中编写完成同样操作的程序代码,显然会导致重复编码,从而降低开发效率和软件的可维护性,为了解决上述问题,过滤器应运而生。

    20.1  过滤器简介 509
    20.2  创建过滤器 510
    20.3  发布过滤器 513
    20.4  串联过滤器 518
    20.4.1  包装设计模式简介 519
    20.4.2  ServletOutputStream的
    包装类 521
    20.4.3  HttpServletResponse的
    包装类 524
    20.4.4  创建对响应结果进行
    字符串替换的过滤器 525
    20.4.5  ReplaceTextFilter过滤器
    工作的UML时序图 527
    20.4.6  发布和运行包含
    ReplaceTextFilter过滤器的
    Web应用 528
    20.5  小结 531
    20.6  思考题 532

    第21章  在Web应用中访问EJB组件 535
    首先介绍JavaEE的体系结构;然后以bookstore应用为例,介绍开发EJB组件的过程;最后讲解如何在JBoss服务器上发布JavaEE应用。

    21.1  JavaEE体系结构简介 535
    21.2  安装和配置JBoss服务器 537
    21.3  创建EJB组件 538
    21.3.1  编写Remote接口 539
    21.3.2  编写Home接口 539
    21.3.3  编写Enterprise Java Bean
    类 540

    21.4  在Web应用中访问EJB
    组件 543
    21.5  发布JavaEE应用 544
    21.5.1  在JBoss上发布
    EJB组件 545
    21.5.2  在JBoss上发布
    Web应用 547
    21.5.3  在JBoss上发布
    JavaEE应用 549
    21.6  小结 550
    21.7  思考题 551



    第22章  在Web应用中访问Web服务 553
    介绍利用AXIS来创建SOAP服务和SOAP客户程序的方法,还介绍了在bookstore应用中访问SOAP服务的方法。

    22.1  SOAP简介 553
    22.2  建立Apache AXIS环境 555
    22.3  在Tomcat上发布
    Apache-AXIS Web应用 556
    22.4  创建SOAP服务 557
    22.4.1  创建提供SOAP服务的
    Java类 557
    22.4.2  创建SOAP服务的发布
    描述符文件 557
    22.5  管理SOAP服务 558
    22.5.1  发布SOAP服务 558
    22.5.2  删除SOAP服务 559
    22.6  创建和运行SOAP
    客户程序 560
    22.7  发布JWS服务 563
    22.8  在bookstore应用中访问
    SOAP服务 563
    22.8.1  创建BookDB服务类及
    BookDBDelegate代理类 564
    22.8.2  发布bookdbservice服务和
    bookstore应用 573
    22.9  小结 574
    22.10  思考题 575

    第23章  Web应用的MVC设计模式 577
    首先介绍了MVC设计模式的结构和优点;接着介绍了SUN公司提出的在Java Web开发领域的两种设计模式:JSP Model1和JSP Molde2;然后介绍了Struts实现MVC的机制;最后以helloapp应用为例,简要介绍了在Web应用中使用Struts 2.0的方法。

    23.1  MVC设计模式简介 577
    23.2  JSP Model 1和
    JSP Model 2 579
    23.3  Struts概述 581
    23.3.1  Struts实现MVC的机制 581
    23.3.2  Struts的工作流程 582
    23.4  创建采用Struts的Web
    应用 583
    23.4.1  建立Struts的环境 583
    23.4.2  创建视图 584
    23.4.3  创建模型 585
    23.4.4  创建Action类 585
    23.4.5  创建web.xml文件和
    struts.xml文件 586
    23.5  运行helloapp应用 587
    23.5.1  服务器端装载login.htm的
    流程 587
    23.5.2  用户验证的流程 587
    23.6  小结 589
    23.7  思考题 589


    第2篇  Tomcat配置及第三方实用软件的用法
    介绍Tomcat服务器的基本配置和高级配置,从而为Java Web应用创建高效的运行环境;介绍在Java Web应用中运用第三方提供的实用软件(如Velocity和Log4J)的方法。
    第24章  Tomcat的控制平台和管理平台 593
    Tomcat提供了基于Web方式的管理平台和控制平台,用户通过浏览器,就可以很方便地配置Tomcat服务器,还可以管理运行在Tomcat服务器上的Web应用,如发布、启动、停止或删除Web应用,以及查看Web应用状态。

    24.1  访问Tomcat的控制平台和
    管理平台 593
    24.2  Tomcat的控制平台 595
    24.2.1  Tomcat控制平台的功能 595
    24.2.2  配置<Valve>元素 597
    24.3  Tomcat的管理平台 598
    24.4  小结 600

    第25章  安全域 601
    主要介绍如何通过Tomcat提供的安全域来保护Web应用的资源。


    25.1  安全域概述 601
    25.2  为Web资源设置
    安全约束 602
    25.2.1  在web.xml中加入
    <security-constraint>元素 603
    25.2.2  在web.xml中加入
    <login-config>元素 605
    25.2.3  在web.xml中加入
    <security-role>元素 608
    25.3  内存域 608
    25.4  JDBC域 610
    25.4.1  用户数据库的结构 610
    25.4.2  在MySQL中创建和配置
    用户数据库 611
    25.4.3  配置<Realm>元素 611
    25.5  DataSource域 612
    25.6  在Web应用中访问
    用户信息 614
    25.7  小结 614
    25.8  思考题 615

    第26章  Tomcat与其他HTTP 服务器集成 617
    首先讨论Tomcat与HTTP服务器集成的一般原理,然后介绍Tomcat与Apache服务器及IIS集成的详细步骤,最后介绍把由多个Tomcat服务器构成的集群系统与Apache服务器集成的方法。

    26.1  Tomcat与HTTP服务器
    集成的原理 617
    26.1.1  JK插件 618
    26.1.2  AJP协议 618
    26.2  在Windows下Tomcat与
    Apache服务器集成 618
    26.3  在Linux下Tomcat与Apache
    服务器集成 621
    26.4  Tomcat与IIS服务器集成 623
    26.4.1  准备相关文件 624
    26.4.2  编辑注册表 624
    26.4.3  在IIS中加入“jakarta”
    虚拟目录 626
    26.4.4  把JK插件作为ISAPI
    筛选器加入到IIS中 627
    26.4.5  测试配置 628
    26.5  Tomcat集群 628

    26.5.1  配置集群系统的
    负载平衡器 629
    26.5.2  配置集群管理器 631
    26.6  小结 635
    26.7  思考题 636

    第27章  在Tomcat中配置SSI 637
    首先介绍了SSI的概念及SSI指令的用法,然后介绍了在Tomcat中配置SSI的方法。


    27.1  SSI简介 637
    27.1.1  #echo指令 638
    27.1.2  #include指令 640
    27.1.3  #flastmod指令 641
    27.1.4  #fsize指令 641
    27.1.5  #exec指令 641
    27.1.6  #config指令 641
    27.1.7  #if、#elif、#else和
    #endif指令 643
    27.2  在Tomcat中配置对SSI的
    支持 643
    27.3  小结 645
    27.4  思考题 645

    第28章  Tomcat阀 647
    介绍Tomcat阀的种类,还将详细介绍各种Tomcat阀的功能和使用方法。


    28.1  Tomcat阀简介 647
    28.2  客户访问日志阀 648
    28.3  远程地址过滤器 650
    28.4  远程主机过滤器 651
    28.5  客户请求记录器 652
    28.6  小结 653
    28.7  思考题 653

    第29章  在Tomcat中配置SSL 655
    SSL(Server Socket Layer)协议,旨在达到在开放网络(Internet)上安全、保密地传输信息的目的,这种协议在Web上获得了广泛的应用。

    29.1  SSL简介 655
    29.1.1  加密通信 656
    29.1.2  安全证书 656
    29.1.3  SSL握手 657
    29.2  在Tomcat中使用SSL 658
    29.2.1  准备安全证书 658
    29.2.2  配置SSL连接器 659
    29.2.3  访问支持SSL的
    Web站点 660
    29.3  小结 661
    29.4  思考题 662

    第30章  用ANT工具管理Web应用 663
    介绍了ANT的安装和配置,并以bookstore应用为例,介绍了ANT的使用方法。


    30.1  安装配置ANT 663
    30.2  创建build.xml文件 663
    30.3  运行ANT 668
    30.4  小结 669
    30.5  思考题 669


    第31章  使用Log4J进行日志操作 671
    首先介绍Log4J的组成,接着介绍如何在程序中使用Log4J,最后介绍如何在Web应用中通过Log4J生成日志。

    31.1  Log4J简介 671
    31.1.1  Logger组件 672
    31.1.2  Appender组件 673
    31.1.3  Layout组件 673
    31.1.4  Logger组件的继承性 674
    31.2  Log4J的基本使用方法 675
    31.2.1  定义配置文件 675
    31.2.2  在程序中使用Log4J 677
    31.3  在helloapp应用中
    使用Log4J 680
    31.3.1  创建用于配置Log4J环境的
    Servlet 680
    31.3.2  在login.jsp中输出日志 681
    31.3.3  发布和运行使用Log4J的
    helloapp应用 681
    31.4  小结 683
    31.5  思考题 683



    第32章  Velocity模板语言 685
    首先通过一个简单的Velocity例子来讲解创建基于Velocity的Web应用的步骤,然后详细介绍Velocity模板语言的各个要素。

    32.1  安装Velocity 685
    32.2  Velocity的简单例子 685
    32.2.1  创建Velocity模板 685
    32.2.2  创建扩展VelocityServlet的
    Servlet类 686
    32.2.3  发布和运行基于Velocity的
    Web应用 688
    32.3  注释 689
    32.4  引用 689
    32.4.1  变量引用 689
    32.4.2  属性引用 690
    32.4.3  方法引用 692
    32.4.4  正式引用符 693
    32.4.5  安静引用符 693
    32.4.6  转义符 694
    32.4.7  大小写替换 694
    32.5  指令 695
    32.5.1  #set指令 695
    32.5.2  字面字符串 696
    32.5.3  #if指令 697
    32.5.4  比较运算 697
    32.5.5  #foreach循环指令 698
    32.5.6  #include指令 700
    32.5.7  #parse指令 700
    32.5.8  #macro指令 701
    32.5.9  转义VTL指令 702
    32.5.10  VTL的格式 702
    32.6  其他特征 703
    32.6.1  数学运算 703
    32.6.2  范围操作符 703
    32.6.3  字符串的连接 704
    32.7  小结 705
    32.8  思考题 705

    第33章  创建嵌入式Tomcat服务器 707
    介绍如何把Tomcat嵌入到Java应用程序中,以及在程序中配置Tomcat的组件,并控制Tomcat服务器的启动和关闭。

    33.1  将Tomcat嵌入到Java
    应用中 707
    33.2  创建嵌入了Tomcat的
    Java示范程序 708
    33.3  运行嵌入式Tomcat
    服务器 711
    33.4  小结 713

    附录A  server.xml文件 715
    对server.xml文件的一些常用的元素进行了介绍。


    A.1  配置Server元素 716
    A.2  配置Service元素 717
    A.3  配置Engine元素 717
    A.4  配置Host元素 718
    A.5  配置Context元素 718
    A.6  配置Connector元素 719

    附录B  web.xml文件 721
    介绍了Web应用的配置文件web.xml文件。


    B.1  配置过滤器 723
    B.2  配置Servlet 724
    B.3  配置Servlet映射 725
    B.4  配置Session 725
    B.5  配置Welcome文件清单 725
    B.6  配置Tag Library 726
    B.7  配置资源引用 726
    B.8  配置安全约束 727
    B.9  配置安全验证登录界面 727
    B.10  配置对安全验证
    角色的引用 728

    附录C  XML简介 729
    XML,即可扩展标记语言(Extensible Markup Language),是一种可以用来创建自定义标记的标记语言。


    C.1  SGML、HTML 与XML的
    比较 729
    C.2  DTD文档类型定义 730
    C.3  有效XML文档以及
    简化格式的XML文档 731
    C.4  XML中的常用术语 732
    C.4.1  URL、URN和URI 733
    C.4.2  XML命名空间 733


    附录D  书中涉及软件获取途径 735
    为了便于读者在本地机器上搭建运行范例的环境,列出了书中涉及的软件的获取途径。

    序言/前言
    前言/序:
    美丽的奉献  执著的追求
    —记畅销书品牌成功背后的故事
    2004年3月,国内第一本介绍Tomcat与Java Web主题的图书——《Tomcat与Java Web开发技术详解》在孙卫琴老师的笔下孕育而生,由电子工业出版社出版。此书一经出版长期居于同类书排行榜首位,至今重印12次,创造同类图书的销售奇迹,更有业内专家认为 “这是由国人创作的最优秀的Java技术书籍之一”。
    任何事情的成功皆有因。这本书为何会得到读者的认可?这本书的写作和出版过程中,有着怎样的故事呢?借此书第2版推出之际,我愿与各位读者分享
    “师者,所以传道受业解惑也。”
    —韩愈《师说》
    孙卫琴—— 一位在IT领域里已经辛勤耕耘了十多年的技术专家,她以著书立说的方式,将师者传道、授业、解惑的本质体现得淋漓尽致。正是因为有这样一位善于总结、甘于奉献的老师,通过她执著的追求和不懈的努力,将自己对技术的理解,用最适合读者学习的语言和讲法,如数纳入书中,受到了读者的欢迎和好评。
    传道的途径—专注于图书创作
    孙老师在接受51CTO网站访问时,提到她成为一个专业技术作家的过程:“现在大家看到的成功主要就是在写作领域,我所创作的计算机图书比较畅销,深受读者欢迎,这是大家看到的一种结果,但是对我个人来说这样的结果并不是我刻意去追求的,甚至都不是之前能预想到的。开始我也是一个非常普通的软件开发程序员,大学毕业后就去从事软件开发工作。大概我性格中包含了少许要强的本性,而且拥有旺盛的好奇心,愿意做很多新鲜的尝试和探索,这些因素促使我日后与写作结下了深缘。在做开发的时候我就希望做一些能最大体现自身社会价值的事情,在这样想法的促使下,我觉得写书也是一种尝试。当我对Java技术钻研得比较精通、技术积淀比较扎实的时候,我就自然而然地萌生了写作这种想法,于是开始进行创作。一开始的第一本书并不是很有影响,接下来我写了《Tomcat与Java Web开发技术详解》这本书。当时我不是一个很知名的作者,向国内大的出版社投稿也不容易。在一个偶然的情况下,当时飞思的总经理郭晶看中了这本书,给了我一个很好的机会,我到现在都觉得很荣幸。作为一个开发人员,能在电子工业出版社出版一本计算机图书,我觉得很骄傲,于是加倍努力地去完成。我是一个非常专注的人,一旦静下心来还是比较能坐得住的。如今,我已经创作了6本书,而且它们都很受读者欢迎,对此我很欣慰。写作本身是一个非常漫长和孤独的过程,读者对我的作品的肯定是让我能继续潜心写作的最大的动力。每问世一本书,我就可以以书会友,与数万素不相识的读者们畅谈Java技术,这是平凡的写作生涯给我带来的最大欣慰。”
    正是这样一种平和与专注的心态,让她能够潜心研究技术,并通过图书创作的方式,实现技术传道的目标。

    授业的方式—专心研究图书写作体例
    在2007年飞思召开的一次Java技术研讨会上,孙卫琴老师更是将她以图书为载体传道、授业、解惑的心得与在座的许多技术专家进行了分享。她提到:“书不是用来炫耀作者掌握的技术,而是用来向读者传授技术的。”正是基于这样的思想,她潜心研究什么样的表达方式是最容易让读者理解和掌握的。对于一个概念的解释,是用图表对比式,还是问题启发式,抑或范例说明式,她不断去实践,直到得到满意的结果。
    对于读者来讲,通篇只有文字没有图表的内容,确实让人望而生畏。书要读起来有趣、易懂,才会让人有兴趣深入去学习,所以要善于总结、分析归纳知识点,并以恰当的方式来体现,看似简单的道理,实现起来并不容易,在《Tomcat与Java Web开发技术详解(第2版)》中,共有33个知识点、430张图表、14个典型的Web应用范例,其中倾注了孙卫琴老师8个多月来废寝忘食的创作心血。
    解惑的途径—图书出版+网络服务
    孙卫琴老师用她专业、专注和专心的态度看待自己的图书创作,同时还专门开发网站为购书的读者提供技术咨询服务和论坛讨论平台,甚至有的书还专门开发了配套下载的视频讲座资料,给读者提供图书以外的增值服务。
    我想,这些书能创造非常好的销售业绩,与孙老师坚持为师者传道授业解惑的心态不无关系,成功并不是偶然,而是必然。
    而作为策划出版方,我们与孙老师紧密沟通,策划第2版图书的时间并不短,从策划到最后产品正式出版,也有一年半的时间。第2版的图书与第1版相比增加了许多最新的技术,同时在版式设计、编辑加工等方面,也注意从读者的易读性角度出发,在与孙老师共同对书稿进行多次反复的校正之后,《Tomcat与Java Web开发技术详解(第2版)》终于正式出炉。这中间包含了许多人的奉献与追求,这种奉献是美丽的,这种追求是执著的。
    衷心希望孙卫琴老师的这本书,能够引领更多读者轻松进入Tomcat与Java Web的开发殿堂。


    写在《Tomcat与JavaWeb开发技术详解(第2版)》出版前夕
    郭晶

    联系方式
    咨询电话:(010)68134545    88254160
    电子邮件:support@fecit.com.cn
    服务网址:http://www.fecit.com.cn    http://www.fecit.net
    通用网址:计算机图书、飞思、飞思教育、飞思科技、FECIT

    Tomcat是在SUN公司的JSWDK(JavaServer Web Development Kit,SUN公司推出的小型Servlet/JSP调试工具)的基础上发展起来的一个优秀的Java Web应用容器,它是Apache开源软件组织的一个子项目。Tomcat被JavaWorld杂志评选为2001年度最具创新的Java产品(Most Innovative Java Product),同时,它还是SUN公司官方推荐的Servlet/JSP容器(参见http://java.sun.com/products/jsp/tomcat/),因此受到越来越多的软件公司和开发人员的喜爱。Servlet和JSP的最新规范都在Tomcat的新版本中得到了实现。

    Java Web应用容器的主要功能就是运行Servlet和JSP,而JSP本质上就是Servlet。因此本文中提到的Java Web应用容器、Servlet/JSP容器或者Servlet容器,实际上都是同一个概念的不同说法。
    作为一个开放源代码的软件,Tomcat得到了开放源代码志愿者的广泛支持,它可以和目前大部分的主流HTTP服务器(如IIS和Apache服务器)一起工作,而且运行稳定、可靠、效率高。
    作者根据多年的Java Web开发经验,在本书中详细阐明了在最新的Tomcat 6版本上开发Java Web应用涉及的各种技术,并且介绍了如何将Tomcat和其他主流HTTP服务器集成,以及创建具有实用价值的企业级Java Web应用的方案。
    本书的组织结构和主要内容
    本书的内容总体上分为两部分。
     第1篇为Java Web开发技术详解,包含第1章至第23章:依据SUN的Java Servlet规范和JSP规范,深入介绍了开发Java Web应用的各种技术。
     第2篇为Tomcat配置及第三方实用软件的用法,包括第24章至第33章:介绍Tomcat服务器的基本配置和高级配置,从而为Java Web应用创建高效的运行环境;介绍在Java Web应用中运用第三方提供的实用软件(如Velocity和Log4J)的方法。
    本书按照由浅到深、前后呼应的顺序来安排内容,本书涉及的内容可以细分为以下5类。
    (1)Tomcat的基础知识,参见表P-1。
    表P-1  Tomcat的基础知识
    知  识  点 参  考  章
    Tomcat服务器的作用、结构和安装步骤 第2章:Tomcat简介
    配置虚拟主机 第3章:第一个JavaWeb应用
    (2)Java Web开发的基础知识,参见表P-2。

    表P-2  Java Web开发的基础知识
    知  识  点 参  考  章
    HTTP协议和Web运作原理 第1章:Web运作原理探析
    Java Web应用的结构和发布 第3章:第一个JavaWeb应用
    Servlet的基本原理,创建Servlet的基本步骤,Servlet API中的常用接口和类的用法 第4章:Servlet技术(上)
    JSP基本语法 第6章:JSP技术
    bookstore应用范例 第7章:bookstore应用简介
    在Java Web应用中访问数据库,配置数据源 第8章:访问数据库
    在Java Web应用中使用HTTP会话 第9章:HTTP会话的使用与管理
    在Java Web应用中访问JavaBean,JavaBean在不同范围内的生命周期 第10章:JSP访问JavaBean
    EL语言 第12章:EL表达式语言
    (3)Java Web开发的高级技术,参见表P-3。
    表P-3  Java Web开发的高级技术
    知  识  点 参  考  章
    用Servlet实现文件上传、文件下载和生成动态图片 第5章:Servlet技术(下)
    ServletContext监听器
    HTTP会话监听器 第5章:Servlet技术(下)
    第9章:HTTP会话的使用与管理
    开发JavaMail Web应用,配置Mail Session 第11章:开发JavaMail Web应用
    创建自定义JSP标签 第13章:自定义JSP标签
    网站的模板设计 第14章:采用模板设计网上书店应用
    JSTL标签库的用法 第15章:JSTL Core标签库
    第16章:JSTL I18N标签库
    第17章:JSTL Sql标签库
    第18章:JSTL Functions标签库
    创建国际化的Web应用 第16章:JSTL I18N标签库
    简单标签和标签文件的用法 第19章:简单标签和标签文件
    过滤器 第20章:过滤器
    在Web应用中访问EJB组件 第21章:在Web应用中访问EJB组件
    通过AXIS发布和访问Web服务 第22章:在Web应用中访问Web服务
    Java Web应用的MVC设计模式 第23章:Web应用的MVC设计模式
    (4)在Web应用中运用第三方提供的实用软件,参见表P-4。
    表P-4  在Java Web应用中运用第三方提供的实用软件
    知  识  点 参  考  章
    通过AXIS发布和访问Web服务 第22章:在Web应用中访问Web服务
    使用基于MVC的Struts框架 第23章:Web应用的MVC设计模式
    使用ANT工具来管理Web应用 第30章:使用ANT工具管理Web应用
    使用Log4J进行日志操作 第31章:使用Log4J进行日志操作
    使用Velocity模板语言 第32章:Velocity模板语言

    (5)Tomcat的高级功能,参见表P-5。
    表P-5  Tomcat的高级功能
    知  识  点 参  考  章
    持久性会话管理 第9章:HTTP会话的使用与管理
    Tomcat的控制和管理平台 第24章:Tomcat的控制平台和管理平台
    安全域 第25章:安全域
    Tomcat与其他HTTP服务器(如Apache Web服务器和IIS Web服务器)集成 第26章:Tomcat与其他HTTP服务器集成
    Tomcat集群 第26章:Tomcat与其他HTTP服务器集成
    在Tomcat中配置SSI 第27章:在Tomcat中配置SSI
    Tomcat阀 第28章:Tomcat阀.
    在Tomcat中配置SSL 第29章:在Tomcat中配置SSL
    创建嵌入式Tomcat 第33章:创建嵌入式Tomcat服务器
    本书的范例程序
    3个典型的Web应用范例贯穿全书:
     helloapp应用。
     bookstore(网上书店)应用。
     JavaMail Web(javamail)应用。
    1.helloapp应用
    通过helloapp应用的例子来讲解Java Web开发的基础知识。比如,在第3章以helloapp应用为例,讲述了发布Web应用的步骤。在其他章节中,所有针对单个知识点的Servlet和JSP例子,都被发布到helloapp应用中。
    2.bookstore应用
    bookstore应用是一个充分运用了所有Java Web开发技术的综合例子,它实现了一个网上书店的应用,更加贴近于实际应用。为了便于读者循序渐进地掌握Java Web技术,在本书中提供了bookstore应用的5个版本,它们分别侧重于不同的技术。
    (1)bookstore version0:通过这个例子读者可以进一步掌握JSP编程的技巧,能够灵活运用JavaBean和HttpSession,并掌握通过JDBC API访问数据库的技术。
    (2)bookstore version1:介绍如何在Tomcat中配置JNDI DataSource,以及如何在Web应用中访问JNDI DataSource。
    (3)bookstore version2:使读者掌握创建JSP自定义标签的高级技术,并掌握对网页进行模板设计的方法。
    (4)bookstore version3:实现了基于JavaEE架构的bookstore应用,并介绍了在JBoss应用服务器上发布bookstore应用的方法。
    (5)bookstore version4:实现了基于Web服务架构的bookstore应用。
    3.JavaMail Web应用
    JavaMail Web应用是一个基于Web的邮件客户程序,它向Web客户提供了访问邮件服务器上的邮件账号、进行收发邮件和管理邮件夹等功能。通过这个例子,读者可以了解电子邮件的发送和接收协议,掌握JavaMail API的使用方法,以及熟悉通过JavaMail API创建JavaMail Web应用的过程。通过这个例子,读者还可以掌握在Tomcat中配置Mail Session的步骤,以及在Web应用中访问Mail Session的方法。
    这本书是否适合你
    阅读本书,要求读者具备Java编程的基础知识,作者的另一本书《Java面向对象编程》对此进行了详细介绍。
    本书面向所有打算或已经开发Java Web应用的读者。尽管本书在讲解Java Web技术时以Tomcat为运行平台,但由于Java Web技术是SUN公司在Java Servlet规范中提出的通用技术,因此本书讲解的范例可以运行在任何一个实现了SUN的Servlet规范的Java Web服务器上。另一方面,由于Tomcat是SUN公司官方推荐的Servlet/JSP容器,因此在学习Java Web开发技术或进行实际的开发工作时,Tomcat是首选的Java Web应用容器。
    如果你是开发Java Web应用的新手,建议按照本书安排的章节顺序来学习。如果你已经在开发Java Web应用方面有丰富的经验,则可以把本书作为实用的Tomcat技术和Java Web开发技术的参考资料。本书不仅详细介绍了Servlet API、JDBC API和JavaMail API等的用法,还详细介绍了JSTL标签库中的各个标签的用法,此外还介绍了把Tomcat与当前其他通用的HTTP服务器集成的步骤,以及Tomcat 的各种高级功能。灵活运用本书介绍的各种开发和配置技巧,将使Java Web应用开发更加得心应手。
    实践是掌握Java Web技术最迅速、有效的办法。本书提供了大量典型的例子,并且在本书附赠光盘上提供了完整的源代码,以及软件安装程序。本书所有程序在Tomcat 6版本中都测试通过,读者可以按照书上介绍的详细步骤亲自动手,在本地机器上配置Tomcat的开发和运行环境,然后创建和发布Java Web应用。
    光盘使用说明
    本书附赠光盘包含以下目录。
    1.software目录
    在该目录下包含了本书涉及的大多数软件的安装程序,主要包括:
    (1)Tomcat的安装软件。
    (2)MySQL服务器的安装软件。
    (3)Apache服务器的安装软件。
    (4)Ant的安装软件。
    (5)Apache AXIS软件。
    (6)Log4J软件。
    (7)Struts软件。
    (8)JBoss软件。
    (9)Velocity软件。
    除了上述软件,本书还需要用到JDK和MerakMailServer软件,由于受到这些软件版权的限制,在光盘中未提供这两个软件。读者可以到这些软件的官方网站或者JavaThinker网站上下载它们,本书的相关章节详细介绍了获取这些软件的途径。
    2.lib目录
    在该目录下提供了运行本书Java Web应用所需的JAR文件,以及配置Tomcat服务器与其他HTTP服务器集成所需的JK插件:
    (1)activation.jar(JavaBeans Activation Framework API)。
    (2)mail.jar(Java Mail API)。
    (3)log4j-1.2.8.jar(Log4J API)。
    (4)xerces.jar(Xerces API)。
    (5)struts2-core-2.1.2.jar(Struts API)。
    (6)j2ee.jar(J2EE API)。
    (7)isapi_redirect.dll(Tomcat与IIS集成的JK插件)。
    (8)mod_jk.so(Windows XP下Tomcat与Apache集成的JK插件)。
    (9)mod_jk_linux.so(Linux下Tomcat与Apache集成的JK插件)。
    (10)jsp-api.jar(JSP API)。
    (11)servlet-api.jar(Servlet API)。
    (12)mysqldriver.jar(MySQL的JDBC驱动程序)。
    3.sourcecode目录
    在该目录下提供了本书所有的源程序,每一章的源程序都位于相应的sourcecode/chapterX目录下(X代表章节号)。bookstore应用和JavaMail Web应用分别位于sourcecode/bookstores和sourcecode/javamails目录下。
    第2版增加内容
    第2版保留了第1版的精华内容,并且在内容的深度和广度方面都进行了很大的扩展。第2版主要增加了如下内容:
     增加了第1章(Web运作原理探析)。本章以HTTP协议为核心,介绍了Web的概念、基本运作原理及其发展历程,并且用Java套接字创建了一个简单的HTTP客户程序和服务器程序,这个范例能帮助读者直观地理解浏览器与Web服务器的通信细节。
     更深入地介绍了Servlet技术。详细介绍了Servlet API中的主要接口和类(如Servlet、ServletRequest、ServletResponse、ServletContext和HttpSession)的用法和生命周期,并且介绍了用Servlet实现文件上传、文件下载和动态生成图片等实用功能。
     深刻揭示Java Web应用的4种范围(页面范围、请求范围、会话范围和Web应用范围)的概念和本质。Web组件通过存取4种范围内的数据来实现Web组件之间的数据传输和共享。Servlet、JSP和自定义JSP标签都会访问这4种范围内的共享数据。
     增加了各种监听器的用法,包括监听Web应用生命周期的ServletContextListener,以及监听HTTP会话的HttpSessionListener、HttpSessionAttributeListener、HttpSessionBindingListener和HttpSessionActivationListener。
     增加了创建复杂的自定义JSP标签的范例,这些自定义JSP标签能够重复执行标签主体,或者读取标签主体的内容。
     详细介绍了JSTL标签库的用法。
     介绍了创建国际化的Web应用的方法。
     详细介绍了EL语言、简单标签和标签文件的用法。
     实现了基于Web服务架构的bookstore购物网站应用。
     介绍了Tomcat集群的配置方法,以及在Tomcat中配置SSI的方法。
     为本书多数章精心设计了思考题,并提供了答案,帮助读者理解和巩固书中阐述的知识。
    此外,第2版根据最新的Servlet 2.5和JSP 2.1版本,以及最新的Tomcat 6版本,对第1版中的所有范例和配置代码做了升级。
    致谢
    本书在编写过程中得到了Apache软件组织和SUN公司在技术上的大力支持,并且由飞思科技产品研发中心负责监制工作,此外本书第1版的读者及JavaThinker网站的网友为本书的编写提供了有益的帮助,在此表示衷心感谢!尽管我们尽了最大努力,但本书难免会有不妥之处,欢迎各界专家和读者朋友批评指正,以下网址是作者为本书提供的技术支持网址,读者可通过它下载与本书相关的资源(如源代码、软件安装程序和讲义等),还可以与其他读者交流学习心得,以及对本书提出宝贵意见:
    http://www.javathinker.org/javaweb_support.jsp

    孙卫琴

    详情参见:http://www.china-pub.com/129893


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2008/12/4 19:08:00
     
     GoogleAdSense魔羯座1978-1-20
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Java/Eclipse 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/16 13:15:44

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    156.250ms