MyBatis逆向工程使用详解

目录

一、逆向工程简介 

二、使用详解

1、下载依赖包

2、随意创建一个项目

3、generator文件

4、执行xml文件,生成代码


一、逆向工程简介 

   mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java、mapper.xml、pojo…),可以让程序员将更多的精力放在繁杂的业务逻辑上。

        企业实际开发中,常用的逆向工程方式:由数据库的表生成java代码。

二、使用详解

1、下载依赖包

mybatis的逆向工程需要两个依赖包:mybatis-generator-core-1.3.2.jar、mysql-connector-java-5.1.34.jar

一个是逆向工程的核心包,一个是mysql核心包。

1)下载逆向工程:https://github.com/mybatis/generator/releases

2)下载mysql核心包:https://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.34

2、随意创建一个项目

3、generator文件

<?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="D:\111coding\01working\00mybatisgenerator\generator\mybatis-generator-core-1.3.2.jar" /> <!-- 1 -->
	<classPathEntry location="D:\111coding\01working\00mybatisgenerator\generator\mysql-connector-java-5.1.34.jar" /> <!-- 1 -->
	<context id="DB2Tables" targetRuntime="MyBatis3">
		<commentGenerator>
			<!-- 是否去除自动生成的注释 -->
			<property name="suppressAllComments" value="false" />
		</commentGenerator>
		<!-- 数据库链接URL、用户名、密码 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
						connectionURL="jdbc:mysql://mysql-mysqlha-write.mysql.svc.cluster.local:3306/test?useUnicode=true&amp;characterEncoding=UTF8"
						userId="01"
						password="02">
		</jdbcConnection>
<!-- Oracle数据库
     <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>
		
		<!-- 生成模型的包名和位置 --> <!-- 3 -->
		<javaModelGenerator targetPackage="com.hanclouds.teamwork.model" targetProject=".\src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="true" />
			<!-- 从数据库返回的值被清理前后的空格 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>

		<!-- 生成的映射文件包名和位置 --> <!-- 4 -->
		<sqlMapGenerator targetPackage="com.hanclouds.teamwork.mapper" targetProject=".\src">
			<property name="enableSubPackages" value="true" />
		</sqlMapGenerator>

		<!-- 生成DAO的包名和位置 --> <!-- 5 -->
		<javaClientGenerator type="XMLMAPPER" targetPackage="com.hanclouds.teamwork.dao" targetProject=".\src">
			<property name="enableSubPackages" value="true" />
		</javaClientGenerator>

		<!-- 要生成那些表(更改tableName和domainObjectName就可以) --><!-- 6 -->
		<table tableName="share" domainObjectName="Share" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true" />
		<table tableName="weekly" domainObjectName="Weekly" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true" />
	</context>
</generatorConfiguration>

4、执行xml文件,生成代码

01

02

进入相关的目录,执行下面的语句即可 

java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite

另外推荐大家阅读这篇博文:MyBatis逆向工程代码的生成以及使用详解(持续更新)

发布了101 篇原创文章 · 获赞 176 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_36095679/article/details/99638967