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()不应该被外部访问到;
- 因此两个外观类,起到保护作用