Insertステートメントでメソッドにクエリタイムアウト(getJdbcTemplate()。setQueryTimeout(5))を設定しました。クエリのタイムアウト後はどうなりますか?jdbcテンプレートは接続を閉じますか?
つまり、はい、接続を閉じます。それは長い答えです。
Springマネージドトランザクションがない場合、はい、JdbcTemplate
はConnection
でclose()
メソッドを呼び出します。ただし、Springsトランザクション管理が原因ですでに使用可能な接続があった場合、その接続はSpringsトランザクションサポートによって処理され、Connection
に対してclose()
も呼び出されます。
唯一の違いは、接続が閉じられたときにclose()
が呼び出される場合です。
接続が実際に閉じられるかどうかは、使用されるDataSource
に依存します。通常、接続プールを使用すると、実際に接続を閉じるのではなく、プールに接続が返されます。
はい、そうです。
また、接続が接続プールから取得された場合、実際には接続を閉じず、プールに送り返します。
接続を手動で閉じる必要はありません。操作を引き受けるSpringコンテナ自体。この春のURLを参考にしてください、
http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/jdbc.html
JdbcTempleteの使用中に接続を閉じることもできます。場合によっては、クエリの実行後に接続を閉じる必要があります。そうしないと、接続の問題が発生します。詳細については、[jdbcテンプレートの接続を閉じる] [1] [1]にアクセスしてください。 http://www.javaiq.in/2019/05/jdbctemplate.html
<pre>
jdbcTemplate.getDataSource()。getConnection()。close();