SpringBoot集成mybatis

2020-12-13 05:49

阅读:316

标签:dir   classpath   maven工程   entity   中标   cto   xml配置   选择   使用   

本博客是建立在对mybatis和spring有一定了解的情况下讲解。springboot与mybatis集成虽说是一个比较简单的集成,但是如果忽视某些细节,可能会集成失败。一些容易忽视的地方,我会在博客中标记到。

同时,我将写一个用户的增删改查功能,代码放到github上,如果你有兴趣,可以下载我在github上的源码!

GitHub源码地址: https://github.com/chengwenqin/cnblogs/tree/248d4fa2ed8e10b9b7732e354c9f866881ee0463

1.新建一个maven工程

2.引入集成相关的依赖,配置pom.xml文件

3.创建三层结构,dao,service,controller;配置application.yml文件

4.启动测试

 

1.新建一个maven工程

  我们可以使用eclipse或者idea创建一个maven工程,。

2.引入相关依赖,配置pom.xml文件

  pom.xml配置如下:

xml version="1.0" encoding="UTF-8"?>
project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    modelVersion>4.0.0modelVersion>

    groupId>net.sunmonkeygroupId>
    artifactId>springboot-mybatis-demoartifactId>
    version>1.0version>

    parent>
        groupId>org.springframework.bootgroupId>
        artifactId>spring-boot-starter-parentartifactId>
        version>1.5.8.RELEASEversion>
    parent>

    dependencies>
        dependency>
            groupId>org.springframework.bootgroupId>
            artifactId>spring-boot-starter-webartifactId>
        dependency>

        dependency>
            groupId>org.mybatis.spring.bootgroupId>
            artifactId>mybatis-spring-boot-starterartifactId>
            version>1.3.2version>
        dependency>

        dependency>
            groupId>mysqlgroupId>
            artifactId>mysql-connector-javaartifactId>
            version>5.1.39version>
        dependency>

        dependency>
            groupId>com.alibabagroupId>
            artifactId>druidartifactId>
            version>1.0.29version>
        dependency>

    dependencies>

    properties>
        java.version>1.8java.version>
    properties>

    build>

        plugins>
            plugin>
                groupId>org.springframework.bootgroupId>
                artifactId>spring-boot-maven-pluginartifactId>
            plugin>
        plugins>

        resources>
            
            resource>
                directory>src/main/javadirectory>
                includes>
                    include>**/**include>
                includes>
                filtering>truefiltering>
            resource>
            resource>
                directory>src/main/resourcesdirectory>
                includes>
                    include>**/**include>
                includes>
                filtering>truefiltering>
            resource>
        resources>

    build>

project>

注意pom.xml配置文件中的节点的配置,maven工程默认只会打包src/main/java下面的java文件,会直接过虑掉src/main/java文件目录下路的xml,properties等等文件。所以此处手动配置,**/**表示打包的时候将src/main/java目录下面所有的文件都打包。此处配置的主要作用是将mybatis的映射器(即xml文件)文件打包到jar包中。

3.创建dao,service,controller三层结构

  创建dao,service,controller三层结构在这里不做详细介绍。具体代码可查看我在github上的工程源码。

要注意的是,由于mybatis和spring不是出自一家,因此使用springboot集成mybatis的时候,还需要额外的配置,主要是两项

  1,配置mybatis的接口文件所在路径

  2,配置mybatis的映射器(即xml文件)所在的路径

1.配置mybatis的接口文件所在的路径

  有两种方式可以选择

  1,使用 @org.apache.ibatis.annotations.Mapper 注解,将该注解写在mybatis的dao层接口上,springboot程序在启动的时候就能扫描到该接口

  2,使用 @org.mybatis.spring.annotation.MapperScan 注解,该注解将会扫描某个包(package)下面所有的接口

    如果mybatis的dao层接口在 net.sunmokey.dao.mapper 包下面

    那么@org.mybatis.spring.annotation.MapperScan的配置为 @org.mybatis.spring.annotation.MapperScan("net.sunmonkey.dao.mapper")

2.配置mybatis的映射器(即xml文件)所在的路径

  需要在application.yml文件或者application.properties文件下面配置。

  如果映射文件(即mybatis的xml文件)在 net.sunmonkey.dao.mapping 目录下

  那么yml中的配置为:

    mybatis:

       mapper-locations: classpath:net/sunmonkey/dao/mapping/*.xml

  application.yml配置如下:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test
    username: root
    password: root
    type: com.alibaba.druid.pool.DruidDataSource
    initialization-mode: always

mybatis:
  mapper-locations: classpath:net/sunmonkey/dao/mapping/*.xml
  type-aliases-package: net.sunmonkey.entity

logging:
  level:
    net.sunmonkey.dao.mapper: debug

4.启动应用测试

配置启动springboot-mybatis-demo应用之后,访问 http://127.0.0.1:8080/user/users查看接口是否可用

SpringBoot集成mybatis

标签:dir   classpath   maven工程   entity   中标   cto   xml配置   选择   使用   

原文地址:https://www.cnblogs.com/chengwenqin/p/11146496.html


评论


亲,登录后才可以留言!