IDEA使用mybatis-generator及配上mysql8.0.3版本遇到的bug

 更新时间:2020年11月06日 10:36:06   作者:shiqianxiSHIQIANXI  
这篇文章主要介绍了IDEA使用mybatis-generator以及配上mysql8.0.3版本遇到的问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1.添加插件,在pom文件的下的添加以下配置

<!-- mybatis-generator -->
  <plugin>
  <groupId>org.mybatis.generator</groupId>
  <artifactId>mybatis-generator-maven-plugin</artifactId>
  <version>1.3.5</version>
  <configuration>
   <configurationFile>
   <!--这里是配置generatorConfig.xml的路径
    不写默认在resources目录下找generatorConfig.xml文件
    -->
   </configurationFile>
   <verbose>true</verbose>
   <overwrite>true</overwrite>
  </configuration>
  <dependencies>
   <dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>8.0.11</version>
   </dependency>
  </dependencies>
  </plugin>

2.在resources下创建generatorConfig.xml,内容如下:

<?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:起个名字 -->
 <!-- targetRuntime:设置生成的文件适用于那个 mybatis 版本 -->
 <context id="default" targetRuntime="MyBatis3">
 <!--optional,指在创建class时,对注释进行控制-->
 <commentGenerator>
  <property name="suppressDate" value="true"/>
  <!-- 是否去除自动生成的注释 true:是 : false:否 -->
  <property name="suppressAllComments" value="true"/>
 </commentGenerator>
 <!--jdbc的数据库连接 wg_insert 为数据库名字-->
 <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
   connectionURL="jdbc:mysql://localhost:3306/wg_insert?useUnicode=true&amp;characeterEncoding=utf-8&amp;serverTimezone=UTC" userId="root"
   password="123456"></jdbcConnection>
 <!--非必须,类型处理器,在数据库类型和java类型之间的转换控制-->
 <javaTypeResolver>
  <!-- 默认情况下数据库中的 decimal,bigInt 在 Java 对应是 sql 下的 BigDecimal 类 -->
  <!-- 不是 double 和 long 类型 -->
  <!-- 使用常用的基本类型代替 sql 包下的引用类型 -->
  <property name="forceBigDecimals" value="false"/>
 </javaTypeResolver>
 <!-- targetPackage:生成的实体类所在的包 -->
 <!-- targetProject:生成的实体类所在的硬盘位置 -->
 <javaModelGenerator targetPackage="com.wglvzyx.mybatisredis.entity"
    targetProject="src/main/java">
  <!-- 是否允许子包 -->
  <property name="enableSubPackages" value="false"/>
  <!-- 是否对modal添加构造函数 -->
  <property name="constructorBased" value="true"/>
  <!-- 是否清理从数据库中查询出的字符串左右两边的空白字符 -->
  <property name="trimStrings" value="true"/>
  <!-- 建立modal对象是否不可改变 即生成的modal对象不会有setter方法,只有构造方法 -->
  <property name="immutable" value="false"/>
 </javaModelGenerator>
 <!-- targetPackage 和 targetProject:生成的 mapper 文件的包和位置 -->
 <sqlMapGenerator targetPackage="mapper"
    targetProject="src/main/resources">
  <!-- 针对数据库的一个配置,是否把 schema 作为字包名 -->
  <property name="enableSubPackages" value="false"/>
 </sqlMapGenerator>
 <!-- targetPackage 和 targetProject:生成的 interface 文件的包和位置 -->
 <javaClientGenerator type="XMLMAPPER"
    targetPackage="com.wglvzyx.mybatisredis.dao" targetProject="src/main/java">
  <!-- 针对 oracle 数据库的一个配置,是否把 schema 作为字包名 -->
  <property name="enableSubPackages" value="false"/>
 </javaClientGenerator>
 <!-- tableName是数据库中的表名,domainObjectName是生成的JAVA模型名,后面的参数不用改,要生成更多的表就在下面继续加table标签 -->
 <table tableName="student" domainObjectName="Student"
  enableCountByExample="false" enableUpdateByExample="false"
  enableDeleteByExample="false" enableSelectByExample="false"
  selectByExampleQueryId="false"></table>
 </context>
</generatorConfiguration>

3.运行,这里有两种方法:

方法一:

在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件 (mybatis-generator:generate -e):

在这里插入图片描述

方法二:

在右侧打开maven面板在Plugins下打开Mybatis-generator下的mybatis-generator:generate,右键Run Maven Build!

在这里插入图片描述

注意:

因为用的是mysql-8.0.11

所以配置有所不同

主要就是新版本有新特性,首先,最新官方支持将com.mysql.jdbc.Driver改为com.mysql.cj.jdbc.Driver,此外mysql8.0是不需要建立ssl连接的,你需要显示关闭,即url中的useSSL=false;最后你需要设置CST,CST可视为美国、澳大利亚、古巴或中国的标准时间。serverTimezone是设置时区的,大家可以查一下相关资料了解一下哦!

jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mytest?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=UTC
jdbc.username=root
jdbc.password=123456

到此这篇关于IDEA使用mybatis-generator及配上mysql8.0.3版本遇到的坑的文章就介绍到这了,更多相关IDEA使用mybatis-generator配上mysql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决

    MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决

    这篇文章主要介绍了MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • MySQL日期格式以及日期函数举例详解

    MySQL日期格式以及日期函数举例详解

    这篇文章主要给大家介绍了关于MySQL日期格式及日期函数的相关资料,日期在数据库中是一个常见且重要的数据类型,在MySQL中我们可以使用各种函数和格式化选项来处理和显示日期,需要的朋友可以参考下
    2023-11-11
  • Mysql中文乱码以及导出为sql语句和Excel问题解决方法[图文]

    Mysql中文乱码以及导出为sql语句和Excel问题解决方法[图文]

    这几天基于Heritrix写了一个爬虫,用到mysql,在导入导出数据时,遇到一些乱码问题,好不容易解决了,记录一下,以备查看
    2013-04-04
  • MySQL如何使用视图插入修改删除数据

    MySQL如何使用视图插入修改删除数据

    视图除了进行查询记录外,也可以利用视图进行插入、更新、删除记录的操作,减少对基表中信息的直接操作,提高了数据的安全性,下面这篇文章主要给大家介绍了关于MySQL如何使用视图插入修改删除数据的相关资料,需要的朋友可以参考下
    2023-06-06
  • MYSQL慢查询与日志的设置与测试

    MYSQL慢查询与日志的设置与测试

    这篇文章主要给大家介绍了关于MYSQL慢查询与日志的设置与测试,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 关于MySQL索引的几点值得注意的事项

    关于MySQL索引的几点值得注意的事项

    索引对查询的速度有着至关重要的影响,MySQL索引的建立对于MySQL的高效运行是很重要的
    2014-07-07
  • mysql查询结果输出到文件的方法

    mysql查询结果输出到文件的方法

    下面小编就为大家带来一篇mysql查询结果输出到文件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • MySQL安装服务时提示:Install/Remove of the Service Denied解决

    MySQL安装服务时提示:Install/Remove of the Service Denied解决

    今天给新电脑安装了mysql,本来好好的,却报了个bug,就记录下吧,这篇文章主要给大家介绍了关于MySQL安装服务时提示:Install/Remove of the Service Denied的解决办法,需要的朋友可以参考下
    2023-03-03
  • mysql如何将一个字段赋值给另一个字段

    mysql如何将一个字段赋值给另一个字段

    这篇文章主要介绍了mysql如何将一个字段赋值给另一个字段,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • mysql实现表内增加一个字段并赋值

    mysql实现表内增加一个字段并赋值

    这篇文章主要介绍了mysql实现表内增加一个字段并赋值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09

最新评论