tomcat学习笔记之一个简单的servlet容器

1、javax.servlet.Servlet接口

(1)javax.servlet包和javax.servlet.http包;

(2)javax.servlet.Servlet接口最重要,所有servlet程序都必须实现该接口;

(3)Servlet有五个方法

  • init():实例化某servlet调用一次
  • service(ServletRequest request,ServletResponse response):多次调用
  • destory():清理自身资源
  • getServletConfig():
  • getServletInfo()

2、PrintWriter类的构造函数

  • PrintWriter(OutputStream out, boolean autoFlush)
  • autoFlush代表是否自动刷新
  • println()会触发自动刷新,print不会;

3、ServletProcessor1类

  • 加载放在webroot下的PrimitiveServlet.class文件
  • 反射实例化,执行其service方法
  • 用到了URLClassLoader
  • loader = new URLClassLoader(urls);
  • urls是一个URL数组,默认指向jar文件,如果"/"结尾表示为目录
  • 默认情况下,载入器会下载并打开这个jar文件

4、不安全转换

servlet.service((ServletRequest) request, (ServletResponse) response);

5、RequestFacade和ResponseFacade是两个外观类;

  • getUri()和parse()不应该被外部访问到;
  • 因此两个外观类,起到保护作用

猜你喜欢

转载自my.oschina.net/u/3847203/blog/1814437