从Spring应用程序访问postgresql服务器

时间:2018-01-26 14:00:35

标签: spring postgresql hibernate c3p0

我有一个Spring应用程序(Hibernate c3p0),可以很好地连接到Oracle DB服务器。 我想用PostgreSQL数据库服务器做同样的事情,但它向我发送错误java.net.UnknownHostException。

在applicationContext中,我的dataSource是:

<bean id="appDS" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="org.postgresql.Driver" />
        <property name="jdbcUrl" value="jdbc:postgresql://THE_SERVER:5432/schema" />
        <property name="user" value="appc0" />
        <property name="password" value="THE_PWD"  />
</bean>

我尝试从另一个非常简单的Java应用程序(来自同一服务器)建立连接:

    public static void main(String[] args) {
    try {

        System.out.println("TEST Driver Manager START");
        Class.forName("org.postgresql.Driver");
        String url = "jdbc:postgresql://THE_SERVER:5432/schema";
        String user = "appc0";
        String passwd = "THE_PWD";
        Connection conn = DriverManager.getConnection(url, user, passwd);

        System.out.println("Schema : " + conn.getSchema());
        System.out.println("ClientInfo : " + conn.getClientInfo());
        System.out.println("TEST Driver Manager END");

        System.out.println("TEST C3P0 START");
        ComboPooledDataSource cpds = new ComboPooledDataSource();
        cpds.setDriverClass( "org.postgresql.Driver" );           
        cpds.setJdbcUrl( "jdbc:postgresql://THE_SERVER:5432/schema" );
        cpds.setUser("appc0");                                  
        cpds.setPassword("THE_PWD");                                  

        System.out.println("User :"+ cpds.getUser());
        System.out.println("TEST C3P0 END");

    } catch(Exception e) {
        e.printStackTrace();
    }

在这种情况下没有错,我连接得很好。这似乎不是一个网络问题。 有谁知道问题可能来自哪里?

版本是:

  • 的PostgreSQL-42.2.0.jre7.jar
  • c3p0-0.9.1.2.jar

0 个答案:

没有答案