天天看點

第一個Mybatis!



第一個MyBatis程式

1.  定義ID不要定義int,定義成包裝類型interger,因為這樣可以進行為null的判斷。

2.  為什麼實體類中建構一個無參構造器?

             試想一下,假如沒有無參構造器,每new一個對象都要傳入參數,并且規定類必須有屬性,這樣降低了類的靈活性,也可以想一下,方法裡面不也是可以不傳入參數的麼。

3.  定義一個代參構造器,為什麼要構造一個無參構造器?(shift+alt+S)

             a.  若目前實體類有可能作父類,那麼建立子類對象時,JVM會調用其父類的無參構造器。

             b.  若使用了Spring架構,那麼要求Spring容器所管理的類,必須要有無參構造器。

4.  為什XML中需要一個限制檔案DTD或者XXD檔案?

           為多用的标簽需要去限制,隻有這樣才不會亂來。無規矩不成方圓嘛!

5.  代碼不是自上而下的打代碼,而是應該用到這個代碼了,我們再去寫!

6.  為什麼不同的日志技術可以運用到架構中?

           其中一個架構日志擴充卡Slf4j。

7.  工具類中的異常一般是要抛出給調用者的,不應try catch。

上次問題遺留解決:1.inputstream為什麼不用關閉?

                              因為TRUE與false,因為SqlSessionFactorybuilder的方法自帶有輸入流的關閉!

                           2.關于上次對SqlSession不太了解?然後為什麼SQLSession為什麼不需要復原?

                              我認為它在堆記憶體中的一塊空間,其放着Configuration、executor、dirtyautoCommit成員變量值。