`

grails 中的session、params哪里来的

 
阅读更多

查看 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() }
    }
 
分享到:
评论

相关推荐

    grails login

    在Grails中实现用户登录功能是构建任何Web应用的基础,它确保了数据的安全性和用户权限的管理。本示例将详细解释如何在Grails中创建一个用户登录系统,特别是对于管理员用户的特定权限控制。 **1. 配置环境** 首先...

    Grails 的过滤器(Grails Filters)

    总结来说,Grails 过滤器是 Grails 框架中一种强大的工具,它们提供了一种优雅的方式来处理应用程序的共性问题,减少了重复代码,并增强了代码的复用性。理解和熟练使用过滤器对于提升 Grails 开发效率至关重要。

    一步一步学grails(6)

    ### Grails 入门教程知识点总结 ...这对于初学者来说是一个很好的实践项目,可以帮助理解Grails框架的基本组件和工作流程。同时,还可以进一步扩展安全性相关的功能,如密码加密、角色权限管理等。

    一步一步学grails(12)

    GSP 是 Grails 框架中用于构建动态网页的主要技术之一,类似于 Java 中的 JSP。它允许开发者将 Groovy 代码嵌入到 HTML 页面中,从而实现动态数据展示。 ##### 示例解析: 在 `grails-app/views/planning/show.gsp`...

    5G关键技术及进展.pdf

    5G关键技术及进展.pdf

    毕业论文-方熊表单V1.0.0 开源版-整站商业源码.zip

    毕业论文-方熊表单V1.0.0 开源版-整站商业源码.zip

    定制红米note12-5G版sunstone-V14.0.10安卓13-fast线刷下载 解锁bl后fast模式刷写

    内容概要:本文档提供了红米Note12 5G版(代号sunstone)V14.0.10安卓13系统的fast线刷包下载.;其他说明:请确保在刷机前备份重要数据,仔细阅读刷机教程并严格按照步骤操作,避免因操作不当导致设备损坏。建议在官方指导下进行刷机操作。 资源说明; 1-----刷写前提是手机必须解锁bl先。而且会在fast模式刷写固件 2-----刷写方法与官方刷写步骤一样 3-----此固件为定制初始固件。可以在fast模式刷写 4-----属于适配固件。也许有个别bug。不接受请勿下载 5-----需要一定的刷机常识与动手能力的友友刷写。 6-----资源有可复制性。下载后不支持退。请知悉 7-----定制其他需求可以在csdn私信博主 参考博文了解详细: https://csdn9.blog.csdn.net/article/details/147775365?spm=1001.2101.3001.5352

    毕业论文-活动报名小程序-整站商业源码.zip

    毕业论文-活动报名小程序-整站商业源码.zip

    3D金属打印的新进展.pdf

    3D金属打印的新进展.pdf

    毕业论文-超级视频 2.0.10-整站商业源码.zip

    毕业论文-超级视频 2.0.10-整站商业源码.zip

    毕业论文-超人配送代驾跑腿维修家政系统V1.5.10全开源解密版-整站商业源码.zip

    毕业论文-超人配送代驾跑腿维修家政系统V1.5.10全开源解密版-整站商业源码.zip

    实训商业源码-修罗-毕业设计.zip

    实训商业源码-修罗-毕业设计.zip

    ANSYS船舶与海洋工程解决方案介绍.pdf

    ANSYS船舶与海洋工程解决方案介绍.pdf

    毕业论文-彩虹易支付-整站商业源码.zip

    毕业论文-彩虹易支付-整站商业源码.zip

    ANSYS nCode高级疲劳技术培训.pdf

    ANSYS nCode高级疲劳技术培训.pdf

    毕业论文-会议报名签到抽奖系统V1.0.6 开源版-整站商业源码.zip

    毕业论文-会议报名签到抽奖系统V1.0.6 开源版-整站商业源码.zip

    毕业论文-萝卜视频-整站商业源码.zip

    毕业论文-萝卜视频-整站商业源码.zip

    基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)

    基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计),该项目是个人毕设项目,答辩评审分达到98分,代码都经过调试测试,确保可以运行!欢迎下载使用,可用于小白学习、进阶。该资源主要针对计算机、通信、人工智能、自动化等相关专业的学生、老师或从业者下载使用,亦可作为期末课程设计、课程大作业、毕业设计等。项目整体具有较高的学习借鉴价值!基础能力强的可以在此基础上修改调整,以实现不同的功能。 基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据集(毕业设计)基于python+深度学习开发的中国交通警察指挥手势识别源码+数据

    实训商业源码-医疗小程序 5.9.6-毕业设计.zip

    实训商业源码-医疗小程序 5.9.6-毕业设计.zip

    【研华科技】打造双碳智慧大脑,云领能源未来.pdf

    【研华科技】打造双碳智慧大脑,云领能源未来.pdf

Global site tag (gtag.js) - Google Analytics