您的位置:首页 > 编程语言 > Java开发

Servlet技术(一)

2016-12-29 18:32 155 查看
近期用到了Servlet,发现这一块的知识记得不清楚了,在此总结下,以便以后查看

Servlet是JavaWeb应用中的最核心的组件。Servlet运行在servlet容器中,能够为各种各样的用户请求提供相应的服务。Servlet可以轻而易举地完成以下任务

1、   动态生成HTML文档

2、   把请求转发给同一个Web应用中的其他Servlet组件

3、   把请求转发给其他Web应用中的Servlet组件

4、   读取客户端的Cookie,以及向客户端写入Cookie

5、   访问其他服务器资源(如数据库或基于Java的应用程序)

Java是面向对象的编程语言。面向对象最基本的思想:1、万物皆对象;2、在一个软件系统中,每个对象都不是孤立的,对象与对象之间的相互协作才能完成特定任务。

 

Servlet最常用的方法:

1、    请求对象(ServletRequest和HttpServletRequest): Servlet从该对象中获取来自客户端的信息

2、    响应对象(ServletResponse和HttpServletResponse): Servlet通过该对象来生成响应结果

3、    Servlet配置对象(ServletConfig): 当容器初始化一个Servlet对象时,会向Servlet提供一个ServletConfig对象。Servlet通过该对象获取初始化参数信息及ServletContext对象。

4、    Servlet上下文对象(ServletContext):Servlet通过该对象访问容器为当前web应用提供的各种资源

Servlet  API主要有两个java包组成:javax.servlet(定义了Servlet接口及相关的通用接口和类) 和javax.servlet.http(定义了与HTTP协议相关的)

Servlet API主要由两个Java包组成:javax.servlet和javax.servlet.http。在javax.servlet包中定义了Servlet接口及相关的通用接口和类;在javax.servlet.http包中主要定义了与HTTP协议相关的HttpServlet类、HttpServletRequest接口和HttpServletResponse接口。



Servlet接口

Servlet API的核心是javax.servlet.Servlet接口,所有的Servlet类都必须实现这一接口。在Servlet接口中定义了5个方法,其中三个方法有Servlet容器来调用,容器会在Servlet的生命周期的不同阶段调用特定的方法。

Servlet的生命周期:

1、    init(ServletConfigconfig):初始化Servlet对象。容器在创建好Servlet对象后,调用该方法

2、    service(ServletRequestreq,ServletResponse res):响应客户的请求,为客户提供相应的服务,当容器接收到客户端要求访问的特定的Servlet对象的请求时,就会调用该Servlet对象的方法

3、    destroy():释放Servlet对象占用的资源,当Servlet对象结束生命周期时,容器会调用该方法

Servlet接口还定义了以下两个返回Servlet的相关信息方法。JavaWeb应用中的程序代码可以访问Servlet的这两个方法,从而获得Servlet的配置信息及其他相关信息。

1、    getServletConfig():返回一个ServletConfig对象,在该对象中包含了Servlet的初始化参数信息

2、    getServletInfo():返回一个字符串,在该字符串中包含了Servlet的创建者、版本和版权等信息

在Servlet API中,javax.servlet.GenericServlet抽象类实现了Servlet接口,而javax.servlet.HttpServlet抽象类是GenericServlet类的子类。当用户开发自己的Servlet类时,可以选择扩展GenericServlet类或者HttpServlet类。



GenericServlet抽象类

GenericServlet抽象类为Servlet接口提供了通用实现,它与任何网络应用层协议无关。GenericServlet类除了实现Servlet接口,还实现了ServletConfig接口和Serializable接口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java servlet 技术