Mybatis-generator使用-基于Maven

Mybatis屬于半自動ORM,在使用這個(gè)框架中馍资,工作量最大的就是書寫Mapping的映射文件问麸,由于手動書寫很容易出錯(cuò),我們可以利用Mybatis-Generator來幫我們自動生成文件象对。
需要配置pom.xml文件在plugins中加入以下代碼:

            <!--mybatis-generator插件-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <overwrite>true</overwrite>
                    <verbose>true</verbose>
                </configuration>
                <!-- 數(shù)據(jù)庫驅(qū)動  -->
                <!--直接在這里配置相應(yīng)的數(shù)據(jù)庫驅(qū)動文件-->
                <dependencies>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>5.1.35</version>
                    </dependency>
                </dependencies>
            </plugin>

現(xiàn)在為該plugin加入配置文件,在src/main/resources下面加入兩個(gè)配置文件宴抚,
一個(gè)為dbconfig.properties

#Oracle的配置
#hibernate.dialect=org.hibernate.dialect.OracleDialect
#jdbc.driver=oracle.jdbc.driver.OracleDriver
#validationQuery=SELECT 1 FROM DUAL
#jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
#jdbc.username=scott
#jdbc.password=oracle

#mysql的配置
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/fsi?useUnicode=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=root



#直接修改這里的配置勒魔,指定生成的model,dao和mapper文件的位置
model.package=cjm.mybaits.model
dao.package=cjm.mybaits.dao
xml.mapper.package=cjm.mybaits.dao

target.project=src/main/java

一個(gè)為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>
    <!-- 配置文件路徑 -->
    <properties resource="dbconfig.properties"/>

    <!--數(shù)據(jù)庫驅(qū)動包路徑 已經(jīng)在Maven的pom配置過了菇曲,這里就不需要了-->
    <!--<classPathEntry location="${drive.class.path}"/>-->

    <context id="MySQLTables" targetRuntime="MyBatis3Simple">
        <!--關(guān)閉注釋 -->
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自動生成的注釋 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--數(shù)據(jù)庫連接信息 -->
        <jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}"
                        password="${jdbc.password}">
        </jdbcConnection>
        <!--
        默認(rèn)false冠绢,把JDBC DECIMAL 和 NUMERIC 類型解析為 Integer
            true,把JDBC DECIMAL 和 NUMERIC 類型解析為java.math.BigDecimal
         -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>


        <!--生成的model 包路徑 -->
        <javaModelGenerator targetPackage="${model.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!--生成xml mapper文件 路徑 -->
        <sqlMapGenerator targetPackage="${xml.mapper.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>

        <!-- 生成的Dao接口 的包路徑 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="${dao.package}" targetProject="${target.project}">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <!--對應(yīng)數(shù)據(jù)庫表名 -->
        <table schema="fsi" tableName="school"></table>
    </context>
</generatorConfiguration>

dbconfig.properties文件中常潮,修改數(shù)據(jù)庫連接的配置和生成實(shí)體文件的配置弟胀,然后在generatorConfig.xml里面只需要添加對應(yīng)的table屬性

tables.png

執(zhí)行mvn mybatis-generator:generate 命令就可以生成對應(yīng)的實(shí)體和mapper文件。

eclipse執(zhí)行maven命令.png

生成示例如下:

效果.png

這樣的方法適用于直接部署在項(xiàng)目中喊式,生成的文件直接就是在項(xiàng)目中孵户,非常方便,不需要挪來挪去岔留。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末夏哭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子献联,更是在濱河造成了極大的恐慌竖配,老刑警劉巖厕吉,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異械念,居然都是意外死亡头朱,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門龄减,熙熙樓的掌柜王于貴愁眉苦臉地迎上來项钮,“玉大人,你說我怎么就攤上這事希停∷肝祝” “怎么了?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵宠能,是天一觀的道長亚隙。 經(jīng)常有香客問我,道長违崇,這世上最難降的妖魔是什么阿弃? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮羞延,結(jié)果婚禮上渣淳,老公的妹妹穿的比我還像新娘。我一直安慰自己伴箩,他們只是感情好入愧,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著嗤谚,像睡著了一般棺蛛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上巩步,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天旁赊,我揣著相機(jī)與錄音,去河邊找鬼渗钉。 笑死彤恶,一個(gè)胖子當(dāng)著我的面吹牛钞钙,可吹牛的內(nèi)容都是我干的鳄橘。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼芒炼,長吁一口氣:“原來是場噩夢啊……” “哼瘫怜!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起本刽,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤鲸湃,失蹤者是張志新(化名)和其女友劉穎赠涮,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體暗挑,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡笋除,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了炸裆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片垃它。...
    茶點(diǎn)故事閱讀 40,144評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖烹看,靈堂內(nèi)的尸體忽然破棺而出国拇,到底是詐尸還是另有隱情,我是刑警寧澤惯殊,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布酱吝,位于F島的核電站,受9級特大地震影響土思,放射性物質(zhì)發(fā)生泄漏务热。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一己儒、第九天 我趴在偏房一處隱蔽的房頂上張望陕习。 院中可真熱鬧,春花似錦址愿、人聲如沸该镣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽损合。三九已至,卻和暖如春娘纷,著一層夾襖步出監(jiān)牢的瞬間嫁审,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工赖晶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留律适,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓遏插,卻偏偏與公主長得像捂贿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子胳嘲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容