mybatis generator入门, mybatis generator使用

  • 简介:
    mybatis generator是什么?简单来说,项目中使用mybatis,需要对应数据库表结构,写很多的实体类,如果字段很多,再加上表字段有下划线,各种copy,各种修改,还要添加注释,很烦人.然后还要写很多的基本CRUD,那就更烦人了,mybatis generator的出现就是帮我们解决这些烦人的问题,通过简单的配置,生成好实体类,dao接口,mapper.xml.

  • 使用:
    很久以前用过mybatis generator了,当时只是随便一用,没有留下什么笔记,如今博客刚搬到oschina.net,以前的博文没有整理好,于是就先写一篇mybatis generator的入门资料吧,撑撑场面.适合刚入门学习.后续补上mybatis generator深入一点的资料. 下面我们进入正题,网上有一部分帖子介绍的是下载jar包,然后在命令行里通过 java -jar 命令执行生成实体,xml,接口.我个人不喜欢使用这种方式,因为这样不利于保管这个工具,个人喜欢再IDE里来做这件事情,mybatis generator官方提供了5种方式: 1 命令行, 2 ANT, 3 maven插件, 4 java代码,5 eclipse.其中我个人比较喜欢java代码的方式. 这样把写好的工程保存再idea的工作目录里,需要的时候打开idea,一运行就ok.而且修改generatorConfig.xml非常方便,直观.下面我们就来开始基本的入门:

  1. 创建一个maven工程,在pom.xml中加入:
		<dependency>
			<groupId>org.mybatis.generator</groupId>
			<artifactId>mybatis-generator-core</artifactId>
			<version>1.3.7</version>
			</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>8.0.12</version>
		</dependency>
	ps: 这里mysql驱动版本根据你自己的情况调整.
  1. 创建一个Run类 :
package com.jonyonn;
        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;
        import java.io.File;
        import java.io.IOException;
        import java.sql.SQLException;
        import java.util.ArrayList;
        import java.util.List;

		public class Run {

    		public static void main(String[] args) throws Exception {
				List<String> warnings = new ArrayList<String>();
				String path = Run.class.getResource("/").getPath();
				File configFile = new File(path + "generatorConfig.xml");
				ConfigurationParser cp = new ConfigurationParser(warnings);
				Configuration config = cp.parseConfiguration(configFile);
				//小心,这里是覆盖以前生成的,如果你有修改以前的,注意换路径生成
				boolean overwrite = true;
				DefaultShellCallback callback = new DefaultShellCallback(overwrite);
				MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
				myBatisGenerator.generate(null);
    		}
		}

3.在src/main/resources下创建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>

		<!-- <classPathEntry location="/ProgramFiles/IBM/SQLLIB/java/db2java.zip" /> maven的pom中有mysql驱动jar了 -->
		<context id="mysql" targetRuntime="MyBatis3">
			<commentGenerator>
				<property name="suppressDate" value="true"/> <!--数据库注释-->
				<property name="suppressAllComments" value="false"/>
				<property name="addRemarkComments" value="true"/>
			</commentGenerator>
			<!--数据库连接信息-->
			<jdbcConnection driverClass="com.mysql.jdbc.Driver"
							connectionURL="jdbc:mysql://127.0.0.1:3306/test"
							userId="yonn"
							password="123456"></jdbcConnection>
			<javaTypeResolver>
				<!--官方解释:默认的Java Type Resolver尝试通过替换Integral类型(Long,Integer,Short等).-->
				<property name="forceBigDecimals" value="false"/>
			</javaTypeResolver>
			<!--实体生成路径和Package路径-->
			<javaModelGenerator targetPackage="com.jonyonn.model" targetProject="src/main/java">
				<property name="enableSubPackages" value="true"/>
				<property name="trimStrings" value="true"/>
			</javaModelGenerator>
			<!--mapper生成路径和Package路径-->
			<sqlMapGenerator targetPackage="com.jonyonn.mapper" targetProject="src/main/java">
				<property name="enableSubPackages" value="true"/>
			</sqlMapGenerator>
			<!--接口成路径和Package路径-->
			<javaClientGenerator type="XMLMAPPER" targetPackage="com.jonyonn.dao" targetProject="src/main/java">
				<property name="enableSubPackages" value="true"/>
			</javaClientGenerator>
			<!--表映射-->
			<table tableName="test" domainObjectName="Test" enableCountByExample="false" enableUpdateByExample="false"
				   enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
		</context>
	</generatorConfiguration>

4.完成,这样一个基本的使用就完成,当然,他并不是这么简单,在generatorConfig.xml中有很多元素可以设置,在这里我并不打算全部列出来,当然我也是从官方网站去复制.我是希望大家都要有探索精神,当你看完入门篇以后,可以自己去官网看看更多的功能,有些或许对你有用,你如你兴趣很浓,可以阅读源码,了解原理,修改或者增加功能.

源码地址: https://github.com/mybatis/generator
mybatis generator官方文档地址: http://www.mybatis.org/generator/index.html

转载于:https://my.oschina.net/jonyonn/blog/2223140

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值