译者序
前言
致谢
第一部分
第1章 脚本简介 1
1.1 背景 1
1.2 脚本语言的定义 3
1.2.1 编译器与解释器 3
1.2.2 产品中的源代码 5
1.2.3 类型策略 6
1.2.4 数据结构 8
1.2.5 代码作为数据 9
1.2.6 小结 11
1.3 脚本语言和虚拟机 12
1.4 脚本和系统编程的对比 12
1.4.1 运行时性能 13
1.4.2 开发速度 13
1.4.3 健壮性 14
1.4.4 维护 16
1.4.5 极限编程 16
1.5 混合法 17
1.6 一个脚本案例 18
1.7 小结 18
第2章 适用脚本语言的应用程序 19
2.1 组装 19
2.1.1 UNIX Shell语言 20
2.1.2 Perl 20
2.1.3 Tcl 21
2.2 原型 21
2.3 定制 23
2.4 软件开发支持 24
2.4.1 项目构建 25
2.4.2 测试 26
2.5 运维与管理 27
2.6 用户界面编程 28
2.7 用例 29
2.7.1 Web应用程序 29
2.7.2 脚本和UNIX 33
2.7.3 游戏中的脚本 33
2.8 其他特征 34
2.8.1 可嵌入 34
2.8.2 可扩展 34
2.8.3 易于学习和使用 34
2.9 小结 35
第二部分
第3章 JVM内部的脚本语言 37
3.1 帽底乾坤 38
3.2 脚本语言概念 40
3.3 BeanShell 40
3.3.1 入门 40
3.3.2 基本语法 42
3.3.3 松类型的语法 42
3.3.4 语法风格 43
3.3.5 命令 45
3.3.6 方法 45
3.3.7 对象 46
3.3.8 实现接口 46
3.3.9 嵌入Java 47
3.4 Jython 50
3.4.1 入门 50
3.4.2 基本语法 52
3.4.3 使用Java 53
3.4.4 实现接口 54
3.4.5 异常处理 56
3.4.6 嵌入Java 56
3.4.7 小结 57
3.5 Rhino 58
3.5.1 入门 58
3.5.2 使用Java 59
3.5.3 实现接口 59
3.5.4 JavaAdapter 60
3.5.5 嵌入Java 60
3.5.6 Host Object 63
3.5.7 小结 65
3.6 Groovy 65
3.7 其他脚本语言 65
3.7.1 JRuby 65
3.7.2 Tcl/Java 66
3.7.3 JudoScript 66
3.7.4 ObjectScript 66
3.8 小结 66
第4章 Groovy 67
4.1 为什么需要Groovy 67
4.2 安装 67
4.3 运行Groovy脚本 68
4.3.1 用交互式的Shell 68
4.3.2 用交互式的控制台 69
4.3.3 执行脚本文件 69
4.4 编译Groovy脚本 70
4.4.1 依赖 70
4.4.2 Classpath 70
4.4.3 Ant Task 71
4.5 脚本结构 72
4.6 语言语法 74
4.6.1 Java兼容性 74
4.6.2 语句 74
4.6.3 松类型 75
4.6.4 类型技巧 76
4.6.5 String 78
4.6.6 GString 79
4.6.7 正则表达式 80
4.6.8 集合 81
4.6.9 逻辑分支 84
4.6.10 循环 86
4.6.11 类 88
4.6.12 操作符重载 90
4.6.13 GroovyBean 92
4.6.14 闭包 94
4.7 系统操作 101
4.7.1 文件 101
4.7.2 进程 104
4.8 嵌入Java 105
4.9 安全性 109
4.10 小结 112
第5章 高级的Groovy编程 113
5.1 GroovySQL 113
5.1.1 groovy.sql.Sql 115
5.1.2 groovy.sql.DataSet 122
5.2 Groovlet 124
5.3 Groovy模板 129
5.4 GroovyMarkup 131
5.4.1 groovy.xml.MarkupBuilder 132
5.4.2 groovy.util.NodeBuilder 134
5.4.3 groovy.xml.SaxBuilder 136
5.4.4 groovy.xml.DomBuilder 137
5.4.5 groovy.xml.Namespace 139
5.4.6 groovy.util.BuilderSupport 139
5.5 Groovy和Swing 141
5.5.1 TableLayout 142
5.5.2 TableModel 144
5.6 小结 145
第6章 Bean Scripting Framework 146
6.1 Bean Scripting Framework简介 146
6.2 入门 147
6.3 基本概念 147
6.3.1 架构 147
6.3.2 脚本语言的注册 148
6.3.3 管理器和引擎初始化 149
6.3.4 使用脚本 150
6.4 使用脚本文件 153
6.5 方法和函数 154
6.5.1 call() 154
6.5.2 apply() 156
6.6 数据绑定 158
6.6.1 注册Bean 158
6.6.2 声明Bean 160
6.7 编译 161
6.8 应用程序 165
6.8.1 JSP 166
6.8.2 Xalan-J(XSLT) 169
6.9 小结 174
第三部分
第7章 在Java实践脚本 175
7.1 单元测试 175
7.1.1 JUnit基础知识 176
7.1.2 GroovyTestCase类 178
7.1.3 断言方法 179
7.1.4 测试套件 181
7.1.5 用脚本作为单元测试案例 183
7.1.6 小结 183
7.2 交互式调试 183
7.3 构建工具 186
7.3.1 BSF支持 189
7.3.2 GroovyMarkup(AntBuilder) 191
7.3.3 小结 195
7.4 Shell Scripting 196
7.4.1 Classpath 196
7.4.2 实例 197
7.5 管控和管理 199
7.6 小结 204
第8章 脚本模式 205
8.1 脚本化组件模式 206
8.1.1 问题 206
8.1.2 解决方案 206
8.1.3 结果 207
8.1.4 范例代码 207
8.1.5 相关模式 208
8.2 中介者模式(胶合代码模式) 208
8.2.1 问题 208
8.2.2 解决方案 209
8.2.3 结果 210
8.2.4 范例代码 210
8.2.5 相关模式 217
8.3 脚本对象工厂模式 217
8.3.1 问题 217
8.3.2 解决方案 218
8.3.3 结果 218
8.3.4 范例代码 218
8.3.5 相关模式 220
8.4 观察者(广播)模式 220
8.4.1 问题 220
8.4.2 解决方案 221
8.4.3 结果 221
8.4.4 范例代码 222
8.4.5 相关模式 227
8.5 扩展点模式 227
8.5.1 问题 227
8.5.2 解决方案 227
8.5.3 结果 228
8.5.4 范例代码 228
8.5.5 相关模式 231
8.6 Active File模式 231
8.6.1 问题 231
8.6.2 解决方案 231
8.6.3 结果 231
8.6.4 范例代码 231
8.7 小结 235
第四部分
第9章 Scripting API 237
9.1 动机和历史 237
9.2 简介 238
9.3 入门 239
9.4 架构 239
9.5 发现机制 240
9.6 引擎元数据 241
9.7 创建和注册脚本引擎 242
9.7.1 创建方法 243
9.7.2 注册方法 245
9.8 执行求值 245
9.9 ScriptException 248
9.10 绑定 249
9.10.1 引擎范围 249
9.10.2 全局范围 253
9.10.3 脚本上下文 256
9.11 代码生成 265
9.11.1 输出语句 265
9.11.2 方法调用语法 266
9.11.3 程序 267
9.12 其他引擎接口 268
9.12.1 可调用 268
9.12.2 可编译 271
9.13 线程 273
9.14 动态绑定 274
9.15 小结 276
第10章 Web Scripting Framework 277
10.1 架构 277
10.1.1 上下文 277
10.1.2 Servlet 278
10.1.3 交互 279
10.2 入门 280
10.3 配置 282
10.3.1 取消脚本 282
10.3.2 脚本路径 283
10.3.3 脚本方法 283
10.3.4 语言许可 284
10.3.5 显示结果 284
10.4 绑定 286
10.4.1 应用程序 286
10.4.2 请求 287
10.4.3 响应 289
10.4.4 Servlet 290
10.5 include方法 290
10.6 forward方法 292
10.7 会话共享 293
10.8 语言标签 296
10.9 线程问题 298
10.10 架构挑战 298
10.10.1 Java与PHP应用程序的整合 299
10.10.2 PHP Web应用程序中的Java业务逻辑 299
10.10.3 Java Web应用程序中的PHP视图 301
10.11 小结 302
第五部分
附录A Groovy的安装 303
附录B Groovy的IDE支持 305
附录C 安装JSR 223 307
· · · · · · (
收起)
评分
☆☆☆☆☆
感觉一般般,冲着Groovy章节买得
评分
☆☆☆☆☆
唯一一本讲解java脚本的书籍.涵盖groovy,rihno,jython等等.很不错.一口气读完了.因为自己的项目也一直在用rihno!
评分
☆☆☆☆☆
唯一一本讲解java脚本的书籍.涵盖groovy,rihno,jython等等.很不错.一口气读完了.因为自己的项目也一直在用rihno!
评分
☆☆☆☆☆
感觉一般般,冲着Groovy章节买得
评分
☆☆☆☆☆
感觉一般般,冲着Groovy章节买得
评分
☆☆☆☆☆
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
评分
☆☆☆☆☆
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
评分
☆☆☆☆☆
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
评分
☆☆☆☆☆
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...
评分
☆☆☆☆☆
感觉里面涉及到的技术比较老了, 现在说到java脚本语言, 谁会提到beanshell之流, 我只看了里面关于groovy相关的内容, 感觉里面介绍的groovy都比较过时了, 比如不支持for循环, 我不知道groovy哪个版本不支持和的, 反正我使用的几个版本(1.6+)没有这样的问题. 翻译的一般, 而且有...