ssm整合

加载时机

springmvc 作用于controller层,mybatis作用于持久层, spring作用于service层(装配对象)。
所以springmvc的ioc依赖spring的ioc
所以spring的ioc创建的时机一定要先于springmvc。
contextloderlistener 是 servletcontext的监听器,init()方法最先执行。所以可以把创建sping IOC容器的功能放到这里执行
所以:springmvc在servlet初始化加载,spring在context监听器参数加载

思路

spring和springmvc和mybatis
spring负责除controller外的所有层
springmvc负责controller层,controller依赖service层,所以springmvc依赖spring

sqlsessionFactory对象注册

mybatis的核心对象是sqlsessionFactory,引入依赖mybatis-spring核心包可以注册sqlsessionFactoryBean。该对象依赖datasource。

mapper代理对象注册

代理对象的创建依赖sqlsessionFactory。创建代理对象的对象叫做MapperScannerConfigurer,指定他的扫描范围到mapper/dao层,可以为该层的接口生成代理对象。注意:只能扫描mapper/dao层。如果全局扫描会为所有的接口生成代理对象。使用时会报错
datasource和sqlsessionFactory和代理对象注册,都要引入到spring.xml中

分页插件

使用mybatis自带的拦截器,在执行sql语句之前,对sql语句进行解析,获得相应的参数。所以需要在注册sqlsessionFactoryBean时,把pageInterceptor拦截器注册到其plugin属性中

contextloader监听器是父容器,在父容器里读取spring.xml。dispatcherservlet子容器,初始化时读取springmvc.xml的配置文件,处理请求。有依赖关系的对象之间不能有一个被依赖对象是没有配的,不然就会出现异常

静态资源放行

WEB-INF目录下的img/css/js等静态资源匹配了dispatcher的路径,会进入到dispatcher,dispatcher会去寻找这些资源对应的controller。找不到就会返回404,这个时候我们需要配置mvc的静态资源放行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值