maven反向生产对应的实体类

来源:互联网 发布:二维动画制作软件 编辑:程序博客网 时间:2024/05/22 14:18


mybatis-generator有三种用法:命令行、eclipse插件、maven插件。个人觉得maven插件最方便,可以在eclipse/intellij idea等ide上可以通用。


一、在pom.xml中添加plugin

[html] view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"  
  3.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  
  5.     <modelVersion>4.0.0</modelVersion>  
  6.   
  7.     <groupId>com.demo.film</groupId>  
  8.     <artifactId>mybatis-generator</artifactId>  
  9.     <version>1.0-SNAPSHOT</version>  
  10.   
  11.     <dependencies>  
  12.   
  13.     </dependencies>  
  14.   
  15.     <build>  
  16.         <plugins>  
  17.             <plugin>  
  18.                 <groupId>org.mybatis.generator</groupId>  
  19.                 <artifactId>mybatis-generator-maven-plugin</artifactId>  
  20.                 <version>1.3.3</version>  
  21.                 <configuration>  
  22.                     <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>  
  23.                     <verbose>true</verbose>  
  24.                     <overwrite>true</overwrite>  
  25.                 </configuration>  
  26.                 <executions>  
  27.                     <execution>  
  28.                         <id>Generate MyBatis Artifacts</id>  
  29.                         <goals>  
  30.                             <goal>generate</goal>  
  31.                         </goals>  
  32.                     </execution>  
  33.                 </executions>  
  34.                 <dependencies>  
  35.                     <dependency>  
  36.                         <groupId>org.mybatis.generator</groupId>  
  37.                         <artifactId>mybatis-generator-core</artifactId>  
  38.                         <version>1.3.3</version>  
  39.                     </dependency>  
  40.                     <dependency>  
  41.                         <groupId>mysql</groupId>  
  42.                         <artifactId>mysql-connector-java</artifactId>  
  43.                         <version>5.1.35</version>  
  44.                         <scope>runtime</scope>  
  45.                     </dependency>  
  46.                 </dependencies>  
  47.             </plugin>  
  48.         </plugins>  
  49.     </build>  
  50. </project>  
其中generatorConfig.xml的位置,大家根据实际情况自行调整


二、generatorConfig.xml配置文件

[html] view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE generatorConfiguration  
  3.         PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"  
  4.         "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">  
  5.   
  6. <generatorConfiguration>  
  7.     <context id="testTables" targetRuntime="MyBatis3">  
  8.         <commentGenerator>  
  9.             <!-- 是否去除自动生成的注释 true:是 : false:否 -->  
  10.             <property name="suppressAllComments" value="true"/>  
  11.         </commentGenerator>  
  12.         <!--mysql数据库连接的信息:驱动类、连接地址、用户名、密码 -->  
  13.         <jdbcConnection driverClass="com.mysql.jdbc.Driver"  
  14.                         connectionURL="jdbc:mysql://localhost:3306/dbname" userId="root"  
  15.                         password="123456">  
  16.         </jdbcConnection>  
  17.   
  18.         <!--oracle配置-->  
  19.         <!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver" connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"  
  20.             userId="yycg"  
  21.             password="yycg">  
  22.         </jdbcConnection> -->  
  23.   
  24.         <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,  
  25.         为 true时把JDBC DECIMAL和NUMERIC类型解析为java.math.BigDecimal -->  
  26.         <javaTypeResolver>  
  27.             <property name="forceBigDecimals" value="false"/>  
  28.         </javaTypeResolver>  
  29.   
  30.         <!-- targetProject:生成model类的位置,重要!! -->  
  31.         <javaModelGenerator targetPackage="com.demo.film.model" targetProject=".\src">  
  32.             <!-- enableSubPackages:是否让schema作为包的后缀 -->  
  33.             <property name="enableSubPackages" value="false"/>  
  34.             <!-- 从数据库返回的值被清理前后的空格 -->  
  35.             <property name="trimStrings" value="true"/>  
  36.         </javaModelGenerator>  
  37.   
  38.         <!-- targetProject:mapper映射xml文件生成的位置,重要!! -->  
  39.         <sqlMapGenerator targetPackage="com.demo.film.mapper"  
  40.                          targetProject=".\src">  
  41.             <property name="enableSubPackages" value="false"/>  
  42.         </sqlMapGenerator>  
  43.   
  44.         <!-- targetPackage:mapper接口生成的位置,重要!! -->  
  45.         <javaClientGenerator type="XMLMAPPER"  
  46.                              targetPackage="com.demo.film.dao"  
  47.                              targetProject=".\src">  
  48.             <property name="enableSubPackages" value="false"/>  
  49.         </javaClientGenerator>  
  50.   
  51.         <!-- 指定数据库表,要生成哪些表,就写哪些表,要和数据库中对应,不能写错! -->  
  52.         <table tableName="items"></table>  
  53.         <table tableName="orders"></table>  
  54.         <table tableName="orderdetail"></table>  
  55.         <table tableName="user"></table>  
  56.     </context>  
  57. </generatorConfiguration>  

三、使用方式


mvn mybatis-generator:generate

一个大神写的gui:https://github.com/astarring/mybatis-generator-gui


mybatis-generator有三种用法:命令行、eclipse插件、maven插件。个人觉得maven插件最方便,可以在eclipse/intellij idea等ide上可以通用。


一、在pom.xml中添加plugin

[html] view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"  
  3.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  
  5.     <modelVersion>4.0.0</modelVersion>  
  6.   
  7.     <groupId>com.demo.film</groupId>  
  8.     <artifactId>mybatis-generator</artifactId>  
  9.     <version>1.0-SNAPSHOT</version>  
  10.   
  11.     <dependencies>  
  12.   
  13.     </dependencies>  
  14.   
  15.     <build>  
  16.         <plugins>  
  17.             <plugin>  
  18.                 <groupId>org.mybatis.generator</groupId>  
  19.                 <artifactId>mybatis-generator-maven-plugin</artifactId>  
  20.                 <version>1.3.3</version>  
  21.                 <configuration>  
  22.                     <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>  
  23.                     <verbose>true</verbose>  
  24.                     <overwrite>true</overwrite>  
  25.                 </configuration>  
  26.                 <executions>  
  27.                     <execution>  
  28.                         <id>Generate MyBatis Artifacts</id>  
  29.                         <goals>  
  30.                             <goal>generate</goal>  
  31.                         </goals>  
  32.                     </execution>  
  33.                 </executions>  
  34.                 <dependencies>  
  35.                     <dependency>  
  36.                         <groupId>org.mybatis.generator</groupId>  
  37.                         <artifactId>mybatis-generator-core</artifactId>  
  38.                         <version>1.3.3</version>  
  39.                     </dependency>  
  40.                     <dependency>  
  41.                         <groupId>mysql</groupId>  
  42.                         <artifactId>mysql-connector-java</artifactId>  
  43.                         <version>5.1.35</version>  
  44.                         <scope>runtime</scope>  
  45.                     </dependency>  
  46.                 </dependencies>  
  47.             </plugin>  
  48.         </plugins>  
  49.     </build>  
  50. </project>  
其中generatorConfig.xml的位置,大家根据实际情况自行调整


二、generatorConfig.xml配置文件

[html] view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE generatorConfiguration  
  3.         PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"  
  4.         "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">  
  5.   
  6. <generatorConfiguration>  
  7.     <context id="testTables" targetRuntime="MyBatis3">  
  8.         <commentGenerator>  
  9.             <!-- 是否去除自动生成的注释 true:是 : false:否 -->  
  10.             <property name="suppressAllComments" value="true"/>  
  11.         </commentGenerator>  
  12.         <!--mysql数据库连接的信息:驱动类、连接地址、用户名、密码 -->  
  13.         <jdbcConnection driverClass="com.mysql.jdbc.Driver"  
  14.                         connectionURL="jdbc:mysql://localhost:3306/dbname" userId="root"  
  15.                         password="123456">  
  16.         </jdbcConnection>  
  17.   
  18.         <!--oracle配置-->  
  19.         <!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver" connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg"  
  20.             userId="yycg"  
  21.             password="yycg">  
  22.         </jdbcConnection> -->  
  23.   
  24.         <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,  
  25.         为 true时把JDBC DECIMAL和NUMERIC类型解析为java.math.BigDecimal -->  
  26.         <javaTypeResolver>  
  27.             <property name="forceBigDecimals" value="false"/>  
  28.         </javaTypeResolver>  
  29.   
  30.         <!-- targetProject:生成model类的位置,重要!! -->  
  31.         <javaModelGenerator targetPackage="com.demo.film.model" targetProject=".\src">  
  32.             <!-- enableSubPackages:是否让schema作为包的后缀 -->  
  33.             <property name="enableSubPackages" value="false"/>  
  34.             <!-- 从数据库返回的值被清理前后的空格 -->  
  35.             <property name="trimStrings" value="true"/>  
  36.         </javaModelGenerator>  
  37.   
  38.         <!-- targetProject:mapper映射xml文件生成的位置,重要!! -->  
  39.         <sqlMapGenerator targetPackage="com.demo.film.mapper"  
  40.                          targetProject=".\src">  
  41.             <property name="enableSubPackages" value="false"/>  
  42.         </sqlMapGenerator>  
  43.   
  44.         <!-- targetPackage:mapper接口生成的位置,重要!! -->  
  45.         <javaClientGenerator type="XMLMAPPER"  
  46.                              targetPackage="com.demo.film.dao"  
  47.                              targetProject=".\src">  
  48.             <property name="enableSubPackages" value="false"/>  
  49.         </javaClientGenerator>  
  50.   
  51.         <!-- 指定数据库表,要生成哪些表,就写哪些表,要和数据库中对应,不能写错! -->  
  52.         <table tableName="items"></table>  
  53.         <table tableName="orders"></table>  
  54.         <table tableName="orderdetail"></table>  
  55.         <table tableName="user"></table>  
  56.     </context>  
  57. </generatorConfiguration>  

三、使用方式


mvn mybatis-generator:generate