1.數據庫鏈接創建、釋放頻繁造成系統資源浪費從而影響系統性能,如果使用數據庫鏈接池可解決此問題。
MyBatis解決:
?在SqlMapConfig.xml 中配置數據鏈接池,使用連接池管理數據庫鏈接。
2.Sql 語句寫在代碼中造成代碼不易維護,實際應用 sql 變化的可能較大, sql 變動需要改變 java 代碼。
MyBatis解決:
?將Sql 語句配置在 XXXXmapper.xml 文件中與 java 代碼分離。
3.向 sql 語句傳參數麻煩,因為 sql 語句的 where 條件不一定,可能多也可能少,占位符需要和參數一一對應。
MyBatis解決:
?Mybatis 自動將 java 對象映射至 sql 語句,通過 statement 中的 parameterType 定義輸入參數的
類型并自動完成參數的注入。
4.對結果集解析麻煩, sql 變化導致解析代碼變化,且解析前需要遍歷,如果能將數據庫記錄封裝成pojo 對象解析比較方便。
MyBatis解決:
Mybatis 自動將 sql 執行結果映射至 java 對象,通過 statement 中的 resultType 定義輸出結果的類型并自動完成結果集的封裝。