溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

MyBatis在Spring Boot中的SQL模板

發(fā)布時(shí)間:2024-09-11 16:54:53 來(lái)源:億速云 閱讀:81 作者:小樊 欄目:編程語(yǔ)言

MyBatis 是一個(gè)優(yōu)秀的持久層框架,它支持定制化 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。在 Spring Boot 中,我們可以使用 MyBatis 作為數(shù)據(jù)訪問(wèn)層的實(shí)現(xiàn)。

要在 Spring Boot 中使用 MyBatis,你需要按照以下步驟進(jìn)行操作:

  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. 配置 MyBatis

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í)體類

創(chuàng)建一個(gè)實(shí)體類,例如 User.java

package com.example.demo.entity;

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

    // getter and setter methods
}
  1. 創(chuàng)建 Mapper 接口

創(chuàng)建一個(gè)名為 UserMapper.java 的接口,并定義相應(yīng)的方法:

package com.example.demo.mapper;

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

import java.util.List;

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> findAll();
}
  1. 創(chuàng)建 Mapper XML 文件

resources/mapper 目錄下創(chuàng)建一個(gè)名為 UserMapper.xml 的文件,用于編寫 SQL 語(yǔ)句:

<?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="BaseResultMap" type="com.example.demo.entity.User">
        <id column="id" property="id" jdbcType="BIGINT"/>
       <result column="name" property="name" jdbcType="VARCHAR"/>
       <result column="age" property="age" jdbcType="INTEGER"/>
    </resultMap>

   <select id="findAll" resultMap="BaseResultMap">
        SELECT * FROM user
    </select>
</mapper>
  1. 使用 Mapper

在你的服務(wù)類或控制器類中,通過(guò) @Autowired 注入 UserMapper,然后調(diào)用相應(yīng)的方法來(lái)執(zhí)行 SQL 語(yǔ)句:

package com.example.demo.controller;

import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserController {
    @Autowired
    private UserMapper userMapper;

    @GetMapping("/users")
    public List<User> getUsers() {
        return userMapper.findAll();
    }
}

這樣,你就可以在 Spring Boot 項(xiàng)目中使用 MyBatis 來(lái)編寫和執(zhí)行 SQL 語(yǔ)句了。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI