MyBatisにおけるキャッシュ機構と遅延読み込みの詳細設定

キャッシュ機能の仕組み MyBatisは、パフォーマンス向上のために二種類のキャッシュを提供しています。一つはSqlSessionレベルで動作するローカルキャッシュ(1次キャッシュ)、もう一つはSqlSessionFactoryレベルで共有されるセカンドレベルキャッシュ(2次キャッシュ)です。 1次キャッシュの挙動 新しいSqlSessionが生成されると、自動的にそのセッションに紐付いた1次 ...

9月23日 00:02 投稿

MyBatis設定ファイルの効率的な読み込みとプロパティファイルによるデータベース接続管理

1. SqlSessionインスタンス取得のためのユーティリティクラス実装 MyBatis操作ではSqlSessionインスタンスの取得処理が繰り返し発生します。以下の実装では各操作ごとに設定ファイル読み込みが行われ、リソース効率が低下します: public class StudentDaoImpl implements IStudentDao { private SqlSession session; public void addStudent(Student student ...

6月1日 03:42 投稿

MyBatisセッション生成の内部メカニズム

データベース操作のたびに新しいセッションを生成する必要があり、openSession()メソッドを使用して作成します。 SqlSession session = sqlSessionFactory.openSession(); このsqlSessionFactoryはデフォルトの実装クラスを使用しており、openSessionFromDataSource()メソッド内で生成されます。 private SqlSession openSessionFromDataSource(ExecutorType execType, ...

5月15日 18:09 投稿