Mybatis插件Generator的使用注意点

这篇文档其实说的很详细了,这里只是作为补充。

1.在pom文件中的properties节点内加入以下信息

        <!--  MyBatis Generator  -->
        <!--  Java接口和实体类  -->
        <targetJavaProject>${basedir}/src/main/java</targetJavaProject>
        <!--生成mapper接口的输出目录-->
        <targetMapperPackage>tk.mybatis.mapper.mapper</targetMapperPackage>
        <!--生成model实体类的输出目录-->
        <targetModelPackage>tk.mybatis.mapper.model</targetModelPackage>
        <!--  XML生成路径  -->
        
     <targetResourcesProject>${basedir}/src/main/resources</targetResourcesProject>
        <targetXMLPackage>mapper</targetXMLPackage>
        <!--  依赖版本  -->
        <mapper.version>4.0.4</mapper.version>
        <mysql.version>5.1.31</mysql.version>

2.在pom文件中plugin插件位置(),如下:

<build>
   <pluginManagement>
      <plugins>
          <plugin>
           插件1
          </plugin>
          <plugin>
           插件2
          </plugin>
          ....
       </plugins>
    </pluginManagement>
</build>

在<plugins></plugins>内添加如下内容

<plugin>
                    <groupId>org.mybatis.generator</groupId>
                    <artifactId>mybatis-generator-maven-plugin</artifactId>
                    <version>1.3.7</version>
              <configuration>
                        <configurationFile>${basedir}/src/main/resources/generatorConfig.xml
                        </configurationFile>
                        <overwrite>true</overwrite>
                        <verbose>true</verbose>
              </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>mysql</groupId>
                            <artifactId>mysql-connector-java</artifactId>
                            <version>${mysql.version}</version>
                        </dependency>
                        <dependency>
                            <groupId>tk.mybatis</groupId>
                            <artifactId>mapper</artifactId>
                            <version>${mapper.version}</version>
                        </dependency>
                    </dependencies>
 </plugin>

这里提醒以下:configurationFile中配置的路径一定要对,否则maven编译的时候会报错,can not resolve entry class类似于这样的错误。还有这里的src/main/resources一定要是resources我这里出现的情况是web工程里的名字是resource文件夹,我这里配置了src/main/resource还是编译不通过。遂改为resources,如果你没出现这种情况,则可以忽略。

3.书写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="config.properties"/>

    <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>

        <plugin type="${mapper.plugin}">
            <property name="mappers" value="${mapper.Mapper}"/>
        </plugin>

        <jdbcConnection driverClass="${jdbc.driverClass}"
                        connectionURL="${jdbc.url}"
                        userId="${jdbc.user}"
                        password="${jdbc.password}">
        </jdbcConnection>

        <javaModelGenerator targetPackage="${targetModelPackage}" targetProject="${targetJavaProject}"/>

        <sqlMapGenerator targetPackage="${targetXMLPackage}"  targetProject="${targetResourcesProject}"/>

        <javaClientGenerator targetPackage="${targetMapperPackage}" targetProject="${targetJavaProject}" type="XMLMAPPER" />

        <!--这里的tableName可以指定,也可以使用"%",意思对当前数据库的所有表执行-->
        <table tableName="user" >
            <generatedKey column="id" sqlStatement="Mysql" identity="true"/>
        </table>
    </context>
</generatorConfiguration>

4.书写config.properties文件,和第三步文件相关联

# 数据库配置
jdbc.driverClass = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/ssm
jdbc.user = root
jdbc.password =12345

#c3p0
jdbc.maxPoolSize=50
jdbc.minPoolSize=10
jdbc.maxStatements=100
jdbc.testConnection=true

# 通用Mapper配置
mapper.plugin = tk.mybatis.mapper.generator.MapperPlugin
#mapper.Mapper = tk.mybatis.mapper.common.Mapper
#这里我们不用它默认提供的,而是我们自己自定义的。
mapper.Mapper = upload.mapper.CustomMapper

这里要注意,我这里Mapper没有使用tk默认的,而是我自己自定义的,因为我自定义的Mapper继承了它的Mapper,也是因为我使用自定义的Mapper作为我的通用Mapper的父类,所以这样配置.如果你没有自定义,使用tk提供的默认的即可。

5.执行maven编译命令。

提示:如果你在pom文件中配置完plugin,idea对应的maven视图中会出现你的plugin名字

就是在这个下面,但是我这里是没有显示的。我还没找到原因,如果你找到原因了,可以留言评论,多谢。

如果上述位置有,你只需要双击就会自定执行maven编译

如果没有,则在配置服务器那里新建一个maven,如图

注意:这里在idea执行命令时,上述作者的编译命令为mvn mybatis-generator:generate,这里不需要mvn,把mvn去掉执行,否则会报错。

配置完了之后apply,回到主页面点击执行按钮即可。对了,maven编译之前一定要把对应的数据库打开,mysql/oracle。否则会报Communition link false 的错误。

PS:直接看文章开始的链接文章即可。本篇博文只是作为补充和个人记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值