最近试了一下mysql8的逆向工程工具

1.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE generatorConfiguration PUBLIC
"-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"../mybatis-generate-core/src/main/resources/org/mybatis/generator/config/xml/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <context id="myTable"> <property name="javaFileEncoding" value="UTF-8"/> <!--哪个依赖合适用哪个-->
<!-- <plugin type="org.mybatis.generator.plugins.UserDefinePlugin"/>-->
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/baidu?characterEncoding=UTF-8&amp;autoReconnect=true&amp;serverTimezone=GMT%2B8&amp;useSSL=false"
userId="root"
password="123456">
<property name="remarksReporting" value="true"/>
</jdbcConnection>
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
<property name="yp_dateTime2String" value="true"/>
<property name="yp_projectName" value="prs"/>
</javaTypeResolver>
<!-- domain实体 -->
<!--D:\code\haiyu\src\main\java\com\haiyu\manager\pojo-->
<javaModelGenerator targetPackage="com.baidu.entity"
targetProject="D:/myBatisGenerator/src/main/java">
<!--<property name="rootClass" value="com.yp.custtrack.domain.BaseDomain"/>-->
</javaModelGenerator>
<!-- xml映射文件 -->
<!--D:\code\haiyu\src\main\resources\mapper-->
<sqlMapGenerator targetPackage="mapper"
targetProject="D:/myBatisGenerator/src/main/resources">
</sqlMapGenerator>
<!-- dao 接口 -->
<!--D:\code\haiyu\src\main\java\com\haiyu\manager\dao-->
<javaClientGenerator targetPackage="com.baidu.dao"
targetProject="D:/myBatisGenerator/src/main/java"
type="XMLMAPPER">
<!--是否允许建立子包(对应MySql的scheme)-->
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<table tableName="sys_user" domainObjectName="SysUser"/> </context>
</generatorConfiguration>

主要点: 使用 com.mysql.cj.jdbc.Driver驱动

2.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.0</modelVersion> <groupId>com.myBatisGenerator</groupId>
<artifactId>myBatisGenerator</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.13</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.0</version>
</dependency>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.4</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.10.RELEASE</version>
</dependency> </dependencies> </project>

主要点: 使用 mysql-connector-java 的jar包要用8的版本

3.Test

package com.baidu;

import org.junit.Test;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.InvalidConfigurationException;
import org.mybatis.generator.internal.DefaultShellCallback; import java.util.ArrayList;
import java.util.List; public class MyBatisGeneratorTest { @Test
public void doGenerate() throws Exception {
List<String> warnings = new ArrayList<String>();
ConfigurationParser cp = new ConfigurationParser(warnings);
//Configuration config = cp.parseConfiguration(this.getClass().getClassLoader().getResourceAsStream("generatorConfig_for_oracle(wmsserv).xml"));
//String xmlName="generatorConfig.xml";
String xmlName = "generatorConfig_mysql8.xml"; //mysql 8
Configuration config = cp.parseConfiguration(this.getClass().getClassLoader().getResourceAsStream(xmlName)); DefaultShellCallback shellCallback = new DefaultShellCallback(true); try {
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, shellCallback, warnings);
myBatisGenerator.generate(null);
System.out.println("逆向工程生成数据成功!!!"); } catch (InvalidConfigurationException e) {
//失败
}
} }

4.效果 (mapper接口的@Repository注解或@Mapper注解可以手动添加一下)

5.GitHub传送门

https://github.com/ColoZhu/myBatisGenerator.git

Mysql8+mybatisGenerator (mysql 8的逆向工程)的更多相关文章

  1. PowerDesigner连接MySQL,建立逆向工程图解

    传说中,程序员们喜欢用powerDesign进行数据库建模.通常都是先设计出物理模型图,在转换出数据库需要的SQL语句,从而生成数据库.但,江湖中流传着"powerDesign逆向工程&qu ...

  2. 使用powerdesigner连接MySQL并设置逆向工程图文教程

    我用的是Win7 x64的系统,安装了64为的mysql-connector-odbc-5.1.10-winx64.msi在数据源中test正常,但在powerdesigner连接Mysql总是弹出“ ...

  3. 第三章 mybatis-generator + mysql/ptsql

    用了mybatis-generator,我就不再想用注解了,这与我之前说的注解与XML并用是矛盾的,知识嘛,本来就是多元化的,今天喜欢这个,明天喜欢那个,哈哈,看了mybatis-generator下 ...

  4. mybatis-generator + mysql/ptsql

    用了mybatis-generator,我就不再想用注解了,这与我之前说的注解与XML并用是矛盾的,知识嘛,本来就是多元化的,今天喜欢这个,明天喜欢那个,哈哈,看了mybatis-generator下 ...

  5. CentOS7快速配置nginx node mysql8.0

    目录: (一)基础准备 (二)安装node (三)安装nginx (四)安装mySql8.0 (五)整体配置 (六)安装PM2守护进程 (一)基础准备1.1 概述 服务器操作系统为 centos7.4 ...

  6. Centos7服务器中安装MySQL(选择一个你想要的版本)

    开始,我默认安装了MySQL8,但是在测试的时候发现通过Hibernate连接之前的MySQL5.7的代码运行在连接新版本的库的时候发生异常,出于时间原因没有深度排查 但是我严重怀疑是版本匹配问题,为 ...

  7. MySQL 8.0 Docker使用注解

    PUBLIC | AUTOMATED BUILD cytopia/mysql-8.0 Last pushed: 8 months ago Repo Info Tags Dockerfile Build ...

  8. mysql 编译安装 window篇

    传送门 # mysql下载地址 https://www.mysql.com/downloads/ # 找到MySQL Community Edition (GPL) https://dev.mysql ...

  9. Mac安装mysql8.0.12

    ···shell 下载 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.12-macos10.13-x86_64.tar.gz ...

随机推荐

  1. MySQL学习 EXISTS的用法 转载

    比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID ...

  2. (转载)js引擎的执行过程(一)

    概述 js是一种非常灵活的语言,理解js引擎的执行过程对我们学习javascript非常重要,但是网上讲解js引擎的文章也大多是浅尝辄止或者只局部分析,例如只分析事件循环(Event Loop)或者变 ...

  3. Jmeter使用:JSON返回数据处理

    想要解决的问题: 通过查询接口,获取response数据,作为下个请求post的参数值 后置处理器:JSON Extractor 先下载一个插件:JSONPathExtractor Names of ...

  4. .net Framework 中的四种计时器

    在Framework中存在着4种定时器:其中分为两类, 多线程计时器 1:System.Threading.Timer 2:System.Timers.Timer 特殊目的的单线程计时器: 1:Sys ...

  5. 如何打开rdb文件

    后缀名是RDB用什么软件打开不能用记事本打开后是乱码不知用什么软件写入的... RDB文件是QQ2009SP以后的替代DB文件的一种新的文件格式,是一种数据库文件请下载 百度搜索下载:rdb打包解包工 ...

  6. org.apache.ibatis.binding.BindingException: Parameter 'xxx' not found. Available parameters are [arg1, arg0, param1, param2]

    这个异常说明参数没有加上@Param注解,加上这个注解就行了. 默认情况下mybatis把参数按顺序转化为[0, 1, param1, param2],也就是说#{0} 和 #{param1} 是一样 ...

  7. pip install mysql-python报错1. Unable to find vcvarsall.bat 2 fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory 3.error: command 'mt.exe' failed with exit statu

    最近在安装mysql -python 时报错折腾了半天,通过以下方法解决: 1. pip install mysql-python报错 Unable to find vcvarsall.bat (参考 ...

  8. Java中关于注释、标识符、变量、常量、数据类型、类型转换、转移字符以及数值型的表现形式的详解

    Java文件的注意事项 在同一个Java文件中,可以定义多个类,但是被public修饰的类只能够有一个,并且此类名要与文件名一致. 在同一个类中,可以定义多个方法,但是名字叫做main的方法只能有一个 ...

  9. 语音识别(语音转文字)&& 语音合成(文字转语音)

    [语音合成API]SpeechSynthesisUtterance是HTML5中新增的API,用于将指定文字合成为对应的语音.也包含一些配置项,指定如何去阅读(语言,音量,音调)等 // 语音播报 s ...

  10. mysql简单的操作

    启动数据库服务     net start mysql     停止数据库服务     net stop mysql      退出数据库      exit     保存操作及结果 将在命令行窗口中 ...