关于使用一个servlet分发请求的理解

来源:3-7 Controller层代码架子的搭建

慕数据5265627

2021-07-14

老师好,我不太理解为什么要使用一个servlet去分发请求,相比不去分发来说,反而增加了请求的路径长,同时还有解析请求路径匹配controller的耗时。如果每个controller都对应自己的servlet会有什么缺点呢?

写回答

1回答

翔仔

2021-07-16

同学好,首先,分发请求属于内存操作,对于系统来说损耗很少,解析请求匹配controller因为走的hashmap所以寻址复杂度是O(1),损耗也很低。并且即便是多servlet,你要从每个servlet对应的上下文去获取req的参数也是需要寻址取值,所以是一样的。而单一servlet的话是便于将配置和共享数据都维护在一个上下文中,这样方便统一管理。

在写每一个servlet在web.xml都要做相应的配置。如果有很多servlet,会导致web.xml内容过于繁多,也不利于多人维护


0
1
慕数据5265627
非常感谢!
2021-07-16
共1条回复

剑指Java自研框架,决胜Spring源码

快速入门Spring核心源码+从零开发自研框架

1499 学习 · 495 问题

查看课程