目录
1 Session概念
概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中。HttpSession
原理:Session的实现是依赖于Cookie的。
特点:1. session用于存储一次会话的多次请求的数据,存在服务器端 2. session可以存储任意类型,任意大小的数据
销毁:session销毁有三种方式
方式1. 服务器关闭session销毁
方式2. session对象调用invalidate()被销毁
方式3. session默认失效时间 30分钟
web.xml 选择性配置修改
<session-config>
<session-timeout>30</session-timeout>
</session-config>
| 1. 获取HttpSession对象: |
HttpSession session = request.getSession(); |
| 2. 使用HttpSession对象: |
Object getAttribute(String name) void setAttribute(String name, Object value) void removeAttribute(String name) |
@WebServlet("/sessionDemo1")
public class SessionDemo1 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
HttpSession session = req.getSession();//取HttpSession对象
session.setAttribute("msg","hello session... ...");
}
}
@WebServlet("/sessionDemo2")
public class SessionDemo2 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
HttpSession session = req.g

本文详细介绍了Session的概念,包括服务器如何在关闭后通过钝化和活化保证数据不丢失。讨论了Session的存活时间,并指出可通过设置Cookie使其在客户端保持活性。接着对比了Session与Cookie的区别,强调Session数据存储在服务器端,更安全。最后,给出了一个具体的验证码验证登录的实现案例,涵盖了从生成验证码存储到Session,到登录验证的完整流程。
最低0.47元/天 解锁文章
367

被折叠的 条评论
为什么被折叠?



