Result Maps collection already contains value for xxxMapper.BaseResultMap錯誤解決辦法


今天在用mybatis逆向工程時 碰到Result Maps collection already contains value for com.xxx.dao.tb_userMapper.BaseResultMap問題,哎   手爛     弄了幾個小時才弄好

解決方案:

方案1.最簡單的方法就是將逆向工程在eclipse中移除,然后在重新import這個逆向工程,然后生成mapper文件,原因: 因為之前如果生成過同一張表,逆向工程會再生成,導致內容重復,報該表錯誤.

方案2.改造Mybatis-generator插件     : 參考mybatis-generator重新生成代碼時的SQL映射文件覆蓋

方案3:

手寫文件放在src/main/resources/mybatis目錄中
    生成文件放在src/main/resources/mybatis-generator目錄中,這樣便於在生成之前手動刪除。
    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>
    <classPathEntry
        location="D:\Java\maven\repository\mysql\mysql-connector-java\5.1.31\mysql-connector-java-5.1.31.jar" />
    <context id="aisSnsTables" targetRuntime="MyBatis3">
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
        <plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin" />
        <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
        <!-- 抑制生成代碼的注釋 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://localhost:3306/liying" userId="root"
            password="root@" />
        <javaModelGenerator targetPackage="com.uni2uni.model"
            targetProject="src/main/java" />
        <sqlMapGenerator targetPackage="/"
            targetProject="src/main/resources/mybatis-generator" />
        <javaClientGenerator targetPackage="com.uni2uni.dao"
            targetProject="src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <table schema="liying" tableName="tb_user" domainObjectName="tb_user" />
        <table schema="liying" tableName="tb_admin" domainObjectName="tb_admin" />
        <table schema="liying" tableName="tb_role" domainObjectName="tb_role" />
        <table schema="liying" tableName="tb_resource" domainObjectName="tb_resource" />
        <table schema="liying" tableName="tb_user_role" domainObjectName="tb_user_role" />
        <table schema="liying" tableName="tb_role_resource" domainObjectName="tb_role_resource" />
        <table schema="liying" tableName="tb_category" domainObjectName="tb_category"/>
        <table schema="liying" tableName="tb_shop" domainObjectName="tb_shop"/>
    </context>
</generatorConfiguration>

    mybatis.xml配置:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <typeAliases>
        <typeAlias alias="user" type="com.uni2uni.model.tb_user" />
        <typeAlias alias="admin" type="com.uni2uni.model.tb_admin" />
        <typeAlias alias="role" type="com.uni2uni.model.tb_role" />
        <typeAlias alias="resource" type="com.uni2uni.model.tb_resource" />
        <typeAlias alias="category" type="com.uni2uni.model.tb_category" />
        <typeAlias alias="shop" type="com.uni2uni.model.tb_shop" />
    </typeAliases>
    <plugins>
        <plugin
            interceptor="com.github.miemiedev.mybatis.paginator.OffsetLimitInterceptor">
            <property name="dialectClass"
                value="com.github.miemiedev.mybatis.paginator.dialect.MySQLDialect" />
        </plugin>
    </plugins>
    <mappers>
        <mapper resource="mybatis/tb_user.xml" />
        <mapper resource="mybatis-generator/tb_userMapper.xml" />
        <mapper resource="mybatis/tb_admin.xml" />
        <mapper resource="mybatis-generator/tb_adminMapper.xml" />
        <mapper resource="mybatis/tb_role.xml" />
        <mapper resource="mybatis-generator/tb_roleMapper.xml" />
        <mapper resource="mybatis/tb_resource.xml" />
        <mapper resource="mybatis-generator/tb_resourceMapper.xml" />
        <mapper resource="mybatis/tb_user_role.xml" />
        <mapper resource="mybatis-generator/tb_user_roleMapper.xml" />
        <mapper resource="mybatis/tb_role_resource.xml" />
        <mapper resource="mybatis-generator/tb_role_resourceMapper.xml" />
        <mapper resource="mybatis/tb_category.xml" />
        <mapper resource="mybatis-generator/tb_categoryMapper.xml" />
        <mapper resource="mybatis/tb_shop.xml" />
        <mapper resource="mybatis-generator/tb_shopMapper.xml" />
    </mappers>

</configuration>


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com