我想让它判断后重新执行查询可不可以
时间: 2023-08-13 09:05:30 浏览: 59
可以的,你可以将查询的代码放在一个方法中,然后在需要重新查询的地方调用该方法。具体实现可以参考下面的代码:
```
public Modife queryVerify(Modife modifeModel) {
String id = modifeModel.getID();
String pw = modifeModel.getPassword();
String npw = modifeModel.getnPassword();
String sqlStr ="select id,password from register where id = ? and password = ?";
try {
preSql = con.prepareStatement(sqlStr);
preSql.setString(1,id);
preSql.setString(2,pw);
rs = preSql.executeQuery();
if(rs.next()==true) {
modifeModel.setLoginSuccess(true);
JOptionPane.showMessageDialog(null,"登录成功","恭喜",JOptionPane.WARNING_MESSAGE);
} else {
modifeModel.setLoginSuccess(false);
JOptionPane.showMessageDialog(null,"登录失败","登录失败,重新登录",JOptionPane.WARNING_MESSAGE);
}
con.close();
} catch(SQLException e) {}
return modifeModel;
}
private boolean updatePassword(String id, String password) {
try {
preSql = con.prepareStatement("UPDATE register SET password=? WHERE id=?");
preSql.setString(1, password);
preSql.setString(2, id);
preSql.executeUpdate();
return true;
} catch(SQLException e) {
return false;
}
}
public Modife changePassword(Modife modifeModel) {
String id = modifeModel.getID();
String pw = modifeModel.getPassword();
String npw = modifeModel.getnPassword();
boolean success = false;
if(updatePassword(id, npw)) {
// 修改密码成功,重新执行查询
modifeModel = queryVerify(modifeModel);
}
return modifeModel;
}
```
其中,我们新建了一个updatePassword方法,用于修改密码。该方法返回一个boolean值,表示修改密码是否成功。在changePassword方法中,我们首先调用updatePassword方法,如果修改密码成功,就调用queryVerify方法重新执行查询。这样就能保证后面的判断使用的是新密码。
阅读全文