Spring容器与SpringMVC容器

1.疑问:为什么不用spring去管理所有类?

我们配置springMVC 中,为什么controller不直接交给spring 管理而要spring MVC容器单独分开来管理

2.Spring容器 与 SpringMVC关系

Spring容器与SpringMVC容器是父子关系,子容器可以访问父容器的对象,父容器不能访问子容器的类,如果我们在springMVC配置文件中,直接扫描所有类,把service、dao、controller都交给SpringMVC去管理是可以的,但是假如用spring去管理Contoller,它是访问不到这个类的,因为contoller是在springMVC容器中,假如在Spring配置直接扫描所有类包括controller,而不配置springMVC的话,这样服务器发来的请求,将会出现404的问题,因为它找不到controller,spring无法注入Controller

例如:
在applicationContext-service中配置:
<!-- 扫描包加载Service实现类 -->
<context:component-scan base-package="com.easybuy"></context:component-scan>
会扫描@Controller、@Service、@Repository、@Compnent Springmvc.Xml中不扫描。
结论:springmvc。不能提供服务,因为springmvc子容器中没有controller对象。

3.为什么不直接在SpringMVC.xml中扫描所有类?

原则上我们是可以把service、dao 和controller都交给springMVC去管理,直接在SpringMVC配置文件中让它扫所有包就可以,但是出于未来扩展的考虑,spring和springMVC分开配置,由 spring 去管理service,有利于以后扩展,即便以后加多个struct2也不用影响原有配置

最新文章

  1. ORACLE外部表总结
  2. ecshop 导出exl表格
  3. VMWare虚拟机下为Ubuntu 12.04.1配置静态IP(NAT连接方式)
  4. as3自定义事件
  5. web系统权限设计
  6. python中的urlencode与urldecode
  7. jQuery插件之Cookie
  8. redis基本数据类型【3】-List类型
  9. IOS学习之路九(配置restful webservice 框架restkit)
  10. WebServerice
  11. JDFS:一款分布式文件管理实用程序第一篇(线程池、epoll、上传、下载)
  12. (10.20)Java小作业!
  13. kafka常规及几个重要的操作命令
  14. c++入门之再话命名空间的意义
  15. python操作三大主流数据库(4)python操作mysql④python服务端flask和前端bootstrap框架结合实现新闻展示
  16. 远程FTP下载文件
  17. 一个类似于jq的小型库
  18. COGS NIOP联赛 图论相关算法总结
  19. Verilog中使用&#39;include实现参数化设计
  20. Socket网络编程实例2

热门文章

  1. spring boot(三)Junit 测试controller
  2. SpringDataJpa多条件查询代码封装
  3. MySQL基础篇(04):存储过程和视图,用法和特性详解
  4. Linux学习之路--常用配置
  5. 高德API对接
  6. 关于opengl中的矩阵平移,矩阵旋转,推导过程理解 OpenGL计算机图形学的一些必要矩阵运算知识
  7. LCA (Tarjan&amp;倍增)
  8. ArcEngine 创建要素,删除要素,生成网格,渲染图层(VB)
  9. C语言之运算符和表达式
  10. python检查是奇数还是偶数