首页 > 代码库 > Servlet技术——Servlet基础
Servlet技术——Servlet基础
Servlet是运行在Web服务器端的Java应用程序,它使用Java语言编写,具有Java语言的优点。
与Java程序的区别是,Servlet对象主要封装了对HTTP请求的处理,并且它的运行需要Servlet容器的支持。
在Java Web应用方面,Servlet的应用占有十分重要的地位,它在Web请求的处理功能方面也十分强大。
1、Servlet体系结构
Servlet实质上就是按Servlet规范编写的Java类,但是它可以处理Web应用中的相关请求。
Servlet是一个标准,它由Sun定义,其具体细节由Servlet容器进行实现,如Tomcat JBoss。
在标准的Java EE架构中,Servlet的UML结构如下:
其中Servlet ServletConfig 是javax.servlet包中定义的对象,这两个对象定义了Servlet的基本方法以及封装了Servlet的相关配置信息。Serializable对象是java.io包中的序列化接口。通常情况下我们编写的Servlet对象都继承于HttpServlet。
2、Servlet代码结构
在Java中,通常所说的Servlet是指HttpServlet对象,在声明一个对象是Servlet时,需要继承HttpServlet类。HttpServlet类是Servlet接口的一个实现类,继承该类后,可以重写HttpServlet类中的方法对HTTP请求进行处理。
下面代码展示了Servlet的代码结构。
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class TestServlet extends HttpServlet{ //初始化方法 public void init() throws ServletException{ } //处理HTTP Get请求 protected void doGet(HttpServletRequest req,HttpServletResponse resp) throws ServletException,IOException{ } //处理HTTP Post请求 protected void doPost(HttpServletRequest req,HttpServletResponse resp) throws ServletException,IOException{ } //处理HTTP Put请求 protected void doPut(HttpServletRequest req,HttpServletResponse resp) throws ServletException,IOException{ } //处理HTTP Delete请求 protected void doDelete(HttpServletRequest req,HttpServletResponse resp) throws ServletException,IOException{ } //销毁方法 public void destroy(){
super.destroy(); } }
重写的六个方法中,init()和destory()方法是在Servlet初始化和销毁的时候调用,其他四个方法用于处理不同的HTTP请求。
在一个Servlet中最常用的是doGet()和doPost()方法,用于处理HTTP请求中的GET请求和Post请求。
Servlet技术——Servlet基础