* javax.servlet.GenericServlet类【看】 this,super
* 通用servlet实现类,与协议无关
* 此类是抽象类,具有抽象方法service(ServletRequest,ServletResponse)
* public abstract void service(ServletRequest req, ServletResponse res) throws ServletException, IOException;
* 此类实现Servlet接口,此类也实现了ServletConfig接口
* public abstract class GenericServlet implements Servlet, ServletConfig
* 此类缓存了init方法的实际参数的值。(ServletConfig的实例对象给缓存了)
* public void init(ServletConfig config) throws ServletException {
this.config = config;
this.init();
}
* 此类中在一个没有参数init方法,所有的servlet初始化工作,建议覆盖此方法。
* 否则,覆盖带有参数的init方法,需要在方法的第一行添加super.init(config);
* public void init(ServletConfig config) throws ServletException {
super.init(config); //此行代码必须存在
//之后是自己的内容
}
* javax.servlet.http.HttpServlet类
* 此类是抽象类,但是不存在抽象方法。
* 抽象类的原因,需要子类进行HttpServlet类方法的覆盖
* 没有抽象方法的原因:当子类覆盖父类的相应的方式时,没有强制要求
* 此类是与协议(http)有关的servlet的实现类
* request = (HttpServletRequest) req;
response = (HttpServletResponse) res;
* request.getMethod()方法,返回当前servlet的请求方法,方便与处理不同的请求
* 总结:【**】
* 创建一个类,继承HttpServlet类
* 根据需求,覆盖doPost和doGet方法
* 需要再web.xml中进行配置
* 测试
* 注意:
* 如果需要初始化工作:覆盖init()方法
* 如果初始化工作需要耗费大量时间,需要设置servlet的在服务器启动时进行初始化工作。
* <servlet><load-on-startup>2</load-on-startup>
* 配置当前servlet在服务器启动时加载顺序,取值:0-6 ,值越小,优先加载
4、servlet的虚拟路径
1、只能使用 / 或 * 开头
2、/ 和 *. 不能同时存在
3、/ 或 /* 表示任意
4、只有*.才表示通配符