Jsp相关

本文介绍了JSP的内置对象,包括page、request、session和application,以及它们在处理用户请求和管理会话中的作用。同时,详细讨论了会话跟踪技术,如cookie、隐藏表单域和URL重写,分析了各自的优缺点和实现方式。通过示例代码展示了如何在实际应用中使用这些技术来维护会话状态。
摘要由CSDN通过智能技术生成

Jsp相关

在这里插入图片描述

jsp内置对象有哪些,分别是什么含义

page:JSP网页本身
request:用户端请求,此请求会包含来自来自GET/POST请求的参数
session:与请求有关的
application:servlet正在执行的内容

会话跟踪技术-servlet,cookie,URL重写,隐藏表单域

Cookie:服务器在一个应答首部传递给浏览器的名称/值对。浏览器保存的时间由cookie的过期时间属性来指定。当浏览器向某个服务器发送一个请求时,它会检查其保存的cookie,并在请求首部中包含从同一台服务器上接收到的所有cookie。
隐藏表单域:隐藏表单域是将会话ID添加到HTML的隐藏表单中(类型为hidden的input)。
代码:<input type=”hidden” name=”id” >

URL复写:把会话ID编码在URL中。这意味着应用程序中的所有页面(至少是那些带有对其他页面引用的页面)都必须是JSP页面,这样页面引用才能以动态方式进行编码,如果遗漏了一个ur,那么服务就会失去对会话的跟踪。
代码如下:
namespace URL
{
public class myrewritter : URLRewriter.BaseModuleRewriter
{
protected override void Rewrite(string requestedPath, HttpApplication app)
{
if (requestedPath.Contains(“viewnews/2009/3/2.html”))
app.Context.RewritePath("/viewnews.aspx?id=2&year=2009&month=3");
else
app.Context.RewritePath("/here.aspx");
}
}
}
servlet:在浏览器和服务器之间不直接传送所有的状态信息,而只是传递表示符。服务器跟踪与该会话相关联的所有信息。传递sessionID可以通过cookie和URL复写技术,大部分容器都支持这两种技术。服务器无法分辨用户是否关闭了浏览器,因此关闭浏览器意味着与先前的会话关联的所有会话数据都保留在服务器上,直到会话超时,服务器销毁会话对像。
实例: session.setMaxInactiveInterval(1000);
session.invalidate();//消除
![在这里插入图片描述](https://img-blog.csdnimg.cn/2021061621584651.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1o3NzU5,size_16,color_FFFFFF,t_70#pic_center

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值