什么是 “Servlet“

字面解释

  1. 简单点说servlet就是一个小型服务器连接器用Java编写的服务器端程序,具有独立于平台和协议的特性
  2. 主要功能在于交互式地浏览和生成数据,生成动态Web内容。
    • 客户端发送请求至服务器端;

    • 服务器将请求信息发送至 Servlet;

    • Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;

    • 服务器将响应返回给客户端. 

生命周期

 

1.第一个到达服务器的 HTTP 请求被委派到 Servlet 容器。

2.Servlet 容器在调用 service() 方法之前加载 Servlet。

3.然后 Servlet 容器处理由多个线程产生的多个请求,每个线程执行一个单一的 Servlet 实例的 service() 方法。

server 创建一个servlet实例

1、第一个客户端的请求到达 Server

2、Server 调用 Servlet 的 init() 方法(可配置为 Server 创建 Servlet 实例时调用,在 web.xml 中 <servlet> 标签下配置 <load-on-startup> 标签,配置的值为整型,值越小 Servlet 的启动优先级越高)

3、一个客户端的请求到达 Server

4、Server 创建一个请求对象,处理客户端请求

5、Server 创建一个响应对象,响应客户端请求

6、Server 激活 Servlet 的 service() 方法,传递请求和响应对象作为参数

7、service() 方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息

8、service() 方法使用响应对象的方法,将响应传回Server,最终到达客户端。

工作模式

1、客户端发送请求至服务器

2、服务器启动并调用 Servlet,Servlet 根据客户端请求生成响应内容并将其传给服务器;

3、服务器将响应返回客户端。

补充说明--->jsp和servlet的区别与联系

        Java Server Pages(JSP)是一种实现普通静态HTML 和动态 HTML 混合编码的技术,JSP 并没有增加任何本质上不能用 Servlet 实现的功能。但是,在 JSP 中编写静态HTML 更加方便,不必再用 println语 句来输出每一行 HTML 代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计者进行 HTML设计,同时留出供 Servlet 程序员插入动态内容的空间。

        从网络三层结构的角度看 JSP 和 Servlet 的区别,一个网络项目最少分三层:data layer(数据层),business layer(业务层),presentation layer(表现层)。当然也可以更复杂。Servlet 用来写 business layer 是很强大的,但是对于写 presentation layer 就很不方便。JSP 则主要是为了方便写 presentation layer 而设计的。当然也可以写 business layer。写惯了 ASPPHP,CGI的朋友,经常会不自觉的把 presentation layer 和 business layer 混在一起。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值