【问题标题】:Postgres JDBC connection in Eclipse HelpEclipse 帮助中的 Postgres JDBC 连接
【发布时间】:2010-09-17 00:27:35
【问题描述】:

我正在尝试让 postgres jdbc 连接在 Eclipse 中工作。使用 Data Source Explorer 会很好,但现在我只是想建立一个基本的连接。到目前为止我所做的是下载 postgres JDBC 连接器。然后我尝试了两种不同的方法。首先,Preferences-> Data Management,我尝试添加 postgres 连接器。其次,我将 jar 添加到我的项目中并尝试使用 Class.forName("org.postgresql.Driver"); 加载驱动程序;但都没有奏效。有人有什么想法吗?

谢谢, 查理

【问题讨论】:

  • 定义“都不起作用”。你收到消息了吗?

标签: java postgresql jdbc


【解决方案1】:

这是让 PostgreSQL 连接到您的应用程序的一种方法:

  1. 获取org.postgresql.ds.PGSimpleDataSource 的实例
  2. 使用与您的数据库匹配的值进行设置(参见下面的方法)
  3. 继续使用 DataSource,就像使用任何其他方法一样,我假设此时您会对 DataSource.getConnection() 方法感兴趣。

配置此特定数据源的专有方法是setServerName()setDatabaseName()setUser()setPassword()

除了测试之外,我不建议您这样做,而且您的问题可能在于您尝试使用 Class.forName() 获取对象实例的方式有几乎十几种不同的方法来获取实例对于一个有细微差别的对象,我建议用谷歌搜索它,因为它是一个很多人已经在互联网上写过的主题。

【讨论】:

    【解决方案2】:

    这就是我建立联系的方式:(我不知道这是否是“最佳实践”,但它有效。)

    导入驱动:

    1. 右键单击您的项目
    2. 选择属性
    3. 选择Java build path
    4. 选择 Add external JARS.. 并选择 JDBC 驱动程序的位置。

    这是我的代码:

    try{
        Class.forName("org.postgresql.Driver");
        } catch (ClassNotFoundException cnfe){
          System.out.println("Could not find the JDBC driver!");
          System.exit(1);
        }
    Connection conn = null;
    try {
        conn = DriverManager.getConnection
                       (String url, String user, String password);
         } catch (SQLException sqle) {
           System.out.println("Could not connect");
           System.exit(1);
         }
    

    网址可以是以下格式之一:

    jdbc:postgresql:database
    jdbc:postgresql://host/database
    jdbc:postgresql://host:port/database
    

    【讨论】:

    • 更多一般的 Eclipse 注释,但您也可以从构建路径属性对话框中的添加库中创建用户库。这样您就可以从多个项目中引用同一个 jar 文件。升级到新版本时,只需在 1 处更改 jar 名称即可。
    【解决方案3】:

    我在使用 GWT 时遇到了同样的问题。

    我通过将 jar 文件复制到“lib”文件夹中来修复它:(Project\war\WEB-INF\lib)。当您将 jar 添加到构建路径时,它似乎会静态执行链接,但是我们希望 lib 在运行时!

    希望它能解决您的问题。

    【讨论】:

      【解决方案4】:

      我也遇到了这个问题,Vjeux 的回答帮助我指出了正确的方向。

      我有一个已安装并由 Eclipse 管理的 Tomcat6 本地副本。它被安装到“$HOME/bin/tomcat6”中。为了让 PostgreSQL JDBC 驱动程序正常工作,我只需将我的 postgresql.jar 文件复制到“$HOME/bin/tomcat6/lib”目录中。

      另外,如果您一开始不知道从哪里获取驱动程序,请尝试此操作。我正在运行 Ubuntu,所以我运行了“sudo apt-get install libpg-java”,它将驱动程序安装到“/usr/share/java/postgresql.jar”中,所以我只是从那里复制了它。

      【讨论】:

        【解决方案5】:

        您可以在 persistence.xml 中编写此代码

              <property name="javax.persistence.jdbc.driver" value="org.postgresql.Driver"/>
                <property name="javax.persistence.jdbc.url" value="jdbc:postgresql://localhost:5432/yourDataBaseName"/>
                <property name="javax.persistence.jdbc.user" value="postgres"/>
                <property name="javax.persistence.jdbc.password" value="yourPassword"/>
        

        【讨论】:

          猜你喜欢
          • 2015-03-17
          • 2013-11-07
          • 2017-04-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-09-27
          • 2019-04-14
          • 1970-01-01
          相关资源
          最近更新 更多