springMVC-12-整合spring和springmvc
问题1:
好像我们只需要使用springmvc的配置文件作为IOC容器就可以了
--> 需要进行Spring 整合SpringMVC吗?
----> 还是否需要再加入Spring的IOC容器?
-------> 是否需要在web.xml文件配置启动Spring IOC容器的 ContextLoaderListener?
1、需要
通常情况下,类似于数据源,事务,整合其他框架都是放在Spring的配置文件中(而不是放在SpringMVC)实际上放入Spring配置文件对应的IOC容器中的还有Service和Dao.
2、不需要
都放在SpringMVC的配置文件中。也可以分多个Spring的配置文件,然后使用import
所以我们选择了需要这个整合
问题2:
若Spring的IOC容器和SpringMVC的IOC容器扫描的包有重合的部分,就会导致有的bean会被创建2次。
解决:
1.使Spring的IOC容器扫描的包和SpringMVC的IOC容器扫描的包没有重合的部分。
2.使用exclude-filter和include-filter 子节点来规定只能扫描的注解
示例
springIOC容器
<!--除去控制器注解和错误解析器注解不扫描-->
<context:component-scan base-package="com.wang.*">
<context:exclude-filter type="annotation"
expression="org.springframework.stereotype.Controller"/>
<context:exclude-filter type="annotation"
expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
</context:component-scan>
springmvcIOC容器
<!--只需要扫描控制器注解和错误解析注解-->
<context:component-scan base-package="com.wang.*" use-default-filters="false">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
</context:component-scan>
问题3:
这两个IOC容器是可以互相调用bean的吗?
springmvc的IOC容器中的bean可以调用springIOC容器中的bean
但是IOC容器中的bean是不能调用springmvcIOC容器中的bean的
可以从继承来理解(可以把springmvc作为一个业务层是springIOC的儿子
)
局部可以调用全局,但全局不能调用局部
springMVC-12-整合spring和springmvc的更多相关文章
- SpringMVC操作指南-整合Spring、SpringMVC、Hibernate、JUnit、Log4j、C3P0
- SpringMVC操作指南-整合Spring、SpringMVC、MyBatis、Log4j/Log4j2及JUnit4搭建项目框架
- SSM框架整合(Spring、SpringMVC、Mybatis)
#毫无疑问我们肯定是使用Spring去整合SpringMVC和Mybatis,在整合过程中我们首先要让各自的模块实现,然后再去使用Spring整合:比如我先实现Mybatis框架的配置,然后再通过测试 ...
- 整合Spring和SpringMVC
1.Spring容器和SpringMVC容器的关系 Spring容器是一个父容器,SpringMVC容器是一个子容器,它继承自Spring容器.因此,在SpringMVC容器中,可以访问到Spring ...
- springBoot整合spring、springMVC、mybatis
前文 1.为什么使用springBoot 众所周知,spring是Java在搭建后台时非常实用的框架,其整合了市场上几乎所有的主流框架于一体,使后端编程更加高效.快速: 而SpringBoot更是把s ...
- 整合Spring、SpringMVC、MyBatis
spring+springmvc+mybatis集成 一个核心:将对象交给spring管理. 1新建web项目 2添加项目jar包 spring包见上一篇博客 3建立项目的目录结构 4完成Mapper ...
- SSM整合(spring、springMVC、mybatis)
需要用的包: 包括:spring的包.springMVC的包.mybatis的包.数据库驱动包.json相关的包 配置如下,首先是mybatis的配置 <?xml version="1 ...
- 整合spring,springmvc和mybatis
我创建的是maven项目,使用到的依赖架包有下面这些: <dependencies> <dependency> <groupId>org.springframewo ...
- 搭建Spring + SpringMVC + Mybatis框架之三(整合Spring、Mybatis和Spring MVC)
整合Spring和SpringMVC 之前已经整合了spring和mybatis,现在在此基础上整合SSM. 项目目录: 思路:SpringMVC的配置文件独立,然后在web.xml中配置整合. (1 ...
- 零基础学习java------40---------Maven(maven的概念,安装,maven在eclipse中使用),springboot(spring整合springmvc(注解),spring整合mybatis(常见的配置文件)),前端页面(bootstrap软件)
一 maven 1. Maven的相关概念 1.1 项目开发中遇到的问题 (1)都是同样的代码,为什么在我的机器上可以编译执行,而在他的机器上就不行? (2)为什么在我的机器上可以正常打包,而配置管理 ...
随机推荐
- [NOIP2010 提高组] 机器翻译
问题描述 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章. 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换.对于每个英文单词,软件会先在内存中查 ...
- mybatis学习——实现分页
首先回顾一下分页的sql语句: SELEC * FROM 表名 LIMIT startIndex,pageSize tips: *startIndex:起始的位置(从哪个元素开始分页) *pageSi ...
- C#基础之checked与 unchecked的使用
C#基础之checked与 unchecked的使用 以上都是C#中的两个关键字的使用.据官网给出的相关介绍是:C# 语句既可以在已检查的上下文中执行,也可以在未检查的上下文中执行. 在已检查的上下文 ...
- 从一道高大上的面试题来学习位图算法BitMap
今天我偶然刷到了一篇文章,"华为二面:一个文件里面有5亿个数据,一行一个,没有重复的,进行排序".不知道又是哪个无良媒体瞎起的标题,夺人眼球. 不过说归说,这题听着就很高大上,5亿 ...
- raft 图解 (秒懂)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- Java语言中的这些知识点有没有用过,工作中有没有入过这些坑?
在Java语言中,有一些相对生僻的知识,平时用的机会可能不是很多,但如果不了解不掌握这些知识点的话,也可能会掉入陷阱之中,今天我们就来初步梳理一下: 1. goto是java语言中的关键字. &quo ...
- AVAssetWriter视频数据编码
AVAssetWriter介绍 可以通过AVAssetWriter来对媒体样本重新做编码. 针对一个视频文件,只可以使用一个AVAssetWriter来写入,所以每一个文件都需要对应一个新的AVAss ...
- tree (一本通练习||清华集训互测)
tree 内存限制:512 MiB 时间限制:3000 ms 标准输入输出 题目类型:传统 评测方式:文本比较 题目描述 给你一个无向带权连通图,每条边是黑色或白色.让你求一棵最小权的恰好有nee ...
- SSM框架集成各配置文件
SSM框架集成各配置文件 Spring Spring MVC Mybatis 的整合SpringMVC相当于Spring的一个组件 本来就是一个家族的不存在整合的问题,所以主要就是Spring于Myb ...
- js-动态表单校验-吐血总结最近遇到的变态表单校验2---element+原生
上一部分总结了基础常用的js表单校验,包括原生以及框架,下面来总结这一个月涉及到的动态校验: 动态表单校验大致分为三种情况: 1. 首先是固定校验规则,但是表单组件是动态生成的,例如:在表单或者表格里 ...