一个大神写的gui:https://github.com/astarring/mybatis-generator-gui
mybatis-generator有三种用法:命令行、eclipse插件、maven插件。个人觉得maven插件最方便,可以在eclipse/intellij idea等ide上可以通用。
一、在pom.xml中添加plugin
- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <groupId>com.demo.film</groupId>
- <artifactId>mybatis-generator</artifactId>
- <version>1.0-SNAPSHOT</version>
-
- <dependencies>
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-maven-plugin</artifactId>
- <version>1.3.3</version>
- <configuration>
- <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
- <verbose>true</verbose>
- <overwrite>true</overwrite>
- </configuration>
- <executions>
- <execution>
- <id>Generate MyBatis Artifacts</id>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-core</artifactId>
- <version>1.3.3</version>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.35</version>
- <scope>runtime</scope>
- </dependency>
- </dependencies>
- </plugin>
- </plugins>
- </build>
- </project>
其中generatorConfig.xml的位置,大家根据实际情况自行调整
二、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>
- <context id="testTables" targetRuntime="MyBatis3">
- <commentGenerator>
-
- <property name="suppressAllComments" value="true"/>
- </commentGenerator>
-
- <jdbcConnection driverClass="com.mysql.jdbc.Driver"
- connectionURL="jdbc:mysql://localhost:3306/dbname" userId="root"
- password="123456">
- </jdbcConnection>
-
-
- <!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver" connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"
- userId="yycg"
- password="yycg">
- </jdbcConnection> -->
-
- <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,
- 为 true时把JDBC DECIMAL和NUMERIC类型解析为java.math.BigDecimal -->
- <javaTypeResolver>
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
-
-
- <javaModelGenerator targetPackage="com.demo.film.model" targetProject=".\src">
-
- <property name="enableSubPackages" value="false"/>
-
- <property name="trimStrings" value="true"/>
- </javaModelGenerator>
-
-
- <sqlMapGenerator targetPackage="com.demo.film.mapper"
- targetProject=".\src">
- <property name="enableSubPackages" value="false"/>
- </sqlMapGenerator>
-
-
- <javaClientGenerator type="XMLMAPPER"
- targetPackage="com.demo.film.dao"
- targetProject=".\src">
- <property name="enableSubPackages" value="false"/>
- </javaClientGenerator>
-
-
- <table tableName="items"></table>
- <table tableName="orders"></table>
- <table tableName="orderdetail"></table>
- <table tableName="user"></table>
- </context>
- </generatorConfiguration>
三、使用方式
mvn mybatis-generator:generate
如果是在intellij 环境,直接鼠标点击即可
刷新工程目录,即可看到生成的文件。
注意: 建表时,表字段名称建议用"_"分隔多个单词,比如:order_detail,这样生成的model,属性名称就会变成漂亮的驼峰命名,即:orderDetail