Spring Boot中MyBatis的映射文件如何編寫

小樊
81
2024-09-11 20:01:27

在 Spring Boot 中使用 MyBatis,你需要先配置好相關(guān)依賴和配置文件,然后才能編寫映射文件。以下是一個(gè)簡(jiǎn)單的步驟來(lái)創(chuàng)建一個(gè) MyBatis 映射文件:

  1. 添加依賴

在你的 pom.xml 文件中添加 MyBatis 和 MyBatis-Spring-Boot-Starter 依賴:

   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>2.1.4</version>
</dependency>
  1. 配置文件

application.propertiesapplication.yml 文件中添加 MyBatis 配置:

# application.properties
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.demo.entity

或者

# application.yml
mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.example.demo.entity
  1. 創(chuàng)建實(shí)體類

根據(jù)你的數(shù)據(jù)庫(kù)表結(jié)構(gòu),創(chuàng)建一個(gè)實(shí)體類。例如,如果你有一個(gè)名為 user 的表:

package com.example.demo.entity;

public class User {
    private Long id;
    private String name;
    private Integer age;

    // Getters and setters
}
  1. 創(chuàng)建映射文件

resources/mapper 目錄下創(chuàng)建一個(gè)名為 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.mapper.UserMapper">
   <resultMap id="UserResultMap" type="com.example.demo.entity.User">
        <id property="id" column="id"/>
       <result property="name" column="name"/>
       <result property="age" column="age"/>
    </resultMap>

   <select id="findAll" resultMap="UserResultMap">
        SELECT * FROM user
    </select>

   <insert id="insert" parameterType="com.example.demo.entity.User">
        INSERT INTO user (name, age) VALUES (#{name}, #{age})
    </insert>

   <update id="update" parameterType="com.example.demo.entity.User">
        UPDATE user SET name=#{name}, age=#{age} WHERE id=#{id}
    </update>

   <delete id="delete" parameterType="long">
        DELETE FROM user WHERE id=#{id}
    </delete>
</mapper>
  1. 創(chuàng)建 Mapper 接口

com.example.demo.mapper 包下創(chuàng)建一個(gè)名為 UserMapper.java 的接口:

package com.example.demo.mapper;

import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

@Mapper
public interface UserMapper {
    List<User> findAll();
    int insert(User user);
    int update(User user);
    int delete(Long id);
}

現(xiàn)在你已經(jīng)完成了 MyBatis 映射文件的編寫。你可以在你的服務(wù)類中使用 UserMapper 接口來(lái)進(jìn)行數(shù)據(jù)庫(kù)操作。

0