用Java登录显示所有用户和所有usertypes

时间:2013-11-17 10:53:16

标签: java ms-access netbeans jdbc jdbc-odbc

我遇到了问题,目前我的数据库看起来像这样:

  

ID用户名UserType

     

1 Nies管理员2 Trinity会员

当我使用用户名:Nies

登录时

程序响应,但它给了我一个显示两个用户名的对话框。 我想只有当我使用用户名:Nies登录时,该程序还给了我一个对话框,其中只显示该用户名..

我该如何解决?

以下是显示用户名和对话框的代码:

private void GetUsername(Connection conn, Statement state, ResultSet result)
    {
        try
        {
            String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
            Class.forName(driver);

            String url = "jdbc:odbc:Database";

            conn = DriverManager.getConnection(url);

            state = conn.createStatement();

            String query = "select * from Member";

            result = state.executeQuery(query);

            while(result.next())
            {
                user = result.getString("Username");
                userType = result.getString("UserType");

                _userInformation.setUser(user);
                _userInformation.setUserType(userType);

                _sound.PlaySound(1);
                _infoBox.ShowMessageBox("Welcome! " + _userInformation.getUser() + " - " + _userInformation.getUserType() + " ", "Welcome" , 1);
            }
        } 

        catch (Exception e) 
        {
            System.err.println(e.getMessage());

            _sound.PlaySound(2);

            _infoBox.ShowMessageBox(e.getMessage(), "Error", 2);

            _reminder = new Reminder(1);

            JOptionPane.showOptionDialog(null, "Program will be closed due to error", "Error", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, null, new Object[]{}, null);

            System.exit(0);
        }
    }

_infoBox.ShowMessageBox是InfoBox类中的实例ShowMessageBox函数,该函数存储JOptionPane。

1 个答案:

答案 0 :(得分:0)

为该检查添加if条件。

If( user.equals("Nies Administrator") &&
                userType.equals("Trinity Member")){

 _sound.PlaySound(1);
 _infoBox.ShowMessageBox("Welcome! " + _userInformation.getUser() 
           + " - " + _userInformation.getUserType() + " ", "Welcome" , 1);

}else{

 // tell something to user
}

如果您想在没有案例检查的情况下进行比较,请使用equalsIgnoreCase