Сначала я покажу вам код, а затем задал несколько вопросов. у меня есть связь с базами данных класса, как это (не обращайте внимания на синтаксическую ошибку, если любой)Связь с базой данных в java
class DatabaseConnection {
private static Connection connection = null;
private static String driverName="";
private static String userName="";
private static String passwrod="";
private static String url="";
private DatabaseConnection() { }
public static void createConnection() {
if (connection == null) {
// read database credentials from xml file and set values of driverName, userName, passowrd and url
//create connection with database and set store this connection in connection object created a class level.
}
}
public static void closeConnection1() throws Exception{
if (connection != null) {
connection.close();
connection == null
}
}
public static void closeConnection2() throws Exception{
if (connection != null) {
connection.close();
}
}
public void insertData(Object data) {
// insetData in database
}
}
Я хочу знать, какая тесная связь более оптимизировать в связи с базой данных. Давайте предположим, у меня есть тестовый класс, как этот
class Test {
public static void main(String args[]) {
DatabaseConnection.createConnection();
DatabaseConnection.insertData(data);
DatabaseConnection.closeConnection2(); // we call also called close connection method within the insertData method after inserting the data
}
}
После создания подключения к базе данных я вставить данные в базу данных, а затем закрыть соединение с помощью closeConnection2 метод. таким образом, соединение было закрыто, поэтому, если я хочу вставить еще какой-нибудь метод, то мне нужно воссоздать соединение с базой данных, но я не могу этого сделать, потому что объект соединения не равен нулю, а createConnection не выполнил код внутри если утверждение. Теперь, если я позвонил closeConnection1 метод закрытия соединения, то при этом мне нужно проанализировать xml файл снова для учетных данных, который не является оптимизационным решением. можете ли вы сказать мне, какой метод хорош, и если оба хуже, то, пожалуйста, скажите мне более эффективный способ создания и закрытия соединения с базой данных.
Почему вы не используете пул соединений? (google: dbcp) – vikingsteve
вы можете дать мне ссылку, например, используя пул соединений –
Начать здесь: http://www.google.no/search?q=dbcp+example – vikingsteve