比较Cookie、Session、Application

来源:互联网 发布:javascript 书 推荐 编辑:程序博客网 时间:2024/05/17 06:21

Cookie、Session和Application都是用来传递值的,但是它们的传值范围和存储效果有所不同。


在session.jsp页面中获取首页输入的姓名,并通过Cookie或者Session或者Application保存然后再传递到result.jsp页面:


Cookie:

String name = request.getParameter("name");//获取用户填写的用户名

//创建Cookie

Cookie mycook = new Cookie("name",name);

response.addCookie(mycook);

//获取保存在Cookie范围内的对象

String nameCookie = "";

Cookie[] cook = request.getCookies();

for(int i=0;i<cook.length;i++){

nameCookie+=cook[i].getValue()+"第"+i+"次<br/>";

}

Session:

String name = request.getParameter("name");//获取用户填写的用户名

//创建Session

session.setAttribute("name",name);//将用户名保存在session对象中

//获取保存在session范围内的对象

String nameSession = (String)session.getAttribute("name");


Application:

String name = request.getParameter("name");//获取用户填写的用户名

//创建Application

application.setAttribute("name",name);

//获取保存在Application范围内的对象

String nameApp = (String)application.getAttribute("name");


总结:

Cookie保存值时会同时传入另一个值,这样就会使在读取数据的过程中出现错误。

Session可以实现单一的页面之间的传值,不会同时存入其他的信息,但是Session所保存的值只适用于当前访问进程中,再次重载会丢失数据。

Application也可以实现单一的页面之间的传值且不会存入其他值,同时Application能始终保存该值,就算页面重载也不会丢失。


原创粉丝点击