使用mybatis的代碼生成工具:mybatis-generator,在父model中引入了maven插件的依賴,如下:
<!-- Mybatis.generator插件 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>${mybatis.generator.version}</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
子model(dao層)中使用,引入插件:
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
配置generatorConfig.xml檔案,開始生成代碼,如下操作
報錯如下:
[ERROR] Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.5:generate (default-cli) on project mf-dao: Execution default-cli of goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.5:generate failed: Exception getting JDBC Driver: oracle.jdbc.driver.OracleDriver -> [Help 1]
分析:
很明顯的報錯,提示找不到DB的驅動jar
設定插件的依賴參數如下:
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<configuration>
<!--可指定配置檔案位址,預設位址resources/generatorConfig.xml -->
<!--<configurationFile>${basedir}/src/main/java/com/shengpay/mf/dao/db/generator/generatorConfig.xml</configurationFile>-->
</configuration>
<!--依賴DB的驅動包 -->
<dependencies>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>${oracle.ojdbc6.version}</version>
</dependency>
<dependency>
<groupId>com.mas.mf</groupId>
<artifactId>mf-dao</artifactId>
<version>${mf.module.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>${mybatis.generator.version}</version>
</dependency>
</dependencies>
</plugin>
注意:
1、所有引用的外部插件(比如分頁插件)或者jar包,必須指定依賴
比如這裡依賴了自己的jar:mf-dao
在generator之前,必須先生成jar并存放在本地倉庫或私服
2、depences下,每個依賴的jar必須指定version
3、如果generatorConfig.xml檔案使用了自定義的插件,在指定依賴前,請先編譯,确定生成了jar包(不然會報錯提示無法初始化該對象)
4、如果generatorConfig.xml沒有放在resources下,請指定generatorConfig.xml配置檔案的路徑