Я написал класс Java для запуска запросов MS Sql внутри моей программы. Эта программа создает новое соединение для каждого запроса, который должен быть запущен. Я знаю, что это может увеличить мою задержку. Вот код Calss:запрос выполняется с использованием JDBC
import java.sql.*;
public abstract class DatabaseManager {
public static ResultSet executeQuery(String SQL, String dbName)
{
ResultSet rset = null ;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
"databaseName="+dbName+";user=??;password=??;";
Connection con = DriverManager.getConnection(connectionUrl);
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rset = st.executeQuery(SQL);
//st.close();
}
catch (ClassNotFoundException e) {}
catch (SQLException e) {}
return rset;
}
public static void executeUpdate(String SQL, String dbName)
{
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
"databaseName="+dbName+";user=??;password=??;";
Connection con = DriverManager.getConnection(connectionUrl);
Statement st = con.createStatement();
st.executeUpdate(SQL);
st.close();
con.close();
}
catch (ClassNotFoundException e) {System.out.println(e);}
catch (SQLException e) {System.out.println(e);}
}
}
Как можно изменить таким образом, что только одно соединение создается и все мои запросы по маршруту Повсеместно этой связи? С уважением.
Использование синглтон шаблон – SpringLearner
Выполните соединение одноэлементно в вашем классе? В самом деле, вы должны изучить варианты объединения (например, C3PO), который также предоставляет тесты на заимствование и другие аккуратные вещи. –
Это может быть полезно вам http://rdeshapriya.com/a-singleton-java-class-for-mysql-db-connection/ – SpringLearner