Tomcat中处理request请求的3种servlet
在Tomcat中处理请求分为3种
1、静态资源请求
比如html,css或image这样的静态资源 就由Tomcat中的DefalutServlet 处理
2、jsp请求
比如index.jsp 这样的请求 就由Tomcat中的JspServlert处理
3、其他请求
比如移动端请求getInfo.do这样的api时 就由具体的Servlet处理
如果是springmvc 就由DispatcherServlet处理
再来分析 比如像student/userInfo.do这样的PC端请求该如何返回userInfo.jsp界面呢
首先由DispatcherServlet处理 处理好之后 由springmvc中配置的InternalResourceViewResolver处理 得到 userInfo.jsp 并将请求转发,转发后由于我们的DispatcherServlet没有处理.jsp这样请求的Handel 所以就由JspServlert处理了,而转发只是服务端将request的处理权转交给另外一个Servlet 因此其中的request对象是同一个 所以刚好可以在DispatcherServlet中数据存到request中 ,然后在jsp界面 用jstl 和 el表达式将数据体现在界面上
再看Tomcat官网对tomcat的解释
Tomcat是对servlet、 jsp、el 等技术的开源实现 而DefalutServlet JspServlert 就是具体的实现之一