如何根据登录信息

时间:2016-05-16 19:45:38

标签: java mysql database swing netbeans

我正在使用sqlworkbench上的mysql数据库在netbeans上创建一个java应用程序,我在数据库中创建了一个登录jframe和一个登录表。检查数据库中的用户名和密码是否退出,如果为true则继续,并显示员工jframe。如果他/她输入用户名和密码,我如何让它为管理员显示不同的jframe。就像我应该在登录信息表中添加一个列,该列确定该员工或经理的帐户。但是当点击登录jframe上的按钮时它会怎么知道?就像我应该除了这样的查询,但它如何进行比较然后显示例如,如果员工的jframe被命名为jframe1而jframe for manager是jframe2

        String sql;
        String S=jTextField1.getText();
        String S1=jPasswordField1.getText();
        String S3=jComboBox1.getSelectedItem().toString();
        sql="SELECT * from user_pass where username='"+S+"' and password='"+S1+"' and type='"+S3+"'";
        ResultSet rs=stmt.executeQuery(sql);
        if(rs.next()){

1 个答案:

答案 0 :(得分:4)

您可以尝试类似下面的解决方案。代码不完整,但会帮助您解决问题。

public class MySqlApp extends JFrame
{
    CardLayout cardLayout = new CardLayout();

    JPanel main = new JPanel();
    JPanel employee = new JPanel();
    JPanel manager = new JPanel();

    public MySqlApp()
    {
        setLayout(new BorderLayout());
        main.setLayout(cardLayout);
        main.add(employee, "employee");
        main.add(manager, "manager");

        add(main, BorderLayout.CENTER);

        String sql="SELECT * from user_pass where username='"+S+"' and password='"+S1+"' and type='"+S3+"'";
        ResultSet rs=stmt.executeQuery(sql);
        if(rs.next())
        {
            if("manager".equalsIgnoreCase(rs.getString("AccountType")))
            {
                cardLayout.show(main, "manager");
            }
            else
            {
                cardLayout.show(main, "employee");
            }
        }
    }
}
相关问题