@sbuw

Проблема с подключением PostgreSQL к Java?

Хочу сделать приложение, которое работает с PostgreSQL.
PostgreSQL JDBC Driver установлен и с ним проблем нет, но почему-то вылетает ошибка SQLException, хотя данные от бд указал верно.

Код ниже:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class MainActivity extends AppCompatActivity {

    String url = "jdbc:postgres://тут правильный url";
    String user = "юзер правильно указан";
    String password = "пароль тоже правильно указан";

    Connection conn = null;
    Statement stat = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        try {
            Class.forName("org.postgresql.Driver");

            conn = DriverManager.getConnection(url, user, password);
            stat = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);

            conn.setAutoCommit(false);
        } catch (ClassNotFoundException e) {
            Toast.makeText(MainActivity.this, R.string.no_posgressql_driver, Toast.LENGTH_LONG).show();
            e.printStackTrace();
        } catch (SQLException e) {
            Toast.makeText(MainActivity.this, R.string.no_connect, Toast.LENGTH_LONG).show();
            e.printStackTrace();
        }
  • Вопрос задан
  • 89 просмотров
Пригласить эксперта
Ответы на вопрос 2
azerphoenix
@azerphoenix Куратор тега Java
Java Software Engineer
Добрый день.
Вопрос 1 - где установлена БД PostgresSQL.
Я так понимаю, что вы хотите подключиться к удаленной БД из моб. телефона? Если да, то попробуйте для начала проверить соединение без android. Например, на чистом Java

Вопрос 2 - насколько корректно указаны конфиги? Например, номер порта 5432

String url = "jdbc:postgres://тут правильный url";
    String user = "юзер правильно указан";
    String password = "пароль тоже правильно указан";


Вообще скажу, что не очень хорошая практика делать приложение, которое коннектится к БД напрямую из приложения. Обычно, для этого пишут API (rest сервис)

Также рекомендую использовать ORM и try with resources
Ответ написан
Spring Data JPA вам не подойдёт? Минимум настройки, заводится влёт.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы