我正在使用mysql數據庫。如何從mysql數據庫驗證我的密碼字段中的密碼?
我的代碼工作時,我使用的名稱和ID從數據庫中進行驗證。 但是當我使用密碼進行驗證時,我不能因爲它被哈希/加密。 我想,如果從數據庫中的密碼相匹配的ID,然後在成功
我的驗證按鈕: 老師是我的表
try {
String url = "jdbc:mysql://localhost:3306/GradeSystem";
String username = "root";
String password = "";
com.mysql.jdbc.Connection con = (com.mysql.jdbc.Connection) DriverManager.getConnection(url, username, password);
Statement stmt = con.createStatement();
String sql="SELECT * from TEACHER";
ResultSet rs = stmt.executeQuery(sql);
String user=TID.getText();//variable name of my firsttxtfield
String pwd= new String (TPASS.getText());//variable name of my 2nd txtfield
int tmp=0;
while(rs.next()) {
String uname=rs.getString("TID");//TID name in my database
String pssword=rs.getString("TPASS"); //TID name in my database
if ((user.equals(uname)) && (pwd.equals(pssword)))
{
this.dispose();
new TeacherAccount().setVisible(true);
tmp++;
}
}
if (tmp==0) {
JOptionPane.showMessageDialog(null, "Incorrect Password and Username!");
}
}
catch (Exception e){
JOptionPane.showMessageDialog(this, e.getMessage());
}//i know my code is unclean im trying to implement first :)
任何想法如何解決這個或任何其他外觀圖釋實施相同?對不起英文不好。
你必須散列給出的密碼,然後比較它。 – ChiefTwoPencils
我使用這個插入到mysql:Password.getText()和檢索Password.getText()=這個工程(ofc的密碼是可見的)。但我當我用來插入Password.getPassword,我不能使用Password.getPassword?如何獲取密碼? – Lonewulf