总结:使用MyBatis Generator时遇到的坑

1、什么是MyBatis Generator?

MyBatis Generator是一个能够用来生成Mybatis dao,entity,Mapper文件的一个工具,在项目的过程当中能够省去不少重复的工做,咱们只要在MyBatis Generator的配置文件中配置好要生成的表名与包名,而后运行一条命令就会生成一堆文件。java

为何要使用MyBatis Generator?


在使用MyBatis时,当表还比较少时,咱们能够手写与表操做相对应的dao、entity、mapper,可是随着表愈来愈多,手写重复的代码就显得有点浪费时间了,因此就是用MyBatis官方提供的插件MyBatis Generator来帮咱们自动生成文件、代码。mysql

关于如何使用MyBatis Generator,能够参考官方文档。在这里我主要讲一下本身在使用这个插件时遇到的一些坑。sql

使用MyBatis Generator时遇到了哪些坑?


一、在maven中引入MyBatis Generator插件时,maven中始终没法显示该插件

当时pom.xml文件中插件位置是这样子的:bash

<build>
        <pluginManagement>
            <plugins>
              <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
		<!-- MyBatis Generator插件 -->
               <plugin>
                    <groupId>org.mybatis.generator</groupId>
                    <artifactId>mybatis-generator-maven-plugin</artifactId>
                    <version>1.3.2</version>
                    <configuration>
                        <verbose>true</verbose>
                        <overwrite>true</overwrite>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
复制代码

这种状况下,MyBatis Generator插件始终没法在Maven中显示出来。解决方式:把MyBatis Generator放到跟pluginManagement同级别下就能够了。 代码以下:mybatis

<build>
        <pluginManagement>
            <plugins>
              <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <!-- mybatis generator插件, 注意不能放在pluginManagement里面,要跟它同级别 -->
		<plugins>
			<plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>
		</plugins>
    </build>
复制代码

二、在IDEA中建立generatorConfig.xml文件时,文件头报错:URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)

以下图所示: app

遇到这种状况不要慌,IDEA自己已经给咱们提供了解决方案: maven

因此咱们直接选择Fetch external resource就好了,若是不行,就选第二个Ignore external resource,我就是经过第二种方式解决的!工具

不过可能有的小伙伴会问,第三个选项呢?我没试过,我也不知道。-_-ui

三、mybatis-generator-maven-plugin:1.3.4:generate failed: Exception getting JDBC Driver

当配置文件的准备工做都作完后,开始运行插件时,内心祈祷要一切顺利呀,结果:我擦,仍是报错了!spa

经过错误提示信息咱们就知道,找不到JDBC的驱动包,此时有两个解决方式:

(1)在plugin文件中单独配置MySQL的驱动包

<plugin>
    <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.2</version>
            <configuration>
                <verbose>true</verbose>
                <overwrite>true</overwrite>
            </configuration>
        <!-- 在plugin中单独依赖MySQL驱动包,解决找不到JDBC Driver的问题  -->
        <dependencies>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.43</version>
            </dependency> 
        </dependencies>
            </plugin>
复制代码

(2) 在generatorConfig.xml中设置驱动包的location

<classPathEntry location="驱动包文件位置"/>
复制代码

结束语:其实不少问题在发生的时候,IDE就已经在控制台给了咱们提示,因此当咱们遇到问题时,不要慌,认真看异常提示,耐心一点,问题总会被解决的!解决不了,还有Google呢。^_^

相关文章
相关标签/搜索