摘要: 在第一章笔者提到在NioEndpoint类中会使用五个内部类来处理请求。在之前的文章中为了学习的方便只使用了四个类,在本章中就让我们使用 SocketProcessor处理请求。 本章程序目录结构 第一步:新建SocketProcessorBase类 public abstract class So 阅读全文
posted @ 2022-12-10 14:30 一十三 阅读(271) 评论(0) 推荐(0)
摘要: 本章的主要目标是根据Tomcat目录对上一章的工程目录进行变更,使之我们的程序与Tomcat想接近,便于后续学习。 下图是上一章的工程目录图 下面这张图是本章中所使用的目录结构,由于目录的变更对程序影响较大,改动点很多,但并不难于理解,所以将所有代码贴在文章最后。 public class Http 阅读全文
posted @ 2022-12-10 14:20 一十三 阅读(92) 评论(0) 推荐(0)
摘要: 本章的主要目标是为请求添加响应 第一步:新建Http11OutputBuffer类 public class Http11OutputBuffer { protected final ByteBuffer headerBuffer; public Http11OutputBuffer () { he 阅读全文
posted @ 2022-12-10 14:19 一十三 阅读(117) 评论(0) 推荐(0)
摘要: User-Agent: PostmanRuntime/7.28.4 Accept: text/htmlPostman-Token: c125824d-ae13-4082-9ae0-87c1750476b8Host: localhost:8000Accept-Encoding: gzip, defla 阅读全文
posted @ 2022-11-28 14:50 一十三 阅读(275) 评论(0) 推荐(0)
摘要: 我们在上一节中已经接收到了请求,在本节中我们将来解析请求行也就是`GET / HTTP/1.1`这一行。 了解Tomcat解析请求行 Tomcat在Http11Processor的service方法中会调用Http11InputBuffer的parseRequestLine方法来解析Tomcat的请 阅读全文
posted @ 2022-11-28 14:34 一十三 阅读(500) 评论(0) 推荐(1)
摘要: 注:本文基于Tomcat8.5撰写 在上一小节我们通过一个简单的示例程序来理解了Acceptor、Poller、PollerEvent这个三个内部组件的关系。在这一节我们将主要关注如何封装请求。 封装SocketChannel Acceptor组件接收Http请求后,会对请求进行封装。所谓的“请求” 阅读全文
posted @ 2022-11-17 17:38 一十三 阅读(444) 评论(0) 推荐(0)
摘要: 注:本文基于Tomcat8.5撰写 下面的代码主要功能是使用NIO来接收一次http请求,主要包括三个步骤: 1.打开服务器通道接收请求 2.接收请求后注册通道 3.输出请求的内容。 这个示例是极其简单的,在下一小节笔者会在此示例基础上来探讨Tomcat是如何接收http请求的。 public st 阅读全文
posted @ 2022-11-17 17:18 一十三 阅读(967) 评论(1) 推荐(1)
摘要: Tomcat类加载器结构 上图是Tomcat文档中所展示的Tomcat类加载结构。在这个结构中Bootstartap和System的类加载器由java虚拟机实现。common类加载器由Tomcat容器实现,它对 Tomcat 内部类和所有 Web 应用程序都是可见的。此类加载器搜索的位置$CATAL 阅读全文
posted @ 2022-08-21 10:25 一十三 阅读(311) 评论(0) 推荐(0)
摘要: Tomcat分为静态部署和动态部署两种。 Tomcat静态部署 所谓静态部署,简单一点可以理解为Tomcat容器未运行时部署应用程序。我们已经知道若将一个war文件放置到webapps目录下,然后启动Tomcat容器,war文件会被解压运行,而这一过程就是静态部署。接下来我们的主要目标就是要学习To 阅读全文
posted @ 2022-08-14 22:30 一十三 阅读(250) 评论(0) 推荐(0)
摘要: maven依赖 <dependency> <groupId>org.glassfish.main.javaee-api</groupId> <artifactId>javax.jws</artifactId> <version>3.1.2.2</version> </dependency> <dep 阅读全文
posted @ 2021-03-11 15:17 一十三 阅读(89) 评论(0) 推荐(0)