整理以及回顾一下之前上课的一些Servlet的入门笔记。
Servlet规范:
约束服务器如何 实现规范
①:搭建JavaWeb项目:
1.创建一个Java项目:HelloServletWeb;
2.在HelloServletWeb中创建一个文件夹webapp,表示Web项目的根;
3.在webapp中创建WEB-INF文件夹,
4.在WEB-IN中创建文件夹:lib,classes
5.在WEB-IN中去Tomcat根/conf拷贝web.xml文件,只需要保留根元素.
6.把当前项目的classpath路径改成webapp/WEB-IN下的classes中.
②:编写Servlet:
1.为该项目增加Servlet的支持.
1.1:把Tomcat根/lib中servlet-api.jar文件拷贝到项目下WEB-INF下的lib中
1.2:在项目中选择servlet-api.jar,鼠标右键,build path-->add to build path
2.开发Servlet程序:
2.1:定义一个类HelloKittyServlet,并让该类去实现javax.servlet.Servlet接口;
2.2:实现Servlet接口中的init,service,destory等方法.
注意:若生成方法中的参数是arg0或则arg1等格式的,原因是还没有关联源代码的问题:
关联上:apache-tomcat-7.0.42-src.zip,并重新实现/复写方法就OK; 就可以更加方便的查看出参数。
③:配置Servlet:
HelloKittyServlet,仅仅是一个普通的实现类而已,而我最终要运行在Tomcat服务器中,所以得告诉Tomcat,来帮我管理HelloKittyServlet类;
1.找到项目根下的WEB-INF下的web.xml文件:
2.在根元素web-app中创建一个新的元素节点:servlet
3.在根元素web-app中创建一个新的元素节点:servlet-mapping
Notes:
非常值得注意的是:XML配置文件非常容易出错!
且这种错,往往可以导致服务器启动失败!!!这时候应该先去找XML的问题而不是考虑端口号是否被占用
二、Servlet的生命周期void init(ServletConfig config) :初始化当前的Servlet对象,在第一次请求的时候执行
void service(ServletRequest req, ServletResponse res) :服务方法,在每次请求的时候执行,处理请求的操作都在该方法中处理 void destroy() :资源销毁方法,在服务器正常关闭的时候执行,就是说该不一定会执行,所以通常不将关闭资源的操作放在该方法中 ServletConfig getServletConfig() :获取Servlet的配置对象
String getServletInfo() :获取Servlet的相关信息
--------------------------------------------------------------------------------------------
Servlet的生命周期方法:
通常不将关闭资源的操作放在该方法中
生命周期方法执行的顺序:
调用构造器创建对象--->调用init方法执行初始化操作-->调用service方法执行业务逻辑操作-->调用destroy方法执行资源销毁
1.构造器在第一次请求的时候执行对象的创建(在Servlet中必须保留一个公共的无参数的构造器)
2.init方法在第一次请求的时候执行
3.service方法在每次请求都会执行
4.destroy方法在正常关闭服务器的时候执行
三、Servlet的初始化与继承体系初始化:
继承体系(了解)