自MVC规范出现后,Servlet的责任开始明确,仅仅作为控制器使用,不需要再生成页面标签,也不再作为视图层角色使用。
Servlet通常被称为服务器端小程序,是运行在服务器端的程序,用于处理及相应客户端的请求。
Servlet是个特殊的java类,这个类必须继承HttpServlet。Servlet提供不同的方法用于响应客户端的请求。
doGet:响应客户端的GET请求
doPost:响应客户端的POST请求
doPut:响应客户端的PUT请求
doDelete:响应客户端的DELETE请求。
servlet为了响应上面的请求,必须重写上面的方法
大部分时候,Servlet对于所有请求的响应都是完全一样的。此时,可以重写一个方法代替上面的几个方法:只需重写service()方法即可响应客户端的所有请求。
另外。HttpServlet还包含两个方法。
init(ServletConfig config)创建Servlet实例时,调用该方法初始化Servlet资源。
destory():销毁servlet实例,一般无需重写,如果需要在销毁Servlet之前,先完成某些资源的回收,比如关闭数据库连接等,才需要重写destory方法。
Servlet和JSP的区别在于:
servlet中没有内置对象,原来JSP的内置对象都必须由程序显示创建
对于静态的html标签,Servlet都必须使用页面输出流逐行输出。