1.springBoot 开启Mybatis支持
首先还是添加依赖(Mybatis、Mysqljdbc、druid)
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
2.修改Springboot配置文件application.yml文件
#配置数据源
spring:
datasource:
url: jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8
username: root //数据库用户名
password: 123 //数据库密码
driver-class-name: com.mysql.jdbc.Driver
#springboot整合mybatis
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.offcn.po
3.创建一个实体类,这里我们就不在多说了,要注意的是字段名要和数据库中表的表名对应上
并且给实体类的属性getter、setter和tostring方法。
4.创建Mybatis Mapper 的映射文件
你可以将映射文件和Mapper文件放在同一路径下,不过会出现问题,这里我们要在pom.xml配置文件中添加一个配置
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
或者你也可以把映射文件放到resources/mapper目录下,这两种方法都可以
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.offcn.mapper.UserMapper">
<select id="getUserList" resultType="com.offcn.pojo.MUser">
select * from user
</select>
</mapper>
5.创建Controller,来编写接口,
@RestController
public class UserController {
@Autowired
private UserDao userDao;
@Resource
private UserMapper userMapper;
@RequestMapping("/userList")
public List<MUser> getUserList3(){
List<MUser> userList = userMapper.getUserList();
return userList;
}
}
最后进行测试,这里可能出现的问题就是,忘记了在启动类中添加Mapper的扫描包,这里我们用一个注解来解决
@SpringBootApplication
@MapperScan("com.offcn.mapper") //这个MapperScan注解就是用来配置扫描的
public class HelloApplication {
public static void main(String[] args) {
SpringApplication.run(HelloApplication.class,args);
}
}