Mybatis-Mybatis入门之使用配置文件

Mybatis概述

持久层框架
使用ORM思想实现了结果集的封装
ORM:Object Relational Mapping 对象关系映射
简单的说:就是把数据库表和实体类以及实体类的属性对应起来,让我们可以操作实体类就实现操作数据库类

第一步:导入坐标
 <dependencies>
        <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.6</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.22</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
            <scope>test</scope>
        </dependency>

    </dependencies>
第二步:创建实体类以及DAO的接口
第三步:创建Mybatis的主配置文件

SqlMapConfig.xml

`在这里插<?xml version="1.0" encoding="UTF-8" ?>

入代码片`
第四步:创建映射配置文件

UAccountDao.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.itheima.dao.IAccountDao">
    <!--配置查询所有 resultType告诉mybatis要封装的实体类-->
    <select id="findAll" resultType="com.itheima.domain.Account">
        select * from account
    </select>
</mapper>

注意:
1.mybatis的映射配置文件位置必须和dao接口的包结果相同
2.映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名
3.映射配置文件的操作配置(select),id属性的取值必须是dao接口的方法名
遵从以上三点后,就无须再写dao的实现类

第五步:使用mybatis
package com.itheima.test;

import com.itheima.dao.IAccountDao;
import com.itheima.domain.Account;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.InputStream;
import java.util.List;

public class MybatisTest {
    
    

    public static void main(String[] args) throws Exception {
    
    
        //1.读取配置文件
        InputStream in= Resources.getResourceAsStream("SqlMapConfig.xml");
        //2.创建SqlSessionFactory工厂
        SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
        SqlSessionFactory factory=builder.build(in);
        //3.使用工厂生成SqlSession对象
        SqlSession session=factory.openSession();
        //4.使用SqlSession创建Dao接口的代理对象
        IAccountDao accountDao=session.getMapper(IAccountDao.class);
        //5.使用代理对象执行方法
        List<Account> accounts=accountDao.findAll();
        for(Account account:accounts){
    
    
            System.out.println(account);
        }
        //6.释放资源
        session.close();

    }
}

猜你喜欢

转载自blog.csdn.net/ljsykf/article/details/111779482