最新の安定バージョンについては、Spring Framework 6.2.11 を使用してください! |
JDBC データベースアクセスのアプローチの選択
JDBC データベースアクセスの基盤を形成するために、いくつかのアプローチから選択できます。JdbcTemplate
の 3 つのフレーバーに加えて、新しい SimpleJdbcInsert
および SimpleJdbcCall
アプローチはデータベースメタデータを最適化し、RDBMS オブジェクトスタイルは JDO クエリデザインと同様のよりオブジェクト指向のアプローチを取ります。これらのアプローチのいずれかを使用し始めても、別のアプローチの機能を含めるために組み合わせて使用できます。すべてのアプローチには JDBC 2.0 準拠のドライバーが必要であり、一部の高度な機能には JDBC 3.0 ドライバーが必要です。
JdbcTemplate
は、クラシックで最も人気のある Spring JDBC アプローチです。この「最低レベル」のアプローチと他のすべてのアプローチは、内部で JdbcTemplate を使用します。NamedParameterJdbcTemplate
は、従来の JDBC?
プレースホルダーの代わりに、JdbcTemplate
をラップして名前付きパラメーターを提供します。このアプローチは、SQL ステートメントに複数のパラメーターがある場合に、より優れたドキュメントと使いやすさを提供します。SimpleJdbcInsert
およびSimpleJdbcCall
は、データベースメタデータを最適化して、必要な構成の量を制限します。このアプローチにより、コーディングが簡素化されるため、テーブルまたはプロシージャの名前のみを提供し、列名に一致するパラメーターのマップを提供するだけで済みます。これは、データベースが適切なメタデータを提供する場合にのみ機能します。データベースがこのメタデータを提供しない場合、パラメーターの明示的な構成を提供する必要があります。RDBMS オブジェクト—
MappingSqlQuery
、SqlUpdate
、StoredProcedure
を含む — データアクセス層の初期化中に、再利用可能でスレッドセーフなオブジェクトを作成する必要があります。このアプローチは、クエリ文字列を定義し、パラメーターを宣言し、クエリをコンパイルする JDO クエリをモデルにしています。これを行うと、execute(…)
、update(…)
、findObject(…)
メソッドをさまざまなパラメーター値を使用して複数回呼び出すことができます。