You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

54 lines
1.9 KiB

package com.example;
import com.example.controller.CourseController;
import com.example.view.CourseView;
/**
* 湖大选课系统主应用类
* MVC架构入口,协调Controller和View
*/
public class HnuCourseSystem {
public static void main(String[] args) {
// 创建Controller和View
CourseController controller = new CourseController();
CourseView view = new CourseView();
// 初始化数据库
controller.initDatabase();
try {
int choice;
do {
// 显示菜单
view.displayMenu();
// 获取用户选择
choice = view.getUserChoice();
// 根据选择执行相应操作
switch (choice) {
case 1 -> view.displayOverallStatistics(controller.getOverallStatistics());
case 2 -> view.displayCourseTypeDistribution(controller.getCourseTypeDistribution());
case 3 -> view.displayDepartmentDistribution(controller.getDepartmentDistribution());
case 4 -> view.displayCreditDistribution(controller.getCreditDistribution());
case 5 -> view.displayTopCourses(controller.getTopCourses());
case 6 -> view.displayCourseUsageRate(controller.getCourseUsageRate());
case 7 -> view.displayDepartmentStatistics(controller.getDepartmentStatistics());
case 0 -> view.displayExitMessage();
default -> view.displayInvalidChoice();
}
// 非退出操作时等待用户确认
if (choice != 0) {
view.displayContinuePrompt();
}
} while (choice != 0);
} finally {
view.close();
}
}
}