SpringBoot整合Mybatis 附上非常简单的测试
最近在搞springBoot项目 需要用到Mybatis 就写了个简单的测试.想进行整合的可以参考.
先说下环境
1:开发工具:IDEA
2:数据库:Mysql 账户 root 密码 123
3:数据库表 : user 字段: id name;
接下来开始
一 : 搭建SpringBoot项目
1: 创建spring initalizr 然后 next 进入下个界面也默认.
2:进入到选择界面
web 下勾选 web , SQL下勾选 MySql,JDBC,MyBatis 勾选完 next . next 这个时候springBoot就搭建好了
3:找到src/main/ resources 创建 application.yml 文件 , 在文件中配置Mybatis
#默认使用配置 spring: profiles: active: dev mybatis: mapper-locations: classpath:mapper/*.xml type-aliases-package: com.example.demo.pojo --- #开发配置 spring: profiles: dev datasource: url: jdbc:mysql://localhost:3306/test username: root password: 123 driver-class-name: com.mysql.jdbc.Driver
4:找到src/main/java/下的系统创建的包 在里面创建一个package 名字为controller 然后创建一个class类 名字为controller在class中写入代码
@RestController public class controller { @RequestMapping("/test") public String test(){ return "hello"; } }
这个时候启动右击demoApplication选择 run demoApplication 发现项目就能启动成功了
访问路径:http://localhost:8080/test 发现成功 这个时候就说明Mybatis配置成功 可以进行测试Mybatis了
二:编写 实体类 service层 dao层 还有mapper.xml 进行测试
附上项目目录结构
1: 创建pojo层 存放实体类 User
public class User { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
2:创建Dao层 存放UserDao 接口 里面有一个查询方法
import java.util.List; public interface UserDao { List<User> select(); }
3:创建service层 里面有UserServiceInter接口 和 UserServiceImpl 实现类 里面调用dao层的方法
public interface UserServiceInter { List<User> select(); }
@Service public class UserServiceImpl implements UserServiceInter { @Resource private UserDao userDao; // @Override public List<User> select() { List<User> UserList=userDao.select(); //调用dao层的方法 return UserList; } }
4:找到 resources配置文件夹 在里面创建一个mapper文件夹 创建UserMapper.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.dao.UserDao" > <resultMap id="BaseResultMap" type="com.example.demo.pojo.User" > <id column="id" property="id" jdbcType="INTEGER" /> <result column="name" property="name" jdbcType="VARCHAR" /> </resultMap> <select id="select" resultType="com.example.demo.pojo.User" > select * from `user` </select> </mapper>
这个配置要注意几点:
5:修改controller层下的代码 进行访问数据操作
@RestController public class controller { @Resource private UserServiceInter userServiceInter; @RequestMapping("/test") public List test(){ List<User> Userlist=userServiceInter.select(); return Userlist; } }
6:找到启动类 加上一行代码 进行扫描dao层下的接口
@MapperScan("com.example.demo.dao")
7:启动服务 访问网址 http://localhost:8080/test
发现访问成功 . 这个时候大功告成. 恭喜你