1. 程式人生 > >idea mybatis逆向工程生成程式碼方法及問題解決

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.執行成功但沒有生成程式碼:檢查路徑,檢查需要生成表的表名是否正確(我的錯誤是這個,暈)