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

 我来答
中公教育IT培训优就业
2021-01-12 · 百度认证:北京中公教育科技官方账号
中公教育IT培训优就业
中公教育IT培训品牌,致力于培养互联网领域的高端人才,以学员就业为目的,优质就业为宗旨,是一家集Java开发、Web前端、UI/UE交互设计、大数据、软件测试等课程为一体的IT培训机构。
向TA提问
展开全部

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方面的问题可以看下这个详细的视频教程网页链接,希望我的回答能帮到你。

易承吴纵
2020-01-02 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:32%
帮助的人:804万
展开全部
servlet在MVC框架中充当控制器
当我们写一个应用程序时,一般分控制层,业务层,实体层
在B/S模式中,servlet就充当控制层,其作用就是将前台传过来的数据交给业务层处理,然后从业务层得到处理后的数据,在讲该数据返回给前台
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
赫耘豪线歆
2019-11-17 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:30%
帮助的人:696万
展开全部
不管你的服务端采用什么数据格式,servlet模型中定义的方法只可能是request
response session来传输数据,都是以流的形式发送过去。
直接通过request对象带到页面上啊,然后在解析。你是怎么得到的就怎么解析。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式