1. 程式人生 > >Mybatis 逆向工程 資料庫生成mapper

Mybatis 逆向工程 資料庫生成mapper

1、新增 pom 依賴:


        <!-- 逆向工程 -->
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator</artifactId>
            <version>1.3.4</version>
        </dependency>

        <dependency
>
<groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.4</version> </dependency> <!--====================-->

新增配置:

<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration> <context id="testTables" targetRuntime="MyBatis3"> <commentGenerator> <!-- 是否去除自動生成的註釋 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://rm-bp14b4ud3l5yoy3f6po.mysql.rds.aliyuncs.com:3306/zhongshu_prod_db" userId="root" password="Liyi880301"> </jdbcConnection> <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,為 true時把JDBC DECIMAL 和 NUMERIC 型別解析為java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="true"/> </javaTypeResolver> <!-- targetProject:生成PO類的位置 --> <javaModelGenerator targetPackage="com.zhongshu.vegetables.bean" targetProject=".\src"> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false"/> <!-- 從資料庫返回的值被清理前後的空格 --> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- targetProject:mapper對映檔案生成的位置 --> <sqlMapGenerator targetPackage="com.zhongshu.vegetables.mapper" targetProject=".\src"> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false"/> </sqlMapGenerator> <!-- targetPackage:mapper介面生成的位置 --> <!--生成Dao類存放位置--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.zhongshu.vegetables.dao" targetProject=".\src"> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false"/> </javaClientGenerator> <!-- 指定資料庫表 --> <table schema="" tableName="area"></table> <table schema="" tableName="category"></table> <table schema="" tableName="common"></table> <table schema="" tableName="dictionary"></table> <table schema="" tableName="item"></table> <table schema="" tableName="menu"></table> <table schema="" tableName="menu_role"></table> <table schema="" tableName="user"></table> <table schema="" tableName="order"></table> <table schema="" tableName="order_detail"></table> <table schema="" tableName="receive_address"></table> <table schema="" tableName="role"></table> <table schema="" tableName="shop_cart"></table> <table schema="" tableName="unit"></table> <table schema="" tableName="version"></table> </context> </generatorConfiguration>

執行程式碼

package com.zhongshu.vegetables.utils;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;

public class GeneratorSqlmap {

    public void generator() throws Exception{

        List<String> warnings = new ArrayList<String>();
        boolean overwrite = true;

        //指定 逆向工程配置檔案
        File configFile = new File("./src/main/resources/generatorConfig.xml");


        ConfigurationParser cp = new ConfigurationParser(warnings);
        Configuration config = cp.parseConfiguration(configFile);
        DefaultShellCallback callback = new DefaultShellCallback(overwrite);
        MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config,
                callback, warnings);
        myBatisGenerator.generate(null);

    } 
    public static void main(String[] args) throws Exception {
        try {
            GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();
            generatorSqlmap.generator();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

相關推薦

Mybatis 逆向工程 資料庫生成mapper

1、新增 pom 依賴: <!-- 逆向工程 --> <dependency> <groupId>org.mybatis.generator</groupI

MyBatis逆向工程自動生成程式碼(附資料庫表結構)

一、逆向工程介紹 逆向工程是一個專門為 MyBatis 框架使用者設計的程式碼生成器,可以根據資料庫中的表字段名,自動生成 POJO 類,mapper 介面與 SQL 對映檔案。支援基本的增刪改查功能,以及自定義條件的查詢。但是不支援複雜 SQL 與儲存過程

Mybatis逆向工程生成pojo和mapper

安裝Mybatis外掛 https://blog.csdn.net/qq_38002337/article/details/79440215 Mybatis逆向工程(生成pojo和mapper) https://blog.csdn.net/opera95/article

Mybatis學習---Mybatis逆向工程自動生成程式碼(代替手寫pojo類,Mapper和對映檔案)

學習Mybatis後,學會使用dao層對映檔案和Mapper,從資料庫獲取資料,並將資料封裝為相應的物件儲存。將Mybatis框架使用到SSM專案中,實現了:檢視層 + 業務邏輯層 + 資料訪問層。對於資料庫表不多的情況,正常的使用Mybatis框架:手寫pojo類檔案、da

mybatis 逆向工程 自動生成mapper檔案沒有 主鍵方法(附解決方法)

總結了一下網上的三大原因 1.資料表沒有設定主鍵     設定個主鍵就好 2.在mybits配置文件裡設定了某些屬性值為false    在mybatis配置文件裡檢視    enableSelectByPrimaryKey="true"   enableUpda

回顧一下MyBatis逆向工程——自動生成代碼

ive def pre bool throws artifact 默認 config batis 前言 最近做的項目(SSM+Shiro)的數據庫表已經創建完成,一共有15張表,如果我們一個個去寫pojo/bean的代碼以及各種sql語句的話未免太過麻煩而且很容易出錯,這個

mybatis逆向工程生成的xml檔案重複ResultMap,有上千行程式碼問題。org.apache.ibatis.exceptions.PersistenceException

org.apache.ibatis.exceptions.PersistenceException: org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession. ### The

MyBatis逆向工程生成檔案解析

一、mapper介面中的方法解析 mapper介面中的函式及方法 方法 功能說明 int countByExample(UserExample example) thorws SQLExceptio

SSM+Maven整合時在Eclipse中使用Mybatis逆向工程自動生成程式碼

場景 MybatisGenerator 官方文件 http://www.mybatis.org/generator/configreference/xmlconfig.html 實現 專案搭建好完整的包,包括bean、dao、service、test、utils、mapper

Mybatis逆向工程自動生成程式碼(Ubuntu18.04-idea環境)

 最近在學習taotao商城專案,有一節是關於mybatis逆向工程的,參考了這個博文,https://blog.csdn.net/yerenyuan_pku/article/details/71909325 是在windows+eclipse環境下完成的,我用的是Ubuntu18.04和idea

MyBatis框架的學習(七)——MyBatis逆向工程自動生成程式碼

什麼是逆向工程 MyBatis的一個主要的特點就是需要程式設計師自己編寫sql,那麼如果表太多的話,難免會很麻煩,所以mybatis官方提供了一個逆向工程,可以針對單表自動生成mybatis執行所需要的程式碼(包括mapper.xml、mapper.java、

mybatis逆向工程自動生成

MAVEN專案使用mybatis逆向生成: 首先新增pom依賴: <dependencies> <dependency> <groupId>org.mybatis.generator</g

Mybatis逆向工程生成的Example類

    MyBatis Generator:簡稱MBG,是一個專門為MyBatis框架使用者定製的程式碼生成器,可以快速的根據表生成對應的對映檔案,介面,以及bean類。支援基本的增刪改查,以及QBC風格的條件查詢。但是表連線、 儲存過程等這些複雜sql的定義需要我們手工編寫

關於 mybatis逆向工程程式碼生成及使用

一. 什麼是逆向工程MyBatis的一個主要的特點就是需要程式設計師自己編寫sql,那麼如果表太多的話,難免會很麻煩,所以mybatis官方提供了一個逆向工程,可以針對單表自動生成mybatis執行所需要的程式碼(包括mapper.xml、mapper.java、po..)。

MyBatis逆向工程自動生成代碼

pan integer odin myba 部分 call res defaults 數據庫連接 MyBatis逆向工程根據數據庫表自動生成mapper.xml,entity類,mapper類,簡直不要 太方便好嘛 下面貼上關鍵配置代碼,以免以後找不到 generato

MyBatis逆向工程-根據資料庫表自動生成bean、mapper介面以及對映檔案

說明:偶然看到一個視訊,講到了使用mybatis的逆向工程實現自動生成程式碼的部分(根據資料表生成相應的實體類、對映檔案、介面),因為之前沒有學習過這類東西,今天照著弄了下,然後自己寫了一個測試案例,特來記錄。。。。==============================

MyBatis逆向工程,自動生成dao、實體類、mapper檔案

利用mybatis generator 自動生成生成dao、實體類、mapper檔案 這裡介紹兩種方法: 1、獨立的資料夾的方式,脫離開發工具 2、基於開發工具的方式(Eclipse) 1、獨立的資料夾的方式,脫離開發工具

SpringBoot中使用Mybatis Generator進行資料庫逆向工程自動生成實體類和mapping對映

1.首先在專案中建立一個GeneratorDisplay工具類,放在com.springbootdemo.util下 package com.springbootdemo.util; import java.io.File; import java.util.ArrayList; imp

MyBatis系列 逆向工程自動生成實體類、Mapper、SQL

說明:MyBatis 需要程式設計師自己編寫sql語句,mybatis官方提供逆向工程,可以針對單表自動生成mybatis執行所需要的程式碼。MyBatis Generator:簡稱MBG,是一個專門為MyBatis框架使用者定製的程式碼生成器,可以快速的根據表生成對應的對映檔案,介面,

Mybatis 逆向工程生成mapper.xml 對映檔案中方法的使用

方法1:selectByExample(TbItemDescExample  example)                     返回值:List<TbItemDesc>             作用:通過特定限制條件查詢資訊,example用於生成