什么是servlet
我们在网上浏览网页,需要一个web服务器,浏览网页的过程就是浏览器通过HTTP协议与WEB服务器 交互的过程。在过去,大多是静态网页,因此只须把资源放在WEB服务器上即可。如今随着应用的发展,客户与服务器需要动态的交互,为了实现这一目标,就需 要开发一个遵循HTTP协议的服务器端应用软件,来处理各种请求。那么servlet是一个基于java技术的WEB组件,运行在服务器端,我们利用 sevlet可以很轻松的扩展WEB服务器的功能,使它满足特定的应用需要。servlet由servlet容器管理,servlet容器也叫 servlet引擎,是servlet的运行环境,给发送的请求和响应之上提供网络服务。比如tomcat就是我们常用的一个servlet容器,其接受 客户端并做出响应的步骤如下:
1、客户端访问WEB服务器,发送HTTP求
2、WEB服务器接收到请求后,传递给servlet容器
3、servlet容器加载servlet,产生servlet实例,并向其传递表示请求和响应的对响
4、servlet得到客户端的请求信息,并进行相应的处理
5、servlet实例把处理结果发送回客户端,容器负责确保响应正确送出,同时将控制返回给WEB服务器
二、servlet接口
我们实际开发应用中,一般不需要去研究Http协议,只要扩展servlet接口,即可实现web服务器应用程序的开发。servlet接口在包javax.servlet中,接口中定义了五种方法:
public void init (ServletConfig config) throws ServletException
public void service(ServletRequest req,ServletRespone res) throws ServletException,java.io.IOException
public void destroy()
public ServletConfig getServletConfig()
public java.lang.String getServletinfo()
其中service方法,在接受到客户端请求时,被容器调用
在javax.servlet 包中给我们提供了一个抽像类GenericServlet实现了servlet接口。javax.servlet.http包中提供一个抽像类 HttpServlet,它继承了GenericServlet类,HttpServlet中提供了两种重载service的方法,public void service (ServletRequest req,ServletResponse res) throws ServletException,java.io.IOException;以用public void service(HttpServletRequest req,HttpServletResponse res) throws ServletException,java.io.IOException第一种方法调用第二种方法,第二种方法根据用户请求的类型,相应的调用 doGet,doPost等共七种方法,我在以往的开发中,只用到过doGet,doPost方法,因此一般来说,我们自已写的servlet类只需要继 承HttpServlet类,重载doGet和doPost方法就行了。
除此之外,需要了解一下ServletConfig, ServletRequest ,ServletResponse,HttpServletRequest,HttpServletResponse接口。这些接口有什么方法,实现这些 接口的实例何时被容器注入servlet实例中,理解了这些内容,对servlet可以说已经撑握了。
欢迎转载,请注明出处:亲亲宝宝