Home > Database > Mysql Tutorial > How SpringBoot introduces mybatis and connects to Mysql database

How SpringBoot introduces mybatis and connects to Mysql database

PHPz
Release: 2023-05-26 12:07:06
forward
1874 people have browsed it

Create a SpringBoot project

No need to go into details, introduce MyBaties, MySql dependencies

How SpringBoot introduces mybatis and connects to Mysql database

##Create mysql table

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

Just now This error kept appearing from the beginning, which made me doubt my life. The result was that ',' could not be added to the last line. Things are different and people are different.

How SpringBoot introduces mybatis and connects to Mysql database

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);
Copy after login

How SpringBoot introduces mybatis and connects to Mysql database

Writing entity classes

How SpringBoot introduces mybatis and connects to Mysql database

Because Lombok is introduced, it is directly Used

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;
}
Copy after login

to configure application.yaml

#datasource

spring:
datasource:
url: jdbc:mysql:///springboot?serverTimezone= UTC
username: root
password: your password
driver-class-name: com.mysql.cj.jdbc.Driver

Configure Mapper

Method 1, create UserMapper interface

##

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();
}
Copy after login
How SpringBoot introduces mybatis and connects to Mysql databaseConfigure test class

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);
    }
}
Copy after login
How SpringBoot introduces mybatis and connects to Mysql databaseRendering diagram

How SpringBoot introduces mybatis and connects to Mysql databaseMethod 2 XML file configuration

Writing xml file, namespace must copy the full path, Copy/Copy Reference

<?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>
Copy after login
How SpringBoot introduces mybatis and connects to Mysql database When writing the UserXmlMapper interface, the purpose of @Repository is to solve the problem of becoming popular within the test class, although the popularity does not affect the running of the program.

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();
}
Copy after login
How SpringBoot introduces mybatis and connects to Mysql databaseConfigure yaml, *Mapper value is all xml files with Mapper suffix

mybatis:
mapper-locations: classpath: mapper/*Mapper.xml

type-aliases-package: com.you.boot.domain

Write test class

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);
    }
}
Copy after login
How SpringBoot introduces mybatis and connects to Mysql database Effect

The above is the detailed content of How SpringBoot introduces mybatis and connects to Mysql database. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template