2013-10-22 59 views
0

我正在使用NetBeans,並使用拖放gui創建了一堆表單文本字段和按鈕。如何讓所有類的用戶登錄ID

我已經創建了這個漂亮的登錄頁面,用戶從本地數據庫輸入用戶ID和密碼,我想存儲輸入的用戶ID以便在另一個表單(「我的個人資料」頁面)上使用,然後查詢數據庫並獲取有關該用戶的詳細信息。爲此,我需要將用戶ID作爲當前用戶存儲並在另一個類中使用。

我已經嘗試了很多東西,但問題是,用戶輸入數據的地方是在一個私人無效的方法,我似乎無法得到任何變量,這是它看起來像。

private void jButton6MouseClicked(java.awt.event.MouseEvent evt) {          
    String sql = "select * from user where userid='" +userid.getText() 
       + "' and password='" +password.getText()+"'"; 
    try { 
     pst = conn.prepareStatement(sql); 
     rs = pst.executeQuery(); 
     if (rs.next()) { 
      JOptionPane.showMessageDialog(null, "Welcome"); 
      dispose(); 
      currentuser = rs.getString("userid"); 

      HomePageMember form5 = new HomePageMember(); 
      form5.setVisible(true); 
     } else { 
      JOptionPane.showMessageDialog(null, 
         "Sorry, Invalid Login ID or Password"); 
     } 
    } catch(Exception e) { 
     JOptionPane.showMessageDialog(null, e); 
    } 

public class LoginPage extends javax.swing.JFrame { 
    Connection conn = null; 
    ResultSet rs = null; 
    PreparedStatement pst = null; 
    private String currentuser; 
    public String getText() { 
     return this.currentuser; 
     // something like this, but it doesn't work 
    } 

//Then in another class have this 
displayuserid.setText("currentuser") 

回答

0

很抱歉,但你的代碼開始是很奇怪:

  • jButton6MouseClicked屬於哪一類?
  • 你的大括號中的2個永遠不會關閉。

現在給你一個如何進行的想法: - 假設你的方法jButton6MouseClicked屬於一個類LogIn。這個類只需要一個類屬性currentUser和一個getter屬性。然後,設置裏面jButton6MouseClicked(事實上,它是私有不會改變任何東西)這個屬性,這樣你就可以從任何其他類此currentUser:如果您正在使用從其他地方登錄類

public class LogIn { 

    private String currentUser; 

    public String getCurrentUser() { 
     return this.currentUser(); 
    } 

    // ... Here code to get the user enter login and password 

    private void jButton6MouseClicked(java.awt.event.MouseEvent evt) { 

    // ... same code as yours 

    } // Close the brace 

} // And the second one 

現在,假設您的班級實例稱爲登錄,您可以通過調用以下方式獲取當前用戶:

login.getCurrentUser();