最近想自己搭建一个项目,运用springboot+mybitis这一套来搭建,想到用mybitis Generator这个插件来自动生成所有表的信息(Entity mapper xml)等文件。就就遇到一个问题,总是将这个连接的所有表的信息(包含其他库的表)全部给生成出来了----这明显不是我所想要的哇。我只想要我自己这个数据库的表的信息,其它的全部多余啊。就一直去查,主要是这个问题都不好找,也不好描述。看了官方文档,由于本***英语水平有限,看官方文档确实难受,然后最后找出原因了。

居然是mysql驱动版本太高了。

突然就有种日了。。。的感觉

解决办法:在generatorConfig.xml这个配置文件钟添加  <property name="nullCatalogMeansCurrent" value="true" />
    <!--这里填写自己的数据库链接-->
    <jdbcConnection driverClass="${spring.datasource.driverClassName}"
                    connectionURL="${spring.datasource.url}"
                    userId="${spring.datasource.username}"
                    password="${spring.datasource.password}">
        <!--解决连接到别的数据库表问题-->
        <property name="nullCatalogMeansCurrent" value="true" />
    </jdbcConnection>

这样添加然后 一运行,卧槽 奇迹般的对了。

配置文件全部

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


    <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
        <!--这里修改成统一的Mapper父接口-->
        <property name="mappers" value="com.zhange.blog.dao.IMapperDao"/>
    </plugin>

    <!--这里填写自己的数据库链接-->
    <jdbcConnection driverClass="${spring.datasource.driverClassName}"
                    connectionURL="${spring.datasource.url}"
                    userId="${spring.datasource.username}"
                    password="${spring.datasource.password}">
        <!--解决连接到别的数据库表问题-->
        <property name="nullCatalogMeansCurrent" value="true" />
    </jdbcConnection>

    <!--这里填写生成的表实体类目录-->
    <javaModelGenerator targetPackage="com.zhange.blog.entity" targetProject="src/main/java"/>

    <!--这里填写生成的表xml目录-->
    <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"/>

    <!--这里填写生成的表mapper目录-->
    <javaClientGenerator targetPackage="com.zhange.blog.mapper" targetProject="src/main/java"
                         type="XMLMAPPER"/>

    <!--这里的%通配符表示库里面的所有表-->
    <table tableName="%">
        <!--mysql 配置-->
        <generatedKey column="id" sqlStatement="Mysql"/>
        <!--oracle 配置  identity="true" -->
        <!--<generatedKey column="id" sqlStatement="select SEQ_{1}.nextval from dual" identity="false" type="pre"/>-->
    </table>
</context>
</generatorconfiguration>

这样一天就