这还是在学校里跟老师学到的办法,然后随便在csdn下载一个并调试到可以用的状态。

基本由这几个文件组成,一个mysql连接的jar包。一个用于自动生成的配置文件,一个自动生成的jar包,运行jar包语句在文本中,生成完的文件在src路径下,取决于你配置的路径。

文末有工具下载地址,如果仅需要工具请直接到文末。


下面解释一下配置文件中的含义:

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>
<!--数据库驱动-->
<classPathEntry location="mysql-connector-java-5.1.28-bin.jar"/>
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
  <property name="suppressDate" value="true"/>

<!-- 是否去除自动生成的注释 true:是 : false:否 --> 
  <property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--数据库链接地址账号密码-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.98.77:3306/icm_production_dev" userId="admin" password="!123456">
</jdbcConnection>
<javaTypeResolver>

  <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer   true,

  把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal       -->

<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!--生成Model类存放位置-->

  <!-- 生成model模型,对应的包路径,以及文件存放路径(targetProject),targetProject可以指定具体的路径,如./src/main/java,

  也可以使用“MAVEN”来自动生成,这样生成的代码会在target/generatord-source目录下 -->

<javaModelGenerator targetPackage="com..icm.energy.service.model" targetProject="src">
<property name="enableSubPackages" value="true"/>

<!-- 从数据库返回的值被清理前后的空格  -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!--生成映射文件存放位置-->
<sqlMapGenerator targetPackage="com.icm.energy.repository.dao" targetProject="src">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!--生成Dao类存放位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.icm.energy.repository.dao" targetProject="src">
<property name="enableSubPackages" value="true"/>
</javaClientGenerator>
<!--生成对应表及类名 这里配置的是不生成example文件-->
<table tableName="Role" domainObjectName="Role" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>


这里提供的是5.7及一下的mysql数据库版本的生成。mysql8及以上的需要去找mysql8的jar包并且替换文件中的路径

【官方文件】:http://www.mybatis.org/generator/configreference/xmlconfig.html

还有一种方式是用Maven里的mybatis generator插件。大致做法是在pom.xml中添加依赖:

    <dependency>

   <groupId>org.mybatis</groupId>

    <artifactId>mybatis</artifactId>

    <version>3.3.1</version>

    </dependency>

    <dependency>

    <groupId>mysql</groupId>

    <artifactId>mysql-connector-java</artifactId>

    <version>5.1.26</version>

    </dependency>

    <dependency>

    <groupId>org.mybatis.generator</groupId>

    <artifactId>mybatis-generator-core</artifactId>

    <version>1.3.2</version>

    </dependency>

    </dependencies>

    <build>

    <plugins>

      <plugin>

      <groupId>org.mybatis.generator</groupId>

      <artifactId>mybatis-generator-maven-plugin</artifactId>

      <version>1.3.2</version>

      <configuration>

      <verbose>true</verbose>

      <overwrite>true</overwrite>

      </configuration>

      </plugin>

    </plugins>

    </build>

在默认情况下,MBG的配置文件的名称为generatorConfig.xml,并且与上文不同的是,这里需要指明数据库连接器的绝对路径。修改之后的配置文件如下:

<classPathEntry    location="C:/Users/yyg/Desktop/DevTool/DevTool/repository/Maven/Maven3.2.2/local/repo/mysql/mysql-connector-java/5.1.26/mysql-connector-java-5.1.26.jar" />

最后运行:在eclipse中选择pom.xml 右键run as --> Maven Build --> 在goals框中输入 mybatis-generator:generate


对比这俩种方法,我更倾向于第一种用jar语句的方法,每次只要更改想要的配置文件即可。

最后给出一个小建议,在生产环境中实体对象都基本上基于驼峰命名,但是有时候生成的文件如果都是小写是不符合规定的。

解决办法:建表的时候,字段名称两个单词的用 “_” 来连接,这样生成的model是基于驼峰式的。

mysql:

实体对象:


文章最后放出工具下载地址:链接: https://pan.baidu.com/s/1EKop1V4TQaMPBHlFUVPquA 提取码: bfhx 复制这段内容后打开百度网盘手机App,操作更方便哦

如果失效,请留言

