springboot整合mybatis

pom文件依赖的jar包

<dependency>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-core</artifactId>
          <version>1.4.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.ibatis</groupId>
          <artifactId>ibatis-core</artifactId>
          <version>3.0</version>
      </dependency>
      <!--缺少此jar包,导致@Mapper注解无效-->
      <dependency>
          <groupId>org.mybatis.spring.boot</groupId>
          <artifactId>mybatis-spring-boot-starter</artifactId>
          <!--版本1.2.0否则无效-->
          <version>1.2.0</version>
      </dependency>

pom文件里的maven插件(里面配置了mybatis-generator-config.xml的路径,到时候mybatis根据这个配置文件去生成)

 <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <configuration>
                    <!--mybatis的代码生成器的配置文件-->
                    <configurationFile>src/main/resources/mybatis-generator-config.xml</configurationFile>
                    <overwrite>true</overwrite>
                    <verbose>true</verbose>
                </configuration>
                <dependencies>
                    <!-- mysql的JDBC驱动 -->
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>8.0.19</version>
                    </dependency>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.4.0</version>
                    </dependency>
                </dependencies>
            </plugin>

mybatis-generator-config.xml文件如下,修改数据库的地址,用户名密码和javaModelGenerator和javaClientGenerator的路径

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <context id="myContext" targetRuntime="MyBatis3">

        <property name="javaFileEncoding" value="UTF-8"/>

        <!-- 生成的pojo,将implements Serializable -->
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
        <!-- 为生成的pojo创建一个toString方法 -->
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
        <!-- 生成的pojo,增加了equals 和 hashCode方法-->
        <plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin"/>
        <!--生成mapper.xml时覆盖原文件-->
        <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin"/>

        <!-- 自定义注释 -->
        <commentGenerator>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="false"/>
            <!--添加 db 表中字段的注释-->
            <property name="addRemarkComments" value="true"/>
        </commentGenerator>

       
        <!--数据库连接信息:驱动类、链接地址、用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/Stu?useSSL=true&amp;useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=Asia/Shanghai"
                        userId="root"
                        password="XXXX">
            <!--高版本的 mysql-connector-java 需要设置 nullCatalogMeansCurrent=true-->
            <!--解决mysql驱动升级到8.0后不生成指定数据库代码的问题-->
            <property name="nullCatalogMeansCurrent" value="true"/>
        </jdbcConnection>


        <javaTypeResolver>
            <!--类型解析器-->
            <!-- 默认false,把jdbc decimal 和 numeric 类型解析为integer -->
            <!-- true,把jdbc decimal 和 numeric 类型解析为java.math.bigdecimal-->
            <property name="forceBigDecimals" value="false"/>
            
            <property name="useJSR310Types" value="false"/>
        </javaTypeResolver>

        <!-- java实体类路径 -->
        <javaModelGenerator targetPackage="com.jarctique.jmeterredis.pojo" targetProject="src/main/java">
            <!-- 是否让schema作为包后缀 默认是false
                会在 po 目录下在创建一个 “数据库名” 的文件夹,生成的 po 会放在该文件夹下,也就是说会多一层目录
            -->
            <property name="enableSubPackages" value="false"/>
            <!-- 从数据库返回的值被清理前后的空格-->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!-- 生成映射文件xml的包名和位置-->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <!-- 是否让schema作为包后缀-->
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.jarctique.jmeterredis.mapper"
                             targetProject="src/main/java">
            <!-- 是否让schema作为包后缀-->
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>


        <table tableName="%"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
            <domainObjectRenamingRule searchString="^T" replaceString=""/>
        </table>

    </context>
</generatorConfiguration>

application.yml文件配置(数据库地址,用户名密码修改成自己的,pojo路径也要改)

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/Stu?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai
    username: root
    password: XXXX
mybatis:
  mapper-locations: classpath:mapper/*.xml
  #目的是为了省略resultType里的代码量
  type-aliases-package: com.jarctique.jmeterredis.pojo

数据库的表
在这里插入图片描述

双击生成对应的pojo和mapper
在这里插入图片描述

在这里插入图片描述
springboot启动类增加注解,添加mapper扫描的路径
@MapperScan({“com.jarctique.jmeterredis.mapper”})

mport org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.mybatis.spring.annotation.MapperScan;

@MapperScan({"com.jarctique.jmeterredis.mapper"})
@SpringBootApplication
public class JmeterredisApplication {

    public static void main(String[] args) {
        SpringApplication.run(JmeterredisApplication.class, args);

    }

相关推荐

  1. SpringBoot简单整合mybatis

    2024-02-01 16:44:02       32 阅读
  2. SpringBoot整合MyBatis-Plus

    2024-02-01 16:44:02       40 阅读
  3. springBoot mybatis-plus整合

    2024-02-01 16:44:02       19 阅读
  4. springboot整合mybatis-plus

    2024-02-01 16:44:02       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-01 16:44:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-01 16:44:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-01 16:44:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-01 16:44:02       20 阅读

热门阅读

  1. Python爬虫存储库安装

    2024-02-01 16:44:02       32 阅读
  2. 【C语言】【力扣】刷题小白的疑问

    2024-02-01 16:44:02       29 阅读
  3. 美国服务器地址和端口及密码

    2024-02-01 16:44:02       32 阅读
  4. 服务器托管与虚拟主机租用有哪些区别?

    2024-02-01 16:44:02       32 阅读
  5. footer置于页面最底部

    2024-02-01 16:44:02       29 阅读
  6. 【力扣hot100】刷题笔记Day1

    2024-02-01 16:44:02       38 阅读
  7. QT中一种隐蔽的死锁

    2024-02-01 16:44:02       30 阅读
  8. OpenGL程序管线对象 Program Pipeline Objects

    2024-02-01 16:44:02       27 阅读
  9. C++不能直接返回数组

    2024-02-01 16:44:02       27 阅读
  10. 算法训练营day19,二叉树8-2

    2024-02-01 16:44:02       30 阅读
  11. postgresql和kingbase关于模糊查询大小写兼容问题

    2024-02-01 16:44:02       28 阅读