servlet数据存储

这篇博客详细介绍了Servlet中数据存储的方式,包括pageContext、request、session和application的作用和生命周期。此外,还讨论了请求转发和响应重定向的区别,并强调了在处理资源请求时的注意事项。同时,博客提到了JSP的九大内置对象和JavaScript操作确认,以及properties文件的读取和日期处理的相关内容。
摘要由CSDN通过智能技术生成

一、servlet数据存储

pageContext

​ 仅在当前jsp对应的servlet(jsp会转为servlet)jsp会被解析为一个Servlet类

request

​ 仅在一次请求中有效,如果请求结束了,保存的数据就销毁了

​ 如果请求被转发了,一次请求的多次请求,还是同一次请求

​ 请求转发(同一次请求,经历了多次转发)

​ 注意:如果数据存到请求中,一定不要使用响应重定向

//响应重定向(给客户端重新响应了一个新的url,客户端会重新请求这个新的url)
//相当于,客户端第一次请求已经响应了(生命周期结束)
//客户端又根据响应的新的url,作出了第二次请求
//  (新的请求,原来存在请求中的数据已经随着第一次请求的结束而销毁)
resp.sendRedirect("home.jsp");
//home.jsp也是一个servlet,将访问不到存到第一次请求中的数据
//因为第一次请求已经结束了(生命周期)

session

​ 仅在一次会话中有效(客户端和服务器建立一次连接,称为会话)一次会话可以包含多次请求

​ session默认的生命周期是(客户端和服务器无操作,30分钟后会自动销毁)

​ 你打开浏览器登录账号,过30分钟,再访问需要你重新登录!!

​ 特殊情况就是服务器自定义了时间

(有的网站设置的时间永远,只要你浏览器本地cookie存的有账号和密码)

​ 不建议再session中存数据,仅存登录相关信息就可以

​ 如果会话中存太多数据,服务器压力会太大(存的数据会占用服务器内存)

application

​ 服务器启动,代码整个服务器程序,只要服务器不关闭就一致有效(生命周期长)

​ 这是jsp内置对象中的名称,servletContext(Servlet上下文)

二、请求转发和响应重定向

//请求转发:获取转发器,设定转发的目标;forward执行转发(同一个请求对象和响应对象)
req.getRequestDispatcher("home.jsp").forward(req, resp);

//响应重定向(注意:两次请求)
resp.sendRedirect("selectAllUser");//响应重定向

请求转发,地址栏不会变,依然是你请求的第一个资源路径Url

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OXClWUWv-1658990738864)(Img\image-20220728093544871.png)]

假如现在登录了,浏览器地址栏不建议显示登录的url,因为一旦刷新,会重新发送login请求

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BYit7mkw-1658990738866)(Img\image-20220728093825240.png)]

如何解决这个问题?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ei3SYVhy-1658990738867)(Img\image-20220728094216859.png)]

注意:对于资源请求,切记不可在地址栏显示资源名,如(login.jsp index.html)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KYwp1wwU-1658990738867)(Img\image-20220728100535179.png)]

三、JSP九大内置对象

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-slehIqQI-1658990738868)(Img\image-20220728095045103.png)]

四、JavaScript操作确认

<script type="text/javascript">
    //删除函数
    function
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值