JDBC経由でOracleに接続して、接続しっぱなしにしたいのですが、どうすればいいのかよくわかりません。
とりあえず正常終了するようなソースを書いてみました。このソースからconnectionをCloseしないように編集したいのですが、どうすればいいのかわかりません。
やりたいことはJDBCの複数同時Connectionを試したくて、このConnectionを維持したまま、何回かこのプログラムを実行すればいいかなと思っているんですが。
長くなりましたが、よろしくお願いします。
import java.sql.*;
class Employee
{
public static void main (String args [])
throws SQLException
{
// Load the Oracle JDBC driver
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
// Connect to the database
// You must put a database name after the @ sign in the connection URL.
// You can use either the fully specified SQL*net syntax or a short cut
// syntax as <host>:<port>:<sid>. The example uses the short cut syntax.
Connection conn =
DriverManager.getConnection ("jdbc:oracle:thin:@HOST:PORT:SID",
"scott", "tiger");
// Create a Statement
Statement stmt = conn.createStatement ();
// Select the ENAME column from the EMP table
ResultSet rset = stmt.executeQuery ("select ENAME from EMP");
// Iterate through the result and print the employee names
while (rset.next ())
System.out.println (rset.getString (1));
}
}
No.3ベストアンサー
- 回答日時:
Connection#finally()が走ったりプログラムが終了すると
クローズされてしまいます。
コネクションのインスタンスを保持するようにしましょう。
簡単な改修は、以下のようなものです。
いくつコネクションを保持するかはループ回数で
調整してください。
public static void main (String args []) {
List conList = new ArrayList();
for (int i = 0; i < 10; i++) {
// もともとのロジックの内容
conList.add(conn); // Connectionのインスタンスを保持
}
}
No.2
- 回答日時:
複数スレッドで実行してみては?
Threadクラスを継承してrun()メソッドの中に
質問のmain()メソッドの中身を書いて、
main()メソッドの中では複数のThreadを起動して実行する。
ってな感じで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- 英語 The Twilight Zone1959に関するCBSの回答について 1 2023/03/02 15:13
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- 英語 英文の添削をお願いします 4 2023/05/23 11:10
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- 英語 一般のyou, we,theyなどの答え方がわかりません。 2 2022/10/29 15:22
- その他(SNS・コミュニケーションサービス) 自分のpcがハッキングされたようなメールが来たのですがどうすればいいですか? 4 2022/10/02 16:14
- 大学受験 英作文の添削をお願いしたいです。 2 2022/08/19 20:37
- 英語 この英文は格調高いのでしょうか? 3 2022/06/03 18:55
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Java初級 引数に適用できません
-
レコード件数の表示
-
ArrayList の継承について(初...
-
メソッド宣言の戻り値の型にク...
-
Google Apps Script で getRang...
-
String.containsの反対機能はあ...
-
readLine()ではじめから読み直...
-
シェルスクリプトからのJavaメ...
-
C# asp.net HTMLタグのエスケ...
-
C++における、クラスのメモリイ...
-
メソッドの引数に指定されてい...
-
Double,Longをファイルに書き込み
-
contextってなんですか?
-
初歩的な質問です・・・
-
C# の ByVal と ByRef について
-
メソッドについて
-
動画の座標値をマウスクリック...
-
ASP.Net ObjectDataSource!
-
Java初心者です、エラーの意味...
-
エクセルVBAで、条件に一致する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコード件数の表示
-
Java初級 引数に適用できません
-
String.containsの反対機能はあ...
-
public static void main (Stri...
-
abstract と static を一緒に付...
-
Google Apps Script で getRang...
-
StringBufferからStringへキャ...
-
メソッド宣言の戻り値の型にク...
-
javaに"search"という関数 or ...
-
C# 点の描き方をおしえてくだ...
-
Java初心者です、エラーの意味...
-
なぜprotected overrideなのか
-
親の親のメソッドを呼ぶには?
-
C# でメソッドに送られてきたOb...
-
Javaの関数名が長い?
-
別クラスのmainメソッドの実行
-
[クラス名].[メソッド名].[メソ...
-
コマンドライン引数のチェック
-
contextってなんですか?
-
説明文書でのメソッド・変数の...
おすすめ情報