public class StaffDao {
//验证登录
public String CheckLogin(String username, String password){
String id = null;
String sql="select * from staff where staff_name='"+username+"' and staff_password='"+password+"'";
Statement stat = null;
ResultSet rs = null;
Connection conn = new DBHelper().getConn();
try{
rs = stat.executeQuery(sql);
while (rs.next()) {
id = rs.getString("staff_no");
}
}
catch(SQLException ex){}
return id;
}
//验证密码
public boolean CheckPassword(String id, String password){
boolean ps = false;
String sql="select *from staff where staff_no='"+id+"' and staff_password='"+password+"'";
Statement stat = null;
ResultSet rs = null;
Connection conn = new DBHelper().getConn();
try{
stat = conn.createStatement();
rs = stat.executeQuery(sql);
while (rs.next()) {
ps=true;
}
}
catch(SQLException ex){}
return ps;
}
Connection conn = new DBHelper().getConn();
很可能是你连接字符串不对,数据库配置问题等,getConn();返回了null
在Java中对值为null的指针调用任何方法,就会引发空指针异常(java.lang.NullPointerException)。空指针异常绝对是Java中最难查找和调试的一种异常,你永远无法得到任何有用的调试信息。通过个人日常总结和网上搜集整理,归纳如下,供大家参考。
空指针异常产生的主要原因如下:
所以在Java中一般报空指针异常的原因有以下几种:
1字符串变量未初始化;
2接口类型的......
答案就在这里:空指针问题(java.lang.NullPointerException)
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
conn没有获取到,看下getConn(); 这个怎么拿到Connection 的是不是配置的问题
您好 Statement stat = null; 你定义了数据库操作对象为null,
但是你的代码中没有去通过conn来获取数据库操作对象,
直接stat.executeQuery(sql);它的意思就是null.executeQuery(sql)所以报空指针
解决方法 stat = conn.获取数据库操作对象的方法
空引用一场StaffDao 19行