java session cookie的使用
2015-07-25 15:12
441 查看
Cookie; Session; URL重写;
cookie在J2EE项目中的使用,Java中把Cookie封装成了java.servlet.http.Cookie类。每个Cookie都是该Cookie类的对象。服务器通过操作Cookie类对象,对客户端Cookie进行操作。通过request.getCookies()获取客户端提交的所有Cookie(以Cookie[]数组形式返回),通过response.addCookie(Cookiecookie)向客户端设置Cookie。Cookie对象使用key-value属性对的形式保存用户状态,一个Cookie对象保存一个属性对,一个request或者response同时使用多个Cookie。cookie的不可跨域名性和cookie的有效期。
String username = "sa";
Cookie usernameCookie = new Cookie("username", username);
response.addCookie(usernameCookie);
Session是服务器端使用的一种记录客户端状态的机制,使用上比Cookie简单一些,相应的也增加了服务器的存储压力。Session是另一种记录客户端状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查询该客户的状态就可以了。如果说Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了。Session保存在服务器端。为了获得更高的存取速度,服务器一般把Session放在内存里。每个用户都会有一个独立的Session。如果Session内容过于复杂,当大量客户访问服务器时可能会导致内存溢出。因此,Session里的信息应该尽量精简。Session在用户第一次访问服务器的时候自动创建。需要注意的是,只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静态资源并不会创建Session。如果尚未生成Session,也可以使用request.getSession(true)强制生成Session。Session生成后,只要用户继续访问,服务器就会更新Session的最后访问时间,并维护该Session。用户每访问服务器一次,无论是否读写Session,服务器都认为该用户的Session“活跃(active)”了一次。
cookie在J2EE项目中的使用,Java中把Cookie封装成了java.servlet.http.Cookie类。每个Cookie都是该Cookie类的对象。服务器通过操作Cookie类对象,对客户端Cookie进行操作。通过request.getCookies()获取客户端提交的所有Cookie(以Cookie[]数组形式返回),通过response.addCookie(Cookiecookie)向客户端设置Cookie。Cookie对象使用key-value属性对的形式保存用户状态,一个Cookie对象保存一个属性对,一个request或者response同时使用多个Cookie。cookie的不可跨域名性和cookie的有效期。
// 服务器端获取cookie Cookie[]cookies = request.getCookies(); for (int i = 0; cookies != null && i < cookies.length;i++) { Cookiecookie = cookies[i]; if("username".equals(cookie.getName())) { } } //服务器端设置cookie
String username = "sa";
Cookie usernameCookie = new Cookie("username", username);
response.addCookie(usernameCookie);
Session是服务器端使用的一种记录客户端状态的机制,使用上比Cookie简单一些,相应的也增加了服务器的存储压力。Session是另一种记录客户端状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查询该客户的状态就可以了。如果说Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了。Session保存在服务器端。为了获得更高的存取速度,服务器一般把Session放在内存里。每个用户都会有一个独立的Session。如果Session内容过于复杂,当大量客户访问服务器时可能会导致内存溢出。因此,Session里的信息应该尽量精简。Session在用户第一次访问服务器的时候自动创建。需要注意的是,只有访问JSP、Servlet等程序时才会创建Session,只访问HTML、IMAGE等静态资源并不会创建Session。如果尚未生成Session,也可以使用request.getSession(true)强制生成Session。Session生成后,只要用户继续访问,服务器就会更新Session的最后访问时间,并维护该Session。用户每访问服务器一次,无论是否读写Session,服务器都认为该用户的Session“活跃(active)”了一次。
// 服务器端获取session HttpSessionsession = request.getSession(); Stringusername = (String)session.getAttribute("username"); // 服务器端设置session HttpSessionsession = request.getSession(); session.setAttribute("username","sa");
相关文章推荐
- 快速排序java语言实现
- 自定义struts(三)--ImitateStruts实现可插拔的拦截器
- java值的传递
- Java基础之多线程
- java新手笔记22 接口示例2
- java最常见的5个错误
- eclipse设置黑色主题
- spring基础
- java新手笔记21 接口
- 从源代码分析modelDriven拦截器和params拦截器和拦截器prepare 和paramsPrepareParamsStack拦截器栈(让你的Struts2代码更简洁——如何培养框架设计能力
- myeclipse 2015 安装 aptana3.6
- JAVA环境变量配置
- Java异常处理错误
- Springmvc 默认首页的问题
- JAVA 知识片段
- Mybatis封装分页查询的java公用类
- php在eclipse的控制台console输出调试信息功能实现
- Java程序dos中编译运行
- Spring WebSocket详解
- Java二维码生成与解码工具Zxing使用