1. 程式人生 > >mybatis自動生成工具

mybatis自動生成工具

配置檔案內容: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>
	<context id="testTables" targetRuntime="MyBatis3">
	
		<!-- JavaBean 實現 序列化 介面 -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin">
		</plugin>
		<!-- genenat entity時,生成toString -->
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
        <!-- 自定義物理分頁  可生成支援Mysql資料的limit  不支援Oracle -->
        <plugin type="org.mybatis.generator.plugins.page.PaginationPlugin" />
        <!-- 自定義查詢指定欄位  -->
        <plugin type="org.mybatis.generator.plugins.field.FieldsPlugin" />
        <!-- 開啟支援記憶體分頁   可生成 支援記憶體分佈的方法及引數  
        <plugin type="org.mybatis.generator.plugins.RowBoundsPlugin" />
        -->
        <!-- generate entity時,生成hashcode和equals方法
		<plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin" />
		 -->
		<!-- 此處是將Example改名為Criteria 當然 想改成什麼都行~    -->      
        <plugin type="org.mybatis.generator.plugins.RenameExampleClassPlugin">  
	        <property name="searchString" value="Example$" />
	        <!-- 替換後
	        <property name="replaceString" value="Criteria" />  
	         -->
	        <property name="replaceString" value="Query" />
        </plugin>  
		<!-- 此處是將UserMapper.xml改名為UserDao.xml 當然 想改成什麼都行~ -->        
        <plugin type="org.mybatis.generator.plugins.rename.RenameSqlMapperPlugin">  
	        <property name="searchString" value="Mapper" />
	        <property name="replaceString" value="Dao" />
        </plugin>  
         
		<!-- 此處是將UserMapper改名為UserDao 介面 當然 想改成什麼都行~  -->        
        <plugin type="org.mybatis.generator.plugins.rename.RenameJavaMapperPlugin">  
	        <property name="searchString" value="Mapper$" />
	        <property name="replaceString" value="Dao" />
        </plugin>  
        
 
		
		<commentGenerator type="org.mybatis.generator.plugins.comment.MyCommentGenerator">
			<!-- 是否去除自動生成的註釋 true:是 : false:否 
			<property name="suppressAllComments" value="true" />
			-->
		</commentGenerator>
		
		<!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
			connectionURL="jdbc:mysql://localhost:3306/xjmanager?tinyInt1isBit=false" userId="root"
			password="root">
		</jdbcConnection>
		<!-- <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
			connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:yycg" 
			userId="yycg"
			password="yycg">
		</jdbcConnection> -->

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


		<!-- targetProject:生成PO類的位置 -->
		<javaModelGenerator targetPackage="com.xj.domain.base"
			targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="false" />
			<!-- 從資料庫返回的值被清理前後的空格 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>

        <!-- targetProject:mapper對映檔案生成的位置 -->
		<sqlMapGenerator targetPackage="com.xj.dao" 
			targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>
		<!-- targetPackage:mapper介面生成的位置 -->
		<javaClientGenerator type="XMLMAPPER"
			targetPackage="com.xj.dao" 
			targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="true" />
		</javaClientGenerator>
		
		<!-- 指定資料庫表 -->
		<!-- 使用者模組表  -->
		<!-- <table schema="" tableName="bbs_buyer" domainObjectName="user.Buyer"/>
		<table schema="" tableName="bbs_addr" domainObjectName="user.Addr"/>
		<table schema="" tableName="bbs_employee" domainObjectName="user.Employee"/> -->
		
		<!-- 商品模組表 -->
		<!-- <table schema="" tableName="bbs_product" domainObjectName="product.Product"> -->
			<!-- 商品介紹 大欄位對映 -->
			<!-- <columnOverride column="description" javaType="String" jdbcType="VARCHAR" /> -->
			<!-- 包裝清單 大欄位對映 -->
			<!-- <columnOverride column="package_list" javaType="String" jdbcType="VARCHAR" />
		</table>
		<table schema="" tableName="bbs_brand" domainObjectName="product.Brand"/>
		<table schema="" tableName="bbs_Color" domainObjectName="product.Color"/>
		<table schema="" tableName="bbs_feature" domainObjectName="product.Feature"/>
		<table schema="" tableName="bbs_img" domainObjectName="product.Img"/>
		<table schema="" tableName="bbs_sku" domainObjectName="product.Sku"/>
		<table schema="" tableName="bbs_type" domainObjectName="product.Type"/> -->
		
		<!-- 訂單模組表 -->
		<!-- <table schema="" tableName="bbs_order" domainObjectName="order.Order">
			支付方式 0:到付 1:線上 2:郵局 3:公司轉帳
			<columnOverride column="payment_way" javaType="Integer"/>
			貨到付款方式.1現金,2POS刷卡
			<columnOverride column="payment_cash" javaType="Integer" />
			送貨時間
			<columnOverride column="delivery" javaType="Integer"/>
			支付狀態 :0到付1待付款,2已付款,3待退款,4退款成功,5退款失敗
			<columnOverride column="is_paiy" javaType="Integer"/>
			訂單狀態 0:提交訂單 1:倉庫配貨 2:商品出庫 3:等待收貨 4:完成 5待退貨 6已退貨
			<columnOverride column="state" javaType="Integer"/>
			訂單狀態 預設Boolean
			<columnOverride column="order_state" javaType="Integer"/>
		</table>
		<table schema="" tableName="bbs_detail" domainObjectName="order.Detail"/>
		 -->
		<!-- 指定資料庫所有表  -->
		<table schema="" tableName="pay_inner_list"/>
		
		
		<!-- 有些表的欄位需要指定java型別
		 <table schema="" tableName="">
			<columnOverride column="" javaType="" />
		</table> -->
	</context>
</generatorConfiguration>

主程式:GeneratorSqlmap.java


import java.io.File;
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.internal.DefaultShellCallback;

public class GeneratorSqlmap {

	public void generator() throws Exception{

		List<String> warnings = new ArrayList<String>();
		boolean overwrite = true;
		File configFile = new File("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();
		}
		
	}

}


相關推薦

IntelliJ IDEA相關小技巧和外掛 | Mybatis自動生成工具

本文簡單介紹一些idea開發常用外掛和工具,以及一些小技巧,不足之處希望大家指出,我改正。不喜勿噴! 一、IDEA開發小技巧 在使用idea開發過程中我們會對介面有一些潔癖(簡稱強迫症),下面簡單介紹一下個人的習慣: 1.idea如何檢視檔案或專案的歷史提交記錄 在

mybatis自動生成工具

配置檔案內容:generatorConfig.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DT

使用Mybatis自動生成工具

1.配置如下資料夾結構: 匯入相應架包,匯入配置資訊檔案: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org/

mybatis 自動生成工具使用遇到的坑,需要手動加分頁程式碼

mybatis自動化生成的程式碼xml檔案,如果包含有特殊型別的,比如text型別的欄位,經過自動化生成,會生成多一個包裝返回物件,以xxxWithBLOBS,結尾,繼承了baseResultMap的一個返回物件, 使用selectByExampleWithBLOBs

Eclipse中使用Mybatis自動生成工具

外掛的安裝 Help–>Eclipse Marketpalce,搜尋mybatis, 選擇如下圖的外掛: 一路安裝,重啟idea 配置檔案的生成 new–>file–>oth

Mybatis自動生成實體類和實體映射工具

ase 忽略 路徑 package mapping decimal rri upd 需要 Mybatis Mysql生成實體類 用到的Lib包: mybatis-generator-core-1.3.2.jarmysql-connector-java-5.1.30.jar

mybatis-generator 代碼自動生成工具

數據 pan mic 代碼自動生成 提示 mys .cn dao core 怎麽用mybatis-gennerator插件自動生成mybatis所需要的dao、bean、mapper xml文件。請看↓ 1、在D盤新建一個文件夾,命名:generator(或者其他盤其他名字

一個很好用的自動生成工具——mybatis generator

led ron 很好 user runtime rim mod 文件 path mybatis generator-自動生成代碼 準備材料:   一個文件夾,一個數據庫的驅動包,mybatis-generator-core-1.3.5.jar,一條生成語句   如圖:(我用

Eclipse外掛:MyBatis Generator程式碼自動生成工具

MyBatis Generator是一款優秀的工具,可以幫助我們自動生成java實體類,mapper介面和xml,極大得簡化了開發流程,今天,就記錄下在eclipse中使用eclipse外掛整合MyBatis Generator的步驟; 【1:外掛安裝】Help--Eclipser Market

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

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

MyBatis-Plus程式碼自動生成工具

簡介 官方文件:苞米豆 MyBatis-Plus(簡稱MP)是一個 MyBatis 的增強工具,在 Mybatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。 特性 無侵入:Mybatis-Plus 在 Mybatis 的基礎上進行擴充套件,只做增強不做改變,引

mybatis mybatis-generator 程式碼自動生成工具

一、簡介 mybatis generator是很好用的mybatis自動程式碼生成工具。最近公司使用maven和mybatis開發專案,手動寫入一個個實體類和mapper還有xml配置檔案感覺會很麻煩,使用mybatis generator只需要簡單的配置就能

MyBatis Generator (自動生成工具) 詳解

MyBatis Generator中文文件地址: 該中文文件由於儘可能和原文內容一致,所以有些地方如果不熟悉,看中文版的文件的也會有一定的障礙,所以本章根據該中文文件以及實際應用,使用通俗的語言來講解詳細的配置。 本文中所有節點的連結都是對

Mybatis 自動生成程式碼工具(maven方式)

由於MyBatis屬於一種半自動的ORM框架,所以主要的工作將是書寫Mapping對映檔案,但是由於手寫對映檔案很容易出錯,mybatis-gennerator外掛幫我們自動生成mybatis所需要的dao、bean、mapper xml檔案。 1.建立測試工程 選擇maven

mybatis自動生成程式碼工具

該工具來源於github,原專案生產的程式碼比較規範,所有沒有做修改,我只是將其製作成了安裝程式,方便大家使用,效果如下:工具地址連結:https://pan.baidu.com/s/1j31LZUMvZOlu0H5k2LVhxA 密碼:cw9k

Mybatis 自動生成程式碼工具--mybatis-gennerator外掛

雖然很多人寫過類似的blog,俗話說好記性不如爛筆頭,還是自己寫寫記得牢,順便默數下 mybatis-gennerator 外掛的前世今生。 主要是為了簡化程式碼,節省時間

mybatis-generator-mysql程式碼自動生成工具

流程:    1、匯入MybatisGenerator專案,在build path中修改jar包位置(mybatis-generator-core-1.3.2和mysql-jdbc)    2、修改generator.xml檔案        a.修改資料庫連線資訊<!

Mybatis generatorConfiguration自動生成工具的使用

generatorConfig.xml配置檔案的寫法<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfigu

Mybatis自動生成Xml文件,針對字段類型為text等會默認產生XXXXWithBlobs的方法問題

div 生成xml文件 處理 pre cnblogs href 字段 默認 mybatis 默認情況下產生的Mapper.xml裏面存在: 需要修改generatorConfiguration.xml,裏面的table加屬性,如: <t

mybatis自動生成代碼

url package odin .bat 第一步 rim jar包 product bound 第一步:先下載jar包,mybatis-generator-core-1.3.2.jar, mysql-connector-java-5.1.13.jar;第二步:編寫需要生成