如何使用Grails Http会话

时间:2011-08-08 20:50:28

标签: http session grails

我是Grails的新手,我正忙着参加会议..

在控制器中,如何检查用户是否具有有效会话?在Java / Spring MVC中,它是简单的request.getSession(),那么Grails中的常规是什么?

如何从会话中添加/获取值?

谢谢,

4 个答案:

答案 0 :(得分:4)

Grails使用与Java EE相同的servlet API,但它提供了一些额外的便利方法。在Grails控制器,taglib或GSP中,隐含变量requestsession引用当前HTTPServletRequestHttpSession

以下是Grails如何使用这些对象稍微方便一些的示例:

爪哇

Object fooAttr = session.getAttribute("foo");

Grails的

def fooAttr = session["foo"]

答案 1 :(得分:3)

您可以使用“会话”对象

grails session

答案 2 :(得分:1)

用户登录后,在会话中设置值(用户名)。 例如,您的域类是User.groovy。因此,在您在控制器中的登录方法中,您可以执行以下操作:

def login()
{
    def u = new User()
    u.properties[
            'login',
            'password',
            ] = params        
    if(u.save())
    session.user = u
}

之后,每当您想要检查会话是否仍然开启时,只需执行

if(session.user != null)
//your code

答案 3 :(得分:0)

grails中的

会话对象有两个方法,即getAttribute()和setAttribute(),可用于在会话中获取/设置值。