步骤
- 搭建SpringBoot工程。
- 引入MyBatis起步依赖,添加PostgreSQL驱动。
- 编写DataSource和MyBatis相关配置。
- 定义表和实体类。
- 编写dao和mapper文件/纯注解开发。
- 测试
搭建SpringBoot
此处选择jdbc、PostgreSQL Driver、Mybatis
起步依赖
org.mybatis.spring.boot mybatis-spring-boot-starter2.2.0 org.postgresql postgresqlruntime
DataSource和MyBatis相关配置
Application.yml文件
#datasource
spring:
datasource:
url: jdbc:postgresql://192.168.0.103:5432/yytest
username: postgres
password: 123456@
driver-class-name: org.postgresql.Driver
定义表和实体类
postgresql安装略。
User.java
package com.yy.springboot_mybatis.domain;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + ''' +
", password='" + password + ''' +
'}';
}
}
纯注解
UserMapper.java
package com.yy.springboot_mybatis.mapper;
import com.yy.springboot_mybatis.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserMapper {
@Select("select * from t_user")
public List findAll();
}
测试类
package com.yy.springboot_mybatis;
import com.yy.springboot_mybatis.domain.User;
import com.yy.springboot_mybatis.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMybatisApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void test() {
List list = userMapper.findAll();
System.out.println(list);
}
}
整体目录结构
测试
xml开发方式
相比于注解开发要多写一个xml文件,且mapper中不直接编写sql
编写UserXmlMapper.java文件
package com.yy.springboot_mybatis.mapper;
import com.yy.springboot_mybatis.domain.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface UserXmlMapper {
public List findAll2();
}
编写UserMapper.xml文件
select * from t_user
测试类
package com.yy.springboot_mybatis;
import com.yy.springboot_mybatis.domain.User;
import com.yy.springboot_mybatis.mapper.UserMapper;
import com.yy.springboot_mybatis.mapper.UserXmlMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMybatisApplicationTests {
@Autowired
private UserXmlMapper userXmlMapper;
@Test
public void test2() {
List list = userXmlMapper.findAll2();
System.out.println(list);
}
}



