問題:JDBC編程有哪些不足之處,Mybatis是如何解決這些問題的?
1) 數(shù)據(jù)庫連接的創(chuàng)建、釋放頻繁造成系統(tǒng)資源浪費從而影響了性能,如果使用數(shù)據(jù)庫連接池就可以解決這個問題。當然JDBC同樣能夠使用數(shù)據(jù)源。
解決:在SQLMapConfig.xml中配置數(shù)據(jù)連接池,使用數(shù)據(jù)庫連接池管理數(shù)據(jù)庫連接。
2) SQL語句在寫代碼中不容易維護,事件需求中SQL變化的可能性很大,SQL變動需要改變JAVA代碼。解決:將SQL語句配置在mapper.xml文件中與java代碼分離。
3) 向SQL語句傳遞參數(shù)麻煩,因為SQL語句的where條件不一定,可能多,也可能少,占位符需要和參數(shù)一一對應(yīng)。解決:Mybatis自動將java對象映射到sql語句。
4) 對結(jié)果集解析麻煩,sql變化導(dǎo)致解析代碼變化,且解析前需要遍歷,如果能將數(shù)據(jù)庫記錄封裝成pojo對象解析比較方便。解決:Mbatis自動將SQL執(zhí)行結(jié)果映射到j(luò)ava對象。
更多建議: