1. 添加MySQL和MyBatis依赖
  2. 配置数据源
  3. 配置MyBatis
  4. 编写mapper接口
  5. 编写数据访问代码
  6. 编写业务逻辑代码
  7. 编写控制器代码

 1:在pom.xml文件中添加MySQL和MyBatis依赖:

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.23</version>
</dependency>

<dependency>
  <groupId>org.mybatis.spring.boot</groupId>
  <artifactId>mybatis-spring-boot-starter</artifactId>
  <version>2.1.4</version>
</dependency>

 2:在application.properties或application.yml文件中配置MySQL数据源:

spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

 3:在配置类中添加@MapperScan注解,指定MyBatis扫描的mapper接口包路径:

@Configuration
@MapperScan("com.example.demo.mapper")
public class MyBatisConfig {
}

  4:定义mapper接口:

@Mapper
public interface UserMapper {
    List<User> getAllUsers();
    User getUserById(Long id);
    void saveUser(User user);
    void deleteUserById(Long id);
}

 5:在mapper接口中定义数据访问方法,使用@Select、@Insert、@Update和@Delete等注解实现数据访问操作:

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> getAllUsers();

    @Select("SELECT * FROM user WHERE id = #{id}")
    User getUserById(Long id);

    @Insert("INSERT INTO user(name, age) VALUES(#{name}, #{age})")
    void saveUser(User user);

    @Delete("DELETE FROM user WHERE id = #{id}")
    void deleteUserById(Long id);
}

6:编写业务逻辑类,注入mapper接口: 

@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;

    public List<User> getAllUsers() {
        return userMapper.getAllUsers();
    }

    public User getUserById(Long id) {
        return userMapper.getUserById(id);
    }

    public void saveUser(User user) {
        userMapper.saveUser(user);
    }

    public void deleteUserById(Long id) {
        userMapper.deleteUserById(id);
    }
}

7:编写控制器类,注入业务逻辑类: 

@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserService userService;

    @GetMapping("")
    public List<User> getAllUsers() {
        return userService.getAllUsers();
    }

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getUserById(id);
    }

    @PostMapping("")
    public void saveUser(@RequestBody User user) {
        userService.saveUser(user);
    }

    @DeleteMapping("/{id}")
    public void deleteUserById(@PathVariable Long id) {
        userService.deleteUserById(id);
    }
}

 以上就是使用Spring Boot连接MySQL数据库并使用MyBatis访问数据的基本步骤。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