天天看點

mybatis筆記1一、SqlSessionFactory

Mybatis源碼學習

  • 一、SqlSessionFactory
    • SqlSession
      • getMapper

一、SqlSessionFactory

SqlSessionFcatory建構過程
           
//建立私有靜态的引用,確定該引用隻會建立一個且不能被外部直接修改
    public static SqlSessionFactory sqlSessionFactory=null;
    //使用靜态代碼塊,以保證該部分代碼在類加載的同時就能首先被加載
    static {
        try {
            //以輸入流的形式讀取配置檔案
            InputStream inputStream= Resources.getResourceAsStream("mybatis-config.xml");
            //将工廠類的引用指向由SqlSessionBuilder類對象調用build(配置輸入流)方法建立的SqlSession工廠類對象
            sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
           
mybatis筆記1一、SqlSessionFactory

SqlSession

//擷取SqlSession對象
    public static SqlSession createSqlSession(){
        return sqlSessionFactory.openSession();
    }
           
mybatis筆記1一、SqlSessionFactory

讀取XML -> 建構XML到Mapper映射 ->jdbc互動生産傳回值

getMapper

ArchiveMapper mapper = openSession.getMapper(ArchiveMapper.class);
int addOne = mapper.addOne(archive);
           
mybatis筆記1一、SqlSessionFactory
ssm

繼續閱讀