第1个回答 2018-09-25
底层是套接字编程,从tcp/ip协议开始,进行点对点的连接,进行数据交换。但是这个数据交换没有一个统一的规范,比如你给我发个1,我给你回个2,每个人写的程序都不相同。于是便有了http协议,这个协议规范你,你发消息的时候,得先发浏览器参数,机器环境,编码,等等,再发送请求参数。服务器回你消息的时光,得先回响应代码,响应时间,编码等,再发送内容。但是这样存在一个问题就是,内容没规范,于是有了html来对内容进行包装。这样一个b/s就构建起来了。既然这个server永远是按照规范解析,封装这些数据,为了不重复发明轮子,便有了servlet,统一将各种操作进行封装。同时由于同一个服务器页面不止对应1个servlet且涉及到并发转发验证等功能,所以tomcat等公司制造了tomcat等服务器,来根据你访问的地址值进行判断转发分流到相应的servlet。一个完整的java web就出来了。