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对象

相关推荐
zzzzzz3101 小时前
react-bits:从 36K Stars 的组件库,看动画交互组件该如何被评估
前端·react.js·动效
Setsuna_F_Seiei8 小时前
前端的 AI 学习之路 01 之 Agent API 调用 - 和 Agent 的基础对话
前端·人工智能·ai编程
threerocks9 小时前
AI 原生软件开发生命周期手册 - 如何借助 AI,逐阶段改造软件开发生命周期
前端·javascript·后端
徐小夕9 小时前
3分钟从想法到Agent上线:我们开源了一款AI可视化工作流“IDE”
前端·算法·github
why技术11 小时前
eli5,我觉得这个全网在吹的技能,使用体验真的很一般啊。
前端·人工智能·后端
excel11 小时前
记录升级 nuxt3 到 nuxt4 记录
前端
剑胆琴心静水深流11 小时前
全栈之路6---web集成与呈现
前端·vue.js·spring boot·分布式·spring·前端框架·npm
前端snow11 小时前
ai agent -- Memory汇总
前端
ITresearchGuest12 小时前
AI 焦虑下,前端该何去何从
前端·人工智能
Codiggerworld12 小时前
Chrome DevTools 隐藏神技:这 5 个调试技巧你可能从来没用过
前端·chrome·chrome devtools