如果输入第二个判断条件的内容(和第一个几乎一样除了名字),就又判断不了用户名密码了都,(控制台显示加载驱动,连接数据库,没有用户名密码正确。然后debug的话本来第一个if完了就下一个elseif,但是它下一步进入if里了,下一步直接最后一个else了(最后一个else还有弹窗呢都没弹),然后程序没了)
debug显示return b; 然后下一步到了if(denglu)函数,然后下一步到了最后一个else,然后就没了程序;
if(s.yanzheng1(tt)){//iftt管理员frame。
if(s.denlu1(tt, pp))
{
j1.dispose();
dl.setVisible(true);
}
else
JOptionPane.showMessageDialog(null,"用户名或密码不正确,请重新输入!");
}
else if(s.yanzheng2(tt)){//else if teacher frame
if(s.denlu2(tt, pp))
{
j1.dispose();
d2.setVisible(true);}
else
JOptionPane.showMessageDialog(null,"用户名或密码不正确,请重新输入!");}
public boolean yanzheng2(String tt){
Boolean b = false;
Statement st = null;
ResultSet rs = null;
try {
c= DBConnect.getConn();
String sql = "select* from teacher where name= '"+tt+"'" ;
st=c.createStatement();
rs = st.executeQuery(sql);
while (rs.next()) {
b = true;
}
} catch (Exception e) {
e.printStackTrace();
} finally {
DBclose.getclose(rs, st, null);
//rs.close(); st.close();
}
return b;