我已经用java创建了一个sql登录系统,但是我想知道什么只允许帐户类型为1的人访问这个程序。我写的查询总是出现错误。课程的安全性不是一个问题,因为它只是针对课程作业
public void login(){
try{
int a = 0;
int b =1;
String query ="select * from Users where Login = '"+
main_menu.login_text.getText()+"' and Password='"
+main_menu.passwordtext.getText().toString()+"' and Account Type='" +1+
"'" ;
rs =st.executeQuery(query);
System.out.println("Records from Database");
if(rs.next()){
f=2;
query ="select * from Users where Login = '"+
main_menu.login_text.getText()+"' and Password='"
+main_menu.passwordtext.getText().toString()+"' and Account Type='" +0+
"'" ;
rs =st.executeQuery(query);
System.out.println("Records from Database");
}
else if (rs.next()){
f=1;
}
else{
JOptionPane.showMessageDialog(null, "Incorrect Username
and Password...");
con.close();}
} catch(Exception ex){
System.out.println("Error"+ex);
}
1条答案
按热度按时间deikduxw1#
正如@luk2302所建议的,您应该更改代码。有了这个密码,你就可以轻易地破坏你的安全。
下面是一个如何改进的示例:
现在,您只需获取刚刚恢复的数据即可获取有关用户的信息。如果没有给出结果集,登录将失败。