一、不用純jdbc的原因,即缺點。
1、數據庫理解,使用時創(chuàng)建,不用時釋放,會對數據庫進行頻繁的鏈接開啟和關閉,造成數據庫的資源浪費,影響數據庫的性能。
設想:使用數據庫的連接池。
2、將sql語句硬編碼到java代碼中,不利于系統(tǒng)維護。
設想:將sql放到配置文件中。
3、向preparedstatement中設置參數,對占位符位置和設置參數值,硬編碼在Java代碼中,不利于系統(tǒng)維護。
設想:將sql語句及占位符配置到xml中。
4、從resultset中便利結果集時,存在硬編碼,將獲取表的字段進行硬編碼,不利于系統(tǒng)維護。
設想;將結果集,自動映射成Java對象
二、mybatis是什么
1、mybatis讓程序員將主要精力放在sql上,通過mybatis提供的映射方式,自由靈活生成滿足需要的sql語句。
2、mybatis可以將輸入參數自動映射,可以將結果集映射為Java對象,并且sql相對自由,不想hibernate那樣看不到sql。
3、mybatis需要一個SqlMapConfig.xml,它是mybatis的全局配置文件,其中包括了數據庫連接池,配置了數據源、事務等。
4、還需要一個SQLMap配置文件,它配置了映射關系(配置sql語句),sql語句要寫在這個配置文件里,其實就是配置了一個statement,避免了sql語句硬編碼到Java源文件中。后面會詳細介紹這個配置文件的使用。
5、SqlsessionFactory是mybatis中生成Sqlsession的工廠,操作數據庫。
mybatis框架結構是把sql語句的映射文件加載到SQLMapConfig中去,然后SqlSessionFactory加載SQLMapConfig后生成SQLSession,SQLSession來執(zhí)行Statement。
三、構建一個mybatis工程。
1.所需要的jar包