3

我从命令行使用 MyBatis Generator 1.3.1。我在文档中读到我需要为对象生成指定至少一个表,但我希望也许可以使用一些通配符并为一次生成的所有表提供映射器?我们不想使用 Hibernate,因为 MyBatis 似乎更好地处理数据库中的自定义类型。感谢您的帮助!

4

2 回答 2

3

您可以使用 SQL 通配符,即:

<table tableName="%">
    <property name="useActualColumnNames" value="true"/>
</table>
于 2013-10-09T11:40:24.033 回答
0

可以参考:链接

如果你使用 MySQL,关键点是:
<table schema="dbName" tableName="%"</table>和 参考:http ://www.mybatis.org/generator/usage/intro.html
<property name="nullCatalogMeansCurrent" value="true" />

像这样的设置:

<generatorConfiguration>
<properties resource="mybatis-generator/generator.properties"></properties>
<classPathEntry location="${driverLocation}"/>
<context id="default" targetRuntime="MyBatis3">
    <property name="javaFileEncoding" value="UTF-8"/>
    <commentGenerator type="org.zhang.generator.MyCommentGenerator">
        <property name="suppressDate" value="true"/>
        <property name="suppressAllComments" value="true"/>
    </commentGenerator>

    <jdbcConnection
            driverClass="${driverClassName}"
            connectionURL="${url}"
            userId="${username}"
            password="${password}">
        <property name="nullCatalogMeansCurrent" value="true" />
    </jdbcConnection>

    <javaTypeResolver>
        <property name="forceBigDecimals" value="true"/>
    </javaTypeResolver>

    <javaModelGenerator targetPackage="com.entity" targetProject="src/main/java">

        <property name="enableSubPackages" value="true"/>
    </javaModelGenerator>


    <sqlMapGenerator targetPackage="daoMappers" targetProject="src/main/resources">
        <property name="enableSubPackages" value="true"/>
    </sqlMapGenerator>


    <javaClientGenerator targetPackage="com.dao" targetProject="src/main/java" type="XMLMAPPER">
        <property name="enableSubPackages" value="true"/>
    </javaClientGenerator>

    <table schema="dbName" tableName="%"
           enableSelectByPrimaryKey="true"
           enableCountByExample="false"
           enableUpdateByExample="false"
           enableDeleteByExample="false"
           enableSelectByExample="false"
           selectByExampleQueryId="false"
           enableDeleteByPrimaryKey="false"
           enableUpdateByPrimaryKey="false"
           enableInsert="false">

        <property name="useActualColumnNames" value="true"></property>
    </table>
</generatorConfiguration>
于 2018-09-01T15:57:57.727 回答