网站..jsp+servlet+数据库..这是我的dbHelper的selectsql方法...执行不了sql语句..断点到 prepar = conn.prepareStatement(sql);这里就报错空..说是空引用..
public static ResultSet SelectSql(String sql, Object[] object) {
for (int i = 0; i < object.length; i++) {
if (!Common.CheckParameter((String) object[i])) {
object[i] = "null";
}
} try {

prepar = conn.prepareStatement(sql); for (int i = 0; i < object.length; i++) {
prepar.setString(i + 1, (String) object[i]);
}

res = prepar.executeQuery();
} catch (Exception e) {
e.printStackTrace();
} return res;
}
这是调用上面那个方法的方法
public static Admin CheckAdmin(String name, String pwd) {
Admin admin = null;
if (!Common.CheckParameter(name + pwd)) {
name = "null";
pwd = "null";
}
try {
String sql = "select count(*) from admin where adminID=? and pwd=?"; Object[] object = { name, pwd }; MysqlHelper.SelectSql(sql, object); if (res.next()) {
if (res.getInt(1) > 0) {
admin = GetAdminInfo(name);
} else {
admin = null;
}
}
} catch (Exception e) {
admin = null;
e.printStackTrace();
}
return admin;
}
帮忙看看....没招了...

解决方案 »

  1.   

    额 prepar = conn.prepareStatement(sql);里的conn是哪里来的、或者你确定它被初始化了?
      

  2.   

    确认下conn对象是不是空的,即null。很可能是他的原因。
      

  3.   

    确认下conn对象是不是空的,即null。很可能是他的原因。
      

  4.   


    小弟初搞java的东西、还请多多指教!
    sqlHlper的变量一般都在页面顶部。错误就是空引用、单纯的空引用错误、除了这个没任何提示
      

  5.   

    +1 如果是这行出错了,只能是conn未被初始化。
      

  6.   

    1. 请确认你的conn是否为空
    2. 既然已经知道异常所在位置,不妨自己debug到该行,就可以知道原因了。