大家好!我是刚刚学java的,用的是sql2005和JBuilder2006.下面是程序代码。原来在我的笔记本上运行一切正常。因笔记本速度太慢最近配了台新机子,安装了sql2005和JBuilder2006,将数据库导入新机后,运行程序就报错。报错信息如下:
java.lang.NullPointerException
at com.dao.SearchDao.getBean(SearchDao.java:24)
at com.frame.MianBan.jButton1_actionPerformed(MianBan.java:131)
at com.frame.MianBan_jButton1_actionAdapter.actionPerformed(MianBan.java:267)请问是什么原因,JBuilder中JDBC的配置和笔记本中的一样,是不是sql2005数据库的问题?????数据库我也导过来了。代码我没有修改过,这是什么原因,马上要考试了,请各位帮帮我,谢谢!!!!!!!!!!!
java.lang.NullPointerException
at com.dao.SearchDao.getBean(SearchDao.java:24)
at com.frame.MianBan.jButton1_actionPerformed(MianBan.java:131)
at com.frame.MianBan_jButton1_actionAdapter.actionPerformed(MianBan.java:267)请问是什么原因,JBuilder中JDBC的配置和笔记本中的一样,是不是sql2005数据库的问题?????数据库我也导过来了。代码我没有修改过,这是什么原因,马上要考试了,请各位帮帮我,谢谢!!!!!!!!!!!
如果你对null 进行操作就会产生空指针异常
Object obj = new Object();
你要知道 obj是一个Object指针变量,指向Object类的一个实例
我们说obj是一个对象 实质是它指向一个对象的首地址
如果这个指针变量obj 没有指向任何空间 你调用它的方法和属性就会出错
例如 Object obj = new Object();
obj.equals("123");这个是没错的
但换下面语句 Object obj = null;
obj.equals("123");就会出现空指针异常
估計是你指向數據庫的時候出現了問題。。
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import com.connt.Connet;
import java.sql.Connection;public class SearchDao { public SystemBean getBean(int questionId){ Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
SystemBean bean = null; try{ conn = Connet.getConn();
String sql = "select * from question where questionId=?";
ps = conn.prepareStatement(sql);
ps.setInt(1,questionId);
rs = ps.executeQuery(); if(rs.next()){
bean = new SystemBean();
bean.setContent(rs.getString("Content"));
bean.setOptionA(rs.getString("OptionA"));
bean.setOptionB(rs.getString("OptionB"));
bean.setOptionC(rs.getString("OptionC"));
bean.setOptionD(rs.getString("OptionD"));
bean.setAnswers(rs.getString("Answers")); } }catch(Exception e){
e.printStackTrace();
}finally{
Connet.SFa(rs,ps);
Connet.SFb(conn);
}
return bean;
}
}
能把这方法的内容贴上来么.
改成ps.setInt(0,questionId);试试!!我记得用不同的JAVA包时,,这各setXXX(1,XXX)的方法是有点不同的.
有的从0 开始,有的从容1 开始!!
at com.dao.SearchDao.getBean(SearchDao.java:24)
at com.frame.MianBan.jButton1_actionPerformed(MianBan.java:131)
at com.frame.MianBan_jButton1_actionAdapter.actionPerformed(MianBan.java:267)