以前一直用mybatis都是手动写各种文件..居然不知道还能自动生成..
进入正题.
首先需要两个jar包. 我这边下载的是mybatis-generator-core-1.3.2.jar 和 mysql-connector-java-5.1.15-bin.jar
把这两个jar包放在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>
<!-- <properties resource="database-config.properties" /> -->
<!-- 如果命令行运行,则需要加入此jar,放到跟 mybatis-generator-core-1.3.2.jar一起 -->
<!-- 如果通过程序,则用WalletMyBatisGenerator生成,不用配置 classPathEntry -->
<classPathEntry location="mysql-connector-java-5.1.15-bin.jar" />
<context id="context1" targetRuntime="MyBatis3">
<plugin type="org.mybatis.generator.plugins.CaseInsensitiveLikePlugin" />
<plugin type="org.mybatis.generator.plugins.RenameExampleClassPlugin">
<property name="searchString" value="Example$" />
<property name="replaceString" value="Criteria" />
</plugin>
<commentGenerator>
<!-- 删除代码中带有 代码生成器的注释信息 -->
<property name="suppressAllComments" value="true" />
<property name="suppressDate" value="true" />
</commentGenerator>
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/xingdb" userId="wuxing"
password="123456" />
<javaModelGenerator targetPackage="com.wuxing.entity"
targetProject="../java" />
<sqlMapGenerator targetPackage="com.wuxing.dao.impl.mapper"
targetProject="." />
<javaClientGenerator targetPackage="com.wuxing.dao.mapper"
targetProject="../java" type="XMLMAPPER" />
<table tableName="xing_table" schema="xingdb"
enableSelectByExample="false" enableDeleteByExample="false"
enableCountByExample="false" enableUpdateByExample="fasle">
<property name="useActualColumnNames" value="true"/>
</table>
</context>
</generatorConfiguration>
通过jdbcConnection 进行数据库的链接
javaModelGenerator进行entity的创建
javaClientGenerator进行mapper接口的创建
sqlMapGenerator进行mapper.xml的创建
然后在table中说明表和数据库的名称..
这样的话.配置就完成了.
然后打开cmd, doc环境.切到resoures目录下.
输入 java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite
就可以在相应的包下面创建相应的文件.. 整体来说还是很简单的.
如果要在xml里写自己的映射..那就要在自动生成的代码后面添加..不能在前面.
在创建文件这一步..如果想用java代码创建的话.也是可以的.
package com.gionee.pay.wallet.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;
/**手工生成mybatis配置文件、models类、接口
* @author wuxing
*
*/
public class WalletMyBatisGenerator {
public static void main(String[] args) {
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;
try {
config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator;
try {
myBatisGenerator = new MyBatisGenerator(config, callback,
warnings);
myBatisGenerator.generate(null);
System.out.println("finished~~~~~~~~~~~~~");
} catch (Exception e) {
e.printStackTrace();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (XMLParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
虽然没有什么特别的技巧..但是对于开发来说可以省很多事..
对于提升开发速度很有帮助..给大家推荐一下.