JDBC データベースアクセスのアプローチの選択

JDBC データベースアクセスの基礎を形成するために、いくつかのアプローチから選択できます。JdbcTemplate の 3 つのフレーバーに加えて、SimpleJdbcInsert および SimpleJdbcCall アプローチはデータベースメタデータを最適化し、RDBMS オブジェクトスタイルはよりオブジェクト指向のアプローチになります。これらのアプローチのいずれかを使用し始めても、組み合わせて別のアプローチの機能を組み込むことができます。

  • JdbcTemplate は、古典的で最も人気のある Spring JDBC アプローチです。この「最低レベル」のアプローチと他のすべてのアプローチでは、内部で JdbcTemplate が使用されます。

  • NamedParameterJdbcTemplate は、従来の JDBC ? プレースホルダーの代わりに、JdbcTemplate をラップして名前付きパラメーターを提供します。このアプローチは、SQL ステートメントに複数のパラメーターがある場合に、より優れたドキュメントと使いやすさを提供します。

  • SimpleJdbcInsert および SimpleJdbcCall は、データベースのメタデータを最適化して、必要な構成の量を制限します。このアプローチによりコーディングが簡素化され、テーブルまたはプロシージャの名前と、列名に一致するパラメーターのマップを指定するだけで済みます。これは、データベースが適切なメタデータを提供する場合にのみ機能します。データベースがこのメタデータを提供しない場合は、パラメーターの明示的な構成を提供する必要があります。

  • RDBMS オブジェクト — MappingSqlQuerySqlUpdateStoredProcedure を含む — データアクセス層の初期化中に、再利用可能でスレッドセーフなオブジェクトを作成する必要があります。このアプローチにより、クエリ文字列を定義し、パラメーターを宣言し、クエリをコンパイルすることができます。これを実行すると、さまざまなパラメーター値を使用して execute(…​)update(…​)findObject(…​) メソッドを複数回呼び出すことができます。