原始jdbc存在的問題:
- 數據庫連接,使用時就創建,不使用時立即釋放,對數據庫進行頻繁連接和關閉,造成數據庫資源浪費,影響數據庫性能
- 設想:使用數據庫連接池管理數據庫連接
- 將sql語句硬編碼到java代碼中,如果sql語句修改,需要重新編譯java代碼,不利於系統維護
- 設想:將sql語句配置在xml配置文件中,即使sql語句變化,也不需要對java代碼進行重新編譯
- 向preparedStatement中設置參數,對佔位符號位置和設置參數值,硬編碼在java代碼中,不利於系統維護
- 設想:將sql語句及佔位符和參數全部配置在xml文件中
- 從resultSet中遍歷結果集數據時,存在硬編碼,將獲取表的字段進行硬編碼,不利於系統的維護
- 設想:將查詢的結果集自動映射成java對象
mybatis是什麼?
- myabtis是一個持久層的框架,是apache下的頂級項目
- mybatis託管到github下(https://github.com/mybatis/mybatis-3/releases)
- mybatis讓程序將主要精力放在sql上,通過mybatis提供的映射方式,自由靈活生成(半自動化,大部分需要程序員編寫sql)滿足需要sql語句
- mybatis可以將向 preparedStatement中的輸入參數自動進行輸入映射,將查詢結果集靈活映射成java對象。輸出映射
mybatis框架