c语言编程笔录

首页 >   > 笔记大全

笔记大全

在SpringBoot中使用MyBatis怎么实现一个应用访问功能

更新时间:2023-07-12

第一段:准备工作

在使用SpringBoot和MyBatis构建应用程序之前,您需要完成一些必要的准备工作,包括创建数据库和表以及配置MyBatis和SpringBoot环境。

首先,您需要创建一个数据库并添加表:

CREATE DATABASE mydb;
USE mydb;
CREATE TABLE users (
  id INT(11) NOT NULL AUTO_INCREMENT,
  username VARCHAR(50) NOT NULL,
  password VARCHAR(50) NOT NULL,
  PRIMARY KEY (id)
);

然后,您需要添加所需的依赖项:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <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>
        <version>8.0.21</version>
    </dependency>
</dependencies>

然后,在application.properties文件中添加以下配置:

spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=password

第二段:创建实体类

在使用MyBatis进行数据库操作时,需要创建一个实体类,该类的属性和数据库表的列应该保持相同,并且要添加相应的getters和setters方法。

这里是一个简单的User类:

public class User {
    private Integer id;
    private String username;
    private String password;

    // getters and setters
}

第三段:创建Mapper接口

Mapper接口是一个Java接口,其中定义了与数据库交互的方法。在MyBatis中,Mapper接口是通过XML文件或注解进行配置的。

下面是一个简单的UserMapper接口:

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM users WHERE id = #{id}")
    User findById(@Param("id") Integer id);

    @Insert("INSERT INTO users(username,password) VALUES(#{username},#{password})")
    @Options(useGeneratedKeys = true, keyProperty = "id")
    void save(User user);

    @Update("UPDATE users SET username=#{username}, password=#{password} WHERE id=#{id}")
    void update(User user);

    @Delete("DELETE FROM users WHERE id=#{id}")
    void delete(Integer id);
}

第四段:创建Controller

最后,在Controller中定义需要访问的API。这里是一个简单的UserController类:

@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserMapper userMapper;

    @GetMapping("/{id}")
    public User findById(@PathVariable Integer id) {
        return userMapper.findById(id);
    }

    @PostMapping("/")
    public void save(@RequestBody User user) {
        userMapper.save(user);
    }

    @PutMapping("/")
    public void update(@RequestBody User user) {
        userMapper.update(user);
    }

    @DeleteMapping("/{id}")
    public void delete(@PathVariable Integer id) {
        userMapper.delete(id);
    }
}

使用以上代码和步骤,您可以成功地在SpringBoot中使用MyBatis实现一个应用访问功能。