如何连接postgresql?新手问题

jarodzhao 2014-10-19 08:40:59
package jarod;

import java.sql.*;
//import org.postgresql.*; 这里无法导入,所以注释了

public class T1
{
public static void main(String[] args)
{
try
{
Class.forName("org.postgresql.Driver"); //通过项目引用jar时,此句注释掉仍可运行!

String url="jdbc:postgresql://localhost:5432/mydb";
String username="zht";
String password="135417";
String sql="SELECT * FROM weather";

//能正常显示了,总是好事!
Connection conn=DriverManager.getConnection(url,username,password);

Statement st=conn.createStatement();
ResultSet rs=st.executeQuery(sql);

while(rs.next()){
System.out.print(rs.getInt(1)+". ");
System.out.println(rs.getString(2));
}
rs.close();
st.close();
conn.close();

}catch(Exception e){

e.printStackTrace();
}
}
}


新手入门,查了N多教程。都是这样的。。。。怎么就是不能正常连接呢?
通过项目构建时添加外部jar时可以正常运行,但使用系统环境变量的classpath时不行。不明所以
classpath 如下:
classpath=.;C:\Program Files\Java\jdk1.6.0_13\lib\;C:\Program Files\Java\jdk1.6.0_13\lib\d
t.jar;C:\Program Files\Java\jdk1.6.0_13\lib\tools.jar;C:\Program Files\Java\jdk1
.6.0_13\lib\sqlitejdbc-0.5.4.jar;C:\Program Files\Java\jdk1.6.0_13\lib\postgresq
l-9.3-1102.jdbc4.jar

JAR 文件也放在 lib 目录了
C:\Program Files\Java\jdk1.6.0_13\lib 的目录

2014/10/19 16:15 <DIR> .
2014/10/19 16:15 <DIR> ..
2014/10/11 09:07 14,727,867 ct.sym
2014/10/11 09:07 145,492 dt.jar
2014/10/11 09:07 205,973 htmlconverter.jar
2014/10/11 09:07 18,381 ir.idl
2014/10/11 09:07 1,692 jawt.lib
2014/10/11 09:07 393,222 jconsole.jar
2014/10/11 09:07 246,958 jvm.lib
2014/10/11 09:07 429 orb.idl
2014/10/16 20:57 592,407 postgresql-9.3-1102.jdbc4.jar----------------------不能正常导入
2011/10/19 10:56 2,314,530 sqlitejdbc-0.5.4.jar-------------------------------------不能正常导入
2014/10/11 09:07 12,506,726 tools.jar
2014/10/11 09:07 <DIR> visualvm
11 个文件 31,153,677 字节
3 个目录 6,406,336,512 可用字节



新手入门。。。。诚恳求助,请勿拍砖!
...全文
242 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jarodzhao 2014-10-20
  • 打赏
  • 举报
回复
是不是问题太初级了。。。没办法,新手按书上说的操作,怎么都不行!
jarodzhao 2014-10-20
  • 打赏
  • 举报
回复
引用 5 楼 yktd26 的回复:
可以把你的postgresql-9.3-1102.jdbc4.jar放在你的jre的lib/ext里面
搞定了,原来需要放在C:\Program Files\Java\jre6\lib\ext 而不是C:\Program Files\Java\jdk1.6.0_13\jre\lib\ext 终于一扫多日阴霾。。。。。偶入门了!哈哈 多谢了!
jarodzhao 2014-10-20
  • 打赏
  • 举报
回复
jar已经放在jre/lib/ext后,提示好像和之前一样,没什么变化 import org.postgresql.*; 无法解析导入 Class.forName("org.postgresql.Driver");通过这种方式加载提示如下: java.lang.ClassNotFoundException: org.postgresql.Driver at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at jarod.T1.main(T1.java:12)
yktd26 2014-10-20
  • 打赏
  • 举报
回复
别放在jdk的lib里,没啥用
yktd26 2014-10-20
  • 打赏
  • 举报
回复
可以把你的postgresql-9.3-1102.jdbc4.jar放在你的jre的lib/ext里面
jarodzhao 2014-10-20
  • 打赏
  • 举报
回复
Classpath 设置需要把jar的文件名也放路径里吗?
还有驱动是放在lib目录中吗?

用的eclipse ,晚会把错误信息贴上
student-ai 2014-10-20
  • 打赏
  • 举报
回复
你是用的myeclipse吗?可以先用myeclipse试试,代码看起来没什么问题,可以把报错的日志放出来看看

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