1. 程式人生 > >Mybatis -程式碼自動生成(generatorConfig.xml)

Mybatis -程式碼自動生成(generatorConfig.xml)

對於一個欄位太多的表,如果一個一個的去寫 mapper和pojo太累還容易出錯,可用mybatis的工具處理這些事情

1. 環境:

Maven 3.39
Oracle 11g
Mybatis 3.4.1
Maven project

2. 目錄結構

這裡寫圖片描述

3. pom新增外掛

<dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId
>
<version>3.4.1</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies
>
<build> <plugins> <!-- mybatis-generator自動生成程式碼外掛 --> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version
>
1.3.5</version> </plugin> </plugins> </build>

4. 新建generatorConfig.xml 檔案(放在src/main/resources目錄下)

<?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="application.properties"/>

        <!-- 指定資料庫連線驅動jara地址 -->
        <classPathEntry
            location="${generator.location}" />

        <!-- 一個數據庫一個context --> 
        <context id="sqlserverTables">
            <!-- 生成的pojo,將implements Serializable -->
            <plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>

            <!-- 註釋 -->
            <commentGenerator>
                <property name="suppressAllComments" value="true" /><!-- 是否取消註釋 -->
                <!-- <property name="suppressDate" value="true" />  是否生成註釋代時間戳 -->
            </commentGenerator>  

            <!-- 資料庫連結URL、使用者名稱、密碼 -->
            <jdbcConnection driverClass="${db.example.driver}"
                connectionURL="${db.example.url}" userId="${db.example.username}" 
                password="${db.example.password}">
            </jdbcConnection>

            <!-- 型別轉換 -->
            <javaTypeResolver>
            <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer true,把JDBC DECIMAL 
                和 NUMERIC 型別解析為java.math.BigDecimal -->
                <property name="forceBigDecimals" value="false" />
            </javaTypeResolver>

            <!-- 生成model模型,對應的包路徑,以及檔案存放路徑(targetProject),targetProject可以指定具體的路徑,如./src/main/java, 
                也可以使用“MAVEN”來自動生成,這樣生成的程式碼會在target/generatord-source目錄下 -->
            <javaModelGenerator targetPackage="${generator.targetPackage}"
                targetProject="./src/main/java">
                <!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] --> 
                <property name="enableSubPackages" value="false" />
                <!-- 從資料庫返回的值被清理前後的空格 -->
                <property name="trimStrings" value="true" />
            </javaModelGenerator>

            <!--對應的mapper.xml檔案 -->
            <sqlMapGenerator targetPackage="${generator.targetPackage}"
                targetProject="./src/main/java">
                <property name="enableSubPackages" value="false" />
            </sqlMapGenerator>

            <!-- 對應的Mapper介面類檔案 -->
            <javaClientGenerator type="XMLMAPPER"
                targetPackage="${generator.targetPackage}" targetProject="./src/main/java">
                <property name="enableSubPackages" value="false" />
            </javaClientGenerator>


            <!-- 列出要生成程式碼的所有表,這裡配置的是不生成Example檔案 -->
            <!-- schema即為資料庫名 tableName為對應的資料庫表 domainObjectName是要生成的實體類 enable*ByExample   
                       是否生成 example類   -->  
            <table tableName="${gererator.tableName}" domainObjectName="${gererator.objectName}"
                schema="${gererator.schema}"
                enableCountByExample="false" enableUpdateByExample="false"
                enableDeleteByExample="false" enableSelectByExample="false"
                selectByExampleQueryId="false">
                <!-- 忽略列,不生成bean 欄位 
                <ignoreColumn column="FRED" />-->   
                <!-- 指定列的java資料型別  
                <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />  -->
                <!-- 用於指定生成實體類時是否使用實際的列名作為實體類的屬性名。false是 Camel Case風格-->
                <property name="useActualColumnNames" value="false" />
            </table>
        </context>
    </generatorConfiguration>    

5. 設定需要生成的表及建立目錄引數(application.properties放在src/main/resources目錄下)

db.example.type=oracle
db.example.driver=oracle.jdbc.driver.OracleDriver
db.example.url=jdbc:oracle:thin:@ip:port:sid
db.example.username=username
db.example.password=password

#MBGInfo
generator.location=D:/project/eas_std/BaseApp/lib/ojdbc14-10.2.0.5.jar
generator.targetPackage=com.zteict.example.menu
gererator.schema=fbp
gererator.tableName=fbp_menu
gererator.objectName=FbpMenu

6. 專案右鍵-RUN AS-MAVEN BUILD..

輸入 mybatis-generator:generate
這裡寫圖片描述

7. 生成的檔案

FbpMenu:
這裡寫圖片描述
FbpMenuMapper:
這裡寫圖片描述
Xml:
這裡寫圖片描述

相關推薦

Mybatis -程式碼自動生成generatorConfig.xml配置資訊詳解

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1

Mybatis -程式碼自動生成generatorConfig.xml

對於一個欄位太多的表,如果一個一個的去寫 mapper和pojo太累還容易出錯,可用mybatis的工具處理這些事情 1. 環境: Maven 3.39 Oracle 11g Mybatis 3.4.1 Maven project

Mybatis最入門---程式碼自動生成generatorConfig.xml配置

第一種方式:通過Main方法執行配置檔案。 -------------------------------------------------------------------------------------------------------------------------------------

