我在连接 Java 和 PostgreSQL 数据库时遇到了一些困难。我已经下载了JDBC4 Postgresql 驱动程序,版本 9.2-1002驱动程序并正确设置了应用程序 ClassPath。我的代码如下
import java.sql.*;
public class JavaPostGreSQLConnectivity
{
public static void main(String[] args)
{
DB db = new DB();
db.dbConnect("jdbc:postgresql://127.0.0.1:5432/TestDB", "postgres","pwd");
}
}
class DB
{
public DB() {}
public void dbConnect(String db_connect_string, String db_userid, String db_password)
{
try
{
Class.forName("org.postgresql.Driver");
Connection conn = DriverManager.getConnection(db_connect_string, db_userid, db_password);
System.out.println("connected");
}
catch (Exception e)
{
e.printStackTrace();
}
}
};
运行时出现以下错误
是不是在抱怨
Class.forName("org.postgresql.Driver");
如果是这样,那么驱动程序名称是什么?但是,出于学习目的,我遵循了这一点。
但是,如果我这样做
C:\Program Files (x86)\Java\jdk1.7.0\bin>java -cp C:\Users\pos
tgresql-9.2-1002.jdbc4.jar; JavaPostGreSQLConnectivity
connected
它有效。为什么我已经将驱动程序正确放置在类路径中时需要再次明确提及它?有没有其他方法(我只想将 JAR 文件放在 Classpath 中,程序应该从那里读取)?
提前致谢