Web容器和Servlet容器、Spring和SpringMvc

Web容器和Servlet容器

Tomcat即属于Web容器,又属于Servlet容器,所以称为轻量级应用服务器。

Apache属于Web容器,即只能解析html,image等静态资源,不能解析JSP文件,而Tomcat都可以解析,但是主要是解析JSP、Servlet等动态资源,在解析静态资源时效率没有Apache高。

Apache:也就是说你在服务器的目录下面丢个index.html,通过http:xxx//8080/index.html可以访问;倘若丢个index.jsp,无法解析,无法通过http:xxx//8080/index.jsp访问

但Tomcat中两者都可以进行解析。
不管访问动态资源还是静态资源,访问web都是通过http 协议,你理解为都是url访问(不管动态还是静态都是url访问),因此一般 web服务器==HTTP服务器
没有servlet容器,你也可以用web容器直接访问静态页面,比如安装一个apache等,但是如果要显示jsp/servlet,你就要安装一个servlet容器了,但是光有servlet容器是不够的,因为它要被解析成html输出,所以你仍需要一个web容器。大多数servlet容器(如Tomcat)同时提供了web容器的功能,也就是说大多servlet容器可以独立运行你的web应用。

Servlet容器的作用:

负责处理客户请求,当客户请求来到时,Servlet容器获取请求,然后调用某个Servlet,并把Servlet的执行结果返回给客户。【参照 Tomcat执行原理】

spring容器和springmvc容器

结论

Spring 容器是管理servicedao的。

SpringMVC 容器是管理controller的。

springmvc和spring它俩都是容器,容器就是管理对象的地方,例如Tomcat(web容器的一种实现),就是管理servlet对象的,而springMVC容器和spring容器,就是管理bean对象的地方,再说的直白点,springmvc就是管理controller的容器,spring就是管理service和dao的容器。所以我们在springmvc的配置文件里配置的扫描路径就是controller的路径,而spring的配置文件里自然配的就是service和dao的路径。

spring容器和springmvc容器的关系是父子容器的关系。spring容器是父容器,springmvc是子容器。在子容器里可以访问父容器里的对象,但是在父容器里不可以访问子容器的对象,说的通俗点就是,在controller里可以访问service对象,但是在service里不可以访问controller对象

相关推荐
会飞的鱼先生1 小时前
vue3的深入组件-组件 v-model
前端·javascript·vue.js
麓殇⊙1 小时前
Servlet--快速入门及HTTP概述
网络协议·http·servlet
2401_837088502 小时前
CSS opacity
前端·css
Lysun0012 小时前
(pnpm)引入 其他依赖失败,例如‘@element-plus/icons-vue‘失败
前端·javascript·npm·pnpm
花花鱼2 小时前
spring boot lunar 农历的三方库引用,获取日期的农历值
java·前端·spring boot
fly spider3 小时前
1.短信登录
前端·firefox
前端小巷子3 小时前
CSS渲染性能优化
前端·css·面试·性能优化
苦学编程的谢4 小时前
计算机是如何工作的
服务器·前端·javascript
蓉妹妹4 小时前
React+Taro选择日期组件封装
前端·react.js·前端框架
风口上的吱吱鼠4 小时前
记录 ubuntu 安装中文语言出现 software database is broken
linux·服务器·前端