大学信息查询系统

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个项目中,你将学习如何使用 Java 和 MySQL 创建一个大学信息查询系统。本项目将指导你完成设置 MySQL 数据库、使用 Java 连接到该数据库以及查询有关学生、课程和教师信息的过程。

👀 预览

大学查询系统预览

🎯 任务

在本项目中,你将学习:

  • 如何启动 MySQL 服务并导入数据库
  • 如何创建 Java 项目目录并组织文件
  • 如何使用 Java 和 JDBC 驱动程序连接到 MySQL 数据库
  • 如何编写 Java 代码从数据库中查询信息并显示结果

🏆 成果

完成本项目后,你将能够:

  • 理解将 Java 应用程序连接到 MySQL 数据库的基础知识
  • 编写 Java 代码来执行 SQL 查询并检索数据
  • 开发一个简单的信息查询系统,该系统可以显示来自大学数据库的数据

启动 MySQL 服务并导入数据库

在这一步中,你将学习如何启动 MySQL 服务并导入 edusys.sql 数据库。请按照以下步骤完成此操作:

  1. 启动 MySQL 服务。你可以通过在终端中运行以下命令来实现:

    sudo service mysql start
  2. edusys.sql 数据库导入到 MySQL 中。你可以通过在终端中运行以下命令来实现:

    mysql -u root < /home/labex/project/edusys.sql

此命令将使用 root 用户将 edusys.sql 数据库导入到 MySQL 中。

创建一个 Java 项目目录

在这一步中,你将学习如何创建一个 Java 项目目录。请按照以下步骤完成此操作:

  1. 为你的 Java 项目创建一个新目录:

    mkdir /home/labex/project/demo
    cd /home/labex/project/demo
  2. 为你的项目创建必要的子目录:

    mkdir src lib bin
    • src 目录将包含你的 Java 源代码文件。
    • lib 目录将包含你的项目使用的任何外部库。
    • bin 目录将包含编译后的 Java 类文件。

移动 JDBC 驱动程序和 Java 文件

在这一步中,你将学习如何将 JDBC 驱动程序和 Querysys.java 文件移动到相应的目录中。请按照以下步骤完成此操作:

  1. 将 JDBC 驱动程序移动到 lib 目录:

    mv /home/labex/project/mysql-connector-java-8.0.21.jar /home/labex/project/demo/lib
  2. Querysys.java 文件移动到 src 目录:

    mv /home/labex/project/Querysys.java /home/labex/project/demo/src

实现查询系统

在这一步中,你将在 Querysys.java 文件中实现大学信息查询系统的代码。请按照以下步骤完成此操作:

  1. 在文本编辑器中打开 Querysys.java 文件。

  2. 将以下代码添加到 executeQuery() 方法中:

        public static void executeQuery() {
         // 在此处编写代码
         Connection connection = null;
         Statement stmt = null;
         ResultSet rs = null;
         try{
             // 在此处编写代码
             Class.forName("com.mysql.jdbc.Driver");
    
             String url = "jdbc:mysql://localhost:3306/edusys";
             String username = "root";
             String password = "";
             connection = DriverManager.getConnection(url, username, password);
    
             Scanner scanner = new Scanner(System.in);
    
             System.out.println("Enter the table to query:");
             System.out.println("1. student");
             System.out.println("2. course");
             System.out.println("3. instructor");
    
             int option = scanner.nextInt();
    
             String sql = "";
             switch (option) {
                 case 1:
                     sql = "SELECT ID, name, dept_name FROM student";
                     break;
                 case 2:
                     sql = "SELECT course_id, title, dept_name FROM course";
                     break;
                 case 3:
                     sql = "SELECT ID, name, dept_name FROM instructor";
                     break;
                 default:
                     System.out.println("Invalid option");
             }
    
             stmt = connection.createStatement();
             rs = stmt.executeQuery(sql);
    
             while (rs.next()) {
                 String column1 = rs.getString(1);
                 String column2 = rs.getString(2);
                 String column3 = rs.getString(3);
    
                 System.out.println(column1 + "\t" + column2 + "\t" + column3);
             }
         } catch (ClassNotFoundException e) {
             e.printStackTrace();
         } catch (SQLException e) {
             e.printStackTrace();
         } catch (Exception e) {
             e.printStackTrace();
         } finally{
             try {
                 if(rs!= null)rs.close();
                 if(stmt!= null)stmt.close();
                 if(connection!= null)connection.close();
             } catch (SQLException e) {
                 e.printStackTrace();
             } catch (Exception e) {
                 e.printStackTrace();
             }
         }
     }

    这段代码连接到 MySQL 数据库,提示用户选择要查询的表,执行相应的 SQL 查询,并将结果打印到控制台。

  3. 保存 Querysys.java 文件。

编译并运行程序

在这一步中,你将编译并运行 Querysys.java 程序。请按照以下步骤完成此操作:

  1. 编译 Querysys.java 文件:

    javac -d /home/labex/project/demo/bin/ /home/labex/project/demo/src/Querysys.java

    此命令将编译 Querysys.java 文件,并将编译后的类文件放置在 bin 目录中。

  2. 运行 Querysys 程序:

    java -cp /home/labex/project/demo/bin/:/home/labex/project/demo/lib/mysql-connector-java-8.0.21.jar Querysys

    此命令将运行 Querysys 程序,使用 bin 目录中的编译后的类文件和 lib 目录中的 JDBC 驱动程序。

    你应该会看到以下输出:

    Enter the table to query:
    1. student
    2. course
    3. instructor
    2
    BIO-101 Intro. to Biology       Biology
    BIO-301 Genetics        Biology
    BIO-399 Computational Biology   Biology
    CS-101  Intro. to Computer Science      Comp. Sci.
    CS-190  Game Design     Comp. Sci.
    CS-315  Robotics        Comp. Sci.
    CS-319  Image Processing        Comp. Sci.
    CS-347  Database System Concepts        Comp. Sci.
    EE-181  Intro. to Digital Systems       Elec. Eng.
    FIN-201 Investment Banking      Finance
    HIS-351 World History   History
    MU-199  Music Video Production  Music
    PHY-101 Physical Principles     Physics

恭喜!你已成功实现大学信息查询系统。

✨ 查看解决方案并练习

总结

恭喜!你已完成此项目。你可以在 LabEx 中练习更多实验以提升你的技能。

您可能感兴趣的其他 Java 教程