如何用Java实现Web服务器?

 我来答
猪八戒网
2023-06-06 · 百度认证:重庆猪八戒网络有限公司官方账号
猪八戒网
猪八戒网(zbj.com)创建于2006年,现已形成猪八戒网、天蓬网和线下八戒工场的“双平台+一社区”服务模式,是中国领先的人才共享平台。
向TA提问
展开全部

WEB容器工作原理

市面上的javaweb容器常见的有两种,一种是jetty,一种是tomcat。要想用java实现web容器,首先要知道其工作原理。

以Tomcat为例,我们通常开发出来的war包,会放在tomcat中的webapp下面,tomcat会自动解压war包。解压完成后,其实就是一个servlet应用!换句话说,我们写的war包中的servlet应用只需要关注业务层面的,处理http等网络链接的事情交给都交给tomcat了,一个请求到达tomcat的流程如下图:

所以其实我们也可以手写一个web容器,只要能接收请求并转发给相应的servlet请求即可。

手写一个小的web容器

整体结构大致如下

1、写一个处理网络请求连接请求实体类、一个和网络请求连接响应实体类

2、写一个容器主类,包括启动监听端口等

3、写容器的接口,以及注解相关的url附加类便于让应用servlet

4、写一个app测试servlet,类似tomcat中跑的war包


如果你监听的端口是8888,那么就可以访问localhost:8888/app,就可以测试了

结语

java写web容器,其实没什么难的,简单的写一下了解一下原理即可,真实工作中是不建议自己写的,有很多问题会考虑不周的。关于web容器网上也有很多例子,可以借鉴了解一下。祝你学习愉快。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式