一、不用純jdbc的原因,即缺點。
1、數(shù)據(jù)庫理解,使用時創(chuàng)建,不用時釋放,會對數(shù)據(jù)庫進行頻繁的鏈接開啟和關(guān)閉,造成數(shù)據(jù)庫的資源浪費,影響數(shù)據(jù)庫的性能。
設(shè)想:使用數(shù)據(jù)庫的連接池。
2、將sql語句硬編碼到j(luò)ava代碼中,不利于系統(tǒng)維護。
設(shè)想:將sql放到配置文件中。
3、向preparedstatement中設(shè)置參數(shù),對占位符位置和設(shè)置參數(shù)值,硬編碼在Java代碼中,不利于系統(tǒng)維護。
設(shè)想:將sql語句及占位符配置到xml中。
4、從resultset中便利結(jié)果集時,存在硬編碼,將獲取表的字段進行硬編碼,不利于系統(tǒng)維護。
設(shè)想;將結(jié)果集,自動映射成Java對象
二、mybatis是什么
1、mybatis讓程序員將主要精力放在sql上,通過mybatis提供的映射方式,自由靈活生成滿足需要的sql語句。
2、mybatis可以將輸入?yún)?shù)自動映射,可以將結(jié)果集映射為Java對象,并且sql相對自由,不想hibernate那樣看不到sql。
3、mybatis需要一個SqlMapConfig.xml,它是mybatis的全局配置文件,其中包括了數(shù)據(jù)庫連接池,配置了數(shù)據(jù)源、事務(wù)等。
4、還需要一個SQLMap配置文件,它配置了映射關(guān)系(配置sql語句),sql語句要寫在這個配置文件里,其實就是配置了一個statement,避免了sql語句硬編碼到Java源文件中。后面會詳細介紹這個配置文件的使用。
5、SqlsessionFactory是mybatis中生成Sqlsession的工廠,操作數(shù)據(jù)庫。
mybatis框架結(jié)構(gòu)是把sql語句的映射文件加載到SQLMapConfig中去,然后SqlSessionFactory加載SQLMapConfig后生成SQLSession,SQLSession來執(zhí)行Statement。
三、構(gòu)建一個mybatis工程。
1.所需要的jar包
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26