SpringJDBC-概要
プレーンな古いJDBCを使用してデータベースを操作している間、例外を処理したり、データベース接続を開いたり閉じたりするために不要なコードを書くのは面倒になります。ただし、Spring JDBC Frameworkは、接続の開き、準備、 SQLステートメントの実行、例外の処理、トランザクションの処理、そして最後に接続を閉じます。
接続パラメータを定義し、実行するSQLステートメントを指定して、データベースからデータをフェッチしながら、各反復に必要な作業を実行するだけです。
Spring JDBCは、データベースとインターフェースするためのいくつかのアプローチとそれに対応する異なるクラスを提供します。このチュートリアルでは、フレームワークのJDBCテンプレートクラスを利用する、古典的で最も一般的なアプローチを採用します。これは、すべてのデータベース通信と例外処理を管理する中央フレームワーククラスです。
JDBCテンプレートクラス
JDBCテンプレートクラスは、SQLクエリを実行し、ステートメントとストアドプロシージャの呼び出しを更新し、ResultSetに対して反復を実行し、返されたパラメータ値を抽出します。また、JDBC例外をキャッチし、org.springframework.daoパッケージで定義されている一般的でより有益な例外階層に変換します。
JDBCテンプレートクラスのインスタンスは、一度設定されるとスレッドセーフになります。したがって、JDBCテンプレートの単一インスタンスを構成してから、この共有参照を複数のDAOに安全に挿入できます。
JDBCテンプレートクラスを使用する場合の一般的な方法は、Spring構成ファイルでデータソースを構成してから、その共有データソースBeanをDAOクラスに依存性注入することです。JDBCテンプレートは、データソースのセッターで作成されます。
データアクセスオブジェクト(DAO)
DAOは Data Access Objectこれは一般的にデータベースの相互作用に使用されます。DAOは、データベースに対してデータを読み書きする手段を提供するために存在し、アプリケーションの残りの部分がDAOにアクセスするためのインターフェイスを介してこの機能を公開する必要があります。
Springでのデータアクセスオブジェクト(DAO)のサポートにより、JDBC、Hibernate、JPA、JDOなどのデータアクセステクノロジを一貫した方法で簡単に操作できます。