Servlet【总结】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gnosed/article/details/82502483

一、什么是Servlet ?其与Applet的异同?

Servlet是一种位于操作系统平台和网络传输协议的服务端的Java应用程序,它用来扩展服务器的功能,可以生成动态的Web网页。与Applet的相似在之处:

(1)都不是独立的应用程序,没有main()方法。(2)都不是由用户调用,而是由另外一个应用程序(容器)调用。 (3)都有一个生存周期,包含init()和destroy()方法。

不同之处:

(1)applet运行在客户端,具有丰富的图形界面。 (2)Servlet运行在服务器端,没有图形界面。

二、Servlet的工作流程?

Servlet运行在Web服务器上的Web容器里。Web容器负责管理Servlet,装入并初始化Servlet,管理Servlet的多个实例,并充当请求调度器,将客户端的请求传递到Servlet,并将Servlet的响应返回给客户端。Web容器在Servlet的使用期限结束时终结该Servlet。服务器关闭时,Web容器会从内存中卸载和除去Servlet。工作流程如下:

  1. 客户端将请求发送到服务器。
  2. 服务器上的Web容器实例化(装入)Servlet,并为Servlet进程创建线程。请注意,Servlet是在出现第一个请求时装入的,在服务器关闭之前不会卸载它。
  3. Web容器将请求信息发送到Servlet。
  4. Servlet创建一个响应,并将其返回给Web容器。Servlet使用客户端请求中的信息及服务器可以访问的其他信息资源如资源文件和数据库等动态构造响应。
  5. Web容器将响应返回给客户端。
  6. 服务器关闭或Servlet空闲时间超过一定时间时,调用destroy()方法退出。

因此,Web容器的职责:(1)管理Servlet组件的生命周期,负责Servlet组件的初始化和销毁等。(2)封装客户端对Servlet的请求,并将请求映射到对应的Servlet。

三、Servlet的编程接口?

Java Servlet API,用于定义Web容器和Servlet组件之间的标准接口,主要由两个包组成:javax.servlet和javax.servlet.http。所有的Servlet都必须实现两个接口之一:通用Servlet接口和HttpServlet接口。以HttpServlet接口中心的几个接口:

  • HttpServletRequest——请求
  • HttpServletResponse——响应
  • ServletConfig——配置信息
  • ServletContext——运行环境信息
  • ServletException意外情况
  • HttpSession——会话管理
  • RequestDispatcher——协作

猜你喜欢

转载自blog.csdn.net/gnosed/article/details/82502483
今日推荐