Rumah  >  Artikel  >  pangkalan data  >  Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

PHPz
PHPzke hadapan
2023-05-26 12:07:061806semak imbas

Buat projek SpringBoot

Tidak perlu pergi ke butiran, perkenalkan kebergantungan MyBaties dan MySql

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Buat jadual mysql

CREATE TABLE sp_users(
	`id` INT PRIMARY KEY,
	`username` VARCHAR(30),
	`age` INT
);

Tadi Ralat ini terus muncul dari awal, yang membuatkan saya meragui kehidupan saya. Hasilnya ialah ',' tidak boleh ditambah pada baris terakhir Perkara berbeza dan orang berbeza.

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

INSERT INTO sp_users(id,`username`,`age`) VALUES(1,"张三",11);
INSERT INTO sp_users(id,`username`,`age`) VALUES(2,"李四",21);
INSERT INTO sp_users(id,`username`,`age`) VALUES(3,"游坦之",800);

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Tulis kelas entiti

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Oleh kerana Lombok diperkenalkan, ia adalah terus Digunakan

package com.you.domain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class user {
    private int id;
    private String username;
    private int age;
}

untuk mengkonfigurasi application.yaml

#datasource
spring:
datasource:
url: jdbc:mysql:///springboot?serverTimezone = UTC
nama pengguna: root
kata laluan: kata laluan anda
nama kelas pemandu: com.mysql.cj.jdbc.Driver

Konfigurasikan Mapper

Kaedah pertama, buat antara muka UserMapper

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

package com.you.mapper;
import com.you.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserMapper {
    @Select("select * from sp_users")
    public List<User> findAll();
}

Konfigurasikan kelas ujian

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

package com.you.boot;
import com.you.boot.domain.User;
import com.you.boot.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class BootMybatis03ApplicationTests {
    @Autowired
    private UserMapper userMapper;
    @Test
    public void testFindAll()
    {
        List<User> list = userMapper.findAll();
        System.out.println(list);
    }
}

Rendering

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Kaedah 2 konfigurasi fail XML

Tulis fail xml, ruang nama mesti menyalin laluan penuh, Salin/Salin Rujukan

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

<?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.you.boot.mapper.UserXmlMapper">
    <select id="findAll" resultType="user">
        select * from sp_users
    </select>
</mapper>

Bila menulis antara muka UserXmlMapper, tujuan @Repository adalah untuk menyelesaikan masalah menjadi popular dalam kelas ujian, walaupun populariti tidak menjejaskan perjalanan program.

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

package com.you.boot.mapper;
import com.you.boot.domain.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserXmlMapper {
    public List<User> findAll();
}

Konfigurasikan yaml, *Nilai Mapper ialah semua fail xml dengan akhiran Mapper

mybatis:
mapper-locations: classpath: mapper /*Mapper.xml
type-aliases-package: com.you.boot.domain

Tulis kelas ujian

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

package com.you.boot;
import com.you.boot.domain.User;
import com.you.boot.mapper.UserMapper;
import com.you.boot.mapper.UserXmlMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class BootMybatis03ApplicationTests {
    @Autowired
    private UserXmlMapper userXmlMapper;
    @Test
    public void testFindAll2()
    {
        List<User> list = userXmlMapper.findAll();
        System.out.println(list);
    }
}

Kesan

Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql

Atas ialah kandungan terperinci Bagaimana SpringBoot memperkenalkan mybatis dan menyambung ke pangkalan data Mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam