1、什么是java容器
容器就是用java编写好的一套程序,原先必须自行编写程序来管理对象之间的关系,现在容器会来解决。例:JSP、WebSphere、WebLogic、Tomcat、Resin
2、什么是tomcat
tomcat是web应用的服务器,它是一种servlet容器
3、什么是servlet
servlet是基于http协议进行web应用服务的一种技术。它能够以一种可移植的方法来提供动态的、面向用户的内容。处理用户的请求。servlet本质其实是servlet容器,而servlet容器又由context容器来管理。
4、什么是servlet容器
如果把servlet比作枪,那么servlet容器就好比子弹。通过图我们可以看出真正管理servlet容器的是context容器,一个context容器对应一个web工程,所以我们再tomcat里面可以这样来配置
<Context path="/projectOne " docBase="D:\projects\projectOne"
reloadable="true" />
5、一个web工程在servlet容器中是如何启动的
6、servlet容器如何解析你在web.xml中定义的servelt
这里有个核心的类ContextConfig,它负责整个web应用配置文件的解析工作。ContextConfig中的configureStart方法,用来解析web.xml文件。解析拆分后的属性会保存在WebXml对象中。
7、servlet容器如何管理servlet生命周期
8、用户的请求是如何分配给指定的servlet的
客户端发送一个请求的格式通常是这样:http://hostname: port /contextpath/servletpath,hostname和port通常是用来与服务器建立TCP连接,后面的URL才是用来选择服务器中子容器服务用户的请求。
服务器是如何通过URL来正确的定位servlet子容器呢?这里有个核心的类:org.apache.tomcat.util.http.mapper,通过名字我们可以看到是通过map映射来取得。
9、什么是jason
jason -- JavaScript Object Notation. 它是一种轻量级的数据交换格式。
参考原文:https://www.ibm.com/developerworks/cn/java/j-lo-servlet/