Intellij IDEA集成mybatis-generator插件自動生成數據庫實體操作類
轉載至:https://blog.csdn.net/fishinhouse/article/details/82529338
1、File>Settings>Plugins,搜索mybatis-generator,默認沒有安裝。
2、點擊Search in repositories鏈接,選擇idea-mybatis-generator插件,右側窗口點擊install按鈕,安裝完成后提示重啟IDEA。
3、配置idea-mybatis-generator插件
4、加號+新建maven,配置名稱:MyBatis Generator,運行命令:mybatis-generator:generate -e
5、配置好后,運行項目選擇:MyBatis Generator
6、 配置項目POM.xml文件(特別注意,這里一個坑,mybaits的plugin,必須在單獨的plugins里面才會在右邊的maven出來東西)
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <!--配置文件的位置--> <configurationFile>src/main/resources/MyBatisGenerator.xml</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <executions> <execution> <id>Generate MyBatis Artifacts</id> <goals> <goal>generate</goal> </goals> </execution> </executions> </plugin>
7、項目resources下要有MyBatisGenerator.xml文件
注:targetProject屬性要配置為項目絕對路徑,否則無法自動生成相關實體操作類。
IDEA的idea-mybatis-generator插件有個很大的BUG,自動生成的代碼會覆蓋mapper類中用戶自定義接口。
其他參考文章:
https://www.cnblogs.com/heben/p/6088251.html
配置文件的樣本如下:
<?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> <classPathEntry location="C:/Users/Ash/.m2/repository/mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar"/> <context id="productRelease"> <property name="mergeable" value="false" /> <plugin type="org.mybatis.generator.plugins.SerializablePlugin" /> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/springbankdb" userId="a" password="a" /> <javaModelGenerator targetPackage="com.springbank.dao.generate.model" targetProject="springbank-dao" /> <sqlMapGenerator targetPackage="com.springbank.dao.generate.mapper" targetProject="springbank-dao" /> <javaClientGenerator targetPackage="com.springbank.dao.generate.mapper" targetProject="springbank-dao" type="XMLMAPPER" /> <table tableName="owner" /> <table tableName="acctrate" /> <table tableName="acct" /> <table tableName="acctstatus" /> <table tableName="sysparam" /> <table tableName="rtxn" /> <table tableName="rate" /> <table tableName="ratetype" /> <table tableName="prod" /> <table tableName="rtxntypgl" /> <!-- <table tableName="scheduledjob" /> --> </context> </generatorConfiguration>
其他優化的參看文檔:結合lombok