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,操作更方便哦
如果失效,请留言
上一篇: 吕蒙杀关羽而青史留名,他还有其他功绩吗?
下一篇: 第五周作业