Обсуждение: Can't get JDBC to compile. Please help.
I'm a beginner. I installed PostGRESQL 8.3 with edb_pgjdbc.exe on Windows XP SP2. The following test code won't compile: package javaapplication1; import java.sql.*; public class Main { public static void main(String[] args) { try { helloPostgresql(); } catch (Exception ex) { System.out.println("***Exception:\n"+ex); ex.printStackTrace(); } } public static void helloPostgresql() throws ClassNotFoundException, SQLException { Class.forName("org.postgresql.Driver"); Connection db = DriverManager.getConnection("jdbc:postgresql:pathos", "postgres", "cuy4867z"); PreparedStatement st = db.prepareStatement("INSERT INTO test VALUES (?,?,?)"); st.setInt(1, 5); st.setString(2, "'$10.00'"); st.setString(3, "'full checkup'"); st.executeUpdate(); st.close(); db.close(); } } NetBeans says: ***Exception: java.lang.ClassNotFoundException: org.postgresql.Driver java.lang.ClassNotFoundException: org.postgresql.Driver at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at javaapplication1.Main.helloPostgresql(Main.java:36) at javaapplication1.Main.main(Main.java:24) BUILD SUCCESSFUL (total time: 0 seconds) I've tried adding "E:\Program Files\PostgreSQL\pgJDBC" to the CLASSPATH. Any suggestions? -- View this message in context: http://www.nabble.com/Can%27t-get-JDBC-to-compile.-Please-help.-tp23013717p23013717.html Sent from the PostgreSQL - jdbc mailing list archive at Nabble.com.
You have to add the actual postgresql jar file to the classpath.
Dave
Dave
On Sun, Apr 12, 2009 at 2:48 PM, IronSheikh <kazisiddiqui@gmail.com> wrote:
I'm a beginner. I installed PostGRESQL 8.3 with edb_pgjdbc.exe on Windows XP
SP2.
The following test code won't compile:
package javaapplication1;
import java.sql.*;
public class Main {
public static void main(String[] args) {
try
{
helloPostgresql();
}
catch (Exception ex)
{
System.out.println("***Exception:\n"+ex);
ex.printStackTrace();
}
}
public static void helloPostgresql()
throws ClassNotFoundException, SQLException
{
Class.forName("org.postgresql.Driver");
Connection db = DriverManager.getConnection("jdbc:postgresql:pathos",
"postgres", "cuy4867z");
PreparedStatement st = db.prepareStatement("INSERT INTO test VALUES
(?,?,?)");
st.setInt(1, 5);
st.setString(2, "'$10.00'");
st.setString(3, "'full checkup'");
st.executeUpdate();
st.close();
db.close();
}
}
NetBeans says:
***Exception:
java.lang.ClassNotFoundException: org.postgresql.Driver
java.lang.ClassNotFoundException: org.postgresql.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at javaapplication1.Main.helloPostgresql(Main.java:36)
at javaapplication1.Main.main(Main.java:24)
BUILD SUCCESSFUL (total time: 0 seconds)
I've tried adding "E:\Program Files\PostgreSQL\pgJDBC" to the CLASSPATH. Any
suggestions?
--
View this message in context: http://www.nabble.com/Can%27t-get-JDBC-to-compile.-Please-help.-tp23013717p23013717.html
Sent from the PostgreSQL - jdbc mailing list archive at Nabble.com.
--
Sent via pgsql-jdbc mailing list (pgsql-jdbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc
IronSheikh wrote: > I'm a beginner. I installed PostGRESQL 8.3 with edb_pgjdbc.exe on Windows XP > SP2. > > The following test code won't compile: > NetBeans says: > ***Exception: > java.lang.ClassNotFoundException: org.postgresql.Driver > I've tried adding "E:\Program Files\PostgreSQL\pgJDBC" to the CLASSPATH. Any > suggestions? The error message is pretty clear - it can't find the driver. You don't add the entire directory to your classpath - just the JAR file containing the JDBC driver. -- Guy Rouillier