MyBatis的BUG总结

1.Type interface com.yd.dao.UserMapper is not known to the MapperRegistry.

    <mappers>
        <!--每一个mybatis的xml都需要在核心配置文件中进行注册-->
        <mapper resource="com/yd/dao/UserMapper.xml"></mapper>
    </mappers>

需要在Mybatis的核心配置文件中,将所有的xml文件都进行注册。

2.java.lang.ExceptionInInitializerError

maven工程的资源过滤问题,maven项目默认不会将xml文件都编译。

手动配置资源过滤即可。

<!--在build中配置resources,来防止我们资源导出失败的问题-->
<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>true</filtering>
        </resource>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

 3.Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <!--导入DJBC驱动-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <!--连接数据库URL-->
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
                <!--配置用户名-->
                <property name="username" value="root"/>
                <!--配置密码-->
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>

注意配置文件中的 数据库连接URL 最好别瞎写配置参数。

修改成如下代码即可。

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <!--导入DJBC驱动-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <!--连接数据库URL-->
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
                <!--配置用户名-->
                <property name="username" value="root"/>
                <!--配置密码-->
                <property name="password" value="root"/>
            </dataSource>
        </environment>

猜你喜欢

转载自www.cnblogs.com/chao666/p/12822428.html