QQ1252776430 2016-09-28 10:02 采纳率: 22%
浏览 1011

servlet容器主要是用jvm哪些类库的api开发的?

学习了基础的java api,sevlet基础部分,ssh,这些学习材料上都说的比较详细。
但从java基础api学到java web,发现servlet容器方面从没介绍过具体实现,所有资料都是:
用tomcat吧,主流的除了tomcat还有很多款servlet容器哦!但我非常想知道servlet容器的实现原理
当然不是具体的实现,太长,以楼主水平也肯定看不懂,再说不要重复造轮子,就算知道了还是用tomcat(当然也造不出)
只是楼主有纠结癌,tomcat的servlet容器部分说是通过纯java实现的。那么肯定在jvm基础api中包有。
猜测是这样的,首先既然是servlet容器,那么肯定不是servlet api实现的。第二,servlet扯了一大堆,但最终的web应用最底层肯定是网卡啊,那么servlet容器的实现应该要使用到网卡控制方面api吧,而jvm自己是不弄底层驱动的,也就是说应该类似于system类库里面调用操作系统的网卡功能,同时作为web容器,还得实现thread方面内容。
于是楼主猜测serlet容器是system库里基础api和thread各种算法配合而成,由于只学过核心常见jvm api,根本不知道这些api的功能,不知道我想的是否正确,感谢大牛

  • 写回答

1条回答 默认 最新

  • little_how 2016-09-28 10:44
    关注

    servlet容易的实现是基于对http协议的封装,内部使用socket的nio,bio等实现,就是对http的握手,http的报文进行解析。
    http协议是tcp协议的应用层协议,所以java实现很正常。
    tomcat内部有
    1.servlet-api.jar支持servet
    2.jsp-api.jar对jsp进行解析
    等等。

    具体随着你的研究程度,慢慢就会了解更多的。

    希望能够帮到你....

    评论

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办