摘要
在现今信息时代,生活速度的加快,使得人们越来越向信息化、数字化发展。随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长,尤其是学生的考试成绩数据。面对庞大的学生的成绩,需要有学生成绩管理系统来提高学生管理工作的效率。介于此提出了学生成绩管理系统,学生管理系统是计算机对学生档案信息进行管理,具有手工管理无可比拟的优点,如索检迅速、查找方便、可靠性高、存储量大等有点。现在我国的大中专院校的学生成绩管理水平正在不断提高,停留在纸介质基础上的管理手段早已被时代淘汰,因为它浪费了许多的人力和物力。本系统使用 U界面设计+ MySQL + JDBC连接数据库开发,同时使用Navicat将MySQL的执行方式图形化了,提高了用户的使用效率。为管理人员提供充足的信息和快捷的查询手段,提高学生成绩管理效率。
关键词:界面设计,Navicat,DBC连接数据库
1.前言和背景
1.1前言
Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
1.2背景
学生成绩管理系统是学生在每学期期末记录学期各科成绩的主要应用,具有较强的实用性,贴近实际,便于完成系统的分析与设计,适用于多用户。
2.1功能分析
1.输入一个同学的姓名或学号,系统可以输出学生信息(所在学院、班级、成绩等)。
2.可以对已录入学生成绩管理系统的信息进行修改(删除、添加)。
3.能添加并保存学生信息,即退出时数据不能丢失。
4.输入不同的用户名和密码实现不同身份登录。
1开发环境和工具
- 工具
表 1 开发工具
工具 | |
名称 | 版本 |
eclipse | 2021-06 (4.20.0) |
jdk | 14.0.2_windows-x64_bin |
jar包 | junit-4.9 |
mysql-connector-java-5.0.8-bin | |
mysql数据库 | MySQL5.5-HaoSQL.exe |
Navicat | navicat for mysql10.0.11 |
- 环境配置
- jar包导入:
新建工程项目文件夹TestStudentManager,右击,依次找到Build Path,Configure Build Path,在Libraries下分别双击junit-4.9和mysql-connector-java-5.0.8-bin的jar包,在系统目录下找到jar包所在的位置,双击选中打开,得到如图2,导包完成。
图 2 jar包导入
- 安装数据库:
安装MySQL5.5-HaoSQL.exe,安装完成后,启动MySQL服务,如图3所示。安装图形化数据库设计软件Navicat。
图 3 HaoSQL启动
1.登录界面
登录界面通过LogOnFrm实现,其设计方法如下:
(1)放置contentPane控件,名字默认
(2)在contentPane上放置两个JLabel、两个JButton和两个JTextField,将其属性分别设置为如下表所示:
表 2 属性表
属性表 | |
序号 | 属性 |
1 | loginBut-"登录" |
2 | helpBut-"重置" |
3 | label1-"用户名:" |
4 | label2-"密码:" |
5 | passWord-"密码输入框" |
6 | userName-"用户名输入框" |
7 | label-"考试成绩管理系统" |
2.其他界面创建方法与登录界面相同。
3.4界面设计
1.登录界面
登录界面通过LogOnFrm实现,其设计方法如下:
(1)放置contentPane控件,名字默认
(2)在contentPane上放置两个JLabel、两个JButton和两个JTextField,将其属性分别设置为如下表所示:
表 2 属性表
属性表 | |
序号 | 属性 |
1 | loginBut-"登录" |
2 | helpBut-"重置" |
3 | label1-"用户名:" |
4 | label2-"密码:" |
5 | passWord-"密码输入框" |
6 | userName-"用户名输入框" |
7 | label-"考试成绩管理系统" |
2.其他界面创建方法与登录界面相同。
4.1方法
学生成绩管理系统采用三层架构实现,分别编写了实体类、Dao类、工具类、测试类和界面类,通过编写Java程序与数据库相连,图形化数据库设计软件Navicat将MySQL的执行方式图形化,实现学生成绩管理系统的增删改查功能。
4.2系统实现步骤
- 界面类:
三层架构中的表示层由界面类实现,用来制作图形用户界面,是面向用户的层。部分代码图6和登录界面图7所示:
图 7 成绩管理系统登录界面
输入数据库中导入的stu_user表上任意一个用户名和对应密码,登录到如下图8所示管理界面,然后点击添加成绩,输入相应的学号姓名即可添加学生成绩
图 8 管理系统内部界面
还可点击维护信息,进行相应的成绩、课程、学生信息管理维护,如下图9所示:
图 9 功能界面
- 业务逻辑层由Dao类来实现,主要包含了增删改查逻辑操作的代码实现。业务逻辑层是对界面层中用户动作的实现。
- 数据访问层通过工具类实现,它将数据库与Java程序连接起来,实现了连接数据库、关闭数据库的功能,只有成功连接数据库后JDBC驱动才能真正对MySQL数据库实现增删改查。运行DbUtil.java,出现数据库连接成功。JDBCl连接数据库部分代码如下图10所示:
图 10 eclipse与数据库成功连接
最后,实体层是从数据表到实体类的映射,是其他三层数据传输的载体。
4.3关键功能的实现
主要包括增删改查功能的实现,其中除了查询的语句为executeQuery,其他三个都是executeUpdate。
- 查询功能
图 11 查询功能部分代码
- 添加功能
图 12 添加功能部分代码
图 13 添加学生信息
- 修改功能
14 修改功能部分代码
- 删除功能
图 15 删除功能部分代码
该学生成绩管理系统采用三层架构模式,虽然只做了简单的登录页面与实现了添加成绩功能与维护信息功能。但是其中运用到了课堂上所学大量Java语言,但是还是没有很好的完全实现所有功能,特别是对eclipse与数据库的连接,多次尝试多次失败,最后查阅大量资料,参考优秀案例,经过多次修改,终于使其连接成功。在此过程中,发现Java编程中数据库连接的代码,在使用数据库连接地址时,Java中的数据库名称和Navicat中的数据库名称要完全一致,然后用户名与密码也要完全一致,不然会导致eclipse与数据库连接失败。