使用mybatis-generator快速生成代码

mybatis-generator是一个可以在使用mybatis框架时很方便的自动生成model,mapper,dao的工具,它可以大大的节省我们的开发时间,今天自己在搭建项目的时候研究了下,下面把自己的配置过程记录下来:

本人是使用maven构建的项目,开发工具使用的是IDEA

1.在pom.xml中添加依赖

        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.2</version>
        </dependency>

2.在build的plugins添加以下内容

<plugin>
	<groupId>org.mybatis.generator</groupId>
	<artifactId>mybatis-generator-maven-plugin</artifactId>
	<version>1.3.2</version>
	<configuration>
		<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
		<verbose>true</verbose>
		<overwrite>true</overwrite>
	</configuration>
	<dependencies>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.39</version>
		</dependency>
	</dependencies>
</plugin>

3.在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>
    <context id="my">
        <!--   mysql数据库连接的参数     -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/mango"
                        userId="****" password="******" />
        <!-- 配置model实体类文件的位置 -->
        <javaModelGenerator targetPackage="com.levy.mango.model"
                            targetProject="D:/develop/java/workspace/mango/src/main/java">
            <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package,最终生成的类放在这个package下,默认为false -->
            <property name="enableSubpackages" value="true"/>
            <!-- 设置是否在getter方法中,对String类型字段调用trim()方法 -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成mapper.xml配置文件位置 -->
        <sqlMapGenerator targetPackage="com.levy.mango.sqlmap"
                         targetProject="D:/develop/java/workspace/mango/src/main/java">
            <property name="enableSubpackages" value="true"/>
        </sqlMapGenerator>
        <!-- 生成mapper接口文件位置 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.levy.mango.mapper"
                             targetProject="D:/develop/java/workspace/mango/src/main/java">
            <property name="enableSubpackages" value="true"/>
        </javaClientGenerator>
        <!-- 需要生成的实体类对应的表名,每个table对应一个表,我的是两个这里就是配置两个 -->
        <!-- tableName:数据库表名,domainObjectName:生成的对应实体类的名称 -->
        <!-- 需要生成的实体类对应的表名,多个实体类复制多份该配置即可 -->
        <!-- enableCountByExample:指定是否生成动态查询总条数语句(用于分页的总条数查询) -->
        <!-- enableUpdateByExample:指定是否生成动态修改语句(只修改对象中不为空的属性) -->
        <!-- enableDeleteByExample:指定是否生成动态删除语句 -->
        <!-- enableSelectByExample:指定是否生成动态查询语句 -->
        <table tableName="sys_user" domainObjectName="SysUser"
                <!-- 指定是否生成动态查询总条数语句(用于分页的总条数查询) -->
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false" />
        <table tableName="sys_user_role" domainObjectName="SysUserRole"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false" />
    </context>
</generatorConfiguration>

4.使用命令运行生成代码:

在Idea右侧点击maven,点击plugins,找到mybatis-generator,展开选项,双击运行。

(ecplise中运行方法:,右击工程,找到maven=>maven build,添加以下命令:mybatis-generator:generate)

5.运行后可以在控制台看到相应的生成对应表数据的信息。具体对于mybatis-generator的详细使用可以参照此博客:https://blog.csdn.net/testcs_dn/article/details/77881776

猜你喜欢

转载自blog.csdn.net/LSW_JAVADP/article/details/104010955