मेरे पास एक जावा प्रोग्राम है जिसमें मैं चुनिंदा प्रश्नों के लिए कुछ जेडीबीसी कर रहा हूं। क्या प्रत्येक बार testDataBase() को कॉल करने की सलाह दी जाएगी जो प्रत्येक बार DBConnection() को कॉल करता है या मुझे सभी प्रश्नों के लिए एक कनेक्शन का पुन: उपयोग करना चाहिए। अग्रिम में धन्यवाद।जावा जेडीबीसी कनेक्शन का पुन: उपयोग
private void testDataBase(String query){Connection con = DBConnection();
Statement st = null;
ResultSet rs = null;
try {
st = con.createStatement();
rs = st.executeQuery(query);
boolean flag = true;
while (rs.next()) {
String resultString = "";
for(int i = 1; i <=rs.getMetaData().getColumnCount();i++){
resultString=resultString+" "+ rs.getString(i);
}
System.out.println(resultString);
}
}
catch (SQLException e) {
e.printStackTrace();
} finally {
if (st != null) {
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
private Connection DBConnection() {
final String method_name = "DBConnection";
Connection conn = null;
try{
Class.forName(driver).newInstance();
conn = java.sql.DriverManager.getConnection(url,userName,password);
}catch (ClassNotFoundException e) {
System.out.println(e.getMessage());
} catch (SQLException e) {
System.out.println(e.getMessage());
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return conn;
}
आप एक परिदृश्य से संबंधित प्रश्नों के लिए एक कनेक्शन का उपयोग करना चाहिए। उदाहरण, एक नया उपयोगकर्ता बनाना। फिर कनेक्शन खोलें, (1) जांचें कि क्या नया उपयोगकर्ता आईडी पहले से मौजूद है, फिर (2) user_table में डालें। दोनों प्रश्न एकल कनेक्शन का उपयोग करके किया जाना चाहिए। – asifsid88
हाँ आप उसी कनेक्शन का पुन: उपयोग कर सकते हैं –
सिंगलटन का उपयोग करें .. –