Spring+SpringMVC的搭建参考博文 —— 搭建SpringMVC。
这里主要记录SpringMVC与MyBatis的整合。
准备工作
数据库使用MySql,创建一张测试表:
1 | CREATE TABLE `emp` ( |
引入依赖:
1 | <!-- spring事务 --> |
Spring配置文件
在applicationContext.xml文件中配置数据库:
1 | <!-- 属性占位符 --> |
配置SqlSessionFactory以及sqlSessionTemplate:
1 | <!-- mybatis 的SqlSessionFactory --> |
配置事务:
1 | <!-- 事物管理器配置 --> |
配置扫描mapper:
1 | <!-- 采用自动扫描的方式创建mapper bean --> |
MyBatis配置文件
mybaits-config.xml:
1 |
|
创建实体
创建库表对应实体Emp:
1 | import java.io.Serializable; |
接口与映射
创建一个包含基本CRUD的接口EmpMapper:
1 | import org.springframework.stereotype.Repository; |
其对应的映射文件EmpMapper.xml:
1 |
|
配置服务层
首先创建接口EmpService:
1 | import ssm.mrbird.entity.Emp; |
其实现类EmpServiceImpl:
1 | import org.springframework.beans.factory.annotation.Autowired; |
这里采用注解的方式配置事务。关于事务,可参考博文 —— Spring事务管理。
测试
最终,工程的目录结构为:
测试创建Emp:
1 |
|
启动项目,访问:http://localhost:8080/ssm/insert
查询数据库:
1 | mysql> select * from emp; |
插入成功。
测试getEmp:
1 | "/get",method=RequestMethod.GET) (value= |
访问:http://localhost:8080/ssm/get
测试updateEmp:
1 | "/update",method=RequestMethod.GET) (value= |
访问:http://localhost:8080/ssm/update
查询数据库:
1 | mysql> select * from emp; |
更新成功。
测试deleteEmp:
1 | "/delete",method=RequestMethod.GET) (value= |
访问:http://localhost:8080/ssm/delete
查询数据库:
1 | mysql> select * from emp; |
删除成功。