Springboot整合Mybatis

泡泡大可爱發表於2024-10-13

前言:mybatis有註解版和配置檔案方式,在此使用的是配置檔案形式完成整合

環境: IDEA版本2017.3.1 x64, JDK1.8, SpringBoot2.1.1, Druid1.1.8, mybatis1.3.2

總流程:

  • SpringInitializr(需要連網)快速建立一個springboot專案,新增mybatis依賴元件
  • 整合Druid資料來源
  • 編寫mapper介面
  • 實現mapper.xml檔案
  • 編寫mybatis全域性配置檔案
  • 主配置檔案配置mybatis相關配置

一、利用Spring Initializr(需要連網)建立一個springboot專案,最後選擇元件時,記得勾選這三個元件

Springboot整合Mybatis

二、整合Druid資料來源

可以參考我另一篇文章 malizhi.cn/SpringBoot_…

三、編寫mapper介面

目錄結構:

目錄結構

mapper介面:

@Mapper
public interface EmployeeMapper {
    public Employee getEmpById(Integer id);
    public void insertEmp(Employee employee);
}
複製程式碼

除了可以在介面類加上@Mapper註解掃描此mapper外,也可以在主配置類上新增@MapperScan註解指定掃描包下所有mapper,二選一

@MapperScan("cn.springboot_mybatis.mapper")
public class SpringbootMybatisApplication {
複製程式碼

四、實現mapper.xml

目錄結構:

Springboot整合Mybatis

編寫mapper.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="cn.springboot_mybatis.mapper.EmployeeMapper">
    <select id="getEmpById" resultType="cn.springboot_mybatis.bean.Employee">
        SELECT * FROM employee WHERE id=#{id}
    </select>
</mapper>
複製程式碼

五、編寫mybatis全域性配置檔案

此檔案用來編寫mybatis配置,根據情況編寫,我按照需要開啟了駱駝命名法

目錄結構:

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="mapUnderscoreToCamelCase" value="true"/>
    </settings>
</configuration>
複製程式碼

六、在全域性配置檔案中整合mybatis配置,我使用的是application.yml

mybatis:
  # 指定全域性配置檔案位置
  config-location: classpath:mybatis/mybatis-config.xml
  # 指定sql對映檔案位置
  mapper-locations: classpath:mybatis/mapper/*.xml
複製程式碼

到此整合完畢,可以使用springboot的測試類SpringbootMybatisApplicationTests進行測試。

更多Spring Boot整合可瀏覽此部落格:malizhi.cn

相關文章