1、添加插件
在pom.xml中添加如下配置
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <!--注意版本要与下面一致--> <version>1.3.2</version> <configuration> <!--配置文件位置--> <configurationFile>src/main/resources/generatorConfig.xml</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <!--根据自己工程中的版本选择--> <version>5.1.30</version> </dependency> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> </dependency> </dependencies> </plugin>
2、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> <!--数据库驱动,需要使用本地jar --> <classPathEntry location="D:\repository\mysql\mysql-connector-java\5.1.30\mysql-connector-java-5.1.30.jar" /> <context id="MySQL2Tables" targetRuntime="MyBatis3Simple" defaultModelType="flat"> <!--编码--> <property name="javaFileEncoding" value="UTF-8"/> <!-- 格式化java代码 --> <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter" /> <!--mapper接口禁用注解,默认给的啥用没有,自己手动添加吧--> <commentGenerator> <property name="suppressDate" value="true" /> <property name="suppressAllComments" value="true" /> </commentGenerator> <!--数据库链接地址账号密码 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://test.db.xxx.org:23301/xxxx?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true" userId="root" password="password"> </jdbcConnection> <!-- 把JDBC DECIMAL和NUMERIC 类型解析为java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="true" /> </javaTypeResolver> <!--生成Model类存放位置 --> <javaModelGenerator targetPackage="com.bj58.jyfz.train.scf.test.model" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <!--生成映射文件存放位置 --> <sqlMapGenerator targetPackage="test_mappings" targetProject="src/main/resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--生成mapper接口存放位置 --> <!--ANNOTATEDMAPPER: 生成java类文件,基于注解的Mapper接口,不会有对应的XML映射文件 MIXEDMAPPER:XML和注解的混合形式 XMLMAPPER:所有的方法都在XML中,接口调用依赖XML文件 --> <javaClientGenerator type="XMLMAPPER" targetPackage="com.bj58.jyfz.train.scf.test.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--生成对应表及类名,如果有多个表就写多个table标签,%表示所有的表,此时不需要配置domainObjectName--> <table tableName="wx_menu" domainObjectName="WxMenu" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table> </context> </generatorConfiguration>
3、生成
执行mvn mybatis-generator:generate命令即可,这里需要注意的是:由于很多项目都是父子项目,上述配置只需要在子项目中即可,执行命令时也需要进入相应的子项目再执行,否则mybatis-generator插件会识别失败!