Mybatis自动生成代码,MyBatis Generator

        

这还是在学校里跟老师学到的办法,然后随便在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,操作更方便哦

 

如果失效,请留言

 

posted @ 2019-07-30 09:46  挖苦  阅读(254)  评论(0编辑  收藏  举报