idea mybatis逆向工程生成程式碼方法及問題解決
步驟
一. pom檔案中新增外掛
<build>
<finalName>zsxt</finalName>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration >
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
</plugins>
</build>
二. 新增配置檔案
在src/main/resources 目錄下建立兩個檔案generator.properties 和 generatorConfig.xml,目錄結構如下:
配置檔案內容如下:
generator.properties:
jdbc.driverLocation=C:\\Users\\JYL\\.m2\\repository\\mysql\\mysql-connector-java\\5.1.32\\mysql-connector-java-5.1.32.jar
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.connectionURL=jdbc:mysql:///e3mall
jdbc.userId=root
jdbc.password=111
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="${jdbc.driverLocation}"/>
<context id="context" targetRuntime="MyBatis3">
<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
<commentGenerator>
<property name="suppressAllComments" value="false"/>
<property name="suppressDate" value="true"/>
</commentGenerator>
<!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
<jdbcConnection
driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.connectionURL}"
userId="${jdbc.userId}"
password="${jdbc.password}">
</jdbcConnection>
<!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,為 true時把JDBC DECIMAL 和
NUMERIC 型別解析為java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!--指定包名生成實體類 以及生成的地址 (可以自定義地址,如果路徑不存在會自動建立) -->
<javaModelGenerator targetPackage="com.e3mall" targetProject=".\src\test">
<!-- enableSubPackages:是否讓schema作為包的字尾 -->
<property name="enableSubPackages" value="false"/>
<!-- 從資料庫返回的值被清理前後的空格 -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- !!!! Mapper XML Configurations !!!! -->
<sqlMapGenerator targetPackage="com.e3mall" targetProject=".\src\test">
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!-- !!!! Mapper Interface Configurations !!!! -->
<javaClientGenerator targetPackage="com.e3mall" targetProject=".\src\test"
type="XMLMAPPER">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!-- 指定資料庫表 -->
<table schema="" tableName="tb_content"/>
<table schema="" tableName="tb_content_category"/>
<table schema="" tableName="tb_item"/>
<table schema="" tableName="tb_item_cat"/>
<table schema="" tableName="tb_item_desc"/>
<table schema="" tableName="tb_item_param"/>
<table schema="" tableName="tb_item_param_item"/>
<table schema="" tableName="tb_order"/>
<table schema="" tableName="tb_order_item"/>
<table schema="" tableName="tb_order_shipping"/>
<table schema="" tableName="tb_user"/>
<!--<table schema="db_wechat" tableName="t_automessage"-->
<!--enableCountByExample="false" enableDeleteByExample="false"-->
<!--enableSelectByExample="false" enableUpdateByExample="false"/>-->
<!--<table schema="db_wechat" tableName="t_command"-->
<!--enableCountByExample="false" enableDeleteByExample="false"-->
<!--enableSelectByExample="false" enableUpdateByExample="false"/>-->
</context>
</generatorConfiguration>
三. 設定啟動,依次按圖片操作
apply ok!
操作成功,程式碼生成。
<!– ———————– 華麗的分割線———— –>
我在操作成功之前遇到的問題
1.錯誤:Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.2:generate (default-cli) on project e3-manager-web: configfile G:\YiLiFang\yilifang\e3-parent\e3-manager\e3-manager-web\e3-manager-web\src\main\resources\Personal-GeneratorConfig.xml does not exist -> [Help 1] 這是版本問題
2.
這個紅不影響功能,看著難受,解決方法:file-》setting-》languages&frameworks
將這句爆紅的新增進去就好了。
3.configfile G:\YiLiFang\yilifang\e3-parent\e3-manager\e3-manager-web\src\main\resources\Personal-GeneratorConfig.xml does not exist
解決,pom檔案中新增:src/main/resources/generatorConfig.xml
4.執行成功但沒有生成程式碼:檢查路徑,檢查需要生成表的表名是否正確(我的錯誤是這個,暈)