この記事では、MyBatis フレームワークをソース コード レベルで深く分析し、MyBatis の核となるメカニズムと設計思想を明らかにします。MyBatisの構造をマスターする

著者: 禅とコンピュータープログラミングの芸術

1 はじめに

MyBatis は Apache のオープン ソース プロジェクトで、2006 年に公式 Wiki に登録されました。2020 年 9 月 1 日の時点では、最も人気のある ORM フレームワークの 1 つであり、優れた永続化フレームワークとなっています。Hibernate、TopLink、MyBatis などのフレームワークと比較して、MyBatis は使いやすく、学習コストが低く、データベースの操作に非常に便利です。MyBatis はカスタマイズされた SQL、ストアド プロシージャ、高度なマッピングを実装でき、柔軟で便利です。さまざまなリレーショナル データベースをサポートし、さまざまなデータベース操作に統一されたインターフェイスを提供します。したがって、MyBatis は非常に優れた ORM フレームワークです。この記事では、MyBatis の基礎となる実装メカニズムをソース コードの観点から詳細に分析し、MyBatis の最も重要な設計アイデアを示します。# 2. 基本概念と用語の説明 1. MyBatis の 4 つの重要なオブジェクト: SqlSessionFactoryBuilder、SqlSessionFactory、MapperRegistry、MappedStatement 2. SqlSessionFactoryBuilder (略して SFB): SqlSessionFactory オブジェクトの作成に使用され、mybatis の構成ファイル (すなわち sqlMapConfig) をロードできます。 .xml ) を解析し、S​​qlSessionFacotry 3 を生成します。 SqlSessionFactory: SqlSession ファクトリ クラス。SqlSession オブジェクトの生成に使用されます。アプリケーションは SqlSessionFactory に対応し、スレッドは安全ではないため、SqlSession オブジェクトを取得するには、外部同期アクセスまたは要求スコープ内のスレッドが必要です。4. MapperRegistry: マッパー インターフェイス情報を保存するために使用されるマッパー レジスタ。各マッパー ファイルは、登録されたマッパーの管理を担当する MapperRegistry に対応します。5. MappedStatement: SQL ステートメント マッピング クラス。特定の実行された SQL ステートメントに関連する情報を保存するために使用されます。

おすすめ

転載: blog.csdn.net/universsky2015/article/details/132002538