JavaWeb-servlet-003会话技术

2021/5/7 1:25:11

本文主要是介绍JavaWeb-servlet-003会话技术,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

会话技术
一次会话:浏览器端第一次向服务器端发送请求,会话建立,直到有一方断开
功能:共享数据。(因为HTTP是无状态的,每个请求之间独立,不共享数据)
Cookie:客户端会话技术
1、常用方法
(1)服务器端接受浏览器端的cookie

 	Cookie[]  cookies = request.getCookies(); 

(2)浏览器端收到服务器端的cookie

 	Cookie cookie = new Cookie(String name, String value);
  	response.addCookie(Cookie cookie);

2、注意事项
(1)一次可以发送多个cookie
(2)cookie存放中文需要URL编解码(http请求报文里边都是URL格式)
(3)cookie保存时间:默认,一次会话
setMaxAge(int seconds)
正数:将Cookie数据写到硬盘的文件中。持久化存储。并指定cookie存活时间,时间到后,cookie文件自动失效
负数:默认值
零:删除cookie信息
(4)cookie共享问题:
同一服务器不同项目:默认不共享;共享:setPath("/")
不同服务器之间:setDomain(String path):如果设置一级域名相同,那么多个服务器之间cookie可以共享
eg: setDomain(".baidu.com"),那么tieba.baidu.com和news.baidu.com中cookie可以共享
3、作用:
(1)一般用于存储少量的不太敏感的数据
(2)不登录的情况下,完成服务器端对浏览器端的客户识别
注意:
编解码代码:

 	String str_date = sdf.format(date);
	//URL编码
	str_date = URLEncoder.encode(str_date,"utf-8");
	cookie.setValue(str_date);	
	String value = cookie.getValue();
	//URL解码:
	value = URLDecoder.decode(value,"utf-8");
	System.out.println("解码后:"+value);

Session:服务器端会话技术



这篇关于JavaWeb-servlet-003会话技术的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程