A:对于初学WEB的同学来说,第一个问题就是为什么要学Cookie?(对于这个问题等你学到一定程度就知道了)
这个就得首先解释下Http协议的几个特点了:1,Http协议是无连接性:无连接的含义是限制每次连接只处理一个请求,服务器处理完客户的请求,并收到客户的应答后,即断开连接。
2,http协议无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。
现在对为什么要使用Cookie应该有一定了解了吧!
然后我再来举个例子加深对Cookie的理解
如你在淘宝上买了件东西,然后加入收藏,但收藏页面怎么知道你是那个客户收藏的,这时只要你通过Cookie把客户的账号和密码告诉它,它不是就知道你是谁的东西了吗?这就是Cookie的作用了。还有Cookie主要是保持在客户端里的。
代码如下:
第一步:创建Cookie
然后写到客户端去就可以了
Cookie cookie = new Cookie("uid","admin");
response.addCookie(cookie);
第二步:获得Cookie(在需要获得的页面获取即可)
Cookie []cookies=request.getCookies();
for (Cookie c:cookies){
System.out.println(c.getName());
System.out.println(c.getValue());
}
B:只要你对Cookie理解了,那么学Session就很简单了,它们的目的是一样的都是为了保持客户的账号和密码,只不过是过程不同,Cookie是保存在客户端的而Session是保存在服务端的
代码如下:
第一步:创建Session
HttpSession session = request.getSession();
request.setAttribute("user",user);
第二步:获得session
request.getAttribute();
C:Session和Cookie的主要区别:
Cookie是保存在客户端的
Session是保存在服务端的
客户端的Cookie是可以禁止用的而Session如果不是同过Cookie传的话是禁止不了的。