天天看点

1. Mybatis入门程序提示找不到XxxDao.xml配置文件

  • 【问题】Mybatis入门程序提示找不到XxxDao.xml配置文件

    【解决方案】resources/XxxMapper.xml配置文件所在的包必须与java/XxxMapper.java所在的包结构相同

    注意:在resources中创建文件夹的时候只能用dictionary,此时需要一级一级创建,否则创建出来的是一级文件夹

    packging创建时: com.hqing.dao是三级结构

    dictionary创建时: com.hqing.dao是一级结构

  • Mybatis环境搭建:

    ① 创建工程,添加依赖

<dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.5</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.12</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
        </dependency>
           

② 创建实体类和dao接口

③ 创建Mybatis主配置文件 SqlMapConfig.xml

添加约束条件—

configuration

配置mysql环境— 指定映射配置文件位置(每个dao独立的配置文件)

<?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">
<!-- Mybatis主配置文件-->
<configuration>
    <environments default="mysql">
        <environment id="mysql">
            <!--配置事务类型-->
            <transactionManager type="JDBC"></transactionManager>
            <!--配置数据源(连接池)-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/hiqing1_demo"/>
                <property name="username" value="。。。。"/>
                <property name="password" value="。。。。。。"/>
            </dataSource>
        </environment>
    </environments>
    
    <!-- 指定映射配置文件的位置(每个独立mapper的配置文件)-->
    <mappers>
        <mapper resource="com/september/dao/IUserDao.xml"></mapper>
    </mappers>
</configuration>
           

④ 创建映射配置文件IUserDao.xml

<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.september.dao.IUserDao">
    <!--配置查询所有-->
    <select id="findAll" resultType="com.september.domain.User">
        select * from user
    </select>
</mapper>
           

– mybatis的映射配置文件位置必须和dao接口的包结构相同

– 映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名

– 映射配置文件的操作配置(select),id属性的取值必须是dao接口的方法名

– 在映射配置中告知mybatis要封装到哪个实体类中(resultType指定实体类的全限定类名)