搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 全栈CV > Mybatis官方提供逆向工程 Mybatis generator

Mybatis官方提供逆向工程 Mybatis generator

全栈CV 2018-06-28

Mybaits generator

Mybaits generator是Mybatis官方提供逆向工程,可以针对单表自动生成Mybatis执行所需要的代码,如mapper.java、mapper.xml、pojo。

先给出官方wiki链接:http://www.mybatis.org/generator/

这是说一种使用方法

1、下载所需要的jar包

2、配置xml文件

这里贴一个例子以供参考

<!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://localhost:3306/databases" userId="root" password="1234">
		</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.test.pojo" targetProject=".\src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
			<!-- 从数据库返回的值被清理前后的空格 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>
		<!-- targetProject:mapper映射文件生成的位置 -->
		<sqlMapGenerator targetPackage="com.test.mapper" targetProject=".\src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>
		<!-- targetPackage:mapper接口生成的位置 -->
		<javaClientGenerator type="XMLMAPPER" targetPackage="com.test.mapper" targetProject=".\src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
		</javaClientGenerator>
		<!-- 指定数据库表 -->
		<table schema="" tableName="table1"></table>
		<table schema="" tableName="table2"></table>
	</context></generatorConfiguration>

看注释,将上面xml文件中的一些属性改成你自己的即可。

3、写个工具类试一下

配置好了xml,写个测试类试一下

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();
	}
	
}

}

执行main方法,如果xml中的属性无误的话,就会在你指定的位置生成以所需要的类和映射文件。

小技巧:

1、有时候路径会是个头疼的问题,我们可以用一个单独的java项目来使用逆向工程,然后再把生成的类和映射文件拷贝到相应的位置即可。 2、可以封装一个jar包,每次只要修改xml文件,然后使用jar命令执行jar包即可。

java -jar xxxx.jar


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《Mybatis官方提供逆向工程 Mybatis generator》的版权归原作者「全栈CV」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注全栈CV微信公众号

全栈CV微信公众号:quanzhancv

全栈CV

手机扫描上方二维码即可关注全栈CV微信公众号

全栈CV最新文章

精品公众号随机推荐