首页编程java编程java的servlet是什么 servlet是什么

java的servlet是什么 servlet是什么

编程之家2023-10-11112次浏览

本篇文章给大家谈谈java的servlet是什么,以及servlet是什么对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

java的servlet是什么 servlet是什么

servlet是什么

分类:电脑/网络>>程序设计>>其他编程语言

解析:

java的servlet是什么 servlet是什么

Servlet是什么

Servlet是使用Java Servlet应用程序设计接口(API)及相关类和方法的 Java程序。除了 Java Servlet API,Servlet还可以使用用以扩展和添加到 API的 Java类软件包。Servlet在启用 Java的 Web服务器上或应用服务器上运行并扩展了该服务器的能力。Java servlet对于Web服务器就好象Java applet对于Web浏览器。Servlet装入Web服务器并在Web服务器内执行,而applet装入Web浏览器并在Web浏览器内执行。Java Servlet API定义了一个servlet和Java使能的服务器之间的一个标准接口,这使得Servlets具有跨服务器平台的特性。

java的servlet是什么 servlet是什么

Servlet通过创建一个框架来扩展服务器的能力,以提供在 Web上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给 Servlet,并让 Servlet建立起服务器返回给客户机的响应。当启动 Web服务器或客户机第一次请求服务时,可以自动装入 Servlet。装入后, Servlet继续运行直到其它客户机发出请求。Servlet的功能涉及范围很广。例如,Servlet可完成如下功能:

(1)创建并返回一个包含基于客户请求性质的动态内容的完整的 HTML页面。

(2)创建可嵌入到现有 HTML页面中的一部分 HTML页面(HTML片段)。

(3)与其它服务器资源(包括数据库和基于 Java的应用程序)进行通信。

(4)用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,Servlet可

以是多参与者的游戏服务器。

(5)当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至applet的新连接,并将该连

接保持在打开状态。当允许客户机和服务器简单、高效地执行会话的情况下,applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准(如 IIOP)进行通信。

(6)对特殊的处理采用 MIME类型过滤数据,例如图像转换和服务器端包括(SSI)。

(7)将定制的处理提供给所有服务器的标准例行程序。例如,Servlet可以修改如何认证用户。

解释一下什么是servlet

Servlet(Server Applet),全称Java Servlet,暂无中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。

外文名

Servlet

类别

程序

环境

Java applet

平台

Java Web Server

Java中的Servlet的定义,Servlet的具体用途

Servlet是一个实现了Servlet接口的类,一个与访问协议和平台无关的、运行在Servlet容器中的Java程序。

针对Servlet实现技术,SUN公司提供了一套标准的Java Servlet API以便于更快速、规范地开发Servlet程序。这套Servlet API中,最重要的两个软件包是:javax.servlet、javax.servlet.http。

javax.servlet是一个与通信协议无关的通用软件包;javax.servlet.http是一个支持HTTP访问协议的软件包,这两个软件包的同时存在,使得Servlet API能支持任何协议的请求/响应。

在javax.servle中,包含着一套常用接口,负责承担指定的任务。下表中列出了常用的类和接口:

主要类结构图:

javax.servlet软件包:

javax.servlet包中定义了与通信协议无关的接口和类。

常用接口:

RequestDispatcher、Servlet、ServletConfig、ServletContext、ServletRequest、ServletResponse。

常用类:

GenericServlet、ServletInputStream、ServletOutputStream。

1、RequestDispatcher接口

public interface RequestDispatcher;

资源调度器接口,用于定义一个在服务器内部直接实现资源转发的对象。

RequestDispatcher对象由Servlet容器创建,用于封装并调度由一个特定的URL定义的服务器资源。

(1)请求传递方法

public void forward(ServletRequest request,

ServletReponse response) throws ServletException,IOException

从一个Servlet向服务器上的另一个资源传递请求。

将请求转发给其他资源时,将由被调用的资源负责对请求作出响应,而原先Servlet的执行则终止。

public void include(ServletRequest request,

ServletResponse response) throws ServletException,IOException

从一个Servlet向服务器上的另一个资源传递请求。

将请求转发给其他资源时,被调用的Servlet对该请求作出的响应将并入原先的响应对象中,原先的Servlet还可以继续输出响应消息。

2、Servlet接口

public interface Servlet;

开发一个Servlet需要实现的基础接口。

接口中定义了5个方法:

init():Servlet初始化方法,通过init()方法可以获得容器创建的ServletConfig对象

service():请求处理方法

destroy():Servlet实例销毁方法

getServletConfig():获取ServletConfig配置对象方法

getServletInfo():获取Servlet相关信息方法

(1)初始化方法

public void init(ServletConfig config) throws ServletException

Servlet容器会在Servlet实例化之后,调用init方法对Servlet对象进行初始化,该方法由Servlet容器顺序调用,无需Servlet自身考虑何时执行。

(2)服务方法

public void service(ServletRequest request,

ServletResponse response) throws ServletException,IOException

当Servlet容器接收到客户请求时,调用service方法响应客户请求,service方法在Servlet实例化、初始化之后被调用,并且可以被多次调用。

(3)销毁方法

public void destroy()

当Servlet实例从服务器中移除或服务停止时,Servlet容器调用destroy方法销毁Servlet实例。

(4)获取Servlet配置对象方法

public ServletConfig getServletConfig()

获取一个由Servlet容器创建的ServletConfig配置对象,这个对象常常用在Servlet初始化方法中,将初始化参数封装在ServletConfig对象中,然后传递给Servlet。

(5)获取Servlet相关信息方法

public String getServletInfo()

获取关于Servlet的一些相关信息,返回的字符串是纯文本格式而不带有任何标记(例如:HTML、XML等)。

3、ServletConfig接口

public interface ServletConfig;

Servlet配置信息接口,在Servlet初始化时,Servlet容器将Servlet初始化参数封装在ServletConfig对象中,并传递给Servlet,一个Servlet实例只有一个ServletConfig对象。

接口中,只定义了4个方法:

getInitParameter():获取Servlet指定初始化参数的值

getInitParameterNames():获取Servlet所有初始化参数名称

getServletContext():获取Servlet容器为WEB应用创建的Servlet上下文环境对象ServletContext

getServletName():获取Servlet名称

(1)获取初始化参数方法

public String getInitParameter(String name)

根据初始化参数名称,获取Servlet指定初始化参数的值,如果指定的参数不存在,返回空值null。

public Enumeration getInitParameterNames()

获取Servlet所有初始化参数名称,如果Servlet没有初始化参数,返回一个空列表。

(2)获取Servlet上下文环境方法

public ServletContext getServletContext()

获取Servlet容器为WEB应用创建的Servlet上下文环境对象ServletContext,WEB服务器启动的时候,在加载WEB应用时,为每个加载的WEB应用创建一个代表WEB应用Servlet上下文环境对象。

(3)获取Servlet名称方法

public String getServletName()

获取正在访问的这个Servlet的名称。

以上就是Servlet相关问题的解答,更多关于Java Web方面的问题可以看下这个详细的视频教程网页链接,希望我的回答能帮到你。

OK,本文到此结束,希望对大家有所帮助。

除了java还要学什么?学习了java还要学习什么java初始化值是什么意思(java中的初始化具体是什么意思)