【手写Tomcat】4.自己设计Servlet

设计Servlet

        我们在设计自己的Servlet前,我们先来看一下原生的Servlet的关系图。

         我们仿照上面这个来进行设计我们自己的Servlet,但是我们不用搞的那么复杂,我们就定义一个myServlet接口,一个MyHttpServlet抽象类,这个抽象类实现MyServlet接口,我们自己写的Servlet继承MyHttpServlet抽象类就行了。关系图如下

         我们首先定义一个MyServlet接口

public interface MyServlet {
}

        然后定义一个抽象类MyHttpServlet,实现MyServlet接口

public abstract class MyHttpServlet implements MyServlet{
}

        我们这里先把自己设计的Servlet结构搭好,Servlet里面的内容我们后面再慢慢实现


设计请求响应的Servlet

        上面我们把我们自己的MyServlet的架子搭好了,但是,我们还缺少了2个很重要的东西,一个是Servlet里面的HttpServletRequest,一个是HttpServletResponse。这2个对象一个对请求进行了封装,一个对响应进行了封装,非常重要,我们当然也要编写我们自己的这2个对象,对请求和响应进行封装。

        查看下HttpServletRequest和HttpServletResponse的源代码

         

        发现2个都是接口,如果我们继续查看他所继承的,会发现还是接口,我们这里不搞那么复杂,就设计一个接口,然后再编写一个实现类。 


        我们首先先定义我们自己的request和response的接口,然后编写实现类。

        我们自己的request的接口和实现类

public interface MyHttpRequest {
}
public class MyHttpRequestImpl implements MyHttpRequest{
}

         我们自己的response的接口和实现类

public interface MyHttpResponse {
}
public class MyHttpResponseImpl implements MyHttpResponse{
}

        这次,我们就把我们自己的Servlet设计好了,虽然只搭了架子,没有实现具体功能,但是现在我们的思路已经清晰了。里面的功能我们在后面慢慢实现。

猜你喜欢

转载自blog.csdn.net/m0_51545690/article/details/123227703