pom文件中导入mybatis
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency>
导入mysql
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <!-- 5.1.46版本比较稳定--> <version>5.1.46</version> </dependency>
配置yml文件:在resources中配置application.yml
Spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/xxx?useUnicode=true&characterEncoding=utf-8&useSSL=false
//xxx为数据库的名
username: root(账号)
password: password(密码)
mybatis:
mapper-locations: classpath*:mapper/*Mapper.xml
type-aliases-package: com.example.demo.domain //mapper.xml中的resultType中经常会用到一些自定义POJO,你可以用完全限定名来指定这些POJO的引用。路径为实体类的路径。
domain层,也就是pojo层写实体类 文件名TempEntity.class
private String acount;
private Integer id;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getAcount() {
return acount;
}
public void setAcount(String acount) {
this.acount = acount;
}
@Override
public String toString() {
return "TempEntity{" +
"acount='" + acount + '\'' +
", id=" + id +
'}';
}
Controll层写上调用方法
package com.example.demo.Controller;
import com.example.demo.domain.TempEntity;
import com.example.demo.mapper.TempMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
public class MybatisController {
@Autowired
private TempMapper tempMapper;
@RequestMapping("/showsql")
@ResponseBody
public List<TempEntity> queryUserList(){
List<TempEntity> temps = tempMapper.queryUserList();
return temps;
}
}
mapper层中与mybatis交互
package com.example.demo.mapper;
import com.example.demo.domain.TempEntity;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface TempMapper {
List<TempEntity> queryUserList();
}
resources层中mapper层的xml文件配置
<?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.example.demo.mapper.TempMapper">
<select id="queryUserList" resultType="com.example.demo.domain.TempEntity">
select * from temp
</select>
</mapper>
注意:在Application启动文件中要加上@MapperScan("com.xxx.xx.mapper")
测试结果: