一.Jsp与servlet的区别:
1.jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)
2.jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.
3.Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到.
Jsp是Servlet的一种简化,使用Jsp只需要完成程序员需要输出到客户端的内容,Jsp中的Java脚本如何镶嵌到一个类中,由Jsp容器完成。而Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。
二.Servlet的十大方法
init(HttpServletConfig config): 被servlet 容器调用以指明一个servlet被放进服务中。
service(HttpServletRequest request, HttpServletResponse response):被servlet 容器调用以允许servlet响应一个请求
doGet(HttpServletRequest request, HttpServletResponse response):被server调用处理客户端的GET请求 .
doPost(HttpServletRequest request, HttpServletResponse response):被server调用处理客户端的POST请求.
doPut(HttpServletRequest request, HttpServletResponse response):被server调用处理客户端的PUT请求.
doDelete(HttpServletRequest request, HttpServletResponse response):被server调用处理客户端的DELETE请求.
destroy():被 servlet container调用以告知一个servlet它被剔除服务。
getServletInfo():返回有关servlet的信息,例如作者、版本、版权。
getServletConfig():返回ServletConfig对象
doHead(HttpServletRequest request, HttpServletResponse response):被server调用处理客户端的Head请求.
三.Servlet类的基本架构
Servlet 接口:主要定义了servlet的生命周期方法
ServletConfig接口:为servlet提供了使用容器服务的若干重要对象和方法。
ServletContext接口:是Servlet的上下文对象,这个对象是在服务器启动时创建的,为servlet提供了使用容器服务的若干重要方法。
GenericServlet抽象类:为servlet提供了一般的实现(包括实现了servlet和ServletConfig两个接口),保存了容器通过init方法传递给servlet的一个ServletConfig类型的重要对象。
HttpServlet抽象类:为处理http请求的servlet提供了一般实现,主要是定义和实现了若干service方法。
继承关系:GenericServlet继承了Servlet和ServletConfig接口;HttpServlet继承了GenericServlet;我们写的servlet继承了HttpServlet