servlet 简介
-
一.servlet 是什么?
-
1.servlet是一种规范(广义),所谓规范就是规则,规则翻译成计算机术语也就是接口。
2.servlet接口的java实现(Tomcat)以及对servlet的扩展(我们自己写的servelet类)(狭义).
-
二.servlet作用
-
1.读取客户端(浏览器)发送的显式的数据。这包括网页上的 HTML 表单,或者也可以是来自 applet 或自定义的 HTTP 客户端程序的表单。
2.读取客户端(浏览器)发送的隐式的 HTTP 请求数据。这包括 cookies、媒体类型和浏览器能理解的压缩格式等等。
3.处理数据并生成结果。这个过程可能需要访问数据库,执行 RMI 或 CORBA 调用,调用 Web 服务,或者直接计算得出对应的响应。
4.发送显式的数据(即文档)到客户端(浏览器)。该文档的格式可以是多种多样的,包括文本文件(HTML 或 XML)、二进制文件(GIF 图像)、Excel 等。
5.发送隐式的 HTTP 响应到客户端(浏览器)。这包括告诉浏览器或其他客户端被返回的文档类型(例如 HTML),设置 cookies 和缓存参数,以及其他类似的任务。
三.servlet 常用实现方式
-
继承
HttpServlet
接口实现doGet()
和
doPost()
方法public class HelloHttp extends HttpServlet{ //处理get请求 public void doGet(HttpServletRequest req, HttpServletResponse res){ //业务逻辑 try{ PrintWriter pw = res.getWriter(); pw.println("hello, Http"); } catch (Exception e){ e.printStackTrace(); } } public void doPost(HttpServletRequest req, HttpServletResponse res){ this.doGet(req,res); } }
-
四. servlet 生命周期
-
1.类加载,tomcat容器启动读取web.xml文件,创建ServletContex对象(上下文),创建Listener (如果有)
2.创建类实例,通过读取web.xml中的servlet标签以及参数,实例化servlet对象,并创建ServletConfig对象。
3.初始化类,调用servlet实现类中的init()方法完成初始化,每个生命周期只有一次调用。
4.servlet运行期,每次的请求都将访问运行期的service()方法。
5.servlet销毁期。servlet生命结束会调用destroy()方法,完成servlet的销毁。