IDEA Maven Mybatis generator 自動生成代碼(實例講解)
IDEA Maven Mybatis generator 自動生成代碼的實例講解
安裝過程步驟可以看上面的博文,里面介紹得很詳細。
二、建數(shù)據(jù)表
DROP TABLE IF EXISTS `t_user`; CREATE TABLE `t_user` ( `id` varchar(100) NOT NULL, `username` varchar(20) DEFAULT NULL, `password` varchar(20) DEFAULT NULL, `headerPic` varchar(60) DEFAULT NULL, `email` varchar(60) DEFAULT NULL, `sex` varchar(2) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `is_delete` int(1) DEFAULT NULL, `address` varchar(200) DEFAULT NULL, `telephone` varchar(15) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
三、Idea創(chuàng)建maven項目
1、點擊create new project-》maven-》create from archetype->maven-archetype-webapp,然點擊next,步驟如圖:

2、填寫groupId和ArtifactId:(這兩個參數(shù)值都是自己定義的),下面這段文字,是網(wǎng)上抄來的,以便大家更好地了解這兩個參數(shù)。
groupid和artifactId被統(tǒng)稱為“坐標”是為了保證項目唯一性而提出的,如果你要把你項目弄到maven本地倉庫去,你想要找到你的項目就必須根據(jù)這兩個id去查找。
一般分為多個段,這里我只說兩段,第一段為域,第二段為公司名稱。域又分為org、com、cn等等許多,其中org為非營利組織,com為商業(yè)組織。舉個apache公司的tomcat項目例子:這個項目的groupId是org.apache,它的域是org(因為tomcat是非營利項目),公司名稱是apache,artigactId是tomcat。
比如我創(chuàng)建一個項目,我一般會將groupId設置為cn.laok,cn表示域為中國,laok是我個人姓名縮寫,artifactId設置為testProj,表示你這個項目的名稱是testProj,依照這個設置,你的包結構最好是cn.laok.testProj打頭的,如果有個UserDao,它的全路徑就是cn.laok.testProj.dao.UserDao

3、點擊next,配置maven信息,如圖:

4、點擊next,填寫項目名稱,如圖:

5、創(chuàng)建完成后,項目的結構如圖,在生成代碼之前,不需要創(chuàng)建其他文件夾,但是需要把resources文件夾設置成Resources Root(右鍵點擊resources文件夾-》Mark Directory As->Resources Root)

四、配置pom.xml和generatorConfig.xml
1、在pom.xml中加入以下配置:
<build> <finalName>create-code</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>
2、在resources源文件夾下面創(chuàng)建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>
<classPathEntry location="D:/Java/lib/mysql-connector-java-5.1.43-bin.jar" />
<context id="test" targetRuntime="MyBatis3">
<plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin"></plugin>
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"></plugin>
<commentGenerator>
<!-- 這個元素用來去除指定生成的注釋中是否包含生成的日期 false:表示保護 -->
<!-- 如果生成日期,會造成即使修改一個字段,整個實體類所有屬性都會發(fā)生變化,不利于版本控制,所以設置為true -->
<property name="suppressDate" value="true" />
<!-- 是否去除自動生成的注釋 true:是 : false:否 -->
<property name="suppressAllComments" value="false" />
</commentGenerator>
<!--數(shù)據(jù)庫鏈接URL,用戶名、密碼 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/article" userId="root" password="">
</jdbcConnection>
<javaTypeResolver>
<!-- This property is used to specify whether MyBatis Generator should
force the use of java.math.BigDecimal for DECIMAL and NUMERIC fields, -->
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 生成模型的包名和位置 文件夾自己定義-->
<javaModelGenerator targetPackage="com.test.model"
targetProject="target">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 生成映射文件的包名和位置 文件夾自己定義-->
<sqlMapGenerator targetPackage="com.test.mapping"
targetProject="target">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成DAO的包名和位置 文件夾自己定義-->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.test.dao" implementationPackage="com.test.dao.impl" targetProject="target">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 要生成哪些表 -->
<table tableName="t_user" domainObjectName="user"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
3、配置完成后,一定要點擊Build->Rebuild project,生成target文件夾,不然生產(chǎn)代碼的時候是生產(chǎn)在target文件下下面,沒有這個文件夾會報錯,當然也可以配置生成在其他文件夾下面。項目結構如圖:

特別注意的一點:一定要在配置文件中加入本地的mysql-connector-java-5.1.43-bin.jar,
下載地址https://dev.mysql.com/downloads/connector/j/
然后解壓到本地,我的配置如下:<classPathEntry location="D:/Java/lib/mysql-connector-java-5.1.43-bin.jar" />
這個需要大家根據(jù)自己存放的路徑配置。
五、執(zhí)行生成代碼
1、點擊run->Edit configurations,如圖:

2、之后彈出運行配置框,為當前配置配置一個名稱,這里其名為"generator",然后在 “Command line” 選項中輸入“mybatis-generator:generate -e”
這里加了“-e ”選項是為了讓該插件輸出詳細信息,這樣可以幫助我們定位問題。

3、配置完成后,點擊run-》run generator,不出意外的話,在控制臺中會出現(xiàn)BUILD SUCCESS的info信息。完整的效果如圖所示:

有寫得不對的地方,煩請各位大佬指正,非常感謝。
以上這篇IDEA Maven Mybatis generator 自動生成代碼(實例講解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Mybatis實戰(zhàn)教程之入門到精通(經(jīng)典)
MyBatis是支持普通SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架,通過本文給大家介紹Mybatis實戰(zhàn)教程之入門到精通,對mybatis實戰(zhàn)教程相關知識感興趣的朋友一起學習吧2016-01-01
mybatisplus中EntityWrapper的常用方法
這篇文章主要介紹了mybatisplus中EntityWrapper的常用方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
SpringBoot實現(xiàn)HTTP調(diào)用的七種方式總結
小編在工作中,遇到一些需要調(diào)用三方接口的任務,就需要用到 HTTP 調(diào)用工具,這里,我總結了一下 實現(xiàn) HTTP 調(diào)用的方式,共有 7 種(后續(xù)會繼續(xù)新增),需要的朋友可以參考下2023-09-09
Spring Cloud學習教程之Zuul統(tǒng)一異常處理與回退
Spring Cloud Zuul對異常的處理整體來說還是比較方便的,流程也比較清晰,下面這篇文章主要給大家介紹了關于Spring Cloud學習教程之Zuul統(tǒng)一異常處理與回退的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。2018-04-04
springboot攔截器Interceptor的使用,你都了解嗎
springmvc 中的攔截器可以對請求進行判別,在請求到達控制器之前,把非法的請求給攔截掉下面來說一說, 它在springboot中的使用,感興趣的朋友一起看看吧2021-07-07

