1. 程式人生 > >MyBatis最初的程式解讀---API

MyBatis最初的程式解讀---API

API詳解:
        
    * 執行緒安全問題出現的條件
        (1) 只有單例物件才可能出現執行緒安全問題
        (2) 多執行緒環境,即多個執行緒會共享這個單例物件
        (3) 單例物件中具有可修改的成員變數
                
    1.SqlSession介面
        SqlSession介面的實現類是:org.apache.ibatis.session.defaults.DefaultSqlSession. 該物件是多例的.
    
    2. SqlSessionFactory介面
        SqlSessionFactory介面的實現類是: org.apache.ibatis.session.defaults.DefaultSqlSessionFactory.
        這個物件的作用就是為了建立SqlSession物件,而由於SqlSession物件是多例的,每建立一次SqlSession物件,都需要一個
        SqlSessionFactory物件去建立.但SqlSessionFactory物件是重量級元件,因為DefaultSqlSessionFactory類中
        不存在可能修改的成員變數,所以SqlSessionFactory物件可以定義為單例的,其生命週期與整個應用的相同.
        
    3.SqlSessionFactoryBuilder類
        該類物件的作用僅僅就是為了建立SqlSessionFactory物件,由於SqlSessionFactory是單例物件,
        SqlSessionFactoryBuilder物件就可以定義為一個區域性變數,SqlSessionFactory建立完畢,就可以銷燬了.