整合SpringMVC和mybatis
需求:
使用SpringMVC和mybatis完成商品列表的查询
整合思路:
SpringMVC和mybatis的系统架构
表现层:SpringMVC
业务层:service接口
持久层:mybatis
Spring将各层进行整合,
通过Spring可以管理持久层的mapper(相当于dao接口,mapper在Spring容器里进行注册)
通过Spring管理业务层的service,service中可以调用mapper接口
Spring进行事务控制
通过Spring管理表现层的Handler,Handler里面可以调用service接口
mapper、service、Handler都是javabean
数据库:MySQL
1、整合dao层:
mybatis和Spring整合,通过Spring管理mapper接口
使用mapper的扫面器自动扫描mapper接口在Spring中进行注册
2、整合service层:
通过Spring管理service接口
使用配置的方式将service接口配置在Spring配置文件中
实现事务控制
3、整合SpringMVC:
由于SpringMVC是Spring的模块,不需要整合
环境:
数据库环境
java环境
注意:JDK1.8版本不兼容Spring3.2的部分,使用JDK1.8需要Spring4.x
所需要的jar包:
数据库驱动包
mybatis的jar包
mybatis和Spring的整合包
log4j包
数据库连接池包dbcp
Spring4.3的所有包
jstl包
整合dao:
mybatis和Spring进行整合
配置文件SqlMapConfig
mybatis自己的配置文件
配置Spring和mybatis整合的文件
applicationContext-dao.xml
配置SqlsessionFactory
配置数据源
配置mapper扫描器
编写mapper文件
1、逆向工程生成po类及mapper(单表的增删改查)
2、将生成的文件拷贝的工程中
手动定义商品查询mapper
针对综合查询mapper,一般会有关联查询,建议自定义mapper
整合service:
让Spring来管理service接口
定义service接口
在Spring容器中配置service
创建applicationContext-service.xml,文件中配置service
创建事务控制
applicationContext-transaction.xml
在applicationContext-transaction.xml中使用Spring声明式事务控制
整合SpringMVC
创建springMVC.xml文件,配置处理器映射器、适配器、视图解析器
配置前端控制器
编写Handler(Controller)
编写jsp
加载Spring的容器
将mapper、service、controller都加载到Spring的容器中
建议使用通配符的方法加载上面的配置文件
在web.xml中,添加Spring容器监听器,加载Spring的容器
注意:
在整合的时候可能会出现jar包不兼容的问题,更换高版本的jar包
比如在jdk1.8的环境需要Spring4.x的jar包
最新版的mybatis在使用的时候,mybatis和Spring的连接包也需要新版本的支持
网友评论