Mybatis最入門---代碼自動生成generatorConfig.xml配置

pack ces war map serial file 用戶名 clip 英文 第一種方式:通過Main方法執行配置文件。 --------------------------------------------------------------------------

MyBatis Generator】程式碼自動生成工具 generatorConfig.xml配置檔案詳解

MyBatis Generator官網地址:http://www.mybatis.org/generator/index.html MyBaris Generator中文地址:http://mbg.cndocs.ml/ 在MBG中,最主要也最重要的,就是generatorConfig.xml

Spring Boot MyBatis程式碼自動生成和輔助外掛

一、簡介 1.1 MyBatis Generator介紹 MyBatis Generator 是MyBatis 官方出品的一款,用來自動生成MyBatis的 mapper、dao、entity 的框架,讓我們省去規律性最強的一部分最基礎的程式碼編寫。 1.2 MyBatis Generator使用 MyBat

程式碼自動生成資料庫表字段生成mybaties 對映配置檔案**mapper.xml

上一篇寫的是根據資料庫欄位生成java bean,雖然有一些缺陷,但是大家可以根據字的需求進行優化,本篇部落格寫的是根據資料庫表字段生成mybaties 對映配置檔案**mapper.xml,之後還會陸續更新mybaties對應的介面。歡迎大家來點評,指出不足之處。 下面

程式碼自動生成-資料庫表字段轉換成java bean

最近做系統老做一些相同的工作,就想寫一自動生成程式碼的工具類來方便以後的開法,我從網上整理修改了一些方法感覺還不錯,接下來我還陸續跟新一些自動生成程式碼的工具類,希望對大家有用。覺得不好輕點噴。import java.io.BufferedWriter; import

程式碼自動生成

在上兩篇文章中講述瞭如何使用freemarker生成程式碼的方法,在第二篇的程式碼中存在幾個ftl格式的檔案,那麼在這篇文章中將貼出來對應的程式碼; 本來是打算在上一篇中完善好直接放上去的,中間因為牽涉到程式碼的變動,以及對應生成mybatis  mapper.xml整合的

實現一個程式碼自動生成:模板引擎Freemarker

目錄 前言 模板引擎FreeMarker 模板引擎是什麼? FreeMarker是什麼? FreeMarker如何使用? 加入依賴 建立Configuratio

Mybatis------程式碼自動生成

程式碼自動生成 利用MyBatis生成器自動生成實體類、DAO介面和Mapping對映檔案。這樣可以大大節約開發時間,將生成的程式碼copy到專案工程中即可。 要想實現程式碼的自動生成,首先要下載一個工具:http://download.csdn.net/detail/u010608

MyBatis程式碼自動生成(利用eclipse外掛)

上一篇文章已經介紹了利用命令的方式自動生成mybatis程式碼,但是每次都去執行cmd命令感覺還是有點麻煩,所以找了些資料發現eclipse裡面也可以安裝外掛自動生成程式碼,下面簡單介紹一下,也是給自己以後使用時留一個存檔。 下載完之後會得到一個jar檔案,然後將這個檔案拷

Intellij IDEA中使用MyBatis-generator自動生成MyBatis程式碼Oracle

原文地址:http://blog.csdn.net/z69183787/article/details/46560071   Intellij IDEA 14 作為JavaIDE 神器,接觸後發現,非常好用,對它愛不釋手,打算離開eclipse和myeclipse,投入Intell

spring boot 整合 mybatis程式碼自動生成

環境簡介:Idea ,JDK8,MAVEN 開工: 第一步建立專案 第二步選擇maven依賴 第三步,補充自己需要用到的maven依賴(通過工具沒法自動完成的) <?xml version="1.0" encoding="UTF-8"?> <project xmlns="

javaweb專案:使用者(登入和登出)實現 SSM框架mybatis-generator自動生成程式碼

SSM框架的搭建環境(Spring,SpringMVC,Mybatis) 使用工具:maven、idea、tomcat用的是8、jdk版本1.8 一、整個專案的結構: 使用者模組流程 pom.xml -> web.xml -> db->model

mybatis-generator程式碼快速自動生成已經寫好程式碼給你了

mybatis-generator程式碼快速自動生成: 沒有實習之前寫的MyBatis的Mapping.XML都是手寫的,實習老大教了如何快速利用mybatis-generator程式碼自動生成工具來快速書寫xml,現在分享給大家。 1.首先,我先建立一個stu

Mybatis-Generator自動生成程式碼——Mybatis 深入淺出

使用Mybatis-Generator ,可以自動生成Model、Dao、Mapping相關檔案 根據已建立的資料庫生成相映的檔案 ,每一個數據表可以自動生成一個對應的model(pojo類),呼叫Dao類中的方法就可以直接對資料庫進行增刪改查的操作。

maven專案自動生成程式碼mybatis-generator 程式碼自動生成

1.本地安裝maven,配置好環境變數 2.在專案下的jdbc檔案中引用相關mapper外掛:(拷貝以下程式碼,修改相關路徑) jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/test?

mybatis7---spring整合mybatis進行自動生成程式碼

1、引入mybatis的generator包 <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-

IDEA+SSM+mybatis-generator+自動生成mybatis程式碼附原始碼

專案結構generatorConfig.xml檔案<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//