关于Spring和SpringMVC的配置
来源:5-14 spring、springmvc配置实操
楚楚提
2019-03-26
之前再做SpringMVC项目时,只需要一个spring配置文件,交给dispatcherServlet,让他负责IOC容器的初始化就好了,因为SpringMVC本身自带Spring的bean context aop core 4个核心包,SpringMVC本身就相当于Spring了,他也有自己的IOC容器
但是本项目中在spring ioc容器初始化的时候,好像是用到了两个配置文件,一个是spring的,由监听器负责整合web容器和spring容器:
另外一个就是SpringMVC的,由dispatcherServlet负责整合:
这样一来是会产生一个spring的ioc容器,还是两个ioc容器呢?
为什么不直接使用一个配置文件,非要搞成两个?
2回答
-
楚楚提
提问者
2019-03-27
在网上搜了一下,发现是有两个容器,spring的容器是springMVC的父容器.
但是我自己平时编程的时候发现一个问题,就是@controller对于spring 和 springMVC是有不同意义的,对于前者类似于@repository或者@Service,主要是表达这个bean和什么功能相关.
但是对于SpringMVC @Controller注释意味着处理请求的handler,这是很关键的,不能用其他注解替换的
而本项目中两个容器扫描包时都是com.mmall包,那么对于其中的@controller注解,他们又是怎么处理的,以及怎么区分的呢?????
042019-03-27 -
geelylucky
2019-03-27
亲爱的同学,你好,我是geely老师的助教。
是两个IOC容器,是可以只用spring mvc的,用两个是为了做到单一原则,spring管理业务逻辑层,spring mvc负责对外的接口。
012019-03-27
相似问题