Mybatis源码分析(一):Mybatis执行流程

一、Mybatis使用示例
我们先先一个简单的例子,对Mybatis使用有一个直观的认识。
1.新建mybatis配置文件mybatis-config.xml





    
    
        
        
            
            
            
            
                
                
                
                
            
        
    
    
        
    

2.生成model文件User.java和配置文件UserMapper.xml

package last.soul.model;

import lombok.Data;
@Data
public class User {
    private Long id;
    private String name;
    private String nickName;
    private Integer age;
    private Byte sex;
}



  
    
    
    
    
    
  

  

3.编写测试代码UserTest.java

public class UserTest {
    @Test
    public void test() throws IOException {
        String resource = "file/mybatis-config.xml";
        // 读取配置文件
        InputStream inputStream = Resources.getResourceAsStream(resource);
        // 构建sqlSessionFactory
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        //获取sqlSession
        SqlSession sqlSession = sqlSessionFactory.openSession();

        //构建参数
        Map map=new HashMap<>();
        map.put("id",1);
        //执行sql,并返回结果
        User user=sqlSession.selectOne("last.soul.mapper.UserMapper.selectById",map);
        Assert.assertTrue(user.getId()==1);
    }
}

运行成功,由上面代码看出,Mybatis执行流程主要有以下几步:
1.读取配置文件。
2.构建sqlSessionFactory。
3.获取sqlSession。
4.执行sql,并返回结果。

二、Mybatis整体架构

Mybatis源码分析(一):Mybatis执行流程_第1张图片

Mybatis整体架构分三层,分别是基础支持层、核心处理层和接口层。上面的第1步属于基础支持层的资源加载模块,第2,3步属于接口层,第4步属于核心处理层。

后续的文章会详解每个模块。

你可能感兴趣的:(java)