ホームページ  >  記事  >  Java  >  JdbcTemolate クラスの意味を簡単に説明します。

JdbcTemolate クラスの意味を簡単に説明します。

巴扎黑
巴扎黑オリジナル
2017-07-22 14:25:292165ブラウズ

JdbcTemolate クラスの概要

JdbcTemplate は Spring JDBC のコア クラスであり、一般的なエラーを回避しながら一般的な JDBC の使用法をカプセル化します。このクラスは、SQL と結果を返す方法を提供するコードを記述するだけで、JDBC の操作を簡素化します。 JdbcTemplate は、クエリや更新などの操作を実行し、ResultSet でのトラバーサル操作を初期化し、JDBC 例外をキャプチャして org.springframework.dao パッケージで定義されたより従来型で便利な例外クラスに変換できます。

コールバック インターフェイスを実装することで、これらのコールバック関数の特定の操作をカスタマイズできます。その中で、PreparedStatementSetter と RowMapper の 2 つは、最もよく使用されるコールバック インターフェイスです。

すべての SQL 操作は、org.springframework.jdbc.core.JdbcTemplate の下にデバッグ レベルのログで記録されます。

説明: このクラスのインスタンスは構成後はスレッドセーフになります

JdbcAccessorクラスの紹介

JdbcAccessorクラスはJdbcTemplateクラスの基本クラスであり、JDBC接続操作を処理するために使用され、データも定義しますソースと例外の変換、デバイスなどの共通プロパティ。

JdbcOperations インターフェイスの概要

JdbcOperations インターフェイスは、JDBC のいくつかの基本的な操作を定義します。これを直接使用することはお勧めできませんが、モックやスタブに適しています。テスト中に選択するのは非常に良い選択です。

JdbcTemplate の変数

ignoreWarnings

この変数が false の場合、JDBC 警告 (SQL 警告) がスローされます。デフォルトは true です。

説明: SQL 警告は、重大度の低い例外、致命的ではないエラー、または予期しない状況を無視できるように処理するために使用されます。

fetchSize

変数が負でない場合、クエリの実行に使用されるステートメントの fetchSize 変数に割り当てられます。デフォルトは -1 です。

maxRows

この変数が負でない値の場合、クエリの実行に使用されるステートメントの maxRows 変数に割り当てられます。デフォルトは -1 です。

queryTimeout

この変数が負でない値の場合、クエリの実行に使用されるステートメントの queryTimeout 変数に割り当てられます。デフォルトは -1 です。

skipResultsProcessing

この変数が true の場合、すべての呼び出し可能なステートメントの処理はすべての結果チェックをバイパスします。これは、一部の以前のバージョンの oracle jdbc ドライバー (10.1.0.2 など) のバグを回避するために使用できます。デフォルトは false です。

skipUndeclaredResults

この変数が true の場合、skipResultsProcessing が true でない限り、出力パラメーターを使用したスト​​アド プロシージャの呼び出し結果のチェックは省略されます。そうでない場合は、返された他のすべての結果が処理されます。デフォルトは false です。

dataSource

この変数は JdbcAccessor クラスから継承された javax.sql.DataSource タイプであり、null にすることができます。ただし、この変数は Spring が Bean を初期化するときにチェックされ、null の場合は IllegalArgumentException がスローされます。 、「プロパティ 'dataSource' が必要です」というプロンプトが表示されます。

ExceptionTranslator

この変数は、SQLException と Spring のカスタム DataAccessException を変換するために使用される関数インターフェイスに属し、JdbcAccessor クラスから継承され、null にすることができます。

lazyInit

この変数が true の場合、初めて SQLException が発生したことがわかります。それ以外の場合、ExceptionTranslator は初期化されません。デフォルトは true です。

JdbcAccessor クラスは InitializingBean インターフェースを継承し、JdbcTemplate クラスは JdbcAccessor クラスを継承するため、Spring は JdbcTemplate Bean を初期化するときに afterPropertiesSet を呼び出します。このとき、lazyInit が false で、ExceptionTranslator が使用されている場合は、dataSource が null の場合は SQLStateSQLExceptionTranslator が初期化に使用され、それ以外の場合は SQLErrorCodeSQLExceptionTranslator が使用されます。

nativeJdbcExtractor

非標準の JDBC API を操作するために使用される、カスタマイズされたローカル JDBC 操作オブジェクト。

JDBC4のサポートを改善するために、Spring Frameworkワーキンググループは2017年6月7日にGithub上のmasterブランチ上のnativeJdbcExtractorを削除しましたが、変数は他のブランチにまだ存在しており、変数を復元するかどうかは不明です

以上がJdbcTemolate クラスの意味を簡単に説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。