出现错误:java.lang.NullPointerException

studingsea 2004-08-05 10:59:49
index.jsp
_____________________________
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@page pageEncoding="GBK"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>留言本首页</title>
</head>

<body>
<jsp:useBean id="DBconn" scope="page" class="sea.DBconn"/>
<%
try{
Connection Conn=DBconn.GetConn();
out.println(Conn);
Statement stmt=Conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
String sql="select * from info order by id DESC";
ResultSet rs=stmt.executeQuery(sql);
while (rs.next()){
out.println(rs.getString("Title")+"<br>");
//out.println(rs.getString("URL")+"<br>");
}
}
catch(Exception e){
out.println("异常:"+e);
}
%>
</body>
</html>
_______________________________________
package sea;

import java.sql.*;

public class DBconn {

String url;
String user;
String pwd;
Connection conn;

public DBconn() {
url =
"jdbc:odbc:guestbook2";
user = "";
pwd = "";
conn = null;
}

public Connection GetConn() {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection(url, user, pwd);
}
catch (Exception exception) {
exception.printStackTrace();
}
return conn;
}
}
------------------
错误如下:null 异常:java.lang.NullPointerException
...全文
509 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
newbj2008 2004-08-05
  • 打赏
  • 举报
回复
你查查传递的参数,以及数据库中的数据有没有null值,空指针错误,一定和数据连接无关

你还是将变量打印出来看看吧!~

这样的错误很常见,多数是你认为空“”字符串的数据,实际是null值导致的!~
studingsea 2004-08-05
  • 打赏
  • 举报
回复
odbc有配置确定好了的,不然留言本就不能用的
angelheart 2004-08-05
  • 打赏
  • 举报
回复
url ="jdbc:odbc:guestbook2";

guestbook2是系统DSN名,你需要配置ODBC,或者直接用ACCESS驱动:

String strdbFile = "d:\xxxx.mdb";
String url ="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + strdbFile;
galewithwing 2004-08-05
  • 打赏
  • 举报
回复
public DBconn() {
url =
"jdbc:odbc:guestbook2";
user = "";
pwd = "";
conn = null;
}
很明显是url错误!
你的odbc配置好了吗?
确定
studingsea 2004-08-05
  • 打赏
  • 举报
回复
是的,我真的搞不懂,在别人的留言本中,同样用数据源guestbook2,同样的程序,就可以,但是我把别人的.java拿出到别外一个文件夹,(也是在jsp-examples目录下建一个book目录)再编译成.class,放到WEB-INF\classes\sea下不行,
但它的也是WEB-INF\classes\MyJsp就可以,总是反回空的指针,原来的留言本就不会

总体就是改变了一下包名和把程序放在了一个同级目录下就不行了,真的不知道天理何在
凋零的老树 2004-08-05
  • 打赏
  • 举报
回复
空指针错误,就是操作了null的变量
loveunittesting 2004-08-05
  • 打赏
  • 举报
回复
没错,程序别做别的事,先输出conn看看,多数原因是connection没获得
studingsea 2004-08-05
  • 打赏
  • 举报
回复
我是新手,jbuilder也不是太会用,我下载别人的留言本就可以,但是我把人的.java文件拿出来,自己想试一下,改变一下package名就不行了
lazyfish 2004-08-05
  • 打赏
  • 举报
回复
设置断点,调试一下就知道哪里出错了
studingsea 2004-08-05
  • 打赏
  • 举报
回复
我已经在控制面板-->数据源,加了一个access用户数据源,名为guestbook2
chancelin 2004-08-05
  • 打赏
  • 举报
回复
把这段
catch(Exception e){
out.println("异常:"+e);
}
改为
}catch(Exception e){
e.printStackTrace();
}

找出到底是哪个变量为空指针再说。
studingsea 2004-08-05
  • 打赏
  • 举报
回复
谢谢各位,可能是tomcat错误,或缓存错误,我重启计算机又可以 了

81,092

社区成员

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

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