使用MBG,怎么让自动生成的mapper接口文件里面的方法不要生成?


<?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="generator.properties"/>

    <context id="MySqlContext" targetRuntime="MyBatis3" defaultModelType="flat">
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>
        <property name="javaFileEncoding" value="UTF-8"/>

        <!-- 为模型生成序列化方法-->
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
        <!-- 为生成的Java模型创建一个toString方法 -->
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
        <!--生成mapper.xml时覆盖原文件-->
        <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" />
        <plugin type="util.EntityPlugin" />
        <plugin type="util.SpringDataJpaPlugin"/>
        <!--可以自定义生成model的代码注释-->


        <commentGenerator type="util.CommentGenerator">

            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="true"/>
            <property name="addRemarkComments" value="true"/>
        </commentGenerator>

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

            <property name="nullCatalogMeansCurrent" value="true" />
        </jdbcConnection>

        <javaModelGenerator targetPackage="model" targetProject="C:\Users\11600\Desktop\untitled4\SR2\src\main\java"/>

        <sqlMapGenerator targetPackage="mybatis.mapper" targetProject="C:\Users\11600\Desktop\untitled4\SR2\src\main\resources"/>

        <javaClientGenerator type="XMLMAPPER" targetPackage="model"
                             targetProject="C:\Users\11600\Desktop\untitled4\SR2\src\main\java"/>

        <table tableName="%" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false"
               enableSelectByExample="false" selectByExampleQueryId="false">

            <property name="useActualColumnNames" value="false"/>
            <property name="constructorBased" value="false"/>
            <generatedKey column="id" sqlStatement="JDBC" identity="true"/>
        </table>

    </context>
</generatorConfiguration>

这是我的MBG配置文件

img


这是运行后自动生成的mapper接口文件


    int deleteByPrimaryKey(Integer id);

    Json selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(Json record);

    int updateByPrimaryKey(Json record);

请问怎么让mapper接口文件里面的这些方法不要生成?{}只要空的

【以下回答由 GPT 生成】

要在使用MyBatis Generator生成mapper接口文件时避免生成一些方法,可以通过配置MyBatis Generator的<javaClientGenerator>标签下的<property>子标签来设置。具体步骤如下:

  1. 打开generatorConfig.xml文件。

  2. 找到<javaClientGenerator>标签,即Mapper接口生成器的配置块。

  3. <javaClientGenerator>标签下添加<property>子标签,设置suppressAllComments属性的值为true,表示禁止生成所有注解。

  4. 保存并关闭generatorConfig.xml文件。

  5. 运行MyBatis Generator生成代码。

以下是修改后的代码示例:

<?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="generator.properties"/>

    <context id="MySqlContext" targetRuntime="MyBatis3" defaultModelType="flat">
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>
        <property name="javaFileEncoding" value="UTF-8"/>

        <!-- 为模型生成序列化方法-->
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/>
        <!-- 为生成的Java模型创建一个toString方法 -->
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>

        <!--生成mapper.xml时覆盖原文件-->
        <plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" />
        <plugin type="util.EntityPlugin" />
        <plugin type="util.SpringDataJpaPlugin"/>
        <!--可以自定义生成model的代码注释-->

        <commentGenerator type="util.CommentGenerator">
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <!-- 配置禁止生成一些方法 -->
        <javaClientGenerator type="XMLMAPPER">
            <property name="suppressAllComments" value="true"/>
        </javaClientGenerator>
    </context>
</generatorConfiguration>

这样配置后,MyBatis Generator将不会在生成的mapper接口文件中包含任何方法。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^