笔者理解,有错望指出
servelt:
- 本质:类似JDBC的一种接口,连接客户端与服务器
- 目的:处理请求和响应,生成动态web
- 工作原理:客户端发送请求(HTTP文档)给服务器--->服务器将请求传递给servlet容器--->servlet容器加载servlet,创建实例,向实例传送请求和回应的对象--->servlet实例通过请求对象接受客户端请求并处理--->servlet实例通过相应对象将处理结果传送到客户端,servlet容器确保相应正确送出,并将控制返回给web服务器。
- 生命周期:initit()初始化--->service()--->destory()
tomcat:
- 本质:servlet容器,web容器
- 结构
有图可知,tomcat容器包括子容器,子容器又嵌套子容器:首先是tomcat server容器(代表整个servlet容器,用于启动和监听服务端事件),包括service服务(service服务有一个engine容器和多个connectorl组成),engine容器配置多个虚拟机(Host),connectorl用来监听客户请求,将客户端的请求分装成request给engine处理,并将engine处理后的结果封装成reponse返回给客户端,host(一个主机可部署多个应用context,每个应用可对应多个servlet),context创建时根据web.xml载入servlet类当host获得请求时会将该请求匹配到某个context(根据context(path=“对应请求名”))上
JSP(JavaServer Pages 动态页面技术):
- 本质:servlet
- 目的:将表示逻辑从servlet中分离出来
- 运行过程:jsp文件通过服务端的jsp引擎编译成.java文件--->jsp引擎调用编译器将.java文件编译成.class文件--->经过jvm的字节码指令集编译为机器码。区别与servlet,不需要经过服务器引擎编译。
- 与servlet区别:jsp注重视图,servlet注重逻辑。http://blog.csdn.net/gwblue/article/details/10363967