MyBatis
概要
MyBatisとは、プログラム上で扱われるデータ集合をデータベースの領域に対応付け、相互に変換することで永続的に保管し続ける仕組みを提供するソフトウェア。「O/Rマッパー」あるいは「永続化フレームワーク」と呼ばれるシステムの一つ。リレーショナルデータベース(RDB)上のレコードと、プログラム上のオブジェクトを関連付け(マッピング)、プログラム上のデータを永続的に保管することができる。一般的なO/Rマッパーとは異なり、データベースへの操作を表すSQL文(の実行結果)とオブジェクトのマッピングを行う。
対応付けるSQL文はXMLファイルとして与えることも、プログラムのソースコード中にアノテーション(コメントを利用した特殊な記法)を用いて記述することもできる。開発者はJDBCなどを通じた細かな制御コードを記述する必要はなく、データ管理の大半をMyBatisに任せることができる。
データベースのテーブル構造から対応するコードを生成するコードジェレータ機能(MyBatis Generator)、テーブル構造が変更された際に自動的に適応するスキーママイグレーション機能、主要なフレームワークとの連携機能、キャッシュによる性能向上などの追加機能も利用できる。
Java言語に対応し、Apacheライセンスに基づいてオープンソースソフトウェアとして配布されている。当初は「iBATIS」(Apache iBATIS)の名称で開発されていたが、2010年にプロジェクトがフォーク(派生)され、新たに「MyBatis」の名称で開発が継続されることになった。
(2023.10.4更新)