Задать вопрос
@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();
        }
  • Вопрос задан
  • 305 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Android-разработчик с нуля
    14 месяцев
    Далее
  • Академия Eduson
    Android-разработчик
    6 месяцев
    Далее
  • Skillbox
    Разработчик игр на Unreal Engine 4 с нуля до Middle
    12 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 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 вам не подойдёт? Минимум настройки, заводится влёт.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
от 250 000 до 300 000 ₽
Aston Москва
от 220 000 до 260 000 ₽
Aston Санкт-Петербург
от 220 000 до 260 000 ₽