Mybatis自动生成代码,MyBatis Generator的更多相关文章

  1. 【MyBatis】MyBatis自动生成代码查询之爬坑记

    前言 项目使用SSM框架搭建Web后台服务,前台后使用restful api,后台使用MyBatisGenerator自动生成代码,在前台使用关键字进行查询时,遇到了一些很宝贵的坑,现记录如下.为展示 ...

  2. Mybatis 自动生成代码,数据库postgresql

    最近做了一个项目,使用Mybatis自动生成代码,下面做一下总结,被以后参考: 一.提前准备: 1.工具类:mybatis-generator-core-1.3.2.jar 2.postgresql驱 ...

  3. mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)

    mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...

  4. mybatis 自动生成代码(mybatis generator)

    pom.xml 文件配置 引入 mybatis generator <properties> <mysql.connector.version>5.1.44</mysql ...

  5. MyBatis自动生成代码示例

    在项目中使用到mybatis时,都会选择自动生成实体类,Mapper,SqlMap这三个东东. 手头上在用的又不方便,找了下网上,其实有很多文章,但有些引用外部文件时不成功,也不方便,所以重新整理了下 ...

  6. springboot mybatis 自动生成代码(maven+IntelliJ IDEA)

    1.在pom文件中加入需要的依赖(mybatis-generator-core) 和 插件(mybatis-generator-maven-plugin) <dependency> < ...

  7. mybatis自动生成代码工具(逆向工程)

    MyBatis自动生成实体类(逆向工程) MyBatis属于一种半自动的ORM框架,它需要我们自己编写sql语句和映射文件,但是编写映射文件和sql语句很容易出错,所以mybatis官方提供了Gene ...

  8. 自定义Mybatis自动生成代码规则

    前言 大家都清楚mybatis-generate-core 这个工程提供了获取表信息到生成model.dao.xml这三层代码的一个实现,但是这往往有一个痛点,比如需求来了,某个表需要增加字段,肯定需 ...

  9. mybatis自动生成代码

    使用maven集成mybatis-generator插件生成Mybatis的实体类,DAO接口和Map映射文件 本例中,使用的是mysql数据库 前提:表已经建好  mybatis框架的jar包,数据 ...

随机推荐

  1. HDFS修改副本数,并生效。

    1.hadoop集群使用的ucloud的uahdoop 2.是公司集群配置小,只有两台core节点,实际就是两台的datanode. 容量占用超过了80%,需要缩减副本以空出容量. 3.查看 hado ...

  2. RocketMQ安装部署

    一.简介RocketMQ RocektMQ是阿里巴巴在2012年开源的一个纯java.分布式.队列模型的第三代消息中间件,不仅在传统高频交易链路有着低延迟的出色表现,在实时计算等大数据领域也有着不错的 ...

  3. H3C/华为交换机配置NTP客户端

    H3C clock timezone UTC add ntp-service unicast-server 1.1.1.1 //ntp服务器地址 clock protocol ntp ntp-serv ...

  4. Error-ASP.NET:未能加载文件或程序集“CMSCalendar”或它的某一个依赖项。系统找不到指定的文件。

    ylbtech-Error-ASP.NET:未能加载文件或程序集“CMSCalendar”或它的某一个依赖项.系统找不到指定的文件. 1.返回顶部 1. “/”应用程序中的服务器错误. 分析器错误 说 ...

  5. Java地址:

    GitHub:https://github.com/nanchen2251 个人博客:https://nanchen2251.github.io/ 简书地址:http://www.jianshu.co ...

  6. linux tomcat 文件切割

    修改bin目录下catalina.sh if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT="$CATALINA_BASE&quo ...

  7. golang程序编译时提示“package runtime: unrecognized import path "runtime" (import path does not begin with hostname)”

    在编译golang的工程时提示错误的, 提示的错误信息如下: package bytes: unrecognized import path "bytes" (import pat ...

  8. 报错:pymysql.err.InternalError: (1054, "Unknown column 'AType' in 'field list'")

    报错背景: 报错前sql代码展示: List = ['] # sql = "insert into test(id, name) value ("+"'"+ L ...

  9. UltraEdit 替换符

    1.在每行的最后一行添加字符串: 打开替换,在查找中输入 ^r  在替换栏中输入要替换的字符  再把下边的正则表达式勾选,然后开始或是全部替换就可以了 2.替换回车换行 在查找中输入 要替换的字符  ...

  10. HttpClient get请求获取数据流

    HttpClient get请求获取数据流,将数据保存为文件 public String getStreamFile(String url) throws Exception { HttpClient ...