Rumah > Java > javaTutorial > Panduan Konfigurasi untuk MyBatis di bawah Spring Boot

Panduan Konfigurasi untuk MyBatis di bawah Spring Boot

王林
Lepaskan: 2024-02-26 08:57:05
asal
1257 orang telah melayarinya

基于Spring Boot的MyBatis配置详解

Penjelasan terperinci tentang konfigurasi MyBatis berdasarkan Spring Boot

Spring Boot ialah rangka kerja untuk pembangunan aplikasi pantas dan MyBatis ialah rangka kerja kegigihan yang popular. Menggunakan MyBatis dalam Spring Boot boleh memudahkan proses capaian pangkalan data dan ketekunan data. Artikel ini akan menerangkan secara terperinci cara mengkonfigurasi dan menggunakan MyBatis dalam Spring Boot dan memberikan contoh kod khusus.

1. Konfigurasi MyBatis

  1. Tambah kebergantungan yang berkaitan

Sebelum menggunakan MyBatis, anda perlu menambah kebergantungan yang berkaitan dalam fail pom.xml.

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.4</version>
</dependency>
Salin selepas log masuk
  1. Konfigurasikan sumber data

Dalam Spring Boot, anda boleh menggunakan pangkalan data H2 terbenam sebagai demonstrasi. Tambah konfigurasi berikut dalam fail application.properties:

spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
Salin selepas log masuk
  1. Konfigurasi MyBatis

Tambah konfigurasi berikut dalam fail application.properties:

mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.example.domain
Salin selepas log masuk

Antaranya, lokasi pemeta menentukan MyBatis fail pemetaan Lokasi, type-aliases-package menentukan nama pakej kelas entiti. mapper-locations指定了MyBatis映射文件的位置,type-aliases-package指定了实体类的包名。

  1. 创建实体类

创建一个User类作为示例实体类:

package com.example.domain;

public class User {
    private Long id;
    private String name;
    // 省略getter和setter方法
}
Salin selepas log masuk
  1. 创建Mapper接口

创建一个UserMapper接口,在接口中定义需要执行的数据库操作:

package com.example.mapper;

import com.example.domain.User;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserMapper {
    User getUserById(Long id);
    void saveUser(User user);
    void updateUser(User user);
    void deleteUser(Long id);
}
Salin selepas log masuk
  1. 创建Mapper映射文件

在resources目录下创建mapper文件夹,并在该文件夹下创建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.mapper.UserMapper">
    <resultMap id="BaseResultMap" type="com.example.domain.User">
        <id column="id" property="id" jdbcType="BIGINT"/>
        <result column="name" property="name" jdbcType="VARCHAR"/>
    </resultMap>
    <select id="getUserById" resultMap="BaseResultMap">
        SELECT * FROM user WHERE id = #{id}
    </select>
    <insert id="saveUser">
        INSERT INTO user(name) VALUES(#{name})
    </insert>
    <update id="updateUser">
        UPDATE user SET name = #{name} WHERE id = #{id}
    </update>
    <delete id="deleteUser">
        DELETE FROM user WHERE id = #{id}
    </delete>
</mapper>
Salin selepas log masuk

二、使用MyBatis进行数据库操作

  1. 编写Service类

编写一个UserService类,用于执行具体的数据库操作:

package com.example.service;

import com.example.domain.User;
import com.example.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

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

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

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

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

    public void deleteUser(Long id) {
        userMapper.deleteUser(id);
    }
}
Salin selepas log masuk
  1. 编写Controller类

编写一个UserController类,用于接收外部请求并调用对应的Service方法:

package com.example.controller;

import com.example.domain.User;
import com.example.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

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

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

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

    @PutMapping("/{id}")
    public void updateUser(@PathVariable Long id, @RequestBody User user) {
        user.setId(id);
        userService.updateUser(user);
    }

    @DeleteMapping("/{id}")
    public void deleteUser(@PathVariable Long id) {
        userService.deleteUser(id);
    }
}
Salin selepas log masuk
  1. 启动应用程序

编写一个启动类,并添加@SpringBootApplication注解:

package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
Salin selepas log masuk
  1. 测试接口

可以使用Postman等工具发送HTTP请求,测试接口的调用。例如,发送GET请求:localhost:8080/users/1

    Buat kelas entiti

    Buat kelas Pengguna sebagai contoh kelas entiti:

    rrreee
      🎜Buat antara muka Mapper 🎜🎜🎜Buat antara muka UserMapper, dalam antara muka Tentukan operasi pangkalan data yang perlu dilakukan: 🎜rrreee
        🎜Buat fail pemetaan Mapper🎜🎜🎜Buat folder pemeta dalam direktori sumber, dan cipta fail UserMapper.xml dalam folder: 🎜rrreee🎜II , Gunakan MyBatis untuk operasi pangkalan data🎜🎜🎜Tulis kelas Perkhidmatan🎜🎜🎜Tulis kelas UserService untuk melaksanakan operasi pangkalan data tertentu:🎜rrreee🎜🎜Tulis kelas Pengawal dan permintaan luar Kelas🎜🎜 untuk menerima Controller panggil kaedah Perkhidmatan Sepadan: 🎜rrreee🎜🎜Mulakan aplikasi🎜🎜🎜Tulis kelas permulaan dan tambah @SpringBootApplication anotasi: 🎜rrreee
          🎜Uji antara muka🎜🎜 Ya Gunakan alatan seperti Postman untuk menghantar permintaan HTTP dan menguji panggilan antara muka. Contohnya, hantar permintaan GET: localhost:8080/users/1 untuk menanyakan maklumat pengguna dengan ID 1. 🎜🎜Kesimpulan🎜🎜Artikel ini menerangkan secara terperinci proses mengkonfigurasi dan menggunakan MyBatis dalam projek berasaskan Spring Boot, dan menyediakan contoh kod yang berkaitan. Melalui langkah di atas, anda boleh menyepadukan dan menggunakan MyBatis dengan mudah untuk operasi pangkalan data dalam projek Spring Boot anda. Harap artikel ini membantu anda! 🎜

Atas ialah kandungan terperinci Panduan Konfigurasi untuk MyBatis di bawah Spring Boot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan