2024年4月30日发(作者:)

首先,会话跟踪一般存在于四种方式:

网页与网页;网页与servlet;servlet与servlet;servlet与网页。

资源的跳转一般分为以下几种:

超链接:等于请求,但是并不等于请求,带参数。

点击】获取【String

sname=ament("name")】

表单form:与超链接相识。【

(以上两种方法需要用户操作才能实现)

重定向:不带参数的跳转。【direct("servlet2")】

转发:把请求、资源1的信息移到资源2当中。

【RequestDispatcher

dispatcher=uestDispatcher("servlet2");

d(request,response);】

在页面当中的另外一种写法:【

page="">】

(以上两种方法无须用户操作,就可自动实现)

会话方式:

request:只能使用"转发"来跳转。

【ribute("BN","book");】获取【String a=(String)

ribute("BN");】

session:能用上述四种跳转方式。只能在一个界面中使用,如果打开另

外一个页面就无法使用。

【HttpSession

session=sion(); ribute("BN","book");】

获取【HttpSession session=sion(); String

a=(String) ribute("BN");】

ServletContext:上下文会话。与session相识,作用范围大,能在整个

工程当中有作用。

【ServletContext context=vletContext();

ribute("BN","book");】

获取

【ServletContext context=vletContext(); String

a=(String) ribute("BN");】

pagerContext::一般比较少用。

%无论哪两种资源之间的跳转都,可以用上述的四种方法%

另外补充一点:会话还有一种方法叫 cookie

创建:Cookie ck=new Cookie("BN","book");

添加:kie(ck);

设定生命期:Age(30*24*60) //如果超过生命期都不访

问cookie,cookie就会消失。

获取:Cookie []cks=kie() //因为电脑里面的

cookie有很多,所以要用数组获取。

for(int i=0;i<;i++){

ck=cks[i];

if(e().equals("BN")){

n(ue());

break;

}

}