ホームページ >Java >&#&チュートリアル >SpringBoot MyBatis をすぐに始める方法

SpringBoot MyBatis をすぐに始める方法

PHPz
PHPz転載
2023-05-11 14:25:121282ブラウズ

1. MyBatis の概要

MyBatis は、カスタム SQL、ストアド プロシージャ、高度なマッピングをサポートする優れた永続層フレームワークです。 MyBatis は、ほぼすべての JDBC コードと、パラメータの設定と結果セットの取得の作業を排除します。 MyBatis は、単純な XML または注釈を使用して、プリミティブ型、インターフェイス、および Java POJO (Plain Old Java Object) を構成し、データベース内のレコードにマッピングできます。

2. MyBatis を使用する手順

1. MyBatis プロジェクトの全体的なディレクトリ構造

SpringBoot MyBatis怎么快速入门

2.シンプルな SpringBoot プロジェクト

SpringBoot MyBatis怎么快速入门
SpringBoot MyBatis怎么快速入门
SpringBoot MyBatis怎么快速入门

##3. MyBatis 依存関係を追加します

  <!--MyBatis-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.32</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>

SpringBoot MyBatis怎么快速入门

4. データベースに USER テーブルを作成します

SpringBoot MyBatis怎么快速入门

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(20) NOT NULL  DEFAULT "" COMMENT "用户名",
  `password` varchar(50) NOT NULL DEFAULT "" COMMENT "密码",
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;

5. application.properties でデータベース接続情報を設定します

#数据库相关配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useSSL=false&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=Asia/Shanghai&useAffectedRows=true
spring.datasource.username=root
spring.datasource.password=QQ796413

#mybaits配置
#mapper加载路径
mybatis.mapper-locations= classpath:mapper/*.xml
#实体包位置
mybatis.type-aliases-package= com.example.mybatisdemo.entity
#myatbis配置文件
mybatis.config-location= classpath:mybatis-config.xml

6. 対応するエンティティ クラスを作成しますUSER テーブルへ

SpringBoot MyBatis怎么快速入门

package com.example.mybatisdemo.entity;

public class User {
    private int id;
    private String username;
    private String password;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username="" + username + """ +
                ", password="" + password + """ +
                "}";
    }

7. Mapper/UserMapper

SpringBoot MyBatis怎么快速入门

package com.example.mybatisdemo.mapper;

import com.example.mybatisdemo.entity.User;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserMapper{

     User findUserById(Integer id);
}

8 に UserMapper.java を作成します。 service/UserService

#

package com.example.mybatisdemo.service;

import com.example.mybatisdemo.entity.User;

public interface UserService {
    User findUserById(Integer id);
}
SpringBoot MyBatis怎么快速入门 に新しい UserService.java## を作成します。service/impl/UserServiceImpl

##
package com.example.mybatisdemo.service.impl;

import com.example.mybatisdemo.entity.User;
import com.example.mybatisdemo.mapper.UserMapper;
import com.example.mybatisdemo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

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

        @Override
        public User findUserById(Integer id) {
            return userMapper.findUserById(id);
        }
}
## に UserServiceImpl.java を作成します。 #10. resource conf.xml

SpringBoot MyBatis怎么快速入门

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
    <settings>
        <!--开启日志-->
        <setting name="logImpl" value="STDOUT_LOGGING"/>
        <!--开启驼峰命名法-->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
        <!--开启全局延迟加载-->
        <setting name="lazyLoadingEnabled" value="true"/>
        <!-- 集合为空时强制返回空集合实例而不是null -->
        <setting name="returnInstanceForEmptyRow" value="true"/>
        <!-- 结果集中value为空时保留key -->
        <setting name="callSettersOnNulls" value="true"/>
    </settings>
</configuration>

の下に新しい mybatis を作成します。11. resource

SpringBoot MyBatis怎么快速入门

のマッパー ファイルの下に 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">
<!--注意:1.这里的namespace要是你usermapper的位置-->
<mapper namespace="com.example.mybatisdemo.mapper.UserMapper">
    <!--注意这里的返回类型-->
    <resultMap id="BaseResultMap" type="com.example.mybatisdemo.entity.User">
        <result column="id" property="id"/>
        <result column="username" property="username"/>
        <result column="password" property="password"/>
    </resultMap>

    <!--2.id和你的方法名一样,resultMap为上面的id名一致-->
    <select id="findUserById" resultMap="BaseResultMap">
        select
             id,
             username,
             password
        from
             user
        where
             id= #{id,jdbcType=INTEGER}
    </select>
</mapper>

12. UserController.java

SpringBoot MyBatis怎么快速入门

package com.example.mybatisdemo.controller;

import com.example.mybatisdemo.entity.User;
import com.example.mybatisdemo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {

    @Autowired
    UserService userService;

    @GetMapping("/findUserById")
    public User findUserById(@RequestParam Integer id){
       return userService.findUserById(1);
    }
}

13. テスト

SpringBoot MyBatis怎么快速入门

を作成します。

以上がSpringBoot MyBatis をすぐに始める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。