Myeclipse中Mybatis Generator自動創建代碼總結

學習SSM中要寫大量的配置文件和同樣格式的文件, 就瞭解到了 Mybatis Generator 在這裏做個總結

Myeclipse 中安裝mybatis插件和使用:

一、首先下載和安裝插件

         1、Mybatis Generator 的下載地址:http://download.csdn.net/download/shayboke/9776906;

         2、複製插件包中的features和plugins放到myeclipse的安裝目錄下的 dropins 文件夾下面;

         3、重啓 Myeclipse 然後在 File->New->other 搜索 mybatis 如果有,說明成功了;


二、工程目錄下建立generator的配置文件

        1、在創建配置文件的資源文件下右擊,New->other  選擇 Mybatis Generator Configuration File 雙擊,創建 generatorConfig.xml;

        2、然後就是對 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="jdbc.properties" />
	<!-- 指定數據連接驅動jar地址 -->
	<classPathEntry location="${mysql.classPath}" />
	<!-- 一個數據庫一個context -->
	<context id="Mysql" targetRuntime="MyBatis3">
		<!-- 註釋 -->  
		<commentGenerator>
			<!-- 是否生成註釋代時間戳-->
			<property name="suppressDate" value="true" />
			<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
			<property name="suppressAllComments" value="true" />
		</commentGenerator>
		<!--數據庫鏈接URL,用戶名、密碼 -->
		<jdbcConnection driverClass="${driver}"
			connectionURL="${url}" userId="${username}"
			password="${password}">
		</jdbcConnection>
		<!-- 指定JDBC和Java類型轉換 -->  
		<javaTypeResolver>
			<!-- 是否使用bigDecimal, false可自動轉化以下類型(Long, Integer, Short, etc.) --> 
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>
		<!-- 生成實體類的包名地址 --> 
		<javaModelGenerator targetPackage="com.shayboke.user.pojo"
			targetProject="src/main/java">
			<!-- 自動爲每一個生成的類創建一個構造方法,構造方法包含了所有的field;而不是使用setter;-->
			<property name="constructorBased" value="false"/>
			<!-- 在targetPackage的基礎上,根據數據庫的schema再生成一層package,最終生成的類放在這個package下,默認爲false -->
			<property name="enableSubPackages" value="false" />
			<!-- 設置是否在getter方法中,對String類型字段調用trim()方法 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>
		<!-- 生成映射文件的包名和位置 -->
		<sqlMapGenerator targetPackage="com.shayboke.user.mapper"
			targetProject="src/main/java">
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>
		<!-- 生成DAO的包名和位置 -->
		<javaClientGenerator type="XMLMAPPER"
			targetPackage="com.shayboke.user.dao" targetProject="src/main/java">
			<property name="enableSubPackages" value="false" />
		</javaClientGenerator>
		<!-- 要生成哪些表 -->
		<table tableName="t_user" domainObjectName="User"
			   enableCountByExample="false" enableUpdateByExample="false"
			   enableDeleteByExample="false" enableSelectByExample="false"
			   selectByExampleQueryId="false">
			<generatedKey column="id" sqlStatement="Mysql" identity="true" />	
		</table>
	</context>
</generatorConfiguration>









<!-- <generatorConfiguration > <context id="context1" > <jdbcConnection driverClass="???" 
	connectionURL="???" userId="???" password="???" /> <javaModelGenerator targetPackage="???" 
	targetProject="???" /> <sqlMapGenerator targetPackage="???" targetProject="???" 
	/> <javaClientGenerator targetPackage="???" targetProject="???" type="XMLMAPPER" 
	/> <table schema="???" tableName="???" > <columnOverride column="???" property="???" 
	/> </table> </context> </generatorConfiguration> -->


      3、運行,根據配置文件生成文件

      首先要引入 mybatis-generator-core-1.3.4的jar包

package com.shayboke.main;

import java.io.File;  
import java.io.IOException;  
import java.sql.SQLException;  
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.InvalidConfigurationException;  
import org.mybatis.generator.exception.XMLParserException;  
import org.mybatis.generator.internal.DefaultShellCallback;  


public class GenMain {
	
	public static void main(String[] args) {
		
		 List<String> warnings = new ArrayList<String>();  
	        boolean overwrite = true;  
	        String genCfg = "/generatorConfig.xml";  
	        File configFile = new File(GenMain.class.getResource(genCfg).getFile());  
	        ConfigurationParser cp = new ConfigurationParser(warnings);  
	        Configuration config = null;  
	        try {  
	            config = cp.parseConfiguration(configFile);  
	        } catch (IOException e) {  
	            e.printStackTrace();  
	        } catch (XMLParserException e) {  
	            e.printStackTrace();  
	        }  
	        DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
	        MyBatisGenerator myBatisGenerator = null;  
	        try {  
	            myBatisGenerator = new MyBatisGenerator(config, callback, warnings);  
	        } catch (InvalidConfigurationException e) {  
	            e.printStackTrace();  
	        }  
	        try {  
	            myBatisGenerator.generate(null);  
	        } catch (SQLException e) {  
	            e.printStackTrace();  
	        } catch (IOException e) {  
	            e.printStackTrace();  
	        } catch (InterruptedException e) {  
	            e.printStackTrace();  
	        }  
		
		
	}

}


  關於上面的配置文檔說明可以查看我的另一篇博客文章:http://blog.csdn.net/shayboke/article/details/61202079

       



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章