您的位置:首页 > Web前端 > JavaScript

JSP实现数据保存(web基础学习笔记四)

2015-01-18 16:38 507 查看

session对象:



//服务端设置Session属性
session.setAttribute("user", username);
//客户端接收Session
Object obj = session.getAttribute("user");
//判断是否为空,不是空就输出
if(obj==null){
//如果为空就提示用户登录
%>
<%}else{
//不为空就输出用户名,和欢迎信息
out.println("欢迎您"+obj.toString());
}
%>




Session清理机制



在服务端设置过期时间

//设置服务器端session过期日期(单位为:秒),如设置为10秒
session.setMaxInactiveInterval(10);


在客户端中设置

<%
//在客户端设置session,如点击注销之后,直接设置session过期
//第一种删除session中的数据
session.removeAttribute("user");
//第二种 或者直接使用session过期
session.invalidate();
//以2选一
//重定向主页
response.sendRedirect("index.jsp");

%>


在tomcat中直接设置,在tomact中设置时间为分钟conf/web.xml中

<!--在最下方的</webapp>之前添加,并设置为10分种-->
<session-config>
<session-timeout>10</session-timeout>
</session-config>
</web-app>


Session过程





cookie





在服务端设置Cookie

//声明cookie变量,并添加要保存的参数和值如:用户名
Cookie cookie = new Cookie("user",username);
//设置cookie的有效时间以秒为单位60秒*60秒int类型的值
cookie.setMaxAge(60*60);
//将cookies对象发回客户端
response.addCookie(cookie);


在客户端接收cookie,

//接收cookies返回值为cookies的数组
Cookie [] cookies = request.getCookies();
//声明字符串变量用来接收cookies的值
String user="";
for(int i=0;i<cookies.length;i++){
//获取cookies的名字,并判断如果是服务端的名称
if(cookies[i].getName().equals("user")){
//将cookes的值赋为字符串变量
user=cookies[i].getValue();
}

}


Application对象



计数器的实现原理

<%  //计数器
//取出application属性中的count值为object值
Object count = application.getAttribute("count");
//判断是否为空
if(count==null){
//如果是空,表示第一次访问将值设置为1
application.setAttribute("count", new Integer(1));
}else{
//不是空,则将结果+1
Integer i=(Integer)count;
application.setAttribute("count", i.intValue()+1);
}
Integer iCount=(Integer)application.getAttribute("count");
out.println("访问: "+iCount+"次");

%>


<%
//获取application对象的count属性值
Object count = application.getAttribute("count");
//判断是否为空
if(count==null){
//为空就设置为1
application.setAttribute("count", new Integer(1));
}else{
//不空就取值+1
application.setAttribute("count", (Integer)count+1);
}
Integer icount = (Integer)application.getAttribute("count");
out.println("访问了: "+icount+"次");
%>


Request、Session和Application的区别

Request:中存储的数据仅在一个请求中可用



Session:中存储的数据在一个会话有效期内可用



Application:中存储的数据在整个WEB项目中可用,直到WEB服务器停止运行

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: