Java 基于命令行的学生成绩管理系统 序列化
Java实操考核:编写一个简单的学生成绩管理系统
Java实操考核:编写一个简单的学生成绩管理系统简介学生成绩管理系统是一个常见的计算机实践项目,用于管理学生的课程成绩并进行基本的学生信息管理。
这个文档将指导你如何使用Java编写一个简单的学生成绩管理系统。
功能学生成绩管理系统应该具有以下功能: - 添加学生信息:包括学号、姓名、性别、年龄等基本信息。
- 添加课程成绩:包括课程名称和对应的分数。
- 查询学生信息:根据学号或姓名查询学生的基本信息和课程成绩。
- 修改学生信息:根据学号或姓名修改学生的基本信息和课程成绩。
- 删除学生信息:根据学号或姓名删除学生的信息。
设计思路学生成绩管理系统可以分为三个主要的类:Student、Course和Grade。
Student类表示学生,包含学生的基本信息,如学号、姓名、性别和年龄。
Course 类表示课程,包含课程名称和对应的分数。
Grade类表示学生成绩,包含学生的学号、课程名称和分数。
系统的主要逻辑如下: 1. 用户可以选择添加学生信息、添加课程成绩、查询学生信息、修改学生信息和删除学生信息等功能。
2. 添加学生信息时,用户需要输入学生的基本信息,并将其存储在一个学生列表中。
3. 添加课程成绩时,用户需要输入学生的学号和对应的课程名称及分数,并将其存储在一个成绩列表中。
4. 查询学生信息时,用户可以根据学号或姓名查询学生的基本信息和课程成绩。
5. 修改学生信息时,用户可以根据学号或姓名修改学生的基本信息和课程成绩。
6. 删除学生信息时,用户可以根据学号或姓名删除学生的信息。
实现步骤1.创建Student类,包含学生的基本信息(学号、姓名、性别、年龄)的成员变量和对应的get和set方法。
2.创建Course类,包含课程的名称和分数的成员变量和对应的get和set方法。
3.创建Grade类,包含学生的学号、课程名称和分数的成员变量和对应的get和set方法。
4.创建管理系统类,包含学生列表(ArrayList)和成绩列表(ArrayList)的成员变量。
用java写的一个简单的学生成绩管理系统(含代码)
用java写的一个简单的学生成绩管理系统一.简洁的需求描述学生成绩管理系统(以下简称系统)为教师和学生的信息交流提供了一个统一的平台,方便了教师对成绩的管理,学生对于成绩的查询等1.教师可以通过系统查询所授课程的信息以及课程所对应的学生的信息;教师通过系统管理学生分数信息,包括查询,输入,修改学生成绩。
2.学生用户仅仅拥有查询功能,查询的信息包括所选修课程信息和分数信息。
系统用例图:用例图解释系统功能大致上分为分数管理,课程管理,个人信息查询,分数查询四大块。
其中教师用户使用分数管理和课程管理功能,学生用户使用个人信息查询和分数查询功能。
细分来,分数管理指的是分数的录入,更新,查询;课程管理包括所授课程查询,课程信息录入,修改等;个人信息查询针对学生而言,包括姓名,学号,班级等;分数查询则指的是某一学期所有课程的分数信息的查询。
二.简单的设计说明2.1系统类图2009-04-12 18:38三。
简单的数据库设计ER图:数据库详细设计说明:1).数据库说明数据库取名为score_manage_system其中有五个表,分别为:TEACHER(TNO ,TNAME,SEX,TITLE,PASSWORD)..............教师信息表STUDENT (SNO,SNAME,SEX,CLASS,PASSWORD) .................学生信息表COURSE(CNO,CNAME,CXUEFEN,HOUR)..............................课程信息表TEACH(TNO,CNO)............................................................................教师授课信息表STUDY(SNO,CNO,SCORE)...........................................................学生选课信息表2009-04-12 18:412).字段说明3)TEACHER字段类型主码外码说明TNO CHAR(20) √ √ 教师代码TNAME CHAR(10) 教师姓名SEX CHAR(1) 教师性别TITLE CHAR(10) 职称PASSWORD CHAR(20) 登录密码STUDENT字段类型主码外码说明SNO CHAR(20) √ √ 学号SNAME CHAR(10) 学生姓名SEX CHAR(2) 性别CLASS CHAR(5) 班级PASSWORD CHAR(20) 登录密码DEPARTMENT CHAR(20) 学生所属院系SCHOOL CHAR(20) 学生所属学校COURSE字段类型主码外码说明CNO CHAR(20) √ √ 课程代码CNAME CHAR(10) 课程名称XUEFEN int 学分,取值大于0小于10HOUR int 学时,大于等于0YEAR CHAR(5) 学年TERM CHAR(1) 学分TEACH字段类型主码外码说明TNO CHAR(20) √教师代码CNO CHAR(20) √课程代码STUDY字段类型主码外码说明SNO CHAR(20) √学号CNO CHAR(20) √课程代码SCORE DOUBLE 分数,0--1003).建表语句TEACHER建表语句:create table TEACHER(TNO char(20) not null, TNAME char(10) not null, SEX char(1) not null,TITLE char(10) not null, PASSWORD char(20) not null, primary key (TNO),check(SEX in('男','女')));STUDENT建表语句:create table STUDENT(SNO char(20) not null, SNAME char(10) not null, SEX char(2) not null,CLASS char(5) not null, PASSWORD char(20) not null,DEPARTMENT char(20) not null,SCHOOL char(20) not null, primary key (SNO),check(SEX in('男','女')));COURSE建表语句:create table COURSE(CNO char(20) not null, CNAME char(10) not null, XUEFEN int not null, HOUR int not null, YEAR char(5) not null,TERM char(1) not null,primary key (CNO),check(XUEFEN > 0 and XUEFEN < 10 and HOUR >= 0 ));TEACH建表语句:create table TEACH(TNO char(20) not null, CNO char(20) not null, primary key (TNO, CNO)foreign key(TNO,CNO)REFERENCES TEACHER COURSE ,foreign key(CNO)REFERENCES COURSE);alter table TEACHadd constraint FK_TEACH_REFERENCE_TEACHER foreign key (TNO) references TEACHER (TNO)on update restricton delete restrict;alter table TEACHadd constraint FK_TEACH_REFERENCE_COURSE foreign key (CNO) references COURSE (CNO)on update restricton delete restrict;2009-04-12 18:41STUDY建表语句:create table STUDY(SNO char(20) not null, CNO char(20) not null,SCORE double ,primary key (SNO, CNO),check(SCORE >=0 and SCORE <= 100));alter table STUDYadd constraint FK_STUDY_REFERENCE_COURSE foreign key (CNO) references COURSE (CNO)on update restricton delete restrict;alter table STUDYadd constraint FK_STUDY_REFERENCE_STUDENT foreign key (SNO) references STUDENT (SNO)on update restricton delete restrict;2009-04-12 18:42四。
java项目(学生成绩管理系统)
《Java程序设计实训》学生成绩管理系统设计数据库:CREATE DATABASE 学生成绩管理系统(1)教师信息表创建:create table 教师信息表(教师ID varchar(8) primary key ,教师姓名 varchar(8) not null unique,登录密码 varchar(8) not null,)(2)学籍信息表创建:create table 学籍信息表(学号 varchar(15) primary key,姓名 varchar(8) not null ,年龄 varchar(10),出生日期 varchar(10),性别 varchar(4) ,班级 varchar(8) not null ,专业 varchar(5) ,民族 varchar(10),登录密码 varchar(6) not null)(3)成绩信息表创建:create table 成绩信息表(学号 varchar(15),计算机网络 varchar(8), 计算机专业英语 smallint, 计算机信息技术基础 smallint, Java 程序设计 smallint ,数据库应用实训教程 smallint , 高等数学 smallint ,Xml smallint ,)概要结构分析:1.登录界面和主界面import javax.swing.*;import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.*; import java.sql.*;class myConnection{ResultSet re ; public myConnection(){}public ResultSet getResult(String sql){ try {Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");Connection conn=DriverManager.getConnection ("jdbc:odbc:学生成绩管理系统","ww","123");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABL E);ResultSet re=stmt.executeQuery(sql);return re;}catch(Exception e){System.out.println("getResult------"+e.toString());return null;}}public boolean executeSql(String sql){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection conn=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt=conn.createStatement();stmt.executeUpdate(sql);mit();return true;}catch(Exception e){System.out.println("executeSql----"+e.toString());return false;}}}class stuMainFrame extends JFrame implements ActionListener{JMenuBar jmb = new JMenuBar();JMenu Message = new JMenu("信息");JMenu Score = new JMenu("查询");JMenuItem Item1 = new JMenuItem("添加学生信息");JMenuItem mName=new JMenuItem("学生成绩查询");JMenuItem mScore=new JMenuItem("按成绩查询");JMenuItem mNam1=new JMenuItem("查询学生信息");JLabel label = new JLabel();public stuMainFrame(){ImageIcon icon = new ImageIcon("src/images/1.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());this.setJMenuBar(jmb);jmb.add(Message);jmb.add(Score);Message.add(Item1);Score.add(mNam1);Score.add(mName);Score.add(mScore);Item1.addActionListener(this);mName.addActionListener(this);mScore.addActionListener(this);mNam1.addActionListener(this); }public void actionPerformed(ActionEvent e){if(e.getSource()==Item1){ new addForm().setVisible(true);}else if(e.getSource()==mName){ dispose();new Score1().setVisible(true);}else if(e.getSource()==mScore){new scoreQueryForm().setVisible(true);}else if(e.getSource()==mNam1){dispose();new Serch1().setVisible(true);}}}class mainFrame extends JFrame implements ActionListener{J Label label = new JLabel();J MenuBar mBar= new JMenuBar();J Panel p=new JPanel();p rivate JMenu mSystem,mOperate,mQuery,mHelp,myMenuUser;p rivate JMenuItemmFile,mNew,mOpen,mExit,mAdd,mDel,mModify,mName,miShow,mScore,mAbout,miUser,mAddSc;p ublic mainFrame(){this.setJMenuBar(mBar);I mageIcon icon = new ImageIcon("src/images/1.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());myMenuUser=new JMenu("用户");miUser=new JMenuItem("编辑用户");myMenuUser.add(miUser);mSystem=new JMenu("系统");mOperate=new JMenu("数据操作");mQuery=new JMenu("查询");mHelp=new JMenu("帮助");mBar.add(mSystem);mBar.add(mOperate);mBar.add(mQuery);mBar.add(mHelp);mBar.add(myMenuUser);mFile=new JMenuItem("文件");mNew=new JMenuItem("新建");mOpen=new JMenuItem("打开");mExit=new JMenuItem("退出");mSystem.add(mFile);mSystem.add(mNew);mSystem.add(mOpen);mSystem.addSeparator();mSystem.add(mExit);mAdd=new JMenuItem("添加基本信息");mAddSc=new JMenuItem("添加成绩信息");mDel=new JMenuItem("删除");mModify=new JMenuItem("修改");mOperate.add(mAdd);mOperate.add(mAddSc);mOperate.add(mDel);mOperate.add(mModify);mName=new JMenuItem("查询学生信息");mScore=new JMenuItem("查询学生成绩");miShow=new JMenuItem("全部显示");mQuery.add(mName);mQuery.add(mScore);mQuery.addSeparator();mQuery.add(miShow);mAbout=new JMenuItem("软件信息");mHelp.add(mAbout);mExit.addActionListener(this);mAdd.addActionListener(this);mDel.addActionListener(this);mModify.addActionListener(this);mName.addActionListener(this);mScore.addActionListener(this);mAbout.addActionListener(this);miShow.addActionListener(this);miUser.addActionListener(this);mAddSc.addActionListener(this);}public void actionPerformed(ActionEvent e){if(e.getSource()==mExit){dispose();new CJ().setVisible(true);}else if(e.getSource()==mAbout){JOptionPane.showMessageDialog(this,"学生成绩管理系统\n\n电信学院\n\n2012年3月","软件信息",RMATION_MESSAGE);}else if(e.getSource()==mAdd){dispose();new addForm().setVisible(true);}else if(e.getSource()==mAddSc){dispose();new addScore().setVisible(true);}else if(e.getSource()==mDel){dispose();new deleteForm().setVisible(true);}else if(e.getSource()==mName){dispose();new Serch().setVisible(true);}else if(e.getSource()==mScore){dispose();new Score().setVisible(true);}else if(e.getSource()==mModify){new modifyForm().setVisible(true);} else if(e.getSource()==miUser){new userFrame().setVisible(true);}else if(e.getSource()==miShow){new freshTable().setVisible(true); }}} class CJ extends JFrame implements ActionListener{ JLabel t1=new JLabel("ID号:");JLabel t3=new JLabel("密码:");JLabel label = new JLabel();public String zh=null;JTextField t2=new JTextField(null,15);JTextField t4=new JPasswordField(null,15);JRadioButton b=new JRadioButton("教师");JRadioButton b1=new JRadioButton("学生");JButton jB1=new JButton("登录");JButton jB2=new JButton("取消");public CJ (){super("学生生成绩管理系统");setLayout(null);jB1.setBounds(110,170,60,20);jB1.setBackground(Color.red);add(jB1);jB2.setBounds(210,170,60,20);jB2.setBackground(Color.red);add(jB2);t1.setBounds(90,50,80,35);add(t1);t2.setBounds(120,50,150,35);add(t2);t3.setBounds(90,100,80,35);add(t3);t4.setBounds(120,100,150,35);add(t4);b.setBounds(200,20,70,30);b1.setBounds(120,20,70,30);ButtonGroup bg=new ButtonGroup();b.setSelected(false);b1.setSelected(true);b1.setSelected(false);add(b);bg.add(b);add(b1); bg.add(b1);b.setContentAreaFilled(false);b1.setContentAreaFilled(false);ImageIcon icon = new ImageIcon("src/images/a.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());setResizable(false);setVisible(true);setLocation(300,300);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jB1.addActionListener(this);jB2.addActionListener(this);}public void actionPerformed(ActionEvent e) {if (e.getSource()==jB2){System.exit(0);}else if (e.getSource()==jB1){String username , password;username = t2.getText();password = t4.getText();if(b.isSelected()) {if (username.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入用户名", "温馨提示", RMATION_MESSAGE);}else if (password.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入密码", "温馨提示", RMATION_MESSAGE);}else{myConnection conn=new myConnection();ResultSet rs;String sql="select * from 教师信息表 where 教师ID='"+username.toString()+"' and 登录密码 = '"+password.toString()+"'";try{rs=conn.getResult(sql);st();if(rs.getRow()==1){ setVisible(false);rs.beforeFirst();while(rs.next()){this.dispose();sql="select * from 学籍信息表";mainFrame mf=new mainFrame();mf.setLayout(null);mf.setVisible(true);mf.setLocation(300,300);mf.setResizable(false);mf.setTitle("学生成绩管理系统:教师登录界面");mf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);mf.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});JOptionPane.showMessageDialog( null ,rs.getString("教师姓名")+"老师!您好!欢迎登录学生成绩管理系统!" ) ; }}else{JOptionPane.showMessageDialog(null, "用户名或密码错误", "登录失败", RMATION_MESSAGE);}}catch(Exception er){System.out.println(er.toString());}}}if(b1.isSelected()) {if (username.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入用户名", "温馨提示", RMATION_MESSAGE);}else if (password.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入密码", "温馨提示", RMATION_MESSAGE);}else{myConnection conn=new myConnection();ResultSet rs;String sql="select * from 学籍信息表 where 学号='"+t2.getText().toString()+"' and 登录密码 = '"+t4.getText().toString()+"'";try{rs=conn.getResult(sql);st();if(rs.getRow()==1){ setVisible(false);rs.beforeFirst();while(rs.next()){this.dispose();sql="select * from 学籍信息表";stuMainFrame smf =new stuMainFrame();s mf.setSize(500,400);smf.setVisible(true);smf.setResizable(false);smf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);s mf.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});JOptionPane.showMessageDialog( null ,rs.getString("学生姓名")+"同学!您好!欢迎登录学生成绩管理系统!" ) ; } }else{JOptionPane.showMessageDialog(null, "用户名或密码错误", "登录失败", RMATION_MESSAGE);}}catch(Exception er){System.out.println(er.toString());}} }}}public static void main(String[] args) {try{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){}CJ frame=new CJ();new mainFrame();stuMainFrame stu = new stuMainFrame();}}2.添加学生基本信息import javax.swing.*;import javax.swing.table.DefaultTableModel; import java.awt.*;import java.awt.event.*;import java.sql.*;public class addForm extends JFrame implements ActionListener { JLabel label1 = new JLabel("添加基本信息",JLabel.CENTER);JLabel labxuehao=new JLabel("学号:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labName=new JLabel("姓名:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel labclass=new JLabel("班级:",JLabel.CENTER);JLabel labzy=new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);JLabel labsex = new JLabel("性别:",JLabel.CENTER);JTextField txtName=new JTextField(20);JTextField txtDate=new JTextField(18);JTextField txtXueHao=new JTextField(20);JTextField txtYear=new JTextField(20);JTextField txtClass=new JTextField(20);JTextField txtZY=new JTextField(20);JTextField txtMZ=new JTextField(20);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JButton btnAdd=new JButton("添加");JButton btnCancel=new JButton("返回");JButton btnReset = new JButton("重置");JPanel jpl=new JPanel(); //创建面板对象Connection con;Statement sql;ResultSet rs;addForm(){ super("添加学生信息");this.setResizable(false);this.setSize(550,450);this.setVisible(true);this.setLocation(300,300);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setLayout(null);btnAdd.addActionListener(this);btnReset.addActionListener(this);btnCancel.addActionListener(this);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);label1.setBounds(100,20,300,20);jpl.add(label1);labxuehao.setBounds(100,50,70,20);jpl.add(labxuehao);txtXueHao.setBounds(190,50,140,20);jpl.add(txtXueHao);labName.setBounds(100,90,70,20);jpl.add(labName);txtName.setBounds(190,90,140,20);jpl.add(txtName);labsex.setBounds(110,130,60,20);jpl.add(labsex);man.setBounds(190,130,60,20);women.setBounds(270,130,60,20);jpl.add(man);jpl.add(women);bgp.add(man);bgp.add(women);labyear.setBounds(100,180,70,20);jpl.add(labyear);txtYear.setBounds(190,180,140,20);jpl.add(txtYear);labDate.setBounds(100,210,70,20);jpl.add(labDate);txtDate.setBounds(190,210,140,20);jpl.add(txtDate);labmz.setBounds(100,240,70,20);jpl.add(labmz);txtMZ.setBounds(190,240,140,20);jpl.add(txtMZ);labclass.setBounds(100,270,70,20);jpl.add(labclass);txtClass.setBounds(190,270,140,20);jpl.add(txtClass);labzy.setBounds(100,300,70,20);jpl.add(labzy);txtZY.setBounds(190,300,140,20);jpl.add(txtZY);btnReset.setBounds(80,350,90,20);btnAdd.setBounds(200,350,90,20);btnCancel.setBounds(320,350,90,20);jpl.add(btnReset);jpl.add(btnAdd);jpl.add(btnCancel);}public void actionPerformed(ActionEvent e){ if(e.getSource()==btnCancel){dispose();new mainFrame().setVisible(true);}if(e.getSource()==btnAdd){if (txtXueHao.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入学号", "温馨提示", RMATION_MESSAGE);}else if (txtName.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入姓名", "温馨提示", RMATION_MESSAGE);}else if (txtYear.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入年龄", "温馨提示", RMATION_MESSAGE);}else if (txtDate.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "出生日期", "温馨提示", RMATION_MESSAGE);}else if (txtZY.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入专业", "温馨提示", RMATION_MESSAGE);}else if (txtMZ.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入民族", "温馨提示", RMATION_MESSAGE);}else if (txtClass.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入班级", "温馨提示", RMATION_MESSAGE);}else{String sex;if(man.isSelected()){ sex="男";}else{ sex="女"; }try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch (ClassNotFoundException ce){JOptionPane.showMessageDialog(null,ce.getMessage());}try{Connection con = DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into 学籍信息表(学号 ,登录密码,姓名,年龄 , 出生日期 , 性别 , 班级,专业,民族)values('"+txtXueHao.getText()+"','"+00000+"','"+txtName.getText()+"','"+txtYear. getText()+"','"+txtDate.getText()+"','"+sex+"','"+txtClass.getText()+"','"+txtZY.ge tText()+"','"+txtMZ.getText()+"')");if(a==1){JOptionPane.showMessageDialog(null,"已成功添加","温馨提示",RMATION_MESSAGE);}else{JOptionPane.showMessageDialog(null,"添加失败","温馨提示",RMATION_MESSAGE);}stmt.close();}catch (SQLException se){JOptionPane.showMessageDialog(null,se.getMessage());}}} else{ txtClass.setText("");txtZY.setText("");txtMZ.setText("");txtName.setText("");txtDate.setText("");txtXueHao.setText("");txtYear.setText("");txtXueHao.requestFocus();}}public static void main(String[] args){addForm amg = new addForm();}}3.添加学生成绩import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;public class addScore extends JFrame implements ActionListener{static addScore ss;JLabel[] label = {new JLabel("学号:") , new JLabel("计算机网络:") , new JLabel("Linux操作系统:") , new JLabel("计算机专业英语:") , new JLabel("计算机信息技术基础:") , new JLabel("Java程序设计:") , new JLabel("数据库应用实训教程:") , new JLabel("高等数学:") , new JLabel("XML:")};JTextField[] txt = {new JTextField() , new JTextField() , new JTextField() , new JTextField() , new JTextField() ,new JTextField() , new JTextField() ,new JTextField() ,new JTextField() };JButton add = new JButton("添加");JButton reset = new JButton("重置");JButton Cancel=new JButton("返回");JPanel jpl = new JPanel();JLabel title = new JLabel("添加学生成绩" , JLabel.CENTER);Font f = new Font("黑体" , Font.BOLD , 16 );int s=100;public addScore(){super("添加学生信息");this.setResizable(false);this.setSize(500,600);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.setVisible(true);this.add(jpl);Cancel.addActionListener(this);add.addActionListener(this);reset.addActionListener(this);jpl.setLayout(null);title.setBounds(150,40,200,20);title.setFont(f);title.setForeground(Color.red);jpl.setBackground(Color.LIGHT_GRAY);jpl.add(title);for(int i = 0 ; i <label.length ; i++){label[i].setBounds(100,s,140,20);jpl.add(label[i]);txt[i].setBounds(260,s,140,20);jpl.add(txt[i]);s=s+40;}add.setBounds(100,s,80,20);reset.setBounds(200,s,80,20);Cancel.setBounds(300,s,80,20);jpl.add(add);jpl.add(reset);jpl.add(Cancel);}public void actionPerformed(ActionEvent e){if(e.getSource()==Cancel){dispose();new mainFrame().setVisible(true);}else if(e.getSource()==add){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch (ClassNotFoundException ce){JOptionPane.showMessageDialog(ss,ce.getMessage());}try{Connection con = DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into 成绩信息表(学号 , 计算机网络 , Linux操作系统 , 计算机专业英语 , 计算机信息技术基础 , Java程序设计 , 数据库应用实训教程 , 高等数学 ,Xml)values('"+txt[0].getText()+"','"+txt[1].getText()+"','"+txt[2].getText()+"','"+ txt[3].getText()+"','"+txt[4].getText()+"','"+txt[5].getText()+"','"+txt[6].getText ()+"','"+txt[7].getText()+"','"+txt[8].getText()+"')");if(a==1){JOptionPane.showMessageDialog(ss,"添加成功");}else{JOptionPane.showMessageDialog(ss,"添加失败");}}catch (SQLException se){JOptionPane.showMessageDialog(ss,se.getMessage()); }}else{for(int i = 0 ; i<txt.length ; i++){txt[i].setText("");txt[0].requestFocus(); }}}public static void main(String[] args){addScore as = new addScore();}}4.修改学生信息:import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class extends JFrame implements ActionListener {JPanel jpl = new JPanel();JLabel SCH = new JLabel("修改学生信息",JLabel.CENTER);Font f = new Font("楷体",Font.BOLD+Font.ITALIC,30);JLabel label1 = new JLabel("请输入学号:",JLabel.CENTER);JButton btnQuery = new JButton("查询");JLabel label2 = new JLabel("姓名:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel label5 = new JLabel("性别:",JLabel.CENTER);JLabel label3 = new JLabel("班级:",JLabel.CENTER);JLabel label4 = new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JTextField tyear = new JTextField();JTextField tDate = new JTextField();JTextField tmz = new JTextField();JTextField num = new JTextField();JTextField nam = new JTextField();JTextField clas = new JTextField();JTextField scl = new JTextField();JButton btnModify = new JButton("修改");JButton btnCancel = new JButton("取消");Connection con;Statement sql;ResultSet rs;int re;public modifyForm(){ this.setSize(560,460);this.setVisible(true);this.setResizable(false);SCH.setForeground(Color.red);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);jpl.setLayout(null);btnQuery.addActionListener(this);btnModify.addActionListener(this);btnCancel.addActionListener(this);SCH.setBounds(100,20,300,20);jpl.add(SCH);label1.setBounds(100,60,100,20);jpl.add(label1);num.setBounds(220,60,140,20);jpl.add(num);btnQuery.setBounds(120,100,90,20);btnModify.setBounds(230,100,90,20);btnCancel.setBounds(340,100,90,20);jpl.add(btnQuery);jpl.add(btnModify);jpl.add(btnCancel);label2.setBounds(100,150,70,20);jpl.add(label2);nam.setBounds(190,150,140,20);jpl.add(nam);labyear.setBounds(100,180,70,20);jpl.add(labyear);tyear.setBounds(190,180,140,20);jpl.add(tyear);labDate.setBounds(100,210,70,20);jpl.add(labDate);tDate.setBounds(190,210,140,20);jpl.add(tDate);label5.setBounds(100,250,70,20);jpl.add(label5);man.setBounds(205,250,60,20);women.setBounds(285,250,60,20);bgp.add(man);bgp.add(women);jpl.add(man);jpl.add(women);label3.setBounds(100,290,70,20);jpl.add(label3);clas.setBounds(190,290,140,20);jpl.add(clas);label4.setBounds(100,320,70,20);jpl.add(label4);scl.setBounds(190,320,140,20);jpl.add(scl);labmz.setBounds(100,350,70,20);jpl.add(labmz);tmz.setBounds(190,350,140,20);jpl.add(tmz);}public void actionPerformed(ActionEvent ae){if(ae.getSource()==btnCancel){dispose();new mainFrame().setVisible(true);}else if(ae.getSource()==btnQuery){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){ }try{con=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");sql=con.createStatement();rs=sql.executeQuery("select * from 学籍信息表 where 学号='"+num.getText()+"'");if(rs.next()){num.setText(rs.getString("学号"));nam.setText(rs.getString("姓名"));tyear.setText(rs.getString("年龄").toString());tDate.setText(rs.getString("出生日期"));if(rs.getString("性别").equals("男")){man.setSelected(true);}else{women.setSelected(true);}clas.setText(rs.getString("班级"));scl.setText(rs.getString("专业"));tmz.setText(rs.getString("民族"));btnModify.setEnabled(true);nam.setEditable(true);tyear.setEditable(true);tDate.setEditable(true);clas.setEditable(true);scl.setEditable(true);tmz.setEditable(true);}else{JOptionPane.showMessageDialog(null, "不存在该记录!", "温馨提示", RMATION_MESSAGE);btnModify.setEnabled(false);tyear.setText("");tDate.setText("");tmz.setText("");num.setText("");nam.setText("");clas.setText("");scl.setText("");num.requestFocus();nam.setEditable(false);tyear.setEditable(false);tDate.setEditable(false);clas.setEditable(false);scl.setEditable(false);tmz.setEditable(false);}}catch(SQLException e){ } }else if(ae.getSource()==btnModify){ try{con=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");sql=con.createStatement();re=sql.executeUpdate("Update 学籍信息表 set 姓名='"+nam.getText()+"',年龄='"+tyear.getText()+"',出生日期='"+tDate.getText()+"',班级='"+clas.getText()+"',专业='"+scl.getText()+"',民族='"+tmz.getText()+"' where 学号='"+num.getText()+"'");if(re==1){JOptionPane.showMessageDialog(null,"记录修改完毕!","温馨提示",RMATION_MESSAGE);}else{JOptionPane.showMessageDialog(null,"记录修改失败!","温馨提示",RMATION_MESSAGE);}sql.close();}catch (SQLException se){JOptionPane.showMessageDialog(null,se.getMessage());}}else{btnModify.setEnabled(false);tyear.setText("");tDate.setText("");tmz.setText("");num.setText("");nam.setText("");clas.setText("");scl.setText("");num.requestFocus();nam.setEditable(false);tyear.setEditable(false);tDate.setEditable(false);clas.setEditable(false);scl.setEditable(false);tmz.setEditable(false); } }public static void main(String[] args) {new modifyForm(); }}5.删除学生信息import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class deleteForm extends JFrame implements ActionListener { JPanel jpl = new JPanel();JLabel SCH = new JLabel("删除学生信息",JLabel.CENTER);Font f = new Font("楷体",Font.BOLD+Font.ITALIC,30);JLabel label1 = new JLabel("请输入学号:",JLabel.CENTER);JButton btnQuery = new JButton("查询");JLabel label2 = new JLabel("姓名:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel label5 = new JLabel("性别:",JLabel.CENTER);JLabel label3 = new JLabel("班级:",JLabel.CENTER);JLabel label4 = new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JTextField tyear = new JTextField();JTextField tDate = new JTextField();JTextField tmz = new JTextField();JTextField num = new JTextField();JTextField nam = new JTextField();JTextField clas = new JTextField();JTextField scl = new JTextField();JButton btnDelete = new JButton("删除");JButton btnCancel = new JButton("取消");Connection con;Statement sql;ResultSet rs;int re;deleteForm(){ this.setSize(560,460);this.setVisible(true);this.setResizable(false);SCH.setForeground(Color.red);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);jpl.setLayout(null);btnQuery.addActionListener(this);btnDelete.addActionListener(this);btnCancel.addActionListener(this);SCH.setBounds(100,20,300,20);jpl.add(SCH);label1.setBounds(100,60,100,20);jpl.add(label1);num.setBounds(220,60,140,20);jpl.add(num);btnQuery.setBounds(120,100,90,20);btnDelete.setBounds(230,100,90,20);btnCancel.setBounds(340,100,90,20);jpl.add(btnQuery);jpl.add(btnDelete);jpl.add(btnCancel);label2.setBounds(100,150,70,20);jpl.add(label2);nam.setBounds(190,150,140,20);jpl.add(nam);labyear.setBounds(100,180,70,20);。
java项目(学生成绩管理系统)
《Java程序设计实训》学生成绩管理系统设计数据库:CREATE DATABASE 学生成绩管理系统(1)教师信息表创建:create table 教师信息表(教师ID varchar(8) primary key ,教师姓名 varchar(8) not null unique,登录密码 varchar(8) not null,)(2)学籍信息表创建:create table 学籍信息表(学号 varchar(15) primary key,姓名 varchar(8) not null ,年龄 varchar(10),出生日期 varchar(10),性别 varchar(4) ,班级 varchar(8) not null ,专业 varchar(5) ,民族 varchar(10),登录密码 varchar(6) not null)(3)成绩信息表创建:create table 成绩信息表(学号 varchar(15),计算机网络 varchar(8), 计算机专业英语 smallint, 计算机信息技术基础 smallint, Java 程序设计 smallint ,数据库应用实训教程 smallint , 高等数学 smallint ,Xml smallint ,)概要结构分析:1.登录界面和主界面import javax.swing.*;import javax.swing.table.DefaultTableModel; import java.awt.*; import java.awt.event.*; import java.sql.*;class myConnection{ResultSet re ; public myConnection(){}public ResultSet getResult(String sql){ try {Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");Connection conn=DriverManager.getConnection ("jdbc:odbc:学生成绩管理系统","ww","123");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABL E);ResultSet re=stmt.executeQuery(sql);return re;}catch(Exception e){System.out.println("getResult------"+e.toString());return null;}}public boolean executeSql(String sql){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection conn=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt=conn.createStatement();stmt.executeUpdate(sql);mit();return true;}catch(Exception e){System.out.println("executeSql----"+e.toString());return false;}}}class stuMainFrame extends JFrame implements ActionListener{JMenuBar jmb = new JMenuBar();Message = new JMenu("信息");JMenu Score = new JMenu("查询");JMenuItem Item1 = new JMenuItem("添加学生信息");JMenuItem mName=new JMenuItem("学生成绩查询");JMenuItem mScore=new JMenuItem("按成绩查询");JMenuItem mNam1=new JMenuItem("查询学生信息");JLabel label = new JLabel();public stuMainFrame(){ImageIcon icon = new ImageIcon("src/images/1.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());this.setJMenuBar(jmb);jmb.add(Message);jmb.add(Score);Message.add(Item1);Score.add(mNam1);Score.add(mName);Score.add(mScore);Item1.addActionListener(this);mName.addActionListener(this);mScore.addActionListener(this);mNam1.addActionListener(this); }public void actionPerformed(ActionEvent e){if(e.getSource()==Item1){ new addForm().setVisible(true);}else if(e.getSource()==mName){ dispose();new Score1().setVisible(true);}else if(e.getSource()==mScore){new scoreQueryForm().setVisible(true);}else if(e.getSource()==mNam1){dispose();new Serch1().setVisible(true);}}}class mainFrame extends JFrame implements ActionListener{J Label label = new JLabel();J MenuBar mBar= new JMenuBar();J Panel p=new JPanel();p rivate JMenu mSystem,mOperate,mQuery,mHelp,myMenuUser;p rivate JMenuItemmFile,mNew,mOpen,mExit,mAdd,mDel,mModify,mName,miShow,mScore,mAbout,miUser,mAddSc;p ublic mainFrame(){this.setJMenuBar(mBar);I mageIcon icon = new ImageIcon("src/images/1.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());myMenuUser=new JMenu("用户");miUser=new JMenuItem("编辑用户");myMenuUser.add(miUser);mSystem=new JMenu("系统");mOperate=new JMenu("数据操作");mQuery=new JMenu("查询");mHelp=new JMenu("帮助");mBar.add(mSystem);mBar.add(mOperate);mBar.add(mQuery);mBar.add(mHelp);mBar.add(myMenuUser);mFile=new JMenuItem("文件");mNew=new JMenuItem("新建");mOpen=new JMenuItem("打开");mExit=new JMenuItem("退出");mSystem.add(mFile);mSystem.add(mNew);mSystem.add(mOpen);mSystem.addSeparator();mSystem.add(mExit);mAdd=new JMenuItem("添加基本信息");mAddSc=new JMenuItem("添加成绩信息");mDel=new JMenuItem("删除");mModify=new JMenuItem("修改");mOperate.add(mAdd);mOperate.add(mAddSc);mOperate.add(mDel);mOperate.add(mModify);mName=new JMenuItem("查询学生信息");mScore=new JMenuItem("查询学生成绩");miShow=new JMenuItem("全部显示");mQuery.add(mName);mQuery.add(mScore);mQuery.addSeparator();mQuery.add(miShow);mAbout=new JMenuItem("软件信息");mHelp.add(mAbout);mExit.addActionListener(this);mAdd.addActionListener(this);mDel.addActionListener(this);mModify.addActionListener(this);mName.addActionListener(this);mScore.addActionListener(this);mAbout.addActionListener(this);miShow.addActionListener(this);miUser.addActionListener(this);mAddSc.addActionListener(this);}public void actionPerformed(ActionEvent e){if(e.getSource()==mExit){dispose();new CJ().setVisible(true);}else if(e.getSource()==mAbout){JOptionPane.showMessageDialog(this,"学生成绩管理系统\n\n电信学院\n\n2012年3月","软件信息",RMATION_MESSAGE);}else if(e.getSource()==mAdd){dispose();new addForm().setVisible(true);}else if(e.getSource()==mAddSc){dispose();new addScore().setVisible(true);}else if(e.getSource()==mDel){dispose();new deleteForm().setVisible(true);}else if(e.getSource()==mName){dispose();new Serch().setVisible(true);}else if(e.getSource()==mScore){dispose();new Score().setVisible(true);}else if(e.getSource()==mModify){new modifyForm().setVisible(true);} else if(e.getSource()==miUser){new userFrame().setVisible(true);}else if(e.getSource()==miShow){new freshTable().setVisible(true); }}} class CJ extends JFrame implements ActionListener{ JLabel t1=new JLabel("ID号:");JLabel t3=new JLabel("密码:");JLabel label = new JLabel();public String zh=null;JTextField t2=new JTextField(null,15);JTextField t4=new JPasswordField(null,15);JRadioButton b=new JRadioButton("教师");JRadioButton b1=new JRadioButton("学生");JButton jB1=new JButton("登录");JButton jB2=new JButton("取消");public CJ (){super("学生生成绩管理系统");setLayout(null);jB1.setBounds(110,170,60,20);jB1.setBackground(Color.red);add(jB1);jB2.setBounds(210,170,60,20);jB2.setBackground(Color.red);add(jB2);t1.setBounds(90,50,80,35);add(t1);t2.setBounds(120,50,150,35);add(t2);t3.setBounds(90,100,80,35);add(t3);t4.setBounds(120,100,150,35);add(t4);b.setBounds(200,20,70,30);b1.setBounds(120,20,70,30);ButtonGroup bg=new ButtonGroup();b.setSelected(false);b1.setSelected(true);b1.setSelected(false);add(b);bg.add(b);add(b1); bg.add(b1);b.setContentAreaFilled(false);b1.setContentAreaFilled(false);ImageIcon icon = new ImageIcon("src/images/a.jpg");label.setIcon(icon);label.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());add(label);setSize(label.getWidth(),label.getHeight());setResizable(false);setVisible(true);setLocation(300,300);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jB1.addActionListener(this);jB2.addActionListener(this);}public void actionPerformed(ActionEvent e) {if (e.getSource()==jB2){System.exit(0);}else if (e.getSource()==jB1){String username , password;username = t2.getText();password = t4.getText();if(b.isSelected()) {if (username.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入用户名", "温馨提示", RMATION_MESSAGE);}else if (password.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入密码", "温馨提示", RMATION_MESSAGE);}else{myConnection conn=new myConnection();ResultSet rs;String sql="select * from 教师信息表 where 教师ID='"+username.toString()+"' and 登录密码 = '"+password.toString()+"'";try{rs=conn.getResult(sql);st();if(rs.getRow()==1){ setVisible(false);rs.beforeFirst();while(rs.next()){this.dispose();sql="select * from 学籍信息表";mainFrame mf=new mainFrame();mf.setLayout(null);mf.setVisible(true);mf.setLocation(300,300);mf.setResizable(false);mf.setTitle("学生成绩管理系统:教师登录界面");mf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);mf.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});JOptionPane.showMessageDialog( null ,rs.getString("教师姓名")+"老师!您好!欢迎登录学生成绩管理系统!" ) ; }}else{JOptionPane.showMessageDialog(null, "用户名或密码错误", "登录失败", RMATION_MESSAGE);}}catch(Exception er){System.out.println(er.toString());}}}if(b1.isSelected()) {if (username.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入用户名", "温馨提示", RMATION_MESSAGE);}else if (password.toString().equals("")){JOptionPane.showMessageDialog(null, "请输入密码", "温馨提示", RMATION_MESSAGE);}else{myConnection conn=new myConnection();ResultSet rs;String sql="select * from 学籍信息表 where 学号='"+t2.getText().toString()+"' and 登录密码 = '"+t4.getText().toString()+"'";try{rs=conn.getResult(sql);st();if(rs.getRow()==1){ setVisible(false);rs.beforeFirst();while(rs.next()){this.dispose();sql="select * from 学籍信息表";stuMainFrame smf =new stuMainFrame();s mf.setSize(500,400);smf.setVisible(true);smf.setResizable(false);smf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);s mf.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});JOptionPane.showMessageDialog( null ,rs.getString("学生姓名")+"同学!您好!欢迎登录学生成绩管理系统!" ) ; } }else{JOptionPane.showMessageDialog(null, "用户名或密码错误", "登录失败", RMATION_MESSAGE);}}catch(Exception er){System.out.println(er.toString());}} }}}public static void main(String[] args) {try{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){}CJ frame=new CJ();new mainFrame();stuMainFrame stu = new stuMainFrame();}}2.添加学生基本信息import javax.swing.*;import javax.swing.table.DefaultTableModel; import java.awt.*;import java.awt.event.*;import java.sql.*;public class addForm extends JFrame implements ActionListener { JLabel label1 = new JLabel("添加基本信息",JLabel.CENTER);JLabel labxuehao=new JLabel("学号:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labName=new JLabel("姓名:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel labclass=new JLabel("班级:",JLabel.CENTER);JLabel labzy=new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);JLabel labsex = new JLabel("性别:",JLabel.CENTER);JTextField txtName=new JTextField(20);JTextField txtDate=new JTextField(18);JTextField txtXueHao=new JTextField(20);JTextField txtYear=new JTextField(20);JTextField txtClass=new JTextField(20);JTextField txtZY=new JTextField(20);JTextField txtMZ=new JTextField(20);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JButton btnAdd=new JButton("添加");JButton btnCancel=new JButton("返回");JButton btnReset = new JButton("重置");JPanel jpl=new JPanel(); //创建面板对象Connection con;Statement sql;ResultSet rs;addForm(){ super("添加学生信息");this.setResizable(false);this.setSize(550,450);this.setVisible(true);this.setLocation(300,300);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setLayout(null);btnAdd.addActionListener(this);btnReset.addActionListener(this);btnCancel.addActionListener(this);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);label1.setBounds(100,20,300,20);jpl.add(label1);labxuehao.setBounds(100,50,70,20);jpl.add(labxuehao);txtXueHao.setBounds(190,50,140,20);jpl.add(txtXueHao);labName.setBounds(100,90,70,20);jpl.add(labName);txtName.setBounds(190,90,140,20);jpl.add(txtName);labsex.setBounds(110,130,60,20);jpl.add(labsex);man.setBounds(190,130,60,20);women.setBounds(270,130,60,20);jpl.add(man);jpl.add(women);bgp.add(man);bgp.add(women);labyear.setBounds(100,180,70,20);jpl.add(labyear);txtYear.setBounds(190,180,140,20);jpl.add(txtYear);labDate.setBounds(100,210,70,20);jpl.add(labDate);txtDate.setBounds(190,210,140,20);jpl.add(txtDate);labmz.setBounds(100,240,70,20);jpl.add(labmz);txtMZ.setBounds(190,240,140,20);jpl.add(txtMZ);labclass.setBounds(100,270,70,20);jpl.add(labclass);txtClass.setBounds(190,270,140,20);jpl.add(txtClass);labzy.setBounds(100,300,70,20);jpl.add(labzy);txtZY.setBounds(190,300,140,20);jpl.add(txtZY);btnReset.setBounds(80,350,90,20);btnAdd.setBounds(200,350,90,20);btnCancel.setBounds(320,350,90,20);jpl.add(btnReset);jpl.add(btnAdd);jpl.add(btnCancel);}public void actionPerformed(ActionEvent e){ if(e.getSource()==btnCancel){dispose();new mainFrame().setVisible(true);}if(e.getSource()==btnAdd){if (txtXueHao.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入学号", "温馨提示", RMATION_MESSAGE);}else if (txtName.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入姓名", "温馨提示", RMATION_MESSAGE);}else if (txtYear.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入年龄", "温馨提示", RMATION_MESSAGE);}else if (txtDate.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "出生日期", "温馨提示", RMATION_MESSAGE);}else if (txtZY.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入专业", "温馨提示", RMATION_MESSAGE);}else if (txtMZ.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入民族", "温馨提示", RMATION_MESSAGE);}else if (txtClass.getText().toString().equals("")){JOptionPane.showMessageDialog(null, "请输入班级", "温馨提示", RMATION_MESSAGE);}else{String sex;if(man.isSelected()){ sex="男";}else{ sex="女"; }try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch (ClassNotFoundException ce){JOptionPane.showMessageDialog(null,ce.getMessage());}try{Connection con = DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into 学籍信息表(学号 ,登录密码,姓名,年龄 , 出生日期 , 性别 , 班级,专业,民族)values('"+txtXueHao.getText()+"','"+00000+"','"+txtName.getText()+"','"+txtYear. getText()+"','"+txtDate.getText()+"','"+sex+"','"+txtClass.getText()+"','"+txtZY.ge tText()+"','"+txtMZ.getText()+"')");if(a==1){JOptionPane.showMessageDialog(null,"已成功添加","温馨提示",RMATION_MESSAGE);}else{JOptionPane.showMessageDialog(null,"添加失败","温馨提示",RMATION_MESSAGE);}stmt.close();}catch (SQLException se){JOptionPane.showMessageDialog(null,se.getMessage());}}} else{ txtClass.setText("");txtZY.setText("");txtMZ.setText("");txtName.setText("");txtDate.setText("");txtXueHao.setText("");txtYear.setText("");txtXueHao.requestFocus();}}public static void main(String[] args){addForm amg = new addForm();}}3.添加学生成绩import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;public class addScore extends JFrame implements ActionListener{static addScore ss;JLabel[] label = {new JLabel("学号:") , new JLabel("计算机网络:") , new JLabel("Linux操作系统:") , new JLabel("计算机专业英语:") , new JLabel("计算机信息技术基础:") , new JLabel("Java程序设计:") , new JLabel("数据库应用实训教程:") , new JLabel("高等数学:") , new JLabel("XML:")};JTextField[] txt = {new JTextField() , new JTextField() , new JTextField() , new JTextField() , new JTextField() ,new JTextField() , new JTextField() ,new JTextField() ,new JTextField() };JButton add = new JButton("添加");JButton reset = new JButton("重置");JButton Cancel=new JButton("返回");JPanel jpl = new JPanel();JLabel title = new JLabel("添加学生成绩" , JLabel.CENTER);Font f = new Font("黑体" , Font.BOLD , 16 );int s=100;public addScore(){super("添加学生信息");this.setResizable(false);this.setSize(500,600);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.setVisible(true);this.add(jpl);Cancel.addActionListener(this);add.addActionListener(this);reset.addActionListener(this);jpl.setLayout(null);title.setBounds(150,40,200,20);title.setFont(f);title.setForeground(Color.red);jpl.setBackground(Color.LIGHT_GRAY);jpl.add(title);for(int i = 0 ; i <label.length ; i++){label[i].setBounds(100,s,140,20);jpl.add(label[i]);txt[i].setBounds(260,s,140,20);jpl.add(txt[i]);s=s+40;}add.setBounds(100,s,80,20);reset.setBounds(200,s,80,20);Cancel.setBounds(300,s,80,20);jpl.add(add);jpl.add(reset);jpl.add(Cancel);}public void actionPerformed(ActionEvent e){if(e.getSource()==Cancel){dispose();new mainFrame().setVisible(true);}else if(e.getSource()==add){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch (ClassNotFoundException ce){JOptionPane.showMessageDialog(ss,ce.getMessage());}try{Connection con = DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into 成绩信息表(学号 , 计算机网络 , Linux操作系统 , 计算机专业英语 , 计算机信息技术基础 , Java程序设计 , 数据库应用实训教程 , 高等数学 ,Xml)values('"+txt[0].getText()+"','"+txt[1].getText()+"','"+txt[2].getText()+"','"+ txt[3].getText()+"','"+txt[4].getText()+"','"+txt[5].getText()+"','"+txt[6].getText ()+"','"+txt[7].getText()+"','"+txt[8].getText()+"')");if(a==1){JOptionPane.showMessageDialog(ss,"添加成功");}else{JOptionPane.showMessageDialog(ss,"添加失败");}}catch (SQLException se){JOptionPane.showMessageDialog(ss,se.getMessage()); }}else{for(int i = 0 ; i<txt.length ; i++){txt[i].setText("");txt[0].requestFocus(); }}}public static void main(String[] args){addScore as = new addScore();}}4.修改学生信息:import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class extends JFrame implements ActionListener {JPanel jpl = new JPanel();JLabel SCH = new JLabel("修改学生信息",JLabel.CENTER);Font f = new Font("楷体",Font.BOLD+Font.ITALIC,30);JLabel label1 = new JLabel("请输入学号:",JLabel.CENTER);JButton btnQuery = new JButton("查询");JLabel label2 = new JLabel("姓名:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel label5 = new JLabel("性别:",JLabel.CENTER);JLabel label3 = new JLabel("班级:",JLabel.CENTER);JLabel label4 = new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JTextField tyear = new JTextField();JTextField tDate = new JTextField();JTextField tmz = new JTextField();JTextField num = new JTextField();JTextField nam = new JTextField();JTextField clas = new JTextField();JTextField scl = new JTextField();JButton btnModify = new JButton("修改");JButton btnCancel = new JButton("取消");Connection con;Statement sql;ResultSet rs;int re;public modifyForm(){ this.setSize(560,460);this.setVisible(true);this.setResizable(false);SCH.setForeground(Color.red);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);jpl.setLayout(null);btnQuery.addActionListener(this);btnModify.addActionListener(this);btnCancel.addActionListener(this);SCH.setBounds(100,20,300,20);jpl.add(SCH);label1.setBounds(100,60,100,20);jpl.add(label1);num.setBounds(220,60,140,20);jpl.add(num);btnQuery.setBounds(120,100,90,20);btnModify.setBounds(230,100,90,20);btnCancel.setBounds(340,100,90,20);jpl.add(btnQuery);jpl.add(btnModify);jpl.add(btnCancel);label2.setBounds(100,150,70,20);jpl.add(label2);nam.setBounds(190,150,140,20);jpl.add(nam);labyear.setBounds(100,180,70,20);jpl.add(labyear);tyear.setBounds(190,180,140,20);jpl.add(tyear);labDate.setBounds(100,210,70,20);jpl.add(labDate);tDate.setBounds(190,210,140,20);jpl.add(tDate);label5.setBounds(100,250,70,20);jpl.add(label5);man.setBounds(205,250,60,20);women.setBounds(285,250,60,20);bgp.add(man);bgp.add(women);jpl.add(man);jpl.add(women);label3.setBounds(100,290,70,20);jpl.add(label3);clas.setBounds(190,290,140,20);jpl.add(clas);label4.setBounds(100,320,70,20);jpl.add(label4);scl.setBounds(190,320,140,20);jpl.add(scl);labmz.setBounds(100,350,70,20);jpl.add(labmz);tmz.setBounds(190,350,140,20);jpl.add(tmz);}public void actionPerformed(ActionEvent ae){if(ae.getSource()==btnCancel){dispose();new mainFrame().setVisible(true);}else if(ae.getSource()==btnQuery){try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){ }try{con=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");sql=con.createStatement();rs=sql.executeQuery("select * from 学籍信息表 where 学号='"+num.getText()+"'");if(rs.next()){num.setText(rs.getString("学号"));nam.setText(rs.getString("姓名"));tyear.setText(rs.getString("年龄").toString());tDate.setText(rs.getString("出生日期"));if(rs.getString("性别").equals("男")){man.setSelected(true);}else{women.setSelected(true);}clas.setText(rs.getString("班级"));scl.setText(rs.getString("专业"));tmz.setText(rs.getString("民族"));btnModify.setEnabled(true);nam.setEditable(true);tyear.setEditable(true);tDate.setEditable(true);clas.setEditable(true);scl.setEditable(true);tmz.setEditable(true);}else{JOptionPane.showMessageDialog(null, "不存在该记录!", "温馨提示", RMATION_MESSAGE);btnModify.setEnabled(false);tyear.setText("");tDate.setText("");tmz.setText("");num.setText("");nam.setText("");clas.setText("");scl.setText("");num.requestFocus();nam.setEditable(false);tyear.setEditable(false);tDate.setEditable(false);clas.setEditable(false);scl.setEditable(false);tmz.setEditable(false);}}catch(SQLException e){ } }else if(ae.getSource()==btnModify){ try{con=DriverManager.getConnection("jdbc:odbc:学生成绩管理系统","ww","123");sql=con.createStatement();re=sql.executeUpdate("Update 学籍信息表 set 姓名='"+nam.getText()+"',年龄='"+tyear.getText()+"',出生日期='"+tDate.getText()+"',班级='"+clas.getText()+"',专业='"+scl.getText()+"',民族='"+tmz.getText()+"' where 学号='"+num.getText()+"'");if(re==1){JOptionPane.showMessageDialog(null,"记录修改完毕!","温馨提示",RMATION_MESSAGE);}else{JOptionPane.showMessageDialog(null,"记录修改失败!","温馨提示",RMATION_MESSAGE);}sql.close();}catch (SQLException se){JOptionPane.showMessageDialog(null,se.getMessage());}}else{btnModify.setEnabled(false);tyear.setText("");tDate.setText("");tmz.setText("");num.setText("");nam.setText("");clas.setText("");scl.setText("");num.requestFocus();nam.setEditable(false);tyear.setEditable(false);tDate.setEditable(false);clas.setEditable(false);scl.setEditable(false);tmz.setEditable(false); } }public static void main(String[] args) {new modifyForm(); }}5.删除学生信息import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class deleteForm extends JFrame implements ActionListener { JPanel jpl = new JPanel();JLabel SCH = new JLabel("删除学生信息",JLabel.CENTER);Font f = new Font("楷体",Font.BOLD+Font.ITALIC,30);JLabel label1 = new JLabel("请输入学号:",JLabel.CENTER);JButton btnQuery = new JButton("查询");JLabel label2 = new JLabel("姓名:",JLabel.CENTER);JLabel labyear=new JLabel("年龄:",JLabel.CENTER);JLabel labDate=new JLabel("出生日期:",JLabel.CENTER);JLabel label5 = new JLabel("性别:",JLabel.CENTER);JLabel label3 = new JLabel("班级:",JLabel.CENTER);JLabel label4 = new JLabel("专业:",JLabel.CENTER);JLabel labmz=new JLabel("民族:",JLabel.CENTER);ButtonGroup bgp = new ButtonGroup();JRadioButton man = new JRadioButton("男");JRadioButton women = new JRadioButton("女");JTextField tyear = new JTextField();JTextField tDate = new JTextField();JTextField tmz = new JTextField();JTextField num = new JTextField();JTextField nam = new JTextField();JTextField clas = new JTextField();JTextField scl = new JTextField();JButton btnDelete = new JButton("删除");JButton btnCancel = new JButton("取消");Connection con;Statement sql;ResultSet rs;int re;deleteForm(){ this.setSize(560,460);this.setVisible(true);this.setResizable(false);SCH.setForeground(Color.red);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setBackground(Color.cyan);man.setBackground(Color.cyan);women.setBackground(Color.cyan);jpl.setLayout(null);btnQuery.addActionListener(this);btnDelete.addActionListener(this);btnCancel.addActionListener(this);SCH.setBounds(100,20,300,20);jpl.add(SCH);label1.setBounds(100,60,100,20);jpl.add(label1);num.setBounds(220,60,140,20);jpl.add(num);btnQuery.setBounds(120,100,90,20);btnDelete.setBounds(230,100,90,20);btnCancel.setBounds(340,100,90,20);jpl.add(btnQuery);jpl.add(btnDelete);jpl.add(btnCancel);label2.setBounds(100,150,70,20);jpl.add(label2);nam.setBounds(190,150,140,20);jpl.add(nam);labyear.setBounds(100,180,70,20);。
基于JAVA的学生成绩管理系统设计
二、系统需求
二、系统需求
在开始设计之前,我们需要明确系统的基本需求。系统的基本需求包括: 1、登录功能:系统需要提供登统。
二、系统需求
2、学生信息管理:系统需要提供学生信息管理功能,包括添加、修改、删除 和查询学生信息。
二、系统需求
3、成绩管理:系统需要提供成绩管理功能,包括添加、修改、删除和查询学 生成绩。
4.前端实现
4.前端实现
前端主要实现系统的用户界面展示和交互操作。我们使用HTML、CSS和 JavaScript等技术来制作静态页面和实现交互效果。具体实现如下:
4.前端实现
学生和教师可以在登录界面输入用户名和密码,系统会自动验证用户身份并 跳转到相应的页面;
4.前端实现
管理员可以在管理员界面上对用户、权限和数据进行全面的管理; 学生可以在学生界面上查看自己的成绩信息和统计数据;
参考内容
基于Java的学生成绩管理系统设 计与实现
基于Java的学生成绩管理系统设计与实现
随着信息技术的快速发展,计算机在各种领域都发挥着越来越重要的作用。 特别是在教育领域,学生成绩管理已经成为一个非常重要的环节。为了能够更有 效地管理和维护学生成绩,设计一个基于Java的学生成绩管理系统变得十分必要。 本次演示将详细介绍该系统的设计与实现过程。
谢谢观看
管理员模块:管理员可以通过该模块对系统进行全面的管理,包括用户管理、 权限管理和数据备份等。
三、系统实现
1、技术栈选择
1、技术栈选择
本系统采用Java语言开发,使用Spring框架实现Web应用程序的开发。数据 库选用MySQL,具有较高的性能和可靠性。前端使用HTML、CSS和JavaScript等 Web技术进行开发。
java学生成绩管理系统课程设计
Java学生成绩管理系统课程设计1. 任务背景学生成绩管理是学校教育系统中重要的组成部分之一,用于记录和管理学生的课程成绩。
传统的学生成绩管理方式通常使用纸质或电子表格进行记录,但随着学生数量的增加和信息化的发展,学生成绩管理系统得到了广泛应用。
Java作为一种广泛使用的编程语言,具有平台无关性和易学易用的特点,非常适合用于开发学生成绩管理系统。
本次课程设计旨在通过编写一个Java学生成绩管理系统,展示学生对Java语言的掌握以及对面向对象编程的理解。
2. 系统需求本学生成绩管理系统的主要功能包括:•学生信息管理:录入学生信息、修改学生信息、删除学生信息、查询学生信息等。
•课程信息管理:录入课程信息、修改课程信息、删除课程信息、查询课程信息等。
•成绩管理:录入学生的课程成绩、修改学生的课程成绩、查询学生的课程成绩等。
•统计分析:计算学生的平均成绩、总成绩等统计信息,进行成绩排名和统计分析。
3. 系统设计3.1 类设计本系统采用面向对象的设计思想,主要包括以下几个类:•Student类:用于表示学生信息,包括学生的学号、姓名、性别、年龄等属性。
提供相应的getter和setter方法。
•Course类:用于表示课程信息,包括课程的编号、名称、学分等属性。
提供相应的getter和setter方法。
•Score类:用于表示学生的成绩信息,包括学生的学号、课程编号、成绩等属性。
提供相应的getter和setter方法。
•StudentManager类:用于学生信息的管理,包括录入学生信息、修改学生信息、删除学生信息、查询学生信息等方法。
•CourseManager类:用于课程信息的管理,包括录入课程信息、修改课程信息、删除课程信息、查询课程信息等方法。
•ScoreManager类:用于成绩信息的管理,包括录入学生成绩、修改学生成绩、查询学生成绩等方法。
•Statistics类:用于统计分析学生成绩,包括计算平均成绩、总成绩、排名等方法。
Java学生成绩管理系统报告
一、实验题目基于JSP/Servlet设计、实现一个课程管理Web应用程序,该程序实现如下功能。
❖有登录页面,登录用帐号密码保存在数据库中,合法登录后进入学习成绩管理页面。
否则给出错误提示。
❖在学习成绩管理页面可添加一门课程的成绩,添加内容包括:课程编号、课程名称、学生姓名、课程成绩等内容。
添加后信息保存在数据库中。
❖可根据课程名称和学生姓名进行查询。
❖可删除和修改课程信息的内容。
(即删除一条课程记录或修改课程记录中的某一字段)。
二、程序设计1.数据库设计:经过分析可知,改程序主要有如下的实体对象,用户、课程、学生三个实体对象。
因此该数据库主要有四张表,分别如下:连接数据库的类设计如下:package database;import java.sql.Connection;import java.sql.DriverManager;public class DataBaseConnection {public static Connection createDBConn(){try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connectionconn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433; DatabaseName=Student_system","supiyun","supiyun1989828");return conn;}catch(Exception e){e.printStackTrace();return null;}}}2.程序界面设计:通过程序的要求可知该程序有jsp页面或Html页面以及servlet组成。
Jsp 主要负责与用户的交互实现视图页面的功能,而servlet主要负责页面跳转控制以及数据处理的功能。
Java语言学生成绩管理系统(含源代码)
Java语言学生成绩管理系统(含源代码)
简介
该文档介绍了一个用Java语言编写的学生成绩管理系统,包括系统的功能和使用方法。
功能
该系统具有以下功能:
- 学生信息管理:包括学生的姓名、学号、性别等基本信息的录入和管理。
- 成绩录入和统计:学生的各科成绩可以通过系统录入,并且可以进行成绩统计和分析。
- 成绩查询和打印:通过学号或姓名可以查询学生的成绩,并且可以将成绩单以打印的形式输出。
使用方法
- 打开终端或命令行界面,输入以下命令克隆代码库:
git clone <代码库地址>
- 导入项目到Java开发工具中。
2. 编译和运行:
- 在Java开发工具中,找到项目的入口文件或主类。
- 点击运行按钮或使用快捷键进行编译和运行。
3. 使用系统:
- 在系统中选择相应的功能,如学生信息管理、成绩录入和统计、成绩查询和打印等。
- 根据系统的提示,进行相应的操作和输入。
- 根据需要,可以多次使用系统的各个功能。
注意事项
- 该系统仅用于学生管理和成绩统计,不涉及其他法律问题和敏感信息。
- 如需修改或添加系统功能,请参考源代码进行相应的开发和调整。
java课程设计学生成绩管理系统代码
一、概述随着信息化时代的到来,学生成绩管理系统已经成为学校教育管理的重要组成部分。
学生成绩管理系统的建设,对于提高学校教学管理水平,促进教学改革具有重要意义。
本文旨在通过java编程语言设计学生成绩管理系统代码,为学校教育管理提供技术支持和参考。
二、系统功能设计1. 学生成绩录入功能学生成绩录入功能是学生成绩管理系统的核心功能之一,通过该功能,教师可以方便快捷地录入学生成绩信息。
录入信息包括学生尊称、学号、课程名称、成绩等。
2. 学生成绩查询功能学生成绩查询功能是学生成绩管理系统的基本功能之一,通过该功能,教师和学生可以查询学生成绩信息。
查询信息包括学生尊称、学号、课程名称、成绩等。
3. 学生成绩统计功能学生成绩统计功能是学生成绩管理系统的重要功能之一,通过该功能,教师可以对学生成绩信息进行统计分析。
统计信息包括总分、平均分、及格人数、优秀人数等。
4. 学生成绩修改功能学生成绩修改功能是学生成绩管理系统的必要功能之一,通过该功能,教师可以对学生成绩信息进行修改。
修改信息包括学生尊称、学号、课程名称、成绩等。
5. 学生成绩导出功能学生成绩导出功能是学生成绩管理系统的便捷功能之一,通过该功能,教师可以将学生成绩信息导出为Excel或PDF格式,以便打印和备份。
三、系统代码设计1. 学生成绩录入代码```javapublic class StudentGradeInput {public static void m本人n(String[] args) {// 录入学生成绩信息Scanner input = new Scanner(System.in);System.out.println("请输入学生尊称:");String name = input.nextLine();System.out.println("请输入学号:");String id = input.nextLine();System.out.println("请输入课程名称:");String course = input.nextLine();System.out.println("请输入成绩:");int grade = input.nextInt();// 将学生成绩信息存入数据库// ...}}```2. 学生成绩查询代码```javapublic class StudentGradeQuery {public static void m本人n(String[] args) { // 查询学生成绩信息Scanner input = new Scanner(System.in); System.out.println("请输入学生尊称:"); String name = input.nextLine();// 查询数据库中对应学生的成绩信息// ...}}```3. 学生成绩统计代码```javapublic class StudentGradeStatistics {public static void m本人n(String[] args) { // 统计学生成绩信息// 从数据库中获取所有学生成绩信息// 统计总分、平均分、及格人数、优秀人数等 // ...}}```4. 学生成绩修改代码```javapublic class StudentGradeModify {public static void m本人n(String[] args) { // 修改学生成绩信息Scanner input = new Scanner(System.in); System.out.println("请输入学生尊称:"); String name = input.nextLine();// 查询数据库中对应学生的成绩信息// ...System.out.println("请输入新的成绩:"); int newGrade = input.nextInt();// 更新数据库中对应学生的成绩信息// ...}}```5. 学生成绩导出代码```javapublic class StudentGradeExport {public static void m本人n(String[] args) {// 导出学生成绩信息// 从数据库中获取所有学生成绩信息// 将学生成绩信息导出为Excel或PDF格式// ...}}```四、系统代码实现以上代码实现了学生成绩管理系统的基本功能,包括学生成绩录入、查询、统计、修改和导出。
java基于命令行的学生成绩管理系统
- -- 《面向对象程序设计与C++》实验报告. 优质专业.备注:1、教师在布置需撰写实验报告的实验前,应先将报告书上的“实验题目”、“实验性质”、“实验目的”、“实验项目容”等项目填写完成,然后再下发给学生。
2、教师在布置需撰写报告的实验项目时,应告知学生提交实验报告的最后期限。
3、学生应按照要求正确地撰写实验报告:1)在实验报告上正确地填写“实验时间”、“实验地点”等栏目。
2)将实验所涉及的源程序文件容(实验操作步骤或者算法)填写在“实验过程或算法(源程序)”栏目中。
3)将实验所涉及源程序调试过程(输入数据和输出结果)或者实验的分析容填写在“实验结果及分析和(或)源程序调试过程”栏目中。
4)在实验报告页脚的“报告创建时间:”处插入完成实验报告时的日期和时间。
5)学生将每个实验完成后,按实验要求的文件名通过网络提交(上载)到指定的服务器所规定的共享文件夹中。
每个实验一个电子文档,如果实验中有多个电子文档(如源程序或图形等),则用WinRAR压缩成一个压缩包文档提交,压缩包文件名同实验报告文件名(见下条)。
6)提交的实验报告电子文档命名为:“组号(2位数字)年级(两位数字不要“级”字)专业(缩写:计算机科学与技术专业(计科)、网络工程专业(网络)、信息安全专业(信息)、物联网工程(物联网))项目组成员(学号(八位数字))实验序号(一位数字).doc。
如第1组完成第1个Project,专业为“计算机科学与技术”专业,项目组成员有:三(学号20115676),四(学号20115676),王五(学号20115676),完成的课程设计报告命名为:01_10计科_20115676三_20115676四_20115676王五1.doc,以后几次实验的报告名称以此类推。
4、教师(或助教)在评价学生实验时,应根据其提交的其他实验相关资料(例如源程序文件等)对实验报告进行仔细评价。
评价后应完成的项目有:1)在“成绩”栏中填写实验成绩。
学生成绩管理系统(JAVA课程设计)
学生成绩管理系统(JAVA课程设计) Java课程设计:学生成绩管理系统问题及功能分析:1.身份验证和使用系统的权限设置和判定。
2.录入、编辑同学的学号、性别、成绩等信息。
3.提供对学号或姓名进行成绩或所有信息的查询。
4.计算学生平均成绩,显示最高成绩学生信息。
5.能按成绩、学号、姓名排序列出学生信息。
6.能统计学生成绩分数段的分布(60以下、60~70、70~80、80~90、90~100)情况,并输出。
7.用文件保存数据,以便反复使用。
概要设计:算法的流程图:录入学生成绩信息显示学生信息计算学生平均成绩显示最高成绩学生查找学生信息修改学生信息学生信息库扩容统计学生成绩分数段的分布编译运行字节码文件列出学生成绩信息按成绩排序列出学生信息按学号排序列出学生信息按姓名排序列出学生信息退出详细设计:学生成绩管理系统代码设计:import java.util.*;import ng.*;import。
*;class StudentMis {public static void main(String[] args) throws n {int select;select = 1;Student stu[] = new Student[10];StudentMis mis = new StudentMis();Scanner sc = new Scanner(System.in);System.out.println("---------------------------------------"); System.out.println("**");System.out.println("欢迎进入学生成绩管理系统"); System.out.println("**");System.out.println("---------------------------------------");while (true) {System.out.println();System.out.println("请选择要执行的操作:"); System.out.println("1、录入学生信息");System.out.println("2、显示学生信息");System.out.println("3、计算学生平均成绩"); System.out.println("4、显示最高成绩学生"); System.out.println("5、查找学生信息");System.out.println("6、修改学生信息");System.out.println("7、学生信息库扩容"); System.out.println("8、统计学生成绩分数段的分布"); System.out.println("9、按成绩排序列出学生信息"); System.out.println("10、按学号排序列出学生信息"); System.out.println("11、按姓名排序列出学生信息"); System.out.println("0、退出");select = sc.nextInt();switch (select) {case 0:System.exit(0);break;case 1:mis.input(stu);break;case 2:mis.display(stu); break;case 3:mis.average(stu); break;case 4:mis.max(stu); break;case 5:mis.search(stu); break;case 6:mis.modify(stu); break;case 7:stu = mis.resize(stu); break;case 8:mis.statistic(stu);break;case 9:mis.sortByGrade(stu);break;case 10:XXX(stu);break;case 11:mis.sortByName(stu);break;default:System.out.println("输入有误,请重新输入!"); break;void input(Student[] stu) {Scanner sc = new Scanner(System.in);int i = 0;while (i < stu.length) {System.out.println("请输入学生信息(学号、姓名、性别、成绩):");stu[i] = new Student(sc.nextInt()。
用java编写的学生成绩管理系统代码
;public class Student{private String id;private String name;private int math;private int english;private int java;private int computer;public String getId(){return id;}public void setId(String id){= id;}public String getName(){return name;}public void setName(String name){= name;}public int getMath(){return math;}public void setMath(int math){= math;}public int getEnglish(){return english;}public void setEnglish(int english){= english;}public int getJava(){return java;}public void setJava(int java){= java;}public int getComputer(){return computer;}public void setComputer(int computer){= computer;}public static void main(String[] args) throws Exception {String id;String cid;String name;int math;int english;int java;int computer;String DBDriver = "";String conStr = "jdbc:odbc:student";Connection con = null;Statement stmt = null;ResultSet rs = null;(DBDriver);con = (conStr, "student", "123");stmt = ();String s = "\n\n\t\t\t学生成绩\n\n\t\t 1 新增\n\t\t 2 更改\n\t\t 3 删除\n\t\t 4 查找\n\t\t 5 显示\n\t\t 0 退出\n\n";int choice = ();switch (choice){xecuteQuery("select avg(math),avg(english),avg(java),avg(computer) from lxh1");while ()){+ "\t" + (2) + "\t"+ (3) + "\t" + (4));};xecuteQuery("select min(math),min(english),min(java),min(computer) from lxh1");while ()){+ "\t" + (2) + "\t"+ (3) + "\t" + (4));};break;case 0:break;default:"感谢您的使用,再见!");};();();}}。
学生成绩管理系统java
学生成绩管理系统Java1. 简介学生成绩管理系统是一种用于管理学生信息和学生成绩的应用程序,通过该系统可以方便地记录学生的各门科目成绩、计算平均成绩、生成成绩报告等功能。
本文档将详细介绍学生成绩管理系统的设计和实现,使用Java作为开发语言。
2. 功能需求学生成绩管理系统应该具备以下功能:1.学生信息管理:包括学生姓名、学号、年级等基本信息的录入、修改和删除功能。
2.科目管理:包括科目名称、科目编号的录入、修改和删除功能。
3.成绩管理:包括学生各科目的成绩录入、修改和删除功能。
4.成绩查询:根据学生学号或姓名进行成绩查询的功能。
5.成绩统计:根据科目统计某学期班级的平均成绩、最高成绩、最低成绩等统计信息。
6.成绩报告生成:根据学生的成绩生成成绩报告,包括学生基本信息、各科目成绩、平均成绩等内容。
3. 系统设计3.1 数据库设计系统中将使用MySQL数据库来存储学生信息、科目信息和成绩信息。
3.1.1 学生表(student)列名数据类型说明id INT 学生ID,主键name VARCHAR 学生姓名student_no VARCHAR 学生学号grade VARCHAR 学生年级3.1.2 科目表(subject)列名数据类型说明id INT 科目ID,主键name VARCHAR 科目名称subject_no VARCHAR 科目编号3.1.3 成绩表(score)列名数据类型说明id INT 成绩ID,主键student_id INT 学生ID,外键subject_id INT 科目ID,外键score FLOAT 成绩3.2 系统架构设计学生成绩管理系统将采用三层架构,包括表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。
3.2.1 表现层(Presentation Layer)表现层负责与用户交互,接受用户输入的指令,展示系统的运行结果。
java学生成绩管理系统课程设计源码
一、概述Java学生成绩管理系统是一种利用Java语言开发的,用于学校管理学生成绩的信息系统。
它提供了学生信息的录入和管理功能,可以方便教师对学生成绩进行查询和统计分析,同时也为学生和家长提供了查询成绩和学业情况的途径。
本文将为大家详细介绍Java学生成绩管理系统的课程设计源码。
二、系统设计1. 功能设计学生成绩管理系统主要包括学生信息管理、课程管理、成绩管理和统计分析等功能。
学生信息管理包括学生基本信息的录入和修改,课程管理包括课程信息的录入和修改,成绩管理包括学生成绩的录入和查询,统计分析包括对成绩进行分析和报表输出等。
2. 技术选型本系统采用Java作为开发语言,采用MySQL作为数据库,采用Swing作为界面开发工具,采用JDBC进行数据库连接。
3. 系统架构学生成绩管理系统采用B/S架构,即浏览器/服务器架构。
前端页面采用Java Swing实现,后端采用Java编写,采用MySQL作为数据库存储数据。
三、系统实现1. 数据库设计(1)学生表学生ID、尊称、性别、生日、通联方式、家庭住宅区域等字段。
(2)课程表课程ID、课程名称、学分、任课教师等字段。
(3)成绩表学生ID、课程ID、成绩等字段。
2. 源码实现(1)学生信息管理学生信息的录入和修改功能采用Java Swing实现,与数据库的交互采用JDBC技术。
(2)课程管理课程信息的录入和修改功能同样采用Java Swing实现,并与数据库进行交互。
(3)成绩管理成绩的录入和查询功能采用Java Swing实现,并通过JDBC与数据库交互。
(4)统计分析统计分析功能包括对成绩进行统计和报表输出,采用Java编程实现。
四、系统测试系统测试分为单元测试和集成测试两个阶段。
单元测试主要测试系统的各个模块是否正常运行,集成测试主要测试系统各模块之间的交互是否正常。
测试内容包括录入学生信息、录入课程信息、录入成绩、查询成绩、统计分析等功能的测试。
基于java的学生成绩管理系统的设计与实现
基于java的学生成绩管理系统的设计与实现基于Java的学生成绩管理系统的设计与实现序言在当今数字化时代,学生成绩管理是教育领域至关重要的一环。
传统的手工管理方式已经无法满足大规模学生信息处理的需求,学生成绩管理系统的设计与实现显得尤为重要。
本文将通过对基于Java的学生成绩管理系统进行深度探讨,旨在帮助读者全面了解系统的设计原理及操作流程,并分享作者对该系统的个人观点和理解。
一、引言基于Java的学生成绩管理系统是一款通过计算机实现的,能够方便、高效地管理学生成绩信息的软件。
该系统通过数据的存储、计算、分析和展示等功能,帮助教师和学校管理人员更好地了解学生成绩状况,及时进行个性化教学和学生成长。
下面将从系统的设计理念、功能模块和技术实现等方面进行全面介绍。
二、设计理念基于Java的学生成绩管理系统的设计理念是面向对象和模块化。
对于面向对象,系统将学生、教师、课程等各种元素抽象为对象,通过类与类之间的关系进行交互和数据传递;对于模块化,系统将各个功能模块拆分成独立的子系统,方便维护和拓展。
这两个设计理念保证了系统的可扩展性和灵活性,使其能够适应不同规模和功能要求的教育机构。
三、功能模块1. 学生管理模块学生管理模块是学生成绩管理系统的核心,包括学生信息录入、修改、查询及删除等功能。
教师可以通过该模块录入学生的基本信息,如尊称、学号、性别等,并进行相应的更新和查询操作。
系统还提供成绩录入和成绩查询功能,方便教师对学生的成绩进行管理和统计。
2. 课程管理模块课程管理模块主要用于管理学生所修读的课程信息。
教师可以录入、修改和删除课程信息,并进行课程查询和统计操作。
该模块与学生管理模块相互关联,为学生成绩分析和排名提供了基础数据。
3. 成绩分析模块成绩分析模块是学生成绩管理系统的关键功能之一。
通过该模块,教师可以进行成绩的分析和统计操作。
系统提供了多种统计指标,如平均分、最高分、最低分等,教师可以根据需要进行灵活的分析和对比。
java学生成绩管理系统代码
Java学生成绩管理系统代码介绍Java学生成绩管理系统是一个用于管理学生个人信息和学习成绩的应用程序。
该系统可以帮助学校、老师和学生快速高效地管理和查看学生成绩。
本文将讨论该系统的代码设计和功能实现。
功能Java学生成绩管理系统具有以下功能:1.添加学生信息:可以添加学生的基本信息,如学号、姓名、性别、年龄等。
2.更新学生信息:可以修改学生的个人信息。
3.删除学生信息:可以从系统中删除学生的信息。
4.添加学生成绩:可以添加学生的学习成绩,如数学、英语、科学等。
5.更新学生成绩:可以修改学生的学习成绩。
6.删除学生成绩:可以从系统中删除学生的某门学习成绩。
7.查询学生信息:可以按照学号或姓名查询学生的信息。
8.查询学生成绩:可以按照学号或姓名查询学生的学习成绩。
9.统计学生成绩:可以计算某门课程的平均成绩、最高成绩、最低成绩等统计数据。
10.打印学生成绩单:可以打印学生的学习成绩单。
代码设计学生类学生类是Java学生成绩管理系统的核心类之一,它包含了学生的基本信息和学习成绩信息。
下面是学生类的代码示例:public class Student {private String studentId;private String name;private String gender;private int age;private Map<String, Double> scores; // 使用Map存储学习成绩,key为课程名称,value为成绩// 构造函数public Student(String studentId, String name, String gender, int ag e) {this.studentId = studentId; = name;this.gender = gender;this.age = age;this.scores = new HashMap<>();}// 添加学习成绩public void addScore(String course, double score) {scores.put(course, score);}// 更新学习成绩public void updateScore(String course, double score) {scores.put(course, score);}// 删除学习成绩public void deleteScore(String course) {scores.remove(course);}// 获取学生的学习成绩public Map<String, Double> getScores() {return scores;}// 其他getter和setter方法// ...}学生管理类学生管理类负责管理学生对象,包括学生的添加、更新、删除等操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
package StudentScoreManager;
import java.io.EOFException;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.;
public class SSM {
public static void main(String[] args) throws IOException{
MainMenu mainmenu=new MainMenu();
mainmenu.Startmenu();
}
}
class Student implements Serializable{
int stunum;
String stuname;
int score;
Student(int stuno,String stun,int sco){
stunum=stuno;
stuname=stun;
score=sco;
}
public String toString(){
return 学号+stunum+ 姓名+stuname+ 分数+score;
}
}
class StudentList {
ArrayListStudent list = new ArrayListStudent();
Boolean IsEmpty(){
if(!list.isEmpty())
return true;
else{
System.out.print(错误!列表为空!!);
return false;
}
}
void CreatList(){
Scanner scan=new Scanner(System.in);
System.out.println(有几位学生);
int n=scan.nextInt();
System.out.println(输入学生学号、姓名和成绩(number name score格式));
for(int i=0;in;i++){
int number=scan.nextInt();
String name=scan.next();
int score=scan.nextInt();
Student student=new Student(number,name,score);
list.add(student);
}
}
void OutPut(){
for(Student s list)
System.out.println(s);
}
void NameSearch(String name){
for(Student s list){
if(s.stuname.equals(name))
System.out.println(s);
}
}
void NumberSearch(int number){
for(Student s list){
if(s.stunum==number)
System.out.println(s);
}
}
void Sort(final int n){
ComparatorStudent comparator = new ComparatorStudent(){ public int compare(Student s1, Student s2) {
if(n==4)
return s1.stunum-s2.stunum;
else
return s2.score-s1.score;
}
};
Collections.sort(list,comparator);
for(Student s list)
System.out.println(s);
}
void Save() {
try{
FileOutputStream fs = new FileOutputStream(Student.txt);
ObjectOutputStream os = new ObjectOutputStream(fs);
for(Student s list)
os.writeObject(s);
os.close();
}catch(Exception ex){
ex.printStackTrace();
}
System.out.print(保存成功!!);
}
void Load(){
try{
FileInputStream fis = new FileInputStream(Student.txt);
ObjectInputStream ois = new ObjectInputStream(fis);
while(true){
try{
Student stu =(Student) ois.readObject();
list.add(stu);
}catch (EOFException e) {
ois.close();
break;
}
}
}catch(Exception ex){
ex.printStackTrace();
}
System.out.println(加载成功!!);
}
public void remove() {
list.removeAll(list);
}
}
class MainMenu{
void Startmenu(){
System.out.println(选择功能);
System.out.println(1输入学生信息);
System.out.println(2由姓名查询);
System.out.println(3由学号查询);
System.out.println(4由学号排序(升序));
System.out.println(5由分数排序(降序));
System.out.println(6保存学生数据);
System.out.println(7加载学生数据);
System.out.println(0退出);
StudentList studentlist=new StudentList();
Scanner scan=new Scanner(System.in);
int a=scan.nextInt();
while(true){
switch(a){
case 1
System.out.println(输入学生信息……);
studentlist.CreatList();
studentlist.OutPut();
break;
case 2
System.out.println(由姓名查询……);
if(studentlist.IsEmpty()){
System.out.println(输入名字:);
String name=scan.next();
Search(name);
}
break;
case 3
System.out.println(由学号查询……);
if(studentlist.IsEmpty()){
System.out.println(输入学号:);
int number=scan.nextInt();
studentlist.NumberSearch(number);
}
break;
case 4
if(studentlist.IsEmpty()){
System.out.println(由学号排序(升序)……);
studentlist.Sort(4);
}
break;
case 5
if(studentlist.IsEmpty()){
System.out.println(由分数排序(降序)……);
studentlist.Sort(5);
}
break;
case 6
System.out.println(保存学生数据……);
studentlist.Save();
break;
case 7
System.out.println(加载学生数据……);
studentlist.remove();
studentlist.Load();
studentlist.OutPut();
break;
case 0
System.out.println(退出……);
System.exit(0);
default
System.out.print(选择错误,请重新选择);
}
a=scan.nextInt();
}
}
}。