当应用Spring Boot和MyBatis来实现对数据库的操作时,能够依照以下步骤进行配置和开发:

  1. 确保曾经在我的项目的pom.xml文件中增加了Spring Boot和MyBatis的依赖。
<!-- Spring Boot 依赖 --><dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-web</artifactId></dependency><!-- MyBatis 依赖 --><dependency>    <groupId>org.mybatis.spring.boot</groupId>    <artifactId>mybatis-spring-boot-starter</artifactId></dependency><!-- MySQL 数据库驱动依赖 --><dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId></dependency>
  1. 配置数据库连贯信息。在application.properties文件中增加以下配置:
# 数据库连贯信息spring.datasource.url=jdbc:mysql://localhost:3306/db_examplespring.datasource.username=rootspring.datasource.password=123456spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver# MyBatis 配置mybatis.mapper-locations=classpath:mapper/*.xml

请依据理论状况批改数据库连贯URL、用户名和明码。

  1. 创立实体类(Entity)。例如,创立一个名为User的实体类,与数据库表的字段一一对应。
public class User {    private Long id;    private String name;    private String email;    // ... 其余字段的 getter 和 setter 办法}
  1. 创立Mapper接口和XML映射文件。

UserMapper.java中定义数据库操作的办法。

@Mapperpublic interface UserMapper {    List<User> getAllUsers();    User getUserById(Long id);    void createUser(User user);    void updateUser(User user);    void deleteUser(Long id);}

UserMapper.xml中编写SQL语句的映射配置。

<?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.repository.UserMapper">    <resultMap id="userResultMap" type="com.example.entity.User">        <id property="id" column="id"/>        <result property="name" column="name"/>        <result property="email" column="email"/>        <!-- 其余字段映射 -->    </resultMap>    <select id="getAllUsers" resultMap="userResultMap">        SELECT * FROM users    </select>    <select id="getUserById" resultMap="userResultMap">        SELECT * FROM users WHERE id = #{id}    </select>    <insert id="createUser">        INSERT INTO users (name, email) VALUES (#{name}, #{email})    </insert>    <update id="updateUser">        UPDATE users SET name = #{name}, email = #{email} WHERE id = #{id}    </update>    <delete id="deleteUser">        DELETE FROM users WHERE id = #{id}    </delete></mapper>
  1. 创立服务层(Service)。在UserService.javaUserServiceImpl.java中定义对数据库操作的业务逻辑。
public interface UserService {    List<User> getAllUsers();    User getUserById(Long id);    void createUser(User user);    void updateUser(User user);    void deleteUser(Long id);}
@Servicepublic class UserServiceImpl implements UserService {    private final UserMapper userMapper;    public UserServiceImpl(UserMapper userMapper) {        this.userMapper = userMapper;    }    @Override    public List<User> getAllUsers() {        return userMapper.getAllUsers();    }    @Override    public User getUserById(Long id) {        return userMapper.getUserById(id);    }    @Override    public void createUser(User user) {        userMapper.createUser(user);    }    @Override    public void updateUser(User user) {        userMapper.updateUser(user);    }    @Override    public void deleteUser(Long id) {        userMapper.deleteUser(id);    }}
  1. 创立管制层(Controller)。在UserController.java中定义接口办法,并解决HTTP申请。
@RestController@RequestMapping("/users")public class UserController {    private final UserService userService;    public UserController(UserService userService) {        this.userService = userService;    }    @GetMapping    public List<User> getAllUsers() {        return userService.getAllUsers();    }    @GetMapping("/{id}")    public User getUserById(@PathVariable("id") Long id) {        return userService.getUserById(id);    }    @PostMapping    public void createUser(@RequestBody User user) {        userService.createUser(user);    }    @PutMapping("/{id}")    public void updateUser(@PathVariable("id") Long id, @RequestBody User user) {        user.setId(id);        userService.updateUser(user);    }    @DeleteMapping("/{id}")    public void deleteUser(@PathVariable("id") Long id) {        userService.deleteUser(id);    }}

当初,能够应用Apifox或其余API测试工具来测试这些接口。例如,发送GET申请到/users能够获取所有用户列表,发送POST申请到/users能够创立新用户,发送PUT申请到/users/{id}能够更新用户信息,发送DELETE申请到/users/{id}能够删除用户。

本文由mdnice多平台公布