Intellij IDEA利用generatorConfig.xml反向生成java类

来源于 https://blog.csdn.net/zt1090258642/article/details/93083209

 

数据库的表需要提前创建好

1.导入pom.xml文件依赖

 

 1 <!--mybatis自动生成工具 start-->
 2             <plugin>
 3                 <groupId>org.mybatis.generator</groupId>
 4                 <artifactId>mybatis-generator-maven-plugin</artifactId>
 5                 <version>1.3.2</version>
 6                 <executions>
 7                     <execution>
 8                         <id>Generate MyBatis Artifacts</id>
 9                         <goals>
10                             <goal>generate</goal>
11                         </goals>
12                     </execution>
13                 </executions>
14                 <configuration>
15                     <!-- generator 工具配置文件的位置 -->
16                     <configurationFile>src/main/resources/mybatis-generator/generatorConfig.xml</configurationFile>
17                     <!--注意这个位置要和自己的路径一样-->
18                     <verbose>true</verbose>
19                     <overwrite>true</overwrite>
20                 </configuration>
21                 <dependencies>
22                     <dependency>
23                         <groupId>mysql</groupId>
24                         <artifactId>mysql-connector-java</artifactId>
25                         <version>5.1.34</version>
26                     </dependency>
27                     <dependency>
28                         <groupId>org.mybatis.generator</groupId>
29                         <artifactId>mybatis-generator-core</artifactId>
30                         <version>1.3.2</version>
31                     </dependency>
32                 </dependencies>
33             </plugin>
34             <!--mybatis自动生成工具 start-->

 

 

主要是mybatis_generator中的两个配置文件

2.1 generatorConfig.xml  注意:记得将存放生成文件的包名修改为自己的包名

 

 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     <!--执行generator插件生成文件的命令: call mvn mybatis-generator:generate -e -->
 8     <!-- 引入配置文件 -->
 9     <properties resource="mybatis-generator/mybatisGeneratorinit.properties"/>
10     <!--classPathEntry:数据库的JDBC驱动,换成你自己的驱动位置 可选 -->
11     <!--<classPathEntry location="D:\generator_mybatis\mysql-connector-java-5.1.24-bin.jar" /> -->
12  
13     <!-- 一个数据库一个context -->
14     <!--defaultModelType="flat" 大数据字段,不分表 -->
15     <context id="MysqlTables" targetRuntime="MyBatis3Simple" defaultModelType="flat">
16         <!-- 自动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表;
17         一般保留默认值,遇到数据库关键字(Java关键字),使用columnOverride覆盖 -->
18         <property name="autoDelimitKeywords" value="true" />
19         <!-- 生成的Java文件的编码 -->
20         <property name="javaFileEncoding" value="utf-8" />
21         <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号; -->
22         <property name="beginningDelimiter" value="`" />
23         <property name="endingDelimiter" value="`" />
24  
25         <!-- 格式化java代码 -->
26         <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
27         <!-- 格式化XML代码 -->
28         <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
29         <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
30  
31         <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
32  
33         <!-- 注释 -->
34         <commentGenerator >
35             <property name="suppressAllComments" value="false"/><!-- 是否取消注释 -->
36             <property name="suppressDate" value="true" /> <!-- 是否生成注释代时间戳-->
37         </commentGenerator>
38  
39         <!-- jdbc连接 -->
40         <jdbcConnection driverClass="${jdbc_driver}" connectionURL="${jdbc_url}" userId="${jdbc_user}" password="${jdbc_password}" />
41         <!-- 类型转换 -->
42         <javaTypeResolver>
43             <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->
44             <property name="forceBigDecimals" value="false"/>
45         </javaTypeResolver>
46  
47         <!-- 生成实体类地址 -->
48         <javaModelGenerator targetPackage="com.zt.springboot.model" targetProject="${project}" >
49             <property name="enableSubPackages" value="false"></property>
50             <property name="trimStrings" value="true"/>
51         </javaModelGenerator>
52         <!-- 生成mapxml文件 -->
53         <sqlMapGenerator targetPackage="mapper" targetProject="${resources}" >
54             <property name="enableSubPackages" value="false" />
55         </sqlMapGenerator>
56         <!-- 生成mapxml对应client,也就是接口dao -->
57         <javaClientGenerator targetPackage="com.zt.springboot.mapper" targetProject="${project}" type="XMLMAPPER" >
58             <property name="enableSubPackages" value="false" />
59         </javaClientGenerator>
60         <!-- table可以有多个,每个数据库中的表都可以写一个table,tableName表示要匹配的数据库表,也可以在tableName属性中通过使用%通配符来匹配所有数据库表,只有匹配的表才会自动生成文件 -->
61         <!--<table tableName="wz_roler" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">-->
62             <!--<property name="useActualColumnNames" value="false" />-->
63             <!--&lt;!&ndash; 数据库表主键 &ndash;&gt;-->
64             <!--<generatedKey column="uid" sqlStatement="Mysql" identity="true" />-->
65         <!--</table>-->
66  
67  
68  
69         <table tableName="admin_user" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">
70  
71             <property name="user_id" value="false" />
72             <!-- 数据库表主键 -->
73             <generatedKey column="user_id" sqlStatement="Mysql" identity="true" />
74         </table>
75     </context>
76 </generatorConfiguration>

 

2.2 mybatisGeneratorinit.properties

#Mybatis Generator configuration
#dao类和实体类的位置
project=src/main/java
#mapper文件的位置
resources=src/main/resources
#根据数据库中的表生成对应的pojo类、**Mapper、**Mapper.xml
jdbc_driver=com.mysql.jdbc.Driver
#连接数据库
jdbc_url=jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf8
#数据库名字
jdbc_user=root
#数据库密码
jdbc_password=123456

 

 

 

 

然后就运行成功啦

画红线是生成的

 

posted @ 2020-04-30 17:04  苦行者的刀  阅读(1967)  评论(0编辑  收藏  举报