Как создать экземпляр класса 1 для нескольких запросов? - PullRequest
0 голосов
/ 25 сентября 2019

Итак, я сейчас работаю над проектом, который будет использовать базу данных, но я впервые пытаюсь поиграться с ним на Java.Но я уже вижу свою первую проблему: как мне сделать один единственный файл, который обрабатывает соединение, в то время как другие файлы обрабатывают GET / ADD / UPDATE / DELETE (по одному для каждой таблицы), что было бы правильно для этого?Не нужно помещать значения соединения в каждый файл и делать соединение

Я думаю о расширении класса соединения с другими классами, но idk, если это отличная идея.

import java.sql.*;

public class DatabaseConnection {

    public static void main(String[] args) {
        final String url = "jdbc:postgresql://localhost:5432/Database";
        final String user = "dbuser";
        final String password = "dbpass";

        try(Connection conn = DriverManager.getConnection(url, user, password)) {
            System.out.println("Connection successful!");
        } catch (SQLException e) {
            System.out.println("Connection failure.");
            e.printStackTrace();
        }
    }
}

Что быбыть лучшим подходом?

Ответы [ 2 ]

1 голос
/ 25 сентября 2019

Может быть, я ошибаюсь, но я думаю, что вам нужен пул подключений.Попробуйте найти инструкцию здесь https://www.baeldung.com/java-connection-pooling

0 голосов
/ 25 сентября 2019

Вы можете переместить связанный с подключением к базе данных код в служебный класс и использовать класс PreparedStatement для предварительной компиляции SQL-запроса

public class doSomething {

    Connection conn = null;
    PreparedStatement pst = null;

    public static void main(String [] args){
        conn = DatabaseConnection.connect()
        String qry = "Select * from table_name";
        pst = (PreparedStatement) conn.prepareStatement(qry);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...