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

🎯 任务
在本项目中,你将学习:
- 如何启动 MySQL 服务并导入数据库
- 如何创建 Java 项目目录并组织文件
- 如何使用 Java 和 JDBC 驱动程序连接到 MySQL 数据库
- 如何编写 Java 代码从数据库中查询信息并显示结果
🏆 成果
完成本项目后,你将能够:
- 理解将 Java 应用程序连接到 MySQL 数据库的基础知识
- 编写 Java 代码来执行 SQL 查询并检索数据
- 开发一个简单的信息查询系统,该系统可以显示来自大学数据库的数据
启动 MySQL 服务并导入数据库
在这一步中,你将学习如何启动 MySQL 服务并导入 edusys.sql 数据库。请按照以下步骤完成此操作:
启动 MySQL 服务。你可以通过在终端中运行以下命令来实现:
sudo service mysql start将
edusys.sql数据库导入到 MySQL 中。你可以通过在终端中运行以下命令来实现:mysql -u root < /home/labex/project/edusys.sql
此命令将使用 root 用户将 edusys.sql 数据库导入到 MySQL 中。
创建一个 Java 项目目录
在这一步中,你将学习如何创建一个 Java 项目目录。请按照以下步骤完成此操作:
为你的 Java 项目创建一个新目录:
mkdir /home/labex/project/demo cd /home/labex/project/demo为你的项目创建必要的子目录:
mkdir src lib binsrc目录将包含你的 Java 源代码文件。lib目录将包含你的项目使用的任何外部库。bin目录将包含编译后的 Java 类文件。
移动 JDBC 驱动和 Java 文件
在这一步中,你将学习如何将 JDBC 驱动程序和 Querysys.java 文件移动到相应的目录中。请按照以下步骤完成此操作:
将 JDBC 驱动程序移动到
lib目录:mv /home/labex/project/mysql-connector-java-8.0.21.jar /home/labex/project/demo/lib将
Querysys.java文件移动到src目录:mv /home/labex/project/Querysys.java /home/labex/project/demo/src
实现查询系统
在这一步中,你将在 Querysys.java 文件中实现大学信息查询系统的代码。请按照以下步骤完成此操作:
在文本编辑器中打开
Querysys.java文件。将以下代码添加到
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 查询,并将结果打印到控制台。
保存
Querysys.java文件。
编译并运行程序
在这一步中,你将编译并运行 Querysys.java 程序。请按照以下步骤完成此操作:
编译
Querysys.java文件:javac -d /home/labex/project/demo/bin/ /home/labex/project/demo/src/Querysys.java此命令将编译
Querysys.java文件,并将编译后的类文件放置在bin目录中。运行
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 中练习更多实验以提升你的技能。



