1.不依赖任何IDE,命令行使用
需要2个jar包,版本任选,此为我的版本
- mybatis-generator-core-1.3.7.jar
- mysql-connector-java-8.0.17.jar
1个配置文件,一般命名未generateConfig.xml
- generatorConfig.xml
对generateConfig.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>
<!-- java驱动包 在本例中在同一目录,使用相对目录,具体使用时可以使用绝对路径-->
<classPathEntry
location="mysql-connector-java-8.0.17.jar" />
<context id="DB" targetRuntime="MyBatis3">
<!-- 生成注释 -->
<commentGenerator>
<!--去除注释 选择true时去除注释,当值为false时自动生成注释-->
<property name="suppressAllComments" value="true" />
<!--注释中去除日期注释 -->
<property name="suppressDate" value="true" />
<!--注释中添加数据库字段备注注释 -->
<property name="addRemarkComments" value="true" />
</commentGenerator>
<!-- 配置数据库连接,加入属性写在url串里,与普通url语句略有不同,本次连接本地的blog数据库,根据情况自行修改 -->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/blog?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC"
userId="root" password="831015">
<!--MySQL 8.x 需要指定服务器的时区 -->
<property name="serverTimezone" value="UTC" />
<!--MySQL 不支持 schema 或者 catalog 所以需要添加这个 -->
<!--参考 : http://www.mybatis.org/generator/usage/mysql.html -->
<property name="nullCatalogMeansCurrent" value="true" />
<!-- MySQL8默认启用 SSL ,不关闭会有警告 -->
<property name="useSSL" value="false" />
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL
和 NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- Model模型生成器 就是普通意义上的model 两个路径下面详解-->
<javaModelGenerator
targetPackage="com.mnn.love.dao" targetProject=".\src\java">
<!-- 对char的数据是否进行trim -->
<property name="trimStrings" value="false" />
<!-- 是否有构造函数 -->
<property name="constructorBased" value="true" />
</javaModelGenerator>
<!-- 生成mapper映射文件 xml文件-->
<sqlMapGenerator targetPackage="com.mnn.love.mapper"
targetProject=".\src\resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 代码 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.mnn.love.mapper" targetProject=".\src\java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<--各个表的数据 tableName为数据中表名,domainObjectName为在java文件的表名-->
<table tableName="user" domainObjectName="Customer">
</table>
</context>
</generatorConfiguration>
- targetProject
你项目的路径,实际意义就是,在这个路径下,mybatis-generate进行生成操作,类似于根目录,指定为项目的根目录即可,命令行使用时指定为项目的绝对路径即可。 - targetPackage
包名,实际上就是,在targetProject目录下,以包名的形式生成文件夹,当targetProject指定为项目根目录之后,targetPackage就按照预先的包名设置就行
目前文件夹中这个样子
src目录下有我建立的java文件夹和resource文件夹
然后在此处打开powerShell或者命令行(前提是配好了java环境)
输入
java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite
如果是powerShell的话,
在调用本目录下文件时需要在前面加上.\
命令行出来MyBatis Generator finished successfully.
时就是成功了,mybatis-generate会在指定的目录下生成文件