解决myBatis generator逆向生成没有根据主键的select,update和delete问题

 更新时间:2020年09月27日 10:33:23   作者:華府小書童  
这篇文章主要介绍了解决myBatis generator逆向生成没有根据主键的select,update和delete问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一、配置逆向generatoe.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="DB2Tables" targetRuntime="MyBatis3">
    <!-- 是否生成注释 -->
    <commentGenerator>
      <property name="suppressAllComments" value="true" />
    </commentGenerator>
    <!-- 配置数据库连接信息 -->
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://localhost:3306/ssm_crud?serverTimezone=UTC"
            userId="root"
            password="root">
      <!--<property name="useInformationSchema" value="true"/>-->
    </jdbcConnection>
 
    <javaTypeResolver >
      <property name="forceBigDecimals" value="false" />
    </javaTypeResolver>
    <!-- 指定javaBean生成的位置 -->
    <javaModelGenerator targetPackage="com.atguigu.crud.bean" targetProject=".\src\main\java">
      <property name="enableSubPackages" value="true" />
      <property name="trimStrings" value="true" />
    </javaModelGenerator>
    <!-- 指定sql映射文件生成的位置 -->
    <sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources">
      <property name="enableSubPackages" value="true" />
    </sqlMapGenerator>
    <!-- 指定dao接口生成位置,mapper接口 -->
    <javaClientGenerator type="XMLMAPPER" targetPackage="com.atguigu.crud.dao" targetProject=".\src\main\java">
      <property name="enableSubPackages" value="true" />
    </javaClientGenerator>
    <!-- table指定每个表的生成策略 -->
    <table tableName="tbl_emp" domainObjectName="Employee" />
    <table tableName="tbl_dept" domainObjectName="Department" />
  </context>
</generatorConfiguration>

二、执行生成代码

public class MBGTest {
  public static void main(String[] args) throws Exception{
    List<String> warnings = new ArrayList<String>();
    boolean overwrite = true;
    File configFile = new File("mbg.xml");
    ConfigurationParser cp = new ConfigurationParser(warnings);
    Configuration config = cp.parseConfiguration(configFile);
    DefaultShellCallback callback = new DefaultShellCallback(overwrite);
    MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
    myBatisGenerator.generate(null);
  }
}

三、结果mapper中未能生成...ByPrimaryKey的方法

四、解决办法

在generatoe.xml的配置数据库连接信息时,添加

<property name="useInformationSchema" value="true"/>

即可解决问题

以上这篇解决myBatis generator逆向生成没有根据主键的select,update和delete问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot使用Graylog日志收集的实现示例

    SpringBoot使用Graylog日志收集的实现示例

    Graylog是一个生产级别的日志收集系统,集成Mongo和Elasticsearch进行日志收集,这篇文章主要介绍了SpringBoot使用Graylog日志收集的实现示例,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • 老生常谈Java虚拟机垃圾回收机制(必看篇)

    老生常谈Java虚拟机垃圾回收机制(必看篇)

    下面小编就为大家带来一篇老生常谈Java虚拟机垃圾回收机制(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • SpringBoot继承LogStash实现日志收集的方法示例

    SpringBoot继承LogStash实现日志收集的方法示例

    这篇文章主要介绍了SpringBoot继承LogStash实现日志收集的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • Spring Task定时任务每天零点执行一次的操作

    Spring Task定时任务每天零点执行一次的操作

    这篇文章主要介绍了Spring Task定时任务每天零点执行一次的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • SpringBoot基于Redis实现短信登录的操作

    SpringBoot基于Redis实现短信登录的操作

    验证码登录是非常常见的一种登录方式,能够简化用户登录的过程,本文主要介绍了SpringBoot基于Redis实现短信登录的操作,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • java调用opencv身份证号识别详解

    java调用opencv身份证号识别详解

    这篇文章主要为大家详细介绍了java如何调用opencv实现身份证号的识别,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03
  • Java图片处理的简易指南

    Java图片处理的简易指南

    图像处理是各类应用程序的重要组成部分,Java作为一种多功能且强大的编程语言,提供了丰富的库和框架来高效地处理图像处理任务,本文将带您了解Java图像处理的基本概念、工具以及实践示例,帮助您掌握Java图像处理技术,需要的朋友可以参考下
    2024-09-09
  • java动态方法调度实例分析

    java动态方法调度实例分析

    这篇文章主要介绍了java动态方法调度,结合实例形式对比分析了java的动态方法调度原理、使用方法与注意事项,需要的朋友可以参考下
    2016-06-06
  • Spring项目读取配置文件中文乱码的解决

    Spring项目读取配置文件中文乱码的解决

    这篇文章主要介绍了Spring项目读取配置文件中文乱码的解决方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • SpringBoot访问windows共享文件的方法

    SpringBoot访问windows共享文件的方法

    这篇文章主要介绍了SpringBoot访问windows共享文件,项目使用minio存储且不在同一台服务器上,为了优化速度决定使用windows共享功能进行文件传输,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-02-02

最新评论