1.在pom.xml中添加插件 mybatis-generator-maven-plugin
<build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.5</version> <configuration> <!-- 在控制台打印执行日志 --> <verbose>true</verbose> <!-- 重复生成时会覆盖之前的文件--> <overwrite>true</overwrite> <!--指定配置文件的位置--> <configurationFile>src/main/resources/mybatisGenerator.xml</configurationFile> </configuration> </plugin> </plugins> </build>
2.在src/main/resources下添加配置文件mybatisGenerator.xml,前提在location位置有 mysql-connector-java-5.1.46.jar,在项目下面创建一个temp文件夹
<?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> <!-- MyBatis代码生成器 @author Moshow --> <!-- 需要修改的地方是①②③④,然后执行批处理即可 --> <!-- classPathEntry:数据库的JDBC驱动,①location换成你自己的mysql类库位置 --> <!-- maven一般在C:UsersAdministrator.m2 epositorymysqlmysql-connector-java,也可以自己下载一个并指定 --> <!-- <classPathEntry location="E:MyEclipse Professional 2014.metadata.me_tcat7webappszkungfuWEB-INFlibojdbc6.jar" /> --> <classPathEntry location="C:UsersAdministrator.m2 epositorymysqlmysql-connector-java5.1.46mysql-connector-java-5.1.46.jar" /> <context id="DB2Tables" targetRuntime="MyBatis3"> <!-- 去除自动生成的注释 --> <commentGenerator> <property name="suppressAllComments" value="true" /> </commentGenerator> <!-- 数据库连接,②userId&password改成自己的配置,如果是oracle还需要修改目录下的tnsnames.ora --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.1.113:3306/online-taxi-three?characterEncoding=UTF-8" userId="root" password="123456"> </jdbcConnection> <!-- <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@localhost:1521:OrderTest" userId="xxx" password="xxx"> </jdbcConnection>--> <javaTypeResolver> <!-- 默认 false,把 JDBC DECIMAL 和 NUMERIC 类型解析为 Integer 为 true 时解析为 java.math.BigDecimal --> <property name="forceBigDecimals" value="true" /> </javaTypeResolver> <!-- targetProject:③修改自动生成代码的位置,包括DAO/entity/XML,一般生成在项目下面的src或者test --> <!-- 生成vo对象 --> <javaModelGenerator targetPackage="com.dandan.cloudzuul.entity" targetProject="E:idea_workspaceprojectname emp"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> <!-- targetProject 生成的Java Bean放置在哪个项目的哪个目录下 targetPackage 生成的Java Bean的包名 一个有用的属性 <property name="trimStrings" value="true" /> 从数据库返回的值被清理前后的空格 <property name="enableSubPackages" value="false" /> 是否在包名后加上scheme名称 --> </javaModelGenerator> <!-- 生成用于查询的Example对象 --> <sqlMapGenerator targetPackage="com.dandan.cloudzuul.mapper" targetProject="E:idea_workspaceprojectname emp"> <property name="enableSubPackages" value="true" /> <!-- targetProject 生成的 SqlMap.xml 文件放置在哪个项目的哪个目录下 targetPackage 生成的 SqlMap.xml 文件的包名 <property name="enableSubPackages" value="false" /> 是否在包名后加上scheme名称 --> </sqlMapGenerator> <!-- 生成DAO的类文件以及配置文件 --> <javaClientGenerator type="XMLMAPPER" targetPackage="com.dandan.cloudzuul.mapper" targetProject="E:idea_workspaceprojectname emp"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!-- tableName:④用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 --> <!-- <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />//无论字段是什么类型,生成的类属性都是varchar。 --> <table tableName="table_name" domainObjectName="pojo_name" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" /> </context> </generatorConfiguration>
3.在idea的edit configurations里创建maven运行插件即可。
working dictionary选择项目的位置
command line 中输入 mybatis-generator:generate -e
4.参考链接
https://www.jianshu.com/p/b519e9ef605f
https://www.jianshu.com/p/4db902936b29