Servlet笔记一

本文详细介绍了WebApplication的基本概念,包括Tomcat如何实现servlet-api接口以供开发者使用,请求与响应的封装机制,Servlet的生命周期管理,以及Cookie和Session的具体实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Web Application 的概念

这里写图片描述

Tomcat去实现Sun公司定义的servlet-api接口,供程序员使用。

HttpServletRequest request;

request 封装了客户端到服务器端的请求信息。

HttpServletResponse response;

response 封装了服务器端到客户端的返回信息。


        <servlet>
            <servlet-name>HW</servlet-name>
            <servlet-class>HelloWorldServlet</servlet-class>
        </servlet>

        <servlet-mapping>
            <servlet-name>HW</servlet-name>
            <!-- 相对于web appcation路径,即相对项目路径 -->
            <url-pattern>/abc</url-pattern>
        </servlet-mapping>

通过找到匹配 url-pattern 中的/abc ; 找到servlet-name: HW ;
再找到最后的 HelloWorldServlet。

2. Servlet生命周期

  1. 当客户端第一次请求某个Servlet时,系统创建该Servlet的实例,即调用Servlet自己的构造方法进行实例化,或者Web应用启动时立即创建Servlet实例,即load-on-startup Servlet。
  2. Web容器调用Servlet的init方法,对Servlet进行初始化. 只执行一次,第一次初始化时候。
  3. Servlet初始化后,就一直存在容器中,用于响应客户端的请求。
  4. 当webapp 退出的时候,调用Servelt的destory方法,资源回收,实例被销毁。

这里写图片描述

特点:
1. 服务器只可以向客户端写内容。
2. 只能是文本内容。
3. 客户端可以阻止服务器写入。
4. 只能拿自己webapp写入的东西。
5. Cookie以名-值对的形式保存数据。
6. Cookie分为两种: a:属于窗口/子窗口 b: 属于文本
7. 一个servlet/jsp设置的cookies能够被同一个路径下面或者子路径下面的servlet/jsp读到(路径=URL)

这里写图片描述

4. Session

这里写图片描述

Session实现方式:
1. 如果浏览器支持Cookie, 创建Session的时候会把SessionID保存在Cookie里面。
2. 如果浏览器不支持Cookie,必须自己编程使用URL重写的方式实现Session

  • response.encodeURL(); // 转码,URL后面加入SessionId
    2、Session创建的时间是:
    事实是直到某server端程序调用 HttpServletRequest.getSession(true)这样的语句时才被创建,注意如果JSP没有显示的使用 <% @page session=”false”%> 关闭session,则JSP文件在编译成Servlet时将会自动加上这样一条语句 HttpSession session = HttpServletRequest.getSession(true);这也是JSP中隐含的 session对象的来历。
    由于session会消耗内存资源,因此,如果不打算使用session,应该在所有的JSP中关闭它。

同一个application下的servelt/jsp可以共享同一个session,前提是同一个客户端窗口

5. Application

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值