【仿写tomcat】七、项目结构优化以及代码开源

news/2024/7/10 22:28:26 标签: tomcat, java, git, 开源

仿写tomcat

项目结构

到目前为止,博主的仿写tomcat就告一段落了,后续有时间了还会继续补充功能,现在的项目结构如下。

在保证功能的前提下作出的改动有:

  1. 将各个类中的参数统一成了Config类,通过对象或者类进行配置。
  2. 将各种显示常量配置到了constants中
  3. 修改了一些方法的位置,比如操作servlet对象的方法都统一放到了ServletHolder中
  4. 优化了启动类的逻辑
  5. 添加了lombok方便操作

在这里插入图片描述

开源地址

https://gitee.com/ez4sterben/tomcat-server

注意目前的版本对应的是feature_0818分支,后续可能对master分支有所改动,如果只想查看当前版本请切换到0818分支


http://www.niftyadmin.cn/n/4949313.html

相关文章

算法通关村第八关——轻松搞定翻转二叉树

二叉树有很多经典算法题,今天我们就来看一下二叉树里的翻转问题。 力扣226,给了一棵二叉树,要将二叉树整体翻转。 分析:观察图中翻转前后的二叉树,我们不难发现,翻转过程中,只需要把每一个节点的左右子节点…

PostgreSQL 查询数据表、视图信息

--获得指定schema范围内的所有表和视图的列表,可指定一个排除表前缀模式with param as (select public,iit as schema_name,db2g% as exclude_pattern),base_info as (--获得所有基表select pg_namespace.nspname as schema_name, a.relname as tbl_name ,TBL as tb…

LVS负载均衡DR(直接路由)模式

在LVS(Linux Virtual Server)负载均衡中的DR(Direct Routing)模式下,数据包的流向如下: 客户端发送请求到负载均衡器(LVS)的虚拟IP(VIP)。负载均衡器&#x…

为什么 ThreadLocal 会导致内存泄漏 ?如何解决 ?

面试官问 :为什么 ThreadLocal 会导致内存泄漏 ?? 在面试中被问到这个问题,如果记不清细节了,可以这样回答: ThreadLocal 里面存储的数据,它的生命周期是和线程或者线程池的生命周期保持一致的…

springboot中的properties配置文件:MySQL密码添加双引号会报错

在springboot项目中,如果使用的配置文件是properties 格式,那么给属性的值添加双引号可能会出错,比如给MySQL的密码添加双引号: 我们在调试模式下,一探究竟: 然后在其poolProperties中查看,密…

c++ | 字节转换 | 字长 | 机器位数

为什么有的时候脑子转不过来?? 为什么要对字节、机器长啊、位啊都要门清 位数 一般的就是指计算机的位数,比如64位/32位,更简单的理解,计算机就是在不停的做二进制的计算,比如32位计算机,在长…

数据库乐观锁使用指南

一、引言 在并发环境中,数据一致性是一个重要的问题。为了保证数据一致性,我们通常会使用锁。在数据库中,主要有两种类型的锁:乐观锁和悲观锁。今天,我们将重点讨论乐观锁,详细介绍其工作原理,…

开发设计实践:如何应对软件变化

软件的可变性,是在设计过程中,开发人员必须处理的核心难题。 如何提升软件的可变性,以便应对不断变化的业务需求?又如何在不穷尽各种变化的情况下,轻松应对真正的变化?这对开发人员提出了更高的挑战。 接…