翻译小组成员:

如果出现乱码,请使用UTF-8编码浏览!!!

目录

1. 入门
2. 使用入门
2.1 下载与安装
2.2 升级Grails 1.0.x
2.3 创建应用程序
2.4 Hello World 示例
2.5 在IDE中使用设置
2.6 规约胜于配置
2.7 运行应用程序
2.8 测试应用程序
2.9 部署应用程序
2.10 创建Artefacts(工件)
2.10 支持的Java EE容器
2.11 生成应用程序
3. 配置
3.1 基础配置
3.1.1 内置选项
3.1.2 日志
3.2 环境
3.3 数据源
3.3.1 数据源与环境
3.3.2 JNDI 数据源
3.3.3 自动数据源迁移
3.4 外部配置
3.5 版本控制
4. 命令行
4.1 创建Gant 脚本
4.2 重用 Grails 脚本
4.3 脚本Events
4.4 自定义构建
4.5 Ant和Maven
5. 对象关联映射 (GORM)
5.1 快速入门指南
5.1.1 CRUD基础
5.2 GORM中进行Domain建模
5.2.1 GORM中的关联
5.2.1.1 One-to-one
5.2.1.2 One-to-many
5.2.1.3 Many-to-many
5.2.1.4 集合类型基础
5.2.2 GORM中的组合
5.2.3 GORM中的继承
5.2.4 Sets, Lists 和 Maps
5.3 持久化基础
5.3.1 保存与更新
5.3.2 删除对象
5.3.3 级联更新和删除
5.3.4 立即加载和延迟加载
5.3.5 悲观锁和乐观锁
5.4 GORM查询
5.4.1 动态查询器
5.4.2 条件查询
5.4.3 Hibernate查询语言(HQL)
5.5 高级GORM特性
5.5.1 事件和自动实现时间戳
5.5.2 自定义ORM映射
5.5.2.1 表名和列名
5.5.2.2 缓存策略
5.5.2.3 继承策略
5.5.2.4 自定义数据库标识符
5.5.2.5 复合主键
5.5.2.6 数据库索引
5.5.2.7 乐观锁和版本定义
5.5.2.8 立即加载和延迟加载
5.5.2.9 自定义级联行为
5.5.2.10 自定义Hibernate的类型
5.5.3 缺省排序
5.6 事务编程
5.7 GORM与约束
6. Web层
6.1 控制器(Controllers)
6.1.1 理解控制器(Controller)与操作(Action)
6.1.2 控制器(Controller) 与作用域
6.1.3 Models(模型)与Views(视图)
6.1.4 重定向与链接
6.1.5 Controller(控制器)拦截器
6.1.6 数据绑定
6.1.7 XML与JSON响应
6.1.8 文件上传
6.1.9 命令对象
6.1.10 处理重复的表单提交
6.2 Groovy Server Pages
6.2.1 GSP基础
6.2.1.1 变量与作用域
6.2.1.2 逻辑和迭代
6.2.1.3 页面指令
6.2.1.4 表达式
6.2.2 GSP标签
6.2.2.1 变量与作用域
6.2.2.2 逻辑和迭代
6.2.2.3 搜索和过滤
6.2.2.4 链接和资源
6.2.2.5 表单和字段
6.2.2.6 标签作为方法调用
6.2.3 视图(View)与模板(Templates)
6.2.4 使用Sitemesh布局Sitemesh
6.2.5 Sitemesh 内容块
6.3 标签库
6.3.1 变量与作用域
6.3.2 简单标签
6.3.3 逻辑标签
6.3.4 迭代标签
6.3.5 标签命名空间
6.3.6 使用JSP 标签库
6.4 URL映射
6.4.1 映射到控制器(Controller)和操作(Action)
6.4.2 嵌入式变量
6.4.3 映射到视图(Views)
6.4.4 映射到响应代码
6.4.5 映射到HTTP方法
6.4.6 映射通配符
6.4.7 自动重写链接
6.4.8 应用约束
6.5 Web流(Flow)
6.5.1 开始与结束状态
6.5.2 操作(Action)状态和视图(View)状态
6.5.3 流(Flow)执行事件
6.5.4 流(Flow)的作用域
6.5.5 数据绑定和验证
6.5.6 子流程和会话
6.6 过滤器
6.6.1 应用过滤器
6.6.2 过滤器(Filters)类型
6.6.3 变量与作用域
6.7 Ajax
6.7.1 用Prototype实现Ajax
6.7.1.1 远程链接
6.7.1.2 内容更新
6.7.1.3 远程表单提交
6.7.1.4 Ajax事件
6.7.2 用Dojo实现Ajax
6.7.3 用GWT实现Ajax
6.7.4 服务端的Ajax
6.8 内容协商
7. 验证
7.1 声明Constraints(约束)
7.2 验证约束
7.3 客户端验证
7.4 验证与国际化
7.5 验证非Domain 与命令行对象
8. Service 层
8.1 声明式事务处理
8.2 服务作用域
8.3 依赖注入与服务
8.4 在Java中使用服务
9. 测试
9.1 单元测试
9.2 集成测试
9.3 功能测试
10. 国际化
10.1 理解消息绑定
10.2 修改本地化
10.3 读取消息
10.4 脚手架和i18n
11. 安全性
11.1 防止攻击
11.2 编码和解码对象
11.3 认证
11.4 安全插件
11.4.1 Acegi
11.4.2 JSecurity
12. 插件
12.1 创建和安装插件
12.2 插件仓库
12.3 理解插件的结构
12.4 提供基础的工件
12.5 评估规约
12.6 参与构建事件
12.7 运行时配置中的钩子
12.8 运行时添加动态方法
12.9 参与自动重载
12.10 理解插件加载的顺序
13. Web服务
13.1 REST
13.2 SOAP
13.3 RSS 和 Atom
14. Grails和 Spring
14.1 Grails内部实现
14.2 配置其他Bean
14.3 运行时Spring与Beans DSL
14.4 The BeanBuilder DSL Explained
14.5 属性占位符配置
14.6 属性重载
15. Grails 与 Hibernate
15.1 通过Hibernate注解映射
15.2 进一步阅读
16. 脚手架
17. 部署