使用SQL的Java登录程序

标签 java mysql eclipse

我正在为我的学校商店制作一个程序,希望得到你们这些聪明人的帮助。

我浏览了工作台上的 SQL 教程,还查找了一些有关如何实现我想要实现的目标的视频,但是,目前我对 SQL 很糟糕。我有一段代码,如果你们中一位更熟悉 SQL 的人能够帮助我解决这些错误,那就太好了。

class loginButton implements ActionListener{

    public void actionPerformed(ActionEvent e) {
        Connection connection;
        PreparedStatement ps;
        try {
            connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/userlist", "root", "Hadasada3!");
            ps = connection.prepareStatement("SELECT `username`, `password` FROM `userlist` WHERE `username` = ? AND `password` = ?");
            ps.setString(1, textUsername.getText());
            ps.setString(2, String.valueOf(textPassword.getPassword()));
            ResultSet result = ps.executeQuery();
            if(result.next()){
                JOptionPane.showMessageDialog(null, "Login Success.");
                String[] args = null;
                CowboyCorral.main(args);
                dispose();
            }
            else{
                JOptionPane.showMessageDialog(null, "Login Failed.");
            }
        } catch (SQLException ex) {
            Logger.getLogger(CCLogin.class.getName()).log(Level.SEVERE, null, ex);
        }
      }
    }
    buttonLogin.addActionListener(new loginButton());

我正在使用 Eclipse,以及工作台中修改后的示例代码。我有 SQL 工作台在端口 3306 上的 localhost 上运行数据库,架构和表称为 userlist。当此代码为文本时,它显示没有错误。当我运行程序并按下登录按钮时,它显示 No合适的驱动程序找到 jdbc:mysql://localhost:3306/userlist。如果需要,我可以提供额外的错误信息,但如果有人可以指出我正确的方向,或者甚至告诉我我的错误在哪里,那将不胜感激。

我在项目的引用库中还有mysql-connector-java-5.1.38-bin.jar

最佳答案

失踪

Class.forName("com.mysql.jdbc.Driver");

创建连接之前。还可以考虑将部分代码放入“服务”类,而不是 ActionListener 中的所有内容,创建连接并从数据库获取用户数据可以由程序中的其他类使用,并且您将重复代码,这是不好的做法。

关于使用SQL的Java登录程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696910/

相关文章:

java - JSONObject 类型的方法 getJSONObject(String) 未定义

java - Spark 与 Hive : Table or view not found

java - 部署 JPA 实体时出错 - SQL 语法错误代码 1064

java - 检测标签的正则表达式

java - 如何 stub 我测试类的私有(private)方法调用

java - Eclipse Luna 的 Google 插件不显示图标

Java 到 Kotlin 的转换问题 | - 或/& - 和

java - Android 通过 SSL 使用 NTLM 失败

mysql - MySQL事务中的多行多值更新

php - 选择 SQL 上方和下方的行