目录
一.预习内容:
项目分析
学生综合管理系统主要是由MySQL数据库和面向对象程序设计语言Java设计的。通过建立两者的连接,利用Java语言来实现对MySQL数据库的更新、删除、查询、插入。从而为实际用户提供对信息进行控制的功能,更好了解与掌握学生基本信息,了解学生个人情况。
实验目标
1.教学管理人员能够使用StudentInfo程序对学生基本信息、课程信息进行管理,包括数据的添加、修改、删除和浏览;
2.能够对学生选课进行管理,包括添加学生选课信息、录入成绩; 能够使用查询功能,快速查看到指定学生或指定课程的基本信息以及所指定学生的选课信息;
3.能够对学生选课情况进行简单的统计,包括所选的总的课程数、总学分数及平均成绩。 要注意添加学生基本信息、课程信息相关数据时,学号和课程号不能重复;
4.还有在添加学生选课信息时,要求该学生和课程必须是存在的,而且不能添加重复的选课信息
5.提供友好的交互界面,可以方便用户进行功能选择,实现信息的管理和查询,并可清晰地显示相关信息。
二.功能实现
步骤一:对MySQL后端数据库的构建
目标需求:
需要有存放学生数据信息的完整数据库,在对应的数据库中,创建学生的个人信息表、课程表、成绩表等相关信息表,在此基础上,根据约束性条件,确定每张表的主键以及外键,从而实现表和表之间的连接,完成多张表直接的相关操作。
完成思路:
MySQL数据库主要用来存储和调用数据,将用户需要存放的数据整齐有序的保存,当需要调用时可以精确的从数据库中提取数据。
可以通过MYSQL的页面设计直接对数据库进行修改
也可以通过MYSQL语句对数据库进行操作
如:
INSERT INTO `stu`.`stuinfo` (`stuid`, `stuname`, `sex`, `score`) VALUES ('6', '张九', '女', '80');
INSERT INTO `stu`.`stuinfo` (`stuid`, `stuname`, `sex`, `score`) VALUES ('5', '王五', '男', '100');
步骤二:JAVA与MySQL的连接搭建
连接步骤:
1.找到数据库存储位置,并登陆连接数据库。
// 待操作数据库表的位置
String dburl = "jdbc:mysql://localhost:3306/stu?serverTimezone=Asia/Shanghai";
// 装载MySQL数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立数据库连接
conn = DriverManager.getConnection(dburl, "root", "123456");
2.根据MySQL可以识别的语句,对数据库进行增删改查的相关操作
查看: // 创建sql语句
String sql = "select * from stuinfo where stuid > ? "
+ "order by stuid asc";
// 创建状态
stmt = conn.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
stmt.setString(1, stuid_key); // 填补sql语句参数
删除: String deletesql = "delete from stuinfo where stuid = ?";
stmt = conn.prepareStatement(deletesql);
stmt.setString(1, delete_stuid);
3.对操作结果进行回馈,再查询操作后的数据库
rs = stmt.executeQuery(); // 执行查询并返回结果集
while (rs.next()) { // 结果集记录输出
System.out.println(rs.getString(1) + " " + rs.getString(2)
+ " " + rs.getString(3) + " " + rs.getDouble(4));
}
System.out.println("----------------------------------------------");
rs.previous(); // 结果集指针回指一次
步骤三:JAVA友好交互页面设计
根据J swing框架,搭建GUI图形界面,能够为用户展示清晰明了的操作页面,可以让用户快速掌握当前数据库操作系统的使用方法与原理,在通过简单的操作后,最大可能的达到自己想要的功能,实现自身需求,并且可以以最简洁的方式提供给用户最全面的数据。
页面组成的简单创建:
static JFrame jFrame = new JFrame("学生数据库");
static JTextArea jTextArea = new JTextArea("欢迎使用数据库");
static JTextArea jTextArea1 = new JTextArea("信息显示");//用来展示数据库的查询结果
static JButton jButton = new JButton("开始");
按键监听的简单设计:
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
closeThis();
JFrame jFrame1 = new JFrame("学生信息数据库");
三.页面展示
用户进入页面设计
用户多功能操作设计
JAVA查询与数据库数据展示:
四.未来目标
由于时间匆忙加上技术水平不够,在短时间没有将一个完整的带有友好界面的数据库操作系统实现,只是实现了JAVA与MySQL数据库实时性的交互,而暂时没有将数据库的信息完整的展现在JAVA页面框架中。本小组拟在未来进行如下修改:
1.建立用户登陆信息数据库,旨在通过对账户名以及密码的控制,限制用户的访问功能,提高数据的保密性。
2.美化数据库界面,给用户带来视觉上的清爽,避免产生直男页面感。
3.进行页面按钮监听的完善,旨在用户通过点击按钮,实现功能的完成,并且显示在对应的文本框中,而不是在JAVA结果页面生成对应的数据,提供更好的页面交互功能。