Java app:连接到PostgreSQL数据库

时间:2014-12-05 23:10:53

标签: java sql postgresql jdbc

我正在尝试连接到postgres SQL数据库。通常情况下,我只需转到链接即可连接:

test.ischool.testU.edu

通过输入我的凭据连接到phpPgAdmin,然后我可以从侧面选择连接到我的数据库testDB。

这是我的相关Java代码:

    try {
        Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException e1) {
        e1.printStackTrace();
    }

    String url = "jdbc:postgresql://test.ischool.testU.edu:5432/testDB";
    String user = "testuser";
    String pass = "testpassword";
    Connection db = null;
    try {
        db = DriverManager.getConnection(url,user,pass);
    } catch (SQLException e1) {
        e1.printStackTrace();
    }

我收到以下错误:

org.postgresql.util.PSQLException: Connection refused. Check that the hostname and port             are correct and that the postmaster is accepting TCP/IP connections.

我很确定我做错了什么。假设我的代码是正确的(我确定不是这种情况),要连接到数据库,我是否需要将我的.jar文件放在远程目录中,或者我可以在本地运行它?它有所作为吗?

我已使用以下python代码成功连接到我的数据库(此代码已直接插入远程并从那里运行):

    conn = psycopg2.connect("dbname=testDB user=testuser password=testpassword")

2 个答案:

答案 0 :(得分:0)

您使用的JDBC URL是针对MySQL的:

jdbc:mysql://test.ischool.testU.edu:5432/testDB

使用一个用于PostgreSQL:

jdbc:postgresql://test.ischool.testU.edu:5432/testDB

如果更改此功能并不帮助,请发布您所遇到的确切错误。

答案 1 :(得分:0)

尝试这段代码:

String url = "jdbc:postgresql://localhost/YOURSCHEMA?user=YOURUSER&password=YOURPWD";

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

Connection con = DriverManager.getConnection(url);`