1. Session对象
1)session代表服务器和客户端所建立的回话
从一个客户端打开浏览器并连接到度武器开始,到客户关闭浏览器离开这个服务器结束这个过程,被称为一个回话
2)当一个客户首次访问服务器上页面时,服务器将产生一个session对象,同事分配一个String类型的ID号
3)session可以实现在一个绘画器的多页面间的数据共享/传递
4)session基本用法
session.setAtribute(Strig name, Object value)
用value来初始化session对象某个属性(name)的值
如果制定的属性不存在,则新建一个;如果已存在,贼更改属性的值
session.getAtribute(String name)
获得有Name直飞那个名称的的session对象属性的值
方法返回Object对象,因此,要对返回的对象用强制类型转换来得到对象原来的类型
如果属性不存在,返回空值(null)
示例:
<%@ page import="java.util.Date" %><%--
Created by IntelliJ IDEA.
User: vina
Date: 18-4-6
Time: 上午9:55
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%
Date createTime = new Date(session.getCreationTime());
Date lastAccessTime = new Date(session.getLastAccessedTime());
String title = "非第一次登录";
Integer visitCount = new Integer(0);
String visitCountKey = "visitCount";
String userId = request.getRemoteHost();
String urerIdKey = "userId";
if(session.isNew()){
title = "第一次登录";
session.setAttribute(urerIdKey, userId);
session.setAttribute(visitCountKey, visitCount);
}
else{
visitCount = (Integer)session.getAttribute(visitCountKey);
visitCount += 1;
userId = (String)session.getAttribute(urerIdKey);
session.setAttribute(visitCountKey, visitCount);
}
%>
<h1>Session跟踪</h1>
<table border="1" align="center">
<tr bgcolor="#949494">
<th>Session 信息</th>
<th>值</th>
</tr>
<tr>
<td>id</td>
<td><% out.print( session.getId()); %></td>
</tr>
<tr>
<td>创建时间</td>
<td><% out.print(createTime); %></td>
</tr>
<tr>
<td>最后访问时间</td>
<td><% out.print(lastAccessTime); %></td>
</tr>
<tr>
<td>用户 ID</td>
<td><% out.print(userId); %></td>
</tr>
<tr>
<td>访问次数</td>
<td><% out.print(visitCount); %></td>
</tr>
</table>
</body>
</html>
2. Application对象
1)Web服务器一旦启动,就会自动创建application对象,并一直保持,知道服务器关闭
2)application对象负责供应用程序在服务器运行时的一些全局信息,客户端使用的application对象都是一样的
3)在此期间,在任何地方对application对象相关属性的操作,豆浆影响到其他用户对此的访问
4)application对象可以实现用户间数据的共享/传递
5)application基本用法
application.setAtriutue(String name, Object value)
用value来初始化application对象某个属性(name指定)的值
如果制定的属性不存在,则新建一个;如果已存在,则更改name属性的值
application.getAtribute(String name)
获得有name指定名称application对象属性的值
方法返回Object对象,因此,要对返回的对象用强制类型转换来得到对象原来的类型
如果属性不存在,返回空值(null)
3. out对象
1)out对象用来向客户端发送数据(文本级),其内容将是浏览器需要显示的内容
2)常用方法: print()