0
点赞
收藏
分享

微信扫一扫

基于Java swing实现的学生选课管理系统


摘 要

随着社会的发展,学生的人数和课程的种类急速增加,传统的选课管理模式已经无法满足当前的实际需求,为此,我们开发了学生选课管理系统。

本人结合学生选课管理的实际需要,完成了对学生选课管理系统的需求分析、功能模块划分、数据库模式分析等,并由此设计了后台数据库以及前台应用程序。

文中首先对课题背景,数据库基础理论和SQL语言进行了简单的讨论;接着,对学生选课管理系统进行了详细分析,划分了具体的功能模块,最后,给出了学生选课系统应用程序的设计过程,以及每个功能模块的核心代码。

系统可以实现学生选课的一些重要功能,如:学生的添加、更改、删除,信息查询。课程的添加、更改、删除,信息查询。学生选课的添加、删除、更改课程,信息查询。以及学生选课管理人员、用户个人信息的维护、系统退出等。

关键词: 管理系统;数据;MySQL;查询;修改;增加;删除;JTable

第一章 需求分析

1.1 研究背景

当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最到好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。

尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好学生选课信息而设计的。

学生选课作为一种信息资源的集聚地,包含很多的信息数据的管理。由于数据繁多,容易丢失,且不易查找。总体来说,缺乏系统,规范的信息管理手段。尽管有的学校有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发基本环境。

数据处理手工操作,工作量大,出错率高,出错后不易更改。造成了时间上的浪费。

基于这个问题,我认为有必要建立一个学生选课系统,使学生选课信息管理工作规范化、系统化、程序化,避免学生选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。

1.2 课题的设计

本文就学生选课系统的设计与制作展开分析。学生选课系统主要应用Java Swing技术、Java事件处理机制和JDBC数据库技术来进行学生选课系统的开发与实现,我主要是应用Java Swing为前端开发工具,利用SQL语言实现数据查询。设计系统时,先从系统的数据流程开始分析,设计系统的业务流程图、系统的数据流程图、系统的E-R图。根据开题报告的设计要求开始进入系统的总体设计,接着制定系统的设计思想,分析系统的功能并设计系统的功能模块,这些都是系统制作前的准备工作;准备工作完成后,开始系统数据库和Swing主要布局界面的建立,主要有各个功能窗口的设计,将设计好的窗口集中到主菜单上,通过用户的用户名和密码的登录可以进入到主窗口,这样就完成系统的制作。最后,对系统进行调试,性能分析。

1.3 系统介绍

开发一个学生选课管理系统,主要有三个部分:系统管理,数据管理,数据查询。 

  • 系统管理主要用于用户信息的相关管理。主要包括密码设置、用户登录、退出三个功能
  • 数据管理主要用于信息的增加、删除、更改,主要包括学生管理、课程管理和选课管理三大模块。其中学生管理下有添加了添加学生、删除学生、修改学生三大功能,同样课程和选课也有增加、删除、修改这三大功能
  • 数据查询主要用于查询信息管理,主要包括查询学生信息管理、查询课程信息和查询选课信息三大功能

1.4 系统面向的用户群体

本系统为某高校所开发。立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提学生选课管理的现代化发展,实现信息资源的共享。系统的建成无疑会为广大师生提供极大的帮助。

1.5 开发环境

  • Eclipse应用程序
  • MySQL数据库

第二章 系统总体设计

该系统的设计是充分考虑到学生的管理和课程的管理两个大的方面,首先管理员需要根据正确的账号密码登陆到系统主界面,然后才能对该系统实施操作,否则不能登陆该系统。系统中主要包含的容有: 

  • 学生管理中的增、删、改、查等功能
  • 课程管理中的增、删、改、查等功能
  • 学生选课管理中的增、删、改、查等功能
  • 以上操作都直接关联数据库
  • 数据库采用的是MySQL数据库

第三章 模块设计

根据需求分析阶段得到的功能需求,可将系统功能大概分为六个模块:这几个模块用户登录、学生管理、课程管理、选课管理、查询管理、系统退出

3.1 用户登录

3.1.1 登录实体截图

基于Java swing实现的学生选课管理系统_数据查询

3.2 主界面

主界面主要是用于对选择相应的功能进行相应的功能,主界面主要包括学生管理、课程管理、选课管理、数据查询、系统退出五大功能。    主界面添加JMenuBar菜单条,和JMenu菜单,和JMenuItem菜单项。三个菜单包括:学生管理、课程管理、选课管理和数据查询。学生管理中包括:增加学生、修改学生、删除学生。课程管理中包括:增加课程、修改课程、删除课程。选课管理中包括:增加选课、修改选课、删除选课。数据查询主要包括学生查询、课程查询、选课查询。还有一个单独的系统退出。

基于Java swing实现的学生选课管理系统_信息管理_02

3.3 数据库连接

学生、课程以及成绩的增删改查都是建立在连接数据库的基础之上,在MySQL里建立用户管理员表、学生表、课程表、选课表等。建立JDBC数据源的连接。

连接数据库重要代码:

  1. ​public class DBUtil {​
  2. ​static Connection con;​
  3. ​public static Statement st;​
  4. ​static PreparedStatement ps;​
  5. ​public static ResultSet rs;​
  6. ​static String url="jdbc:mysql://localhost:3306/studb?useUnicode=true&characterEncoding=UTF-8";​
  7. ​static String name="root";​
  8. ​static String pwd="123456";​
  9. ​public static void initst() {​
  10. ​try {​
  11. ​Class.forName("com.mysql.jdbc.Driver");​
  12. ​con=DriverManager.getConnection(url,name,pwd);​
  13. ​st=con.createStatement();​
  14. ​} catch (SQLException e) {​
  15. ​e.printStackTrace();​
  16. ​}catch (ClassNotFoundException e) {​
  17. ​e.printStackTrace();​
  18. ​}​
  19. ​}​
  20. ​public static void initps(String sql) {​
  21. ​try {​
  22. ​Class.forName("com.mysql.jdbc.Driver");​
  23. ​con=DriverManager.getConnection(url,name,pwd);​
  24. ​ps=con.prepareStatement(sql);​
  25. ​rs= ps.executeQuery();​
  26. ​} catch (SQLException e) {​
  27. ​e.printStackTrace();​
  28. ​}catch (ClassNotFoundException e) {​
  29. ​e.printStackTrace();​
  30. ​}​
  31. ​}​
  32. ​public static void closeDB() {​
  33. ​try {​
  34. ​if (rs!=null) {​
  35. ​rs.close();​
  36. ​}​
  37. ​if (ps!=null) {​
  38. ​ps.close();​
  39. ​} ​
  40. ​if (st!=null) {​
  41. ​st.close();​
  42. ​} ​
  43. ​if (con!=null) {​
  44. ​con.close();​
  45. ​} ​
  46. ​} catch (Exception e) {​
  47. ​// TODO: handle exception​
  48. ​e.printStackTrace();​
  49. ​}​
  50. ​}​
  51. ​}​


3.4 数据查询

这部分主要功能是查询学生信息、课程信息以及选课信息。

查询学生信息

 基于Java swing实现的学生选课管理系统_数据查询_03

查询课程信息 

 基于Java swing实现的学生选课管理系统_数据查询_04

查询课程信息

基于Java swing实现的学生选课管理系统_信息管理_05 

3.5 添加学生信息

这部分的主要功能是向数据库中添加新的学生信息。 

添加学生信息

 基于Java swing实现的学生选课管理系统_数据库_06




举报

相关推荐

基于SpringBoot学生选课系统

0 条评论