java cookie和session

会话技术分类:

1,客户端的会话技术:将这一次会话范围之内的信息保存在客户端,这就是cookie

2,服务器端的会话技术:将这一次会话信息保存到服务器,这就是session

cookie

@WebServlet(name = "Test3Servlet", value = "/Test3Servlet")
public class Test3Servlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //向客户端添加cookie
        Cookie cookie = new Cookie("username", "张三");
        response.addCookie(cookie);

        //从request中读取cookie
        Cookie[] cookies = request.getCookies();
        if(cookies!=null){
            for (Cookie cookie1 : cookies) {
                if(cookie1.getName()=="username"){
                    System.out.println(cookie1.getValue());
                }
            }
        }
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

session

当调用request.getSession时,会判断是否有一个名为JSESSIONID的cookie。

如果没有那么会创建一个session,并且将session的id用cookie方式存到浏览器。

session默认在30分钟内如果没有人使用,服务器就会销毁。或者手动调用session对象的invalidate方法,或者服务器异常关闭也会销毁.

posted @ 2022-07-17 14:05  在线电影制作人  阅读(6)  评论(0)    收藏  举报  来源