前言:
之前我们已经把Mybatis、Spring、SpringMVC介绍完毕,忘记的同学可以查看博客主页秀琴的秘密花园。这篇文章严格采用SSM框架把Mybatis、Spring、SpringMVC整合在一起。祝大家学有所成。
成大事不在于力量的大小,而在于能坚持多久。——塞·约翰生
目录
环境
Mybatis层
Spring层
SpringMVC层
IDEA
MySQL 5.7.19
Tomcat 9
Maven 3.6
Spring
基本环境搭建(添加依赖)—pom.xml
junit
junit
4.12
mysql
mysql-connector-java
5.1.47
com.mchange
c3p0
0.9.5.2
javax.servlet
servlet-api
2.5
javax.servlet.jsp
jsp-api
2.2
javax.servlet
jstl
1.2
org.mybatis
mybatis
3.5.2
org.mybatis
mybatis-spring
2.0.2
org.springframework
spring-webmvc
5.1.9.RELEASE
org.springframework
spring-jdbc
5.1.9.RELEASE
建立基本结构和配置框架
1、数据库配置文件 database.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test
jdbc.username=root
jdbc.password=123
2、编写MyBatis的核心配置文件
3.编写Dao层的 Mapper接口(注解形式)
//查一个
@Select("select * from sys_user_role ur,sys_role r where ur.roleId=r.id and ur.userId=#{id}")
public List findById(Long id);
//查所有
@Select("select * from sys_role")
public List findAll();
//增
@Insert("insert into sys_role values(#{id}, #{roleName},#{roleDesc})")
public void save(Role role);
//删
@Delete("delete from sys_role where id=#{id}")
public void delete(int id);
4.编写Service层的接口和实现类
5.实现类
1、配置Spring整合MyBatis,我们这里数据源使用c3p0连接池;
2、我们去编写Spring整合Mybatis的相关的配置文件;spring-dao.xml
3、Spring整合service层
1、web.xml
CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
CharacterEncodingFilter
/*
contextConfigLocation
classpath:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
DispatcherServlet
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:spring-mvc.xml
2
DispatcherServlet
/
2、spring-mvc.xml
3、Spring配置整合文件,applicationContext.xml
重点
1.配置Mybatis时,需导入特殊依赖,否则无法导入
2.当出现——Parameter ‘xxx‘ not found. Available parameters are [xxx,xxx, param3, param1,param2]错误时。
解决过程如下:
1.对于mapper接口中,传入的参数有多个时必须使用@param
进行标识.
2.当需要返回已经增加的主键id时