查看 org.codehaus.groovy.grails.web.plugins.support.WebMetaUtils,其中有一个方法,看完就明白了
/**
* This creates the difference dynamic methods and properties on the controllers. Most methods
* are implemented by looking up the current request from the RequestContextHolder (RCH)
*/
static registerCommonWebProperties(MetaClass mc, GrailsApplication application) {
def paramsObject = { -> RCH.currentRequestAttributes().params }
def flashObject = { -> RCH.currentRequestAttributes().flashScope }
def sessionObject = { -> RCH.currentRequestAttributes().session }
def requestObject = { -> RCH.currentRequestAttributes().currentRequest }
def responseObject = { -> RCH.currentRequestAttributes().currentResponse }
def servletContextObject = { -> RCH.currentRequestAttributes().servletContext }
def grailsAttrsObject = { -> RCH.currentRequestAttributes().attributes }
// the params object
mc.getParams = paramsObject
// the flash object
mc.getFlash = flashObject
// the session object
mc.getSession = sessionObject
// the request object
mc.getRequest = requestObject
// the servlet context
mc.getServletContext = servletContextObject
// the response object
mc.getResponse = responseObject
// The GrailsApplicationAttributes object
mc.getGrailsAttributes = grailsAttrsObject
// The GrailsApplication object
mc.getGrailsApplication = { -> RCH.currentRequestAttributes().attributes.grailsApplication }
mc.getActionName = { -> RCH.currentRequestAttributes().actionName }
mc.getControllerName = { -> RCH.currentRequestAttributes().controllerName }
mc.getWebRequest = { -> RCH.currentRequestAttributes() }
}
分享到:
相关推荐
Views 是 Grails 应用程序中的用户界面部分,通常使用 Groovy Server Pages (GSP) 文件编写。GSP 结合了 HTML、CSS 和 JavaScript 以及 Groovy 语法,允许动态生成页面内容。 **Services** Services 是可重用的...
总之,《Grails中文参考手册》覆盖了从安装、创建应用到部署和配置的全过程,对于希望掌握Grails框架的开发者来说,是一份不可或缺的学习资源。通过深入学习和实践,你将能够充分利用Grails的强大功能,快速构建出高...
开发者可以很方便地在Grails项目中集成这些插件来增强应用程序的能力。 Grails框架的中文入门资料较为稀缺,因而这份文档显得尤其宝贵。文档涵盖了从安装、配置、Web开发、服务层、测试、国际化、安全到插件使用等...
在Grails中实现用户登录功能是构建任何Web应用的基础,它确保了数据的安全性和用户权限的管理。本示例将详细解释如何在Grails中创建一个用户登录系统,特别是对于管理员用户的特定权限控制。 **1. 配置环境** 首先...
1. 学习入口:对于中文开发者来说,中文文档降低了学习Grails的门槛,帮助理解和掌握Grails的基本概念、框架结构、开发工具以及最佳实践。 2. 快速上手:文档通常包含安装指南、教程、API参考等,为开发者提供从零...
Grails1.1最新 中文 文档 当今的Java Web开发技术显得过于复杂,相对于它本身的需要来说。现在主流的Java Web框架也是异常复杂,而且没有很好的遵循 Don't Repeat Yourself (DRY) 法则。 因此我们要以一种新的思维...
Grails是个一栈式开发框架,它尝试通过核心技术和插件技术来解决许多Web开发难题。Grails包含了如下内容: 由 Hibernate 构成的易于使用的 Object Relational Mapping (ORM)层 称为 Groovy Server Pages (GSP) 的...
通过定义Groovy类并使用Grails的GORM(Grails Object Relational Mapping)来与数据库交互,可以轻松实现数据持久化。 4. **控制器(Controllers)** 控制器负责处理HTTP请求,调用业务逻辑并生成响应。Grails的...
- 通过更改`BuildConfig.groovy`文件中的`targetContainer`参数来指定目标容器。 **生成应用** - 使用`grails generate-app`命令生成应用的基本结构。 **创建工件** - 使用`grails create-*`系列命令创建各种类型...
总结来说,Grails 是一个强大的Web开发框架,借助Groovy的灵活性和Java生态的稳定性,为开发者提供了高效的开发环境。无论是初学者还是经验丰富的开发者,都能从Grails的简洁设计和强大功能中受益。通过深入学习...
1. **创建上传类**:在Grails项目中,首先需要创建一个工具类,例如`UpLoad.java`,来处理文件的上传逻辑。这个类中定义了`upLoad`方法,接收`MultipartHttpServletRequest`和`CommonsMultipartFile`类型的参数。 2...
在Eclipse中搭建Grails项目可能相对复杂,但通过以下步骤,即使是初学者也能顺利进行。 1. **Grails环境安装** - 首先,你需要从Grails官网(http://grails.org/)下载最新版的Grails安装包。 - 安装完成后,确保...
在Grails这个基于Groovy的敏捷开发框架中,实现分页功能对于任何Web应用程序都是至关重要的,特别是当处理大量数据时。Grails提供了一些内置的支持,但如果你需要在自定义的控制器和视图中实现分页,那么就需要遵循...
Grails 最新的 v1.1版的中文文档,chm格式,Grails是一套快速开发Web应用的开源框架,基于Groovy编程语言,并构建于Spring、Hibernate和其它标准Java框架之上,能为大家带来超高效率的一站式框架。
- **Grails命令行工具**: 提供了一系列命令来快速创建项目、生成控制器、领域类等,便于开发和调试。 **3. 中文API文档的重要性** 对于中文开发者来说,Grails的中文API文档是学习和使用框架的关键资源。它详细...
这些文档可以帮助你深入了解 Grails 的各项特性和使用方法,特别是对于初学者来说,是一份宝贵的参考资料。通过阅读文档,你可以逐步掌握 Grails 开发技能,从而高效地构建出高质量的 Web 应用。
总结来说,Grails 过滤器是 Grails 框架中一种强大的工具,它们提供了一种优雅的方式来处理应用程序的共性问题,减少了重复代码,并增强了代码的复用性。理解和熟练使用过滤器对于提升 Grails 开发效率至关重要。