jsp Cookie 相关 , Session 相关

本文详细介绍了在JSP中如何设置和读取Cookie,包括Cookie的生命周期管理和通过setMxAge方法删除Cookie的过程。同时,深入探讨了HttpSession的使用,包括setAttribute, getAttribute等方法,以及如何配置session的最大活动时间。

1,Cookie的在jsp的设置

// a.jsp中设置Cookie 值

<%
    Cookie cookie1 = new Cookie("aaa","AAA");

   cookie1.getMxAge(60*60);  //设置失效时间为1个小时,不设置则相对于浏览器关闭,则cookie失效
    response.addCookie(cookie1);
    Cookie cookie2 = new Cookie("bbb","BBB");
    response.addCookie(cookie2);
%>

//b.jsp中取出Cookie值

<%
    Cookie[] cookies = request.getCookies();
    if(cookies != null){
        for(Cookie c: cookies){
            out.print(c.getName()+":"+c.getValue());
        }
    }
    
%>

当设置Cookie为 setMxAge(0)时,同名的cookie 当即被删除

 

2,访问路径是否包含Cookie路径 , 包含就带上cookie的变量和值 ,不包含就不带,通俗说就是,不能使用! 

 

HttpSession 相关

 

HttpSession 三个方法

setAttribute(), getAttribute() ,removeAttribute()

String getId()  获取sessionId

int getMaxInactiveInterval()  获取session最大有效期

void invalidate() ,让session失效,这个最常用,退出登录时必用

boolean isNew() 查看session 是否为新

在web.xml中配置session 的最大活动时间

<session-config>

    <session-timeout>30</session-tiemout>

</session-config>

RUL 重写 在禁用 cookie时会用到

session 依赖Cookie

response.encodeURL(String url) 该方法会对url智能的重写,当请求中没有归还sessonid这个cookie

该方法会重写url,否则不会重写

例如 ,<a href="/day101/Aservlet;sessionid=A889D998F999SFD09FD99998F">

response.encodeURL("/day101/Aservlet") , 这是ID就会被传递过去,

得到session的值

 

<%=session.getAttribute("userName") %>     在JSP 页面 这两种方法是相同的           ${userName }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值