手写tomcat(一):能够访问WEB-ROOT目录下的文件

gitHub地址:https://github.com/shenshaoming/tomcat

tomcat获取客户端请求图:

从图中我们能够了解到,当用户从客户端访问我们的服务器时,通过http请求向我们的服务器发送基于TCP/IP协议的报文,而我们的服务器在接受到8080端口的请求时,会将数据转发给tomcat,tomcat通过对请求报文的分析,分析出访问的URL,然后,它会去自己的Servlet目录里找对应的Servlet,Servlet目录是一种<key,value>形式的键值对,找到对应的Servlet后,通过判断是GET还是POST请求,对应的去调用Servlet中的doGet()或doPost()方法.

在doGet()和doPost()方法中,将需要返回给前台的数据,以输出流(outputStream)的形式返回给前台(也是基于HTTP协议的),前台接收到后台返回的数据后,会进行页面渲染.

先上代码:

Request.java

package com.tomcat.core;

import java.io.IOException;
import java.io.InputStream;

/**
 * @Author: 申劭明
 * @Date: 2019/9/16 17:24
 */
public class Request {

    private InputStream is;
    /**
     * 请求路径,如:/test.txt
     */
    private String url;

    public Request(){

    }

    public Request(InputStream inputStream){
        this.is = inputStream;
    }

    /**
     * @Description : 获取http请求中的相关参数
     *
     * @author : 申劭明
     * @date : 2019/9/17 10:26
    */
    public void parse() {
        /**
         * 一个包没有固定长度,以太网限制在46-1500字节,
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Mybatis-Plus 是一个基于 Mybatis 的增强工具,它简化了 Mybatis 的开发流程,提供了很多实用的功能,其中之一就是代码生成器。代码生成器可以根据数据库表结构自动生成实体类、mapper 接口、xml 文件等代码,极大地提高了开发效率。但是,Mybatis-Plus 自动生成的实体类并不一定满足我们的需求,因此我们需要自定义模板来生成我们需要的类。 下面,我将介绍如何使用 Mybatis-Plus 自定义模板生成 dto、vo、convertor。 1. 创建自定义模板 我们需要在 Mybatis-Plus 的代码生成器中创建自定义模板。打开 Mybatis-Plus 的代码生成器,点击“自定义模板”选项卡,然后点击“添加模板”按钮,输入模板名称和文件名,然后点击“保存”按钮。 在模板编辑器中,我们可以使用 FreeMarker 语法来编写模板。下面是一个简单的模板示例,用于生成 dto 类: ``` package ${dtoPackage}; import lombok.Data; @Data public class ${dtoName} { <#list table.columnList as column> private ${column.javaType} ${column.propertyName}; </#list> } ``` 在这个模板中,我们使用 `${}` 占位符来引用变量。`dtoPackage` 和 `dtoName` 变量由代码生成器自动提供,表示生成的 dto 类的包名和类名。`table` 变量表示当前生成的表信息,包含表名、列名、列类型等信息。我们使用 `<#list>` 和 `</#list>` 标签来遍历表的列信息,并生成对应的属性。 2. 配置代码生成器 在使用自定义模板之前,我们需要配置代码生成器。打开 Mybatis-Plus 的代码生成器,点击“全局配置”选项卡,在“自定义配置”中添加以下配置: ``` # dto 模板配置 dto=templates/dto.java.vm dtoOutputDir=src/main/java/${dtoPackage}/ ``` 其中,`dto` 是我们自定义模板的名称,`dtoOutputDir` 是生成的 dto 类的输出目录。我们还可以添加其他自定义模板和输出目录,例如: ``` # vo 模板配置 vo=templates/vo.java.vm voOutputDir=src/main/java/${voPackage}/ # convertor 模板配置 convertor=templates/convertor.java.vm convertorOutputDir=src/main/java/${convertorPackage}/ ``` 3. 生成代码 配置完成后,我们可以点击“执行”按钮来生成代码。代码生成器将根据配置生成实体类、mapper 接口、xml 文件、dto、vo、convertor 等代码。我们只需要将生成的代码复制到项目中即可。 总结 使用 Mybatis-Plus 的代码生成器可以大大提高开发效率,而自定义模板则可以生成我们需要的类。通过自定义模板,我们可以生成 dto、vo、convertor 等常用类,避免手写重复的代码,提高开发效率和代码质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值