mybatis官网
一、在maven项目的pom.xml的dependencies中加入以下依赖:
<!-- 整合mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.9</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
二、设置数据源信息
在application.properties中添加设置:
#数据源配置
#spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=jdbc:mysql://localhost:3306/数据库名字?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
spring.datasource.username=数据库用户名
spring.datasource.password=数据库密码
三、创建dao、entity等与数据库相关的包和Mapper.xml
将Mapper接口和Mapper.xml放在一个包中,并且Mapper.xml中的namespace要和Mapper接口的全名一致。
否则,启动项目时会报如下类似的错误:
四、在启动类添加MapperScan注解
注解参数为Mapper接口所在的包,例如:
@MapperScan("rr.dao")
这样就无须在每个Mapper接口都添加Mapper注解了。
五、编写控制器层和服务层等业务代码
六、加载xml文件
由于maven项目默认会忽略src/main/java下的非java文件,所以我们需要配置一下,让maven项目加载该目录下的资源文件。
如果没有配置此项,则应该把xml文件放在src/main/resources下
<!-- 构建项目时加载xml文件 -->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
七、mybatis的其它设置
(1)如果Mapper.xml与Mapper接口并未设置在同一个包中,则需要在application.properties中添加配置:
#配置mapper.xml的地址,可以配置多个路径,rr/mapper为包路径
mybatis.mapper-locations=classpath:rr/mapper/*Mapper.xml
(2)Mapper.xml的实体参数或返回值可以省略包名,在application.properties中添加配置:
#设置Mapper.xml中实体包的别名,以便简写参数或返回类型
#mybatis.type-aliases-package=实体类的包名
(3)开启日志
在application.properties中添加设置:
#给mybatis添加日志
logging.level.rr.dao=debug
这里的rr.dao为放置mapper接口的包,也可以直接使用顶层包