第1章 Velocity入门 1
1.1 Velocity简介 1
1.1.1 在网络中使用Velocity 1
1.1.2 Velocity如何工作 1
1.1.3 Velocity与Turbine结合使用 2
1.1.4 平台兼容性 2
1.2 Velocity与JSP的比较 2
1.2.1 MVC设计模型简介 2
1.2.2 一个简单的例子——Hello World 3
1.2.3 编译与生成 6
1.2.4 错误处理 11
1.2.5 JavaBeans 12
1.2.6 标记库 14
1.2.7 应用程序实例的比较 16
第2章 下载和安装 18
2.1 JavaTM 2 SDK的下载和安装 18
2.1.1 JavaTM 2 SDK的简介 18
2.1.2 JavaTM 2 SDK的下载 19
2.1.3 JavaTM 2 SDK的安装 24
2.2 Ant的下载和安装 28
2.2.1 Ant的下载 28
2.2.2 Ant的安装 29
2.3 Velocity的下载和安装 30
2.3.1 Velocity的下载 30
2.3.2 Velocity的安装 32
第3章 Velocity模板语言 43
3.1 Velocity模板语言基础 43
3.1.1 VTL初步接触 43
3.1.2 在HTML文档中嵌入VTL程序 43
3.1.3 如何调试本章实例 45
3.2 VTL中的引用 51
3.2.1 标识符的命名 51
3.2.2 变量 52
3.2.3 属性 53
3.2.4 方法 54
3.3 VTL的运算符 55
3.3.1 赋值运算符 55
3.3.2 数学运算符 55
3.3.3 逻辑运算符 57
3.3.4 关系运算符 59
3.3.5 范围运算符 59
3.4 VTL的表达式 60
3.4.2 单目表达式(Unary-expression) 61
3.4.1 主表达式(Primary-expression) 61
3.4.3 乘法表达式(Multiplicative-expression) 62
3.4.4 加法表达式(Additive-expression) 62
3.4.5 关系表达式(Relational-expression) 63
3.4.6 等于表达式(Equality-expression) 63
3.4.7 条件与表达式(Conditional-and-expression) 64
3.4.8 条件或表达式(Conditional-or-expression) 64
3.5 VTL的指令 65
3.5.1 #set指令 65
3.5.2 条件指令#if/#elseif/#else 66
3.5.3 循环指令#foreach 69
3.5.4 包含指令#include 70
3.5.5 解析指令#parse 71
3.5.6 停止指令#stop 76
3.5.7 宏指令#macro 77
3.6 VTL的书写格式与风格 80
3.6.1 VTL程序的总体书写格式 80
3.6.2 引用的书写格式 80
3.6.3 VTL中的注释 82
3.6.4 特殊字符的转义 82
4.1.1 Java应用 86
4.1 Java应用及Java Applet概述 86
第4章 Java程序设计基础 86
4.1.2 Java Applet概述 87
4.2 Java程序设计基础 91
4.2.1 变量和数据类型 91
4.2.2 运算符和表达式 92
4.2.3 控制语句 95
4.2.4 数组 100
4.3 Java面向对象的程序设计 102
4.3.1 对象 102
4.3.2 类 103
4.3.3 子类、父类和继承 107
4.3.4 程序包、接口和异常处理 109
4.3.5 I/O类和系统类 112
4.3.6 Java的线程机制 116
4.4 Java网络设计 124
4.4.1 用URL类访问网络资源 124
4.4.2 Java的socket通信机制 126
4.4.3 无连接的数据报(UDP)通信 128
第5章 Servlet引擎及其实例 132
5.1 Java Servlet技术简介 132
5.1.1 什么是Java Servlet 132
5.1.2 Servlet的结构与生命周期 134
5.1.3 编写Servlet程序基础 136
5.1.4 init()方法和destroy()方法的重载 139
5.1.5 一个Servlet中断的多线程处理 141
5.1.6 Servlet的属性 142
5.1.7 Servlet实例——Hello World! 143
5.2 Tomcat的下载、安装和配置 145
5.2.1 Tomcat简介 145
5.2.2 Tomcat的版本信息 146
5.2.3 Tomcat 3.2.2的下载 146
5.2.4 Tomcat 3.2.2的安装 148
5.2.5 Tomcat的批处理文件 152
5.2.6 Tomcat 3.2.2的配置 154
5.3 在Apache httpd Server环境下配置Tomcat 156
5.3.1 Apache httpd Server的主要特性 156
5.3.2 Apache httpd Server的下载和安装 157
5.3.3 Apache httpd Server的配置和测试 160
5.4 在IIS环境下配置Tomcat 163
5.4.1 IIS 5.0的主要特性 164
5.4.2 IIS 5.0的安装 165
5.4.3 在IIS 5.0的环境下配置Tomcat 168
6.1.1 Velocity应用程序开发与Velocity模板语言的比较 176
6.1 Velocity应用程序开发特点与实例 176
第6章 Velocity应用程序开发基础 176
6.1.2 Velocity应用程序开发基本框架 177
6.2 Velocity中的模板处理 180
6.2.1 Resource类 180
6.2.2 Template类 184
6.3 Velocity中的Context对象 189
6.3.1 VelocityContext类 190
6.3.2 在#foreach()中支持可复位的对象 194
6.3.3 Context链接 195
6.4 Velocity中的输入输出处理 196
6.3.4 在模板中创建的对象 196
6.4.1 java.io.writer类 197
6.4.2 Velocity Writer类 199
第7章 Velocity基于Servlet的程序设计 205
7.1 Velocity基于Servlet的开发与配置 205
7.1.1 GenericServlet类 205
7.1.2 HttpServlet类 209
7.1.3 VelocityServlet类简介 214
7.1.4 handleRequest()方法的比较 220
7.1.5 Servlet程序设计框架 221
7.1.6 Servlet程序设计的配置 223
7.2.1 输出姓名列表 225
7.2 Servlet程序设计实例 225
7.2.2 设置并读取Cookie数据 230
第8章 Velocity通用程序开发 237
8.1 Velocity应用程序类 237
8.1.1 FieldMethodizer类 237
8.1.2 Velocity类 239
8.2 Velocity开发通用程序实例 247
8.2.1 通用程序开发实例1 247
8.2.2 通用程序开发实例2 252
9.1.1 EventHandler 256
9.1.2 MethodExceptionEventHandler 256
9.1 事件处理类 256
第9章 Velocity事件处理 256
9.1.3 NullSetEventHandler 257
9.1.4 RefferenceInsertionEventHandler 257
9.1.5 EventCartridge类 257
9.1.6 Velocity的事件接口 260
9.2 事件处理举例 261
9.2.1 Velocity事件处理框架 261
9.2.2 Velocity事件处理程序实例 263
10.1.1 配置关键字和值 276
10.1 Velocity资源配置概述 276
第10章 Velocity的配置 276
10.1.2 配置日志系统 280
10.1.3 配置资源装载器 281
10.2 Velocity的日志配置类及应用实例 284
10.2.1 LogSystem接口 284
10.2.2 AvalonLogSystem类 284
10.2.3 Log4LogSystem类 285
10.2.4 LogManager类 287
10.2.5 VelocityFormatter类 288
10.2.6 Velocity日志配置及应用实例 289
11.1.1 XML背景介绍 292
第11章 Velocity与XML 292
11.1 XML和JDOM 292
11.1.2 JDOM简介 301
11.2 Velocity对XML的支持 303
11.2.1 Velocity处理XML技术概述 303
11.2.2 Velocity的XML转换工具Anakia 305
11.2.3 org.apache.velocity.anakia包 308
11.2.4 XML应用实例 315
附录A Velocity提供的Java开发包 321
附录B Velocity Java类表 324