![JAVA课程设计45913_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-5/24/2f55cbd4-3f62-40b4-9331-106115e0ac20/2f55cbd4-3f62-40b4-9331-106115e0ac201.gif)
![JAVA课程设计45913_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-5/24/2f55cbd4-3f62-40b4-9331-106115e0ac20/2f55cbd4-3f62-40b4-9331-106115e0ac202.gif)
![JAVA课程设计45913_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-5/24/2f55cbd4-3f62-40b4-9331-106115e0ac20/2f55cbd4-3f62-40b4-9331-106115e0ac203.gif)
![JAVA课程设计45913_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-5/24/2f55cbd4-3f62-40b4-9331-106115e0ac20/2f55cbd4-3f62-40b4-9331-106115e0ac204.gif)
![JAVA课程设计45913_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-5/24/2f55cbd4-3f62-40b4-9331-106115e0ac20/2f55cbd4-3f62-40b4-9331-106115e0ac205.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、JAVA课程设计45913课程设计(论文)任务书学 院数学学院专 业信息与计算科学学生姓名王继禹学号 2课 程 设 计题目红河学院成绩查询内容及要求:1. 根据学号查询学生成绩;2. 可以按学年、学期查询。评语 年 月 日成绩:指导教师(签字):年 月 日指导、检查记录日期功 能完成情况评分目 录 1题目要求42系统设计42.1功能模块设计142.1.1功能说明:42.1.2必要知识点:52.2功能模块设计252.2.1系统逻辑结构设计52.2.2程序运行代码53运行结果分析214总结23参考文献241 题目要求红河学院成绩查询功能要求:1. 根据学号查询学生成绩;2. 可以按学年、学期查询。
2、2 系统设计描述为完成题目要求的系统设计,设计可以是按功能,或步骤分解,分解之后的内容要可检查,有相应的代码或文档说明这部分功能。重点介绍自己负责部分的功能设计,设计可以包括功能模块图、必要的UML图,2.1 功能模块设计12.1.1 功能说明: 1.创建主类MainFrame,下含4个类,对4个事件按钮添加监控,实现按钮事件为对应类的对象,出现相应功能窗口。2.创建添加类Insert,题目虽只要求查询学生成绩,但我们不可能再代码中添加学生成绩,故需创建添加按钮,对按钮添加监控,实现按钮事件为获取文本域中的信息。3.创建查询类QUERY,按照题目要求,分别创建学号,学年,学期三个查询按钮,此外
3、,为了便于查询,又创建姓名和课程两个查询按钮以及一个显示全部信息的按钮。4.创建修改类Modify,因存在添加类Insert,为了防止添加学生成绩信息时出现错误,故应当建立修改按钮,与添加数据类似,对按钮添加监控,实现按钮事件为获取文本域中的信息,不同的是以学号为主键进行查找并更新。5.创建删除类DELETE,同理,当学生成绩信息过多时进行删除,且使得窗口界面整洁合理。与修改数据类似,对按钮添加监控,实现按钮事件为获取文本域中的学号信息,不同的是以学号为主键进行查找并将删除信息输出到文本框中。2.1.2 必要知识点:1. 创建图形界面需运用到GUI语句,可参考课本355页的知识。2. 创建图形
4、界面以后需要创建相关按钮,每一个按钮对应一个相关功能类。3. 为每一个按钮添加监听。4. 大致完成以后,修改界面,使其整洁有序,并可以修改界面大小,按钮颜色。5. 添加与修改两个类需要连接到SQL2008数据库,在数据库中进行信息的添加与删除。2.2 功能模块设计22.2.1 系统逻辑结构设计学生成绩信息表字段名 属性类型空值约束条件学号Sno文本not null主键姓名name文本从键学年Year文本从简学期Semester文本从简语文Chinese长整数英语English长整数数学Maths长整数2.2.2 程序运行代码MainFrame类:package dazuoye;import j
5、avax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class MainFrame extends JFrame JButton insert, query, delete, modify;JPanel panel, panel1, panel2;public MainFrame() / TODO Auto-generated method stubImageIcon img = new ImageIcon(1.gif);JLabel text1, text2, picture = ne
6、w JLabel(img);JFrame frame = new JFrame(学生成绩查询管理系统);insert = new JButton(添加数据);insert.setBackground(Color.orange);insert.addActionListener(new insertActionPerformed();query = new JButton(查询数据);query.addActionListener(new queryActionPerformed();query.setBackground(Color.orange);modify = new JButton(修
7、改数据);modify.setBackground(Color.orange);modify.addActionListener(new modifyActionPerformed();delete = new JButton(删除数据);delete.setBackground(Color.orange);delete.addActionListener(new deleteActionPerformed();frame.setSize(360, 200);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);Container conte
8、ntPane = frame.getContentPane();contentPane.setLayout(new BorderLayout();text1 = new JLabel(红河学院学生成绩管理系统, JLabel.CENTER);text1.setFont(new Font(宋体, Font.BOLD, 26);text1.setForeground(Color.blue);text2 = new JLabel( + );text2.setFont(new Font(TimesRoman, Font.ROMAN_BASELINE, 14);panel1 = new JPanel()
9、;panel1.add(insert);panel1.add(query);panel2 = new JPanel();panel2.add(modify);panel2.add(delete);panel1.setOpaque(false);panel2.setOpaque(false);panel = new JPanel();panel.add(text2, BorderLayout.NORTH);panel.add(panel1, BorderLayout.NORTH);panel.add(panel2, BorderLayout.SOUTH);panel.setOpaque(fals
10、e);contentPane.add(text1, BorderLayout.NORTH);contentPane.add(panel, BorderLayout.CENTER);frame.getLayeredPane().add(picture, new Integer(Integer.MIN_VALUE);Toolkit kit = Toolkit.getDefaultToolkit();Dimension screenSize = kit.getScreenSize();int screenWidth = screenSize.width / 2;int screenHeight =
11、screenSize.height / 2;int height = this.getHeight();int width = this.getWidth();picture.setBounds(0, 0, 360, 360);(JPanel) contentPane).setOpaque(false);frame.setLocation(screenWidth - width / 2, screenHeight - height / 2);frame.setVisible(true);public class insertActionPerformed implements ActionLi
12、stener public void actionPerformed(ActionEvent e) new Insert().setVisible(true);public class modifyActionPerformed implements ActionListener public void actionPerformed(ActionEvent e) new Modify().setVisible(true);public class queryActionPerformed implements ActionListener public void actionPerforme
13、d(ActionEvent e) new Query().setVisible(true);public class deleteActionPerformed implements ActionListener public void actionPerformed(ActionEvent e) new Delete().setVisible(true);public static void main(String args) new MainFrame();Insert类:package dazuoye;import java.awt.*;import java.awt.event.*;i
14、mport javax.swing.*;import java.sql.*;public class Insert extends JFrame JTextField input1, input2, input3, input4, input5, input6,input7;JLabel label1, label2, label3, label4, label5;JButton button;static Statement st;static try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection con = DriverMan
15、ager.getConnection(jdbc:odbc:student);st = con.createStatement(); catch (Exception e) ResultSet rs;public Insert() input1 = new JTextField(15);input2 = new JTextField(15);input3 = new JTextField(15);input4 = new JTextField(15);input5 = new JTextField(15);input6 = new JTextField(15);input7 = new JTex
16、tField(15);JPanel panel = new JPanel();panel.setLayout(new GridLayout(7,2);panel.add(new JLabel(学号), BorderLayout.CENTER);panel.add(input1);panel.add(new JLabel(姓名), BorderLayout.CENTER);panel.add(input2);panel.add(new JLabel(学年), BorderLayout.CENTER);panel.add(input3);panel.add(new JLabel(学期), Bord
17、erLayout.CENTER);panel.add(input4);panel.add(new JLabel(语文), BorderLayout.CENTER);panel.add(input5);panel.add(new JLabel(英语), BorderLayout.CENTER);panel.add(input6);panel.add(new JLabel(数学), BorderLayout.CENTER);panel.add(input7);button = new JButton(添加);button.addActionListener(new mysql();Containe
18、r container = getContentPane();container.add(panel, BorderLayout.CENTER);container.add(button, BorderLayout.SOUTH);setTitle(添加数据窗口);setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);setSize(300,300);Toolkit kit = Toolkit.getDefaultToolkit();Dimension screenSize = kit.getScreenSize();int screenWidth
19、= screenSize.width / 2;int screenHeight = screenSize.height / 2;int height = this.getHeight();int width = this.getWidth();setLocation(screenWidth - width / 2, screenHeight - height / 2);setVisible(true);class mysql implements ActionListener public void actionPerformed(ActionEvent e) try String sno =
20、 input1.getText().trim();String name = input2.getText().trim();String year = input3.getText().trim();String semester = input4.getText().trim();String chinese = input5.getText().trim();String english = input6.getText().trim();String maths = input7.getText().trim();if (sno.equals() | name.equals() | y
21、ear.equals() | semester.equals()| chinese.equals()| english.equals()| maths.equals() JOptionPane.showMessageDialog(Insert.this, 请重新输入, 提示对话框, 1); else String sql = insert into ScoreInfo(ID,name,year,semester,Chinese,English,Maths) values( + sno + ,+ name + , + year + , +semester+ ,+ chinese + , + en
22、glish + , + maths + );st.executeUpdate(sql);JOptionPane.showMessageDialog(Insert.this, 数据添加成功, 提示对话框, 1);input1.setText();input2.setText();input3.setText();input4.setText();input5.setText();input6.setText();input7.setText(); catch (Exception ee) QUERY类:package dazuoye;import java.awt.*;import javax.
23、swing.event.*;import java.awt.event.*;import javax.swing.*;import java.sql.*;public class Query extends JFrame JTextArea show;JButton button1, button2, button3, button4, button5,button6;JTextField field1, field2, field3,field4;JComboBox comoBox;static Statement st;static try Class.forName(sun.jdbc.o
24、dbc.JdbcOdbcDriver);Connection con = DriverManager.getConnection(jdbc:odbc:student);st = con.createStatement(); catch (Exception e) public Query() show = new JTextArea(6, 15);button1 = new JButton(显示所有信息);button1.addActionListener(new Mysql1();Container container = getContentPane();container.setLayo
25、ut(new BorderLayout();JPanel panel = new JPanel();JPanel mainpanel = new JPanel();button2 = new JButton(按学号查询);button2.addActionListener(new Mysql2();panel.add(button2);field1 = new JTextField(7);panel.add(field1);panel.setVisible(true);mainpanel.add(panel);button3 = new JButton(按姓名查询);button3.addAc
26、tionListener(new Mysql3();panel.add(button3);field2 = new JTextField(6);panel.add(field2);panel.setVisible(true);mainpanel.add(panel);button4 = new JButton(按学年查询);button4.addActionListener(new Mysql4();panel.add(button4);field3 = new JTextField(6);panel.add(field3);panel.setVisible(true);mainpanel.a
27、dd(panel);button5 = new JButton(按学期查询);button5.addActionListener(new Mysql4();panel.add(button5);field4 = new JTextField(6);panel.add(field4);panel.setVisible(true);mainpanel.add(panel);String items = 请选择, 语文, 英语, 数学 ;comoBox = new JComboBox(items);button6 = new JButton(按课程名称查询);button6.addActionLis
28、tener(new Mysql5();panel.add(button6);panel.add(comoBox);panel.setVisible(true);mainpanel.add(panel);panel = new JPanel();panel.add(button1);container.add(mainpanel, BorderLayout.NORTH);container.add(panel, BorderLayout.SOUTH);container.add(new JScrollPane(show), BorderLayout.CENTER);setTitle(查询数据);
29、setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);setSize(1000, 400);Toolkit kit = Toolkit.getDefaultToolkit();Dimension screenSize = kit.getScreenSize();int screenWidth = screenSize.width / 2;int screenHeight = screenSize.height / 2;int height = this.getHeight();int width = this.getWidth();setLocat
30、ion(screenWidth - width / 2, screenHeight - height / 2);setVisible(true);class Mysql1 implements ActionListener public void actionPerformed(ActionEvent e) try String sql = select * from ScoreInfo;ResultSet rs = st.executeQuery(sql);show.setText();show.append(序号 学号 姓名 学年 学期 语文 英语 数学+ n);while (rs.nex
31、t() show.append(rs.getInt(1) + );show.append(rs.getString(2) + );show.append(rs.getString(3) + );show.append(rs.getString(4) + );show.append(rs.getInt(5) + );show.append(rs.getInt(6) + );show.append(rs.getInt(7) + );show.append(rs.getInt(8) + n); catch (Exception ee) class Mysql2 implements ActionLi
32、stener public void actionPerformed(ActionEvent e) try String ss = field1.getText().trim();String sql = select * from ScoreInfo where ID= + ss + ;ResultSet rs = st.executeQuery(sql);show.setText();show.append(序号 学号 姓名 学年 学期 语文 英语 数学+ n);while (rs.next() show.append(rs.getInt(1) + );show.append(rs.get
33、String(2) + );show.append(rs.getString(3) + );show.append(rs.getString(4) + );show.append(rs.getInt(5) + );show.append(rs.getInt(6) + );show.append(rs.getInt(7) + );show.append(rs.getInt(8) + n); catch (Exception ee) class Mysql3 implements ActionListener public void actionPerformed(ActionEvent e) t
34、ry String ss = field2.getText().trim();String sql = select * from ScoreInfo where name= + ss + ;ResultSet rs = st.executeQuery(sql);show.setText();show.append(序号 学号 姓名 学年 学期 语文 英语 数学+ n);while (rs.next() show.append(rs.getInt(1) + );show.append(rs.getString(2) + );show.append(rs.getString(3) + );sho
35、w.append(rs.getString(4) + );show.append(rs.getInt(5) + );show.append(rs.getInt(6) + );show.append(rs.getInt(7) + );show.append(rs.getInt(8) + n); catch (Exception ee) class Mysql4 implements ActionListener public void actionPerformed(ActionEvent e) try String ss = field3.getText().trim();String sql
36、 = select * from ScoreInfo where class= + ss + ;ResultSet rs = st.executeQuery(sql);show.setText();show.append(序号 学号 姓名 学年 学期 语文 英语 数学+ n);while (rs.next() show.append(rs.getInt(1) + );show.append(rs.getString(2) + );show.append(rs.getString(3) + );show.append(rs.getString(4) + );show.append(rs.getI
37、nt(5) + );show.append(rs.getInt(6) + );show.append(rs.getInt(7) + );show.append(rs.getInt(8) + n); catch (Exception ee) class Mysql5 implements ActionListener public void actionPerformed(ActionEvent e) try String ss = field3.getText().trim();String sql = select * from ScoreInfo where class= + ss + ;
38、ResultSet rs = st.executeQuery(sql);show.setText();show.append(序号 学号 姓名 学年 学期 语文 英语 数学+ n);while (rs.next() show.append(rs.getInt(1) + );show.append(rs.getString(2) + );show.append(rs.getString(3) + );show.append(rs.getString(4) + );show.append(rs.getInt(5) + );show.append(rs.getInt(6) + );show.appe
39、nd(rs.getInt(7) + );show.append(rs.getInt(8) + n); catch (Exception ee) class Mysql6 implements ActionListener public void actionPerformed(ActionEvent e) try String sql = ;String ss = comoBox.getSelectedItem().toString();if (ss.equals(语文) sql = select ID,name,year,semester,Chinese from ScoreInfo ;sh
40、ow.setText();show.append(序号 学号 姓名 学年 学期 语文+ n); else if (ss.equals(英语) sql = select ID,name,year,semester,English from ScoreInfo ;show.setText();show.append(序号 学号 姓名 学年 学期 英语 + n); else if (ss.equals(数学) sql = select ID,name,year,semester,Maths from ScoreInfo ;show.setText();show.append(序号 学号 姓名 学年
41、学期 数学+ n);ResultSet rs = st.executeQuery(sql);int i = 0;while (rs.next() i+;show.append( + i + + rs.getString(1) + );show.append(rs.getString(2) + );show.append(rs.getString(3) + );show.append(rs.getInt(4) + n); catch (Exception ee) Modify类:package dazuoye;import java.awt.*;import java.awt.event.*;i
42、mport javax.swing.*;import java.sql.*;public class Modify extends JFrame JTextField input1, input2, input3, input4, input5, input6,input7;JLabel label1, label2, label3, label4, label5;JButton button;static Statement st;static try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection con = DriverMan
43、ager.getConnection(jdbc:odbc:student);st = con.createStatement(); catch (Exception e) ResultSet rs;public Modify() input1 = new JTextField(15);input2 = new JTextField(15);input3 = new JTextField(15);input4 = new JTextField(15);input5 = new JTextField(15);input6 = new JTextField(15);input7 = new JTex
44、tField(15);JPanel panel = new JPanel();panel.setLayout(new GridLayout(7, 3);panel.add(new JLabel(学号);panel.add(input1);panel.add(new JLabel(姓名);panel.add(input2);panel.add(new JLabel(学年);panel.add(input3);panel.add(new JLabel(学期);panel.add(input4);panel.add(new JLabel(语文);panel.add(input5);panel.add(new JLabel(英语);panel.add(input6);panel.add(new JLabel(数学);panel.add(input7);button = new JButton(修改);button.addActionListener(new mysql();Container container = getContentPane();container.add(panel, Bo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 车网互动规模化应用V2G项目申报表
- 财务会计实务 课件 任务2 计划成本核算
- 教育系统先进个人事迹材料-总结报告模板
- 河南省新乡市卫辉市2024年六年级下学期小升初真题数学试卷含解析
- 农业区位选择说课稿 人教版(2019)高中地理必修二
- 河南省上蔡一高2025届高三下学期第二次月考(5月)物理试题含解析
- 2024保镖雇佣合同范本
- 2024年软件代理合同范本
- 2024软件外包合同范本
- 河南省洛阳市宜阳县2023-2024学年三下数学期末监测试题含解析
- 《新能源汽车底盘技术》高职新能源汽车技术专业全套教学课件
- 2024食品安全法试题库(带答案)
- 2024-2030年远程会诊系统市场发展现状分析及供需格局预测报告
- 低维材料概论阅读笔记
- DL∕T 2447-2021 水电站防水淹厂房安全检查技术规程
- 电脑供货方案、售后服务方案
- (2021年整理)GA1511—2018易制爆危险化学品储存场所治安防范要求
- 第2章 原子磁矩
- 全新版大学英语综合教程2课文原文及翻译
- 医学精品课件:离体肠吻合(中文)(1)
- 商务英语阅读第二版叶兴国unit2-Aliceppt课件
评论
0/150
提交评论