
【书名】贯通Java Web开发三剑客:Eclipse+Tomcat+Ant整合开发
【作者】希赛IT发展研究中心组编
党海峰 主编 孙霞 副主编
【ISBN】978-7-121-07400-4
【出版社】电子工业出版社
【出版日期】2008年11月
【内容简介】
本书分为六篇共19章,包括基础知识、Eclipse工具的介绍、Tomcat工具以及Servlet和JSP的介绍、Ant技术以及Ant结构化程序设计方法的介绍、Struts2技术的介绍和项目实例系统的开发。全书内容由浅入深地逐步引领读者从基础到各个知识点的学习,并辅以大量的实例说明,最后给出了两个完整的项目案例。
随书的配套光盘中含全书所有实例的源代码以及项目案例的源代码,供读者学习参考使用。
本书可作为Java Web编程入门教材,或供有一定Java Web编程基础的程序员作为参考用书,也可供社会Java技术培训班作为教材使用。
【前言】
随着网络的不断普及,基于网络的计算机应用也在飞速发展,其中基于B/S模式(Browser/Server模式,浏览器/服务器模式)的Web应用从出现到现在一直具有非常旺盛的生命力,而且应用面也越来越广。这些都得益于Web应用方便的部署和使用方式,以及强大的交互和展现能力。正因为Web应用的前景看好,Web开发技术也发展迅速。虽然Web开发者们的目的是构建基于Web的应用系统,但是由于他们的起点和思路不同所以使用的开发技术和开发方式就大相径庭。其中,使用较多和比较流行的开发技术大致有:基于Java的技术、基于.NET的技术、PHP、RoR(Ruby on Rails)等。其中,基于Java的Web开发技术一直以来都是在Web开发领域占据了非常重要的位置。
“工欲善其事,必先利其器”。选择一个好的集成开发环境对于进行Java Web开发是至关重要的,而且Java Web应用的调试和运行也必须有相应的环境。
Eclipse从3.0版本开始就被公认为是最好的Java集成开发环境之一,Web开发插件集(Web Tools Platform,WTP)是Eclipse官方提供的唯一针对Web开发的插件集,并且Eclipse还提供集成了WTP的Eclipse发布版本。这对于进行Java Web开发的程序员,尤其是对于一直使用Eclipse进行Java开发的程序员,真是雪中送炭。
Tomcat是一款Sun公司唯一官方推荐的Servlet/JSP容器,而且它还提供了独立运行和附加到其他Web服务器的多种运行模式。Tomcat也是一款受广大Java Web程序员喜爱的开源免费软件。所以,对于Java Web程序员来说,无论是在学习阶段进行实验,还是在最终开发的系统中进行应用,Tomcat都是非常理想的选择。
Ant作为一种Java开发的辅助技术,在Java Web开发中有着举足轻重的作用。因为Web应用不同于普通的应用,它的文件和目录结构比较复杂,而且需要以一定的结构被部署到Web服务器中才能进行调试和运行,这些工作的复杂度会随着Web应用规模的扩大而变得无法想像。在开发Web应用时,编写一个功能清晰、结构良好的Ant脚本,对于开发人员来说将会降低许多发布Web应用的工作量以及期间可能出现的各种差错,大大提高了开发和部署Java Web应用的效率。
本书旨在为Java Web程序员或希望进入Java Web开发领域的程序员提供一本基础教程,详细介绍Java Web开发领域的基础技术、基本技能和主要工具。
本书的知识体系
本书从Web开发的基础网络技术谈起,第一篇为基础知识,分别介绍了Web基础技术和Java Web开发基础技术。第二篇介绍了Eclipse的相关知识,具体包括:Eclipse基础、Eclipse集成开发环境以及如何使用Eclipse开发Java Web应用;第三篇介绍了Tomcat工具以及Servlet和JSP技术,具体包括:Tomcat基础、Tomcat中的Web应用、Servlet技术和JSP技术;第四篇介绍了Ant的基础知识以及Ant结构化程序设计理论,具体包括:Ant基础、编写和运行Ant脚本、在Eclipse中使用Ant、Ant主要任务、Ant结构化程序设计元素、Ant结构化程序设计、使用Ant发布Web应用;第五篇介绍了当前最流行的一种Java Web开发框架——Struts2。最后,第六篇通过使用两种不同的技术实现一个简单论坛系统,将本书介绍的技术串联起来给读者一个Java Web开发的全景图。
篇 名 章 名 主要内容
第一篇
Web基础技术 第1章 Web基础技术 简单介绍一些Internet中常用的而且也是与Web开发紧密相关的基础网络知识,包括:Web系统结构、HTTP、HTML、Session和Cookie等。本章力求从基础概念和协议的层面进行介绍,但不针对某一种特定的开发语言
第2章 Java Web开发简介 介绍基于Java的Web开发技术。本章从第一个将Web带向动态化的CGI技术开始,并将基于Java的Servlet技术和JSP技术与CGI技术进行简单对比,然后介绍了在Java Web开发领域中非常流行的Struts技术和Struts2技术。最后分别介绍了支持Java Web开发的两个最重要的工具:Tomcat和Eclipse
第二篇
Eclipse工具介绍 第3章 Eclipse基础 对Eclipse基础进行简单介绍。首先介绍Eclipse的发展历史和系统架构;然后简单介绍包含Web开发插件集的Eclipse(WTP - Eclipse)的功能及如何进行下载和安装
第4章 Eclipse集成开发环境 对Eclipse集成开发环境进行详细的介绍,包括视图和透视图的概念、Eclipse中每个菜单项的作用、查看和设置Eclipse中的快捷键、Eclipse常用功能的配置、Eclipse Web开发插件集的配置和Eclipse插件的几种安装方式
第5章 使用Eclipse开发Java Web应用 介绍在Eclipse中建立和配置Web工程的方法以及如何使用Eclipse开发各种Web对象
第三篇
Tomcat工具及Serverlet和JSP介绍 第6章 Tomcat基础 主要对Tomcat服务器进行介绍,包括Tomcat和Servlet容器的概念、Tomcat的下载和安装、Tomcat服务器的结构和配置(server.xml文件的结构和配置)和在Eclipse中安装Tomcat插件
续表
篇 名 章 名 主要内容
第三篇
Tomcat工具及Serverlet和JSP介绍 第7章 Tomcat中的Web应用 介绍Tomcat中Web应用的结构、例如:如何将Web应用部署到Tomcat中以及如何配置Web应用(web.xml文件的结构和配置)等
第8章 Servlet基础 介绍Servlet的基本概念、原理以及使用方法。本章的内容从基础概念到丰富的实例,生动而全面地将Servlet体系展现给了读者。内容包括Servlet的基本概念,如Servlet的概念、Servlet中的接口、GenericServlet和HttpServlet、Servlet请求和Servlet响应、Servlet Filter等
第9章 JSP基础 对JSP技术进行详细介绍。不同于其他教程对JSP的介绍方式,本章首先揭示JSP的本质,然后分别介绍JSP的各种语法和标签,最后详细介绍了JSP自定义标签的开发方法。本章内容主要包括:JSP的表象和本质、JSP的基本语法、JSP的隐含对象和开发自定义标签
第四篇
Ant技术及其结构化程序设计方法介绍 第10章 Ant基础 简要介绍Ant的基础知识,并引导没有接触过Ant的读者进入Ant的世界。主要内容包括:Ant是什么以及Ant的特点、Ant的下载、安装和配置的方法和Hello Ant应用
第11章 编写和运行Ant脚本 介绍Ant脚本的基础结构以及如何运行Ant脚本。包括:Ant脚本的基本框架、Target/Task/Property的概念和用法、Ant命令的使用及各个可选配置项的含义
第12章 在Eclipse中使用Ant 介绍如何在Eclipse中配置和使用Ant
第13章 Ant主要任务介绍 对Ant中最常用的任务进行介绍,每个任务的介绍都包括了对任务的功能和任务各个属性的介绍,并附以实例。Ant常用的任务包括:归档任务、编译任务、执行任务、文件任务和属性任务及其他任务
第14章 Ant结构化程序元素 提出一种Ant开发的全新理论——Ant结构化程序设计方法。这种方法避免了传统Ant开发方法的弊端,借助结构化程序设计方法进行Ant开发,有利于Ant代码的复用、有利于快速开发大型稳定的Ant应用。本章主要对Ant结构化程序设计中的程序设计元素进行介绍,包括常量和变量、分支结构、函数、循环结构和输入/输出
第15章 Ant结构化程序设计 是在第14章的基础上向读者介绍使用结构化方法开发Ant应用的步骤,以便于读者更好地理解和使用Ant结构化程序设计的思想
第16章 使用Ant发布Web应用 介绍如何使用Ant发布Web应用,并且提供了一个使用Ant发布Web应用的简单脚本模板。本章首先对Eclipse中Web工程和Tomcat中的Web应用的结构进行分析,然后利用Ant结构化程序设计方法开发发布Web应用的脚本
第五篇
Struts2技术介绍 第17章 开发Struts2应用 对当前比较流行的Web开发框架Struts2进行简单介绍,包括Struts2简介、Struts2架构、Struts2应用的配置和开发Struts2应用
第六篇
实例系统的开发 第18章 简单论坛系统开发 基于本书介绍的工具和技术,介绍了实例系统——简单论坛系统的开发。包括系统需求、界面设计、系统开发和系统功能的验证
第19章 使用Struts2开发简单论坛系统 介绍基于Struts2框架对简单论坛系统进行开发
本书第一篇为基础知识,对网络知识和Web开发有基础的读者可以跳过这部分的学习。其他除第六篇实例系统开发外,各个部分之间相对独立,对某一个部分感兴趣的读者可以直接选择该部分进行学习。
第三篇和第四篇是本书的重点,也占了本书的绝大部分篇幅;对于这两篇,本书采取引导式和参考式相结合的方式,既有循序渐进的实例也有文档式的罗列,既有基础概念的介绍也有高级思想和理论的提出;对于没有基础的读者可以通过概念和实例逐步对这些知识进行学习,对于有一定基础的读者也可以将它作为参考书和对旧知识进行归纳和提升的加速器。
读者在学习第三篇和第四篇时,可首先大致了解一下Ant的基本概念,然后对第16章进行学习,了解发布Web应用的Ant脚本;在学习第三篇时,当需要对Web应用进行部署时就可以使用发布Web应用的Ant脚本,这样可以大大提高调试Web应用的效率。
技术支持
希赛是中国领先的互联网技术和IT教育公司,在互联网服务、图书出版、人才培养方面,希赛始终保持IT业界的领先地位。希赛对国家信息化建设和软件产业化发展具有强烈的使命感,利用希赛网(www.违规广告)强大的平台优势,加强与促进IT人士之间的信息交流和共享,实现IT价值。“希赛,影响IT”是全体希赛人不懈努力和追求的目标!
希赛网以希赛顾问团为技术依托,是中国最大的IT资源平台。希赛IT教育研发中心是希赛公司属下的一个专门从事IT教育、教育产品开发、教育书籍编写的部门,在IT教育方面具有极高的权威性。在国家权威机构发布的《计算机图书出版市场综述》中,称赞希赛丛书为读者喜爱,希赛的图书已经形成品牌,在读者心目中具有良好的形象。
本书由作者本人和西北大学孙霞老师编写,借此还向我的爱人刘崟表示感谢,她一直在鼓励和支持着我的书稿创作工作。
随书的配套光盘中含有全书所有实例的源代码,以及项目案例的源代码,供读者学习参考使用,所有程序均经过在实际环境中的运行和测试。
由于作者的水平有限,书中的错误和不妥之处在所难免,敬请读者批评指正。有关本书的意见反馈和咨询,读者可在希赛网社区(http://bbs.违规广告)“书评在线”版块中与作者进行交流。
本书配套光盘中的内容,读者也可以在希赛网下载中心(http://data.违规广告)下载。
党海峰
2008年7月于西安
【目 录】
第一篇 Web基础技术
第1章 Web基础技术 2
1.1 Web系统结构 2
1.2 HTTP 4
1.3 HTTP请求与响应 5
1.3.1 HTTP请求消息 6
1.3.2 HTTP响应消息 8
1.3.3 Header Field 8
1.4 HTML 13
1.4.1 标签和属性 13
1.4.2 常用标签 14
1.5 Cookie和Session 20
1.5.1 Cookie 21
1.5.2 Session 22
1.6 本章小结 23
第2章 Java Web开发简介 24
2.1 Java Web开发技术 24
2.1.1 CGI技术 24
2.1.2 Servlet技术 25
2.1.3 JSP技术 26
2.1.4 Struts技术 28
2.2 Java Web开发工具 30
2.2.1 Tomcat 31
2.2.2 Eclipse 32
2.3 本章小结 32
第二篇 Eclipse 工具介绍
第3章 Eclipse基础 36
3.1 Eclipse简介 36
3.1.1 Eclipse的发展 36
3.1.2 Eclipse的架构 37
3.2 Eclipse的下载与安装 39
3.2.1 WTP简介 39
3.2.2 WTP-Eclipse的下载与安装 40
3.3 本章小结 44
第4章 Eclipse集成开发环境 45
4.1 Eclipse界面 45
4.1.1 视图和透视图 45
4.1.2 菜单 48
4.1.3 快捷图标栏 59
4.2 Eclipse常用配置 60
4.2.1 快捷键设置 61
4.2.2 定义用户库 63
4.2.3 配置Clean up首选项 64
4.2.4 配置Java代码模板 67
4.2.5 配置Java代码格式化工具 68
4.2.6 配置Web开发工具 71
4.3 Eclipse插件 75
4.3.1 浏览插件 75
4.3.2 安装插件 76
4.4 本章小结 79
第5章 使用Eclipse开发Java Web应用 80
5.1 Eclipse Web工程 80
5.1.1 静态Web工程 80
5.1.2 动态Web工程 83
5.1.3 Web工程属性配置 86
5.2 编辑Web内容 88
5.2.1 开发静态Web对象 88
5.2.2 开发动态Web对象 93
5.3 本章小结 98
第三篇 Tomcat工具及
Serverlet和JSP介绍
第6章 Tomcat基础 100
6.1 Tomcat简介 100
6.2 Tomcat下载与安装 102
6.2.1 下载 102
6.2.2 安装 103
6.3 Tomcat服务器结构 105
6.4 Tomcat基础配置 106
6.4.1 server.xml配置文件 107
6.4.2 Tomcat其他配置文件 111
6.5 在Eclipse中安装Tomcat插件 112
6.5.1 下载和安装 112
6.5.2 配置Tomcat插件 114
6.6 本章小结 114
第7章 Tomcat中的Web应用 116
7.1 Web应用简介 116
7.1.1 Web应用的结构 116
7.1.2 Web应用的上下文路径 117
7.2 将Web应用部署到Tomcat中 118
7.2.1 将Web应用复制到webapps目录下 118
7.2.2 使用Context元素 119
7.3 配置Web应用 121
7.3.1 Web应用部署描述符 121
7.3.2 默认的通用Web应用部署描述符 123
7.4 本章小结 128
第8章 Servlet基础 129
8.1 Servlet简介 129
8.1.1 Servlet的概念 130
8.1.2 Servlet的生命周期 130
8.1.3 Servlet的工作过程 131
8.1.4 请求的分发 132
8.1.5 Hello World Servlet 135
8.2 Servlet中的关键概念 138
8.2.1 Servlet接口 138
8.2.2 ServletConfig接口 140
8.2.3 ServletContext接口 141
8.2.4 RequestDispatcher接口 144
8.2.5 接口之间的关系 144
8.3 GenericServlet和HttpServlet 145
8.3.1 GenericServlet抽象类 146
8.3.2 HttpServlet抽象类 148
8.4 ServletRequest 155
8.4.1 ServletRequest 155
8.4.2 HttpServletRequest 158
8.4.3 HttpServletRequestPrinter实验 161
8.5 ServletResponse 165
8.5.1 ServletResponse 165
8.5.2 HttpServletResponse 167
8.6 Servlet过滤器 170
8.6.1 关键概念 171
8.6.2 Servlet包装器 173
8.6.3 编写过滤器 187
8.6.4 部署和运行过滤器 187
8.7 Servlet实践 188
8.7.1 从头开发Servlet 188
8.7.2 在Servlet中使用ServletConfig 193
8.7.3 使用ServletContext获取信息 201
8.7.4 使用HttpServletResponse控制
8.7.4 响应 212
8.7.5 使用HttpSession实现会话级信息
8.7.5 管理 228
8.7.6 使用Cookie在客户端存储信息 233
8.7.7 使用Servlet Filter实现登录验证 237
8.7.8 使用Servlet Filter改变请求 244
8.7.9 使用Servlet Filter改变响应 249
8.8 本章小结 254
第9章 JSP基础 255
9.1 JSP的表象和本质 255
9.2 JSP的基本语法 261
9.2.1 JSP程序代码块 261
9.2.2 JSP声明代码块 262
9.2.3 JSP输出代码块 267
9.2.4 JSP注释代码块 267
9.2.5 JSP指令代码块 270
9.2.6 JSP预定义标签 275
9.3 JSP的隐含对象 279
9.3.1 request、response、config
9.3.1 和application对象 281
9.3.2 out对象 282
9.3.3 page对象 285
9.3.4 session对象 286
9.3.5 exception对象 287
9.3.6 PageContext对象 288
9.3.7 对象属性的作用域 291
9.4 开发自定义标签 292
9.4.1 自定义标签简介 292
9.4.2 JSP标签体系 293
9.4.3 开发Tag级别的标签 304
9.4.4 开发IterationTag级别的标签 314
9.4.5 开发BodyTag级别的标签 321
9.5 本章小结 334
第四篇 Ant技术及其结构化程序设计方法介绍
第10章 Ant基础 336
10.1 Ant做什么 336
10.2 Ant简介 338
10.3 Ant安装与配置 339
10.3.1 系统环境 339
10.3.2 Ant下载 339
10.3.3 安装和配置 343
10.4 Hello Ant应用 345
10.4.1 应用描述 346
10.4.2 应用分析 346
10.4.3 编辑应用 347
10.4.4 运行应用 348
10.5 本章小结 349
第11章 编写和运行Ant脚本 350
11.1 Ant脚本介绍 350
11.1.1 Ant脚本结构 350
11.1.2 Target 352
11.1.3 Task 354
11.1.4 Property 355
11.2 运行Ant 356
11.3 本章小结 361
第12章 在Eclipse中使用Ant 362
12.1 在Eclipse中配置Ant 362
12.2 编辑和运行Ant脚本 365
12.2.1 编辑Ant脚本 365
12.2.2 运行Ant脚本 370
12.3 本章小结 371
第13章 Ant主要任务介绍 372
13.1 归档任务 372
13.1.1 GZip/BZip2 372
13.1.2 GUnzip/BUnzip2 373
13.1.3 Zip 374
13.1.4 Jar 375
13.1.5 Tar 377
13.1.6 War 378
13.1.7 Ear 380
13.1.8 Cab 381
13.1.9 Unjar/Untar/Unwar/Unzip 382
13.2 编译任务 383
13.2.1 Javac 383
13.2.2 Depend 386
13.3 执行任务 387
13.3.1 Java 387
13.3.2 Ant 390
13.3.3 AntCall 391
13.3.4 Exec 392
13.3.5 Sleep 394
13.4 文件任务 395
13.4.1 FileSet 395
13.4.2 Chown 396
13.4.3 Concat 397
13.4.4 Copy 398
13.4.5 Delete 400
13.4.6 Move 401
13.4.7 Mkdir 403
13.4.8 Get 403
13.4.9 Replace 404
13.5 属性任务 405
13.5.1 Property 405
13.5.2 Available 407
13.5.3 Condition 408
13.5.4 LoadFile/LoadResource 409
13.5.5 LoadProperties 410
13.5.6 Echoproperties 411
13.6 其他任务 412
13.6.1 Echo 412
13.6.2 Fail 413
13.6.3 Input 414
13.6.4 Sound 415
13.6.5 Import 416
13.7 本章小结 416
第14章 Ant结构化程序元素 418
14.1 常量和变量 418
14.1.1 常量 419
14.1.2 变量 420
14.2 分支结构 422
14.2.1 Ant中的分支结构 422
14.2.2 常用条件判断式 423
14.2.3 Ant中的布尔变量 429
14.3 函数 432
14.3.1 Ant和AntCall 433
14.3.2 参数传递 436
14.3.3 编写函数 438
14.4 循环结构 438
14.4.1 常用集合类型 438
14.4.2 自建循环 442
14.5 输入/输出 445
14.6 本章小结 445
第15章 Ant结构化程序设计 447
15.1 基本步骤 447
15.2 构建流程图 447
15.2.1 构建流程图的符号定义 448
15.2.2 构建流程图的形成 450
15.3 编写函数 451
15.3.1 函数的抽象程度 452
15.3.2 函数的编写 453
15.4 编写脚本 454
15.5 本章小结 459
第16章 使用Ant发布Web应用 460
16.1 发布过程分析 460
16.1.1 Eclipse中的Web应用 460
16.1.2 Tomcat中的Web应用 461
16.1.3 发布步骤 461
16.2 编写脚本 462
16.2.1 构建流程图 462
16.2.2 编写函数 462
16.2.3 编写脚本 463
16.3 使用脚本 464
16.4 本章小结 465
第五篇 Struts2 技术介绍
第17章 开发Struts2应用 468
17.1 Struts2简介 468
17.1.1 下载Struts2 468
17.1.2 Struts2架构 470
17.2 配置Struts2应用 471
17.2.1 web.xml 472
17.2.2 struts.xml 472
17.2.3 struts.properties 483
17.3 开发Struts2应用 484
17.3.1 使用Eclipse开发Struts2应用 484
17.3.2 Tomcat中的Struts2应用 491
17.3.3 使用Ant发布Struts2应用 491
17.4 本章小结 492
第六篇 实例系统的开发
第18章 简单论坛系统开发 496
18.1 简单论坛系统需求 496
18.2 界面设计 497
18.2.1 用户登录页面 497
18.2.2 用户注册页面 498
18.2.3 注册成功页面 499
18.2.4 文章列表页面 500
18.2.5 文章浏览页面 501
18.2.6 发表文章页面 501
18.3 Web系统开发 502
18.3.1 新建SimpleForum工程 502
18.3.2 SimpleForum系统架构 503
18.3.3 开发模型 504
18.3.4 开发视图 508
18.3.5 开发控制器 514
18.4 测试简单论坛系统 517
18.5 本章小结 520
第19章 使用Struts2开发简单论坛系统 522
19.1 系统设计 522
19.1.1 MVC框架设计 522
19.1.2 Action设计 523
19.2 系统开发 524
19.2.1 搭建工程 524
19.2.2 开发模型 526
19.2.3 开发视图 526
19.2.4 开发控制器 530
19.2.5 配置应用 534
19.3 本章小结 535
贯通Java Web开发三剑客1.jpg