Java学生管理系统系统_第1页
Java学生管理系统系统_第2页
Java学生管理系统系统_第3页
Java学生管理系统系统_第4页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用标准文案农工商职业技术学院实验报告实验人: _同组人: _班级: _指导老师: _1、 实验题目学生管理系统2、 实验目的掌握实际开发的步骤。能够熟练开发和学生管理系统相类似的系统。掌握 Java 中的界面开发。掌握 Java 中如何连接数据库。3、 实验设备及仪器计算机一台,配置有JDK环境4、 实验内容编写学生管理系统程序,利用图形界面构造系统的客户端服务界面,连接数据库,使得学生教师能简单方便地对数据进行存储修改5、 实验步骤(1) 首先确定学生管理系统的用户。(2) 学生管理系统的用户基本分为两类, 分别是老师和学生。 不管是哪种用户都是必须经过登录才能进入学生管理系统的, 所以该

2、系统必须有一个登录界面, 并且在该界面中能够让用户选择用户是老师还是学生。 该系统是不会对外开放的,所以也不存在注册界面。(3) 因为用户分为两种, 所以每一种用户进行操作的界面应该是不同的。 首先是学生界面, 在其中应该只有查询成绩和个人信息查询和插入。 主要来学习如何进行学生界面开发。(4) 除了学生界面外, 还要有一个老师界面。 老师在老师界面中可以对学生信息进行管理,包括查询、修改和删除。同样也可以对学生的成绩进行管理,包括查询和插入,由于输入错误还要能够对学生的成绩进行修改,由于学生作弊还能够将学生的成绩进行删除。(5) 首先数据库中应该有老师和学生这两个表, 表中应该最少有用户名和

3、密码两项,使用表中的这两项就可以进行登录。 在学生表中还应该具有一些和学籍相关的信息,包括年龄、班级等内容,这样就可以在系统中对学生信息进行操作。(6) 除此之外还需要一个成绩表,通过该表老师可以对学生的成绩进行查精彩文档实用标准文案询、插入、修改和删除。学生也可以通过该表对自己的成绩进行查询。(7)不管是老师和学生进入学生管理系统都是从登录界面进入的。 在登录界面中应该是让用户选择自己身份的, 然后系统将根据用户的选择来判断用户的身份并进行查询不同的数据库。(8) 对界面设计好基本形式后, 就可以进行程序开发。 首先要定义两个标签和两个文本框, 分别来表示用户名和密码。 并且还需要定义一个下

4、拉列表让用户来进行身份选择,其中选项包括“学生”和“老师” 。在程序的最后还定义了两个按钮,从而让用户输入用户名和密码后进行登录。(9) 在学生界面中, 学生可以对自己的信息进行查询, 在第一次登录时还可以对自己的信息进行插入,并且学生能够查询自己的成绩。(10) 因为学生要完成对信息和成绩的操作, 所以这里的设计是在界面中定义两个菜单, 分别进行信息和成绩的操作。 因为对信息的操作包括插入和查询,所以还需要在信息菜单下定义“插入”和“查询”两个子菜单。(11) 对界面进行设计后,就可以进行程序开发。同样首先是创建一个窗口,在窗口中要创建两个菜单,并且在信息菜单下还要创建“插入”和“查询”两个

5、子菜单。(12) 在学生界面中单击“信息”菜单下的“插入”子菜单,就会进入学生插入界面,在该界面中学生可以输入自己的信息。(13) 学生第一次插入信息后,老师是可以对学生的信息进行修改和删除的。除此之外, 学生还可以查询自己被修改后的信息, 在信息菜单下有一个查询子菜单,单击该菜单就触发事件,从而进入查询学生信息界面。(14) 在学生界面中还有一个“成绩”菜单,在学生的界面该菜单下只有一个“查询”子菜单。单击“查询”子菜单,将触发事件,进入到查询成绩界面。6、 附录(1) 登陆界面import java.awt.*;import javax.swing.*;import java.awt.ev

6、ent.*;import java.sql.*;public class systems extends JFrame implements ActionListenerstatic systems ss;JPanel panel = new JPanel();JLabel label1 = new JLabel("输入姓名: ");JTextField name = new JTextField();JLabel label2 = new JLabel("密码: ");JPasswordField pwd = new JPasswordField();

7、JButton Enter = new JButton("登录 ");JButton Exit = new JButton("退出 ");精彩文档实用标准文案String url = "D:Systemstitle.jpg"ButtonGroup bgp = new ButtonGroup();JRadioButton stu = new JRadioButton("学生 ");JRadioButton tch = new JRadioButton("教师 ");public systems()

8、super(" 登录系统 ");this.setResizable(false);JLabel img = new JLabel(new ImageIcon(url);img.setBounds(0,0,500,100);panel.add(img);stu.setBounds(165,210,70,20);tch.setBounds(265,210,70,20);bgp.add(stu);bgp.add(tch);panel.add(stu);panel.add(tch);Enter.setBounds(150,250,80,20);Exit.setBounds(270,

9、250,80,20);Enter.addActionListener(this);Exit.addActionListener(this);panel.add(Enter);panel.add(Exit);panel.setLayout(null);this.add(panel);label1.setBounds(135,130,100,25);panel.add(label1);name.setBounds(265,130,100,25);panel.add(name);label2.setBounds(135,165,100,25);panel.add(label2);pwd.setBou

10、nds(265,165,100,25);panel.add(pwd);this.setBounds(100,100,500,350);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public void actionPerformed(ActionEvent e)if(e.getSource()=Enter)String username , password;精彩文档实用标准文案username = name.getText();password = pwd.getText();tryCla

11、ss.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch (ClassNotFoundException ce)JOptionPane.showMessageDialog(ss,ce.getMessage();if(stu.isSelected()tryConnectioncon=DriverManager.getConnection("jdbc:odbc:sysdb","sa",""); Statement stmt = con.createStatement();Resu

12、ltSetrs= stmt.executeQuery("select*from STU");while(rs.next()if(rs.getString("ID").equals(username)&&(rs.getString("P wd").equals(password)JOptionPane.showMessageDialog(ss,"登陆成功 ");Students stu = new Students();elseJOptionPane.showMessageDialog(ss,&quo

13、t;登录失败 ");rs.close();stmt.close();catch (SQLException se)JOptionPane.showMessageDialog(ss,se.getMessage();精彩文档实用标准文案else if(tch.isSelected()tryConnectioncon=DriverManager.getConnection("jdbc:odbc:systchdb","sa","");Statement stmt = con.createStatement();ResultSetrs

14、 = stmt.executeQuery("select* fromTCH");while(rs.next()if(rs.getString("ID").equals(username)&&(rs.getString("P wd").equals(password)JOptionPane.showMessageDialog(ss,"登陆成功 ");elseJOptionPane.showMessageDialog(ss,"登录失败 ");catch (SQLException s

15、e)JOptionPane.showMessageDialog(ss,se.getMessage();elseSystem.exit(0);public static void main(String args)systems sys = new systems();精彩文档实用标准文案(2) 学生界面import java.awt.*;import javax.swing.*;import java.awt.event.*;publicclass Students extends JFrame implements ActionListenerJMenuBar jmb = new JMenu

16、Bar();JMenu Message = new JMenu(" 信息 ");JMenu Score = new JMenu("成绩 ");JMenuItem Item1 = new JMenuItem("插入 ");JMenuItem Item2 = new JMenuItem("查询 ");JMenuItem Item3 = new JMenuItem("查询 ");public Students()super(" 学生界面 ");this.setSize(500,40

17、0);this.setVisible(true);this.setResizable(false);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setJMenuBar(jmb);jmb.add(Message);jmb.add(Score);Message.add(Item1);Message.add(Item2);Score.add(Item3);Item1.addActionListener(this);Item2.addActionListener(this);Item3.addActionListener(this)

18、;public void actionPerformed(ActionEvent e)if(e.getSource()=Item1)AddMsg ad = new AddMsg();else if(e.getSource()=Item2)Serch ser = new Serch();精彩文档实用标准文案elseScore so = new Score();public static void main(String args)Students stu = new Students();(3) 添加学生信息import java.awt.*;import javax.swing.*;impor

19、t java.awt.event.*;import java.sql.*;public class AddMsg extends JFrame implements ActionListenerstatic AddMsg s;/* 添加学生信息控件 */JPanel jpl = new JPanel();JLabel label1 = new JLabel("添加基本信息 ",JLabel.CENTER);JLabel label2 = new JLabel("学号: ",JLabel.CENTER);JLabel label3 = new JLabel

20、("姓名: ",JLabel.CENTER);JLabel label4 = new JLabel("性别: ",JLabel.CENTER);JLabel label5 = new JLabel("班级: ",JLabel.CENTER);JLabel label6 = new JLabel("学院: ",JLabel.CENTER);JTextField num = new JTextField(2);JTextField nam = new JTextField(4);ButtonGroup bgp = ne

21、w ButtonGroup();JRadioButton man = new JRadioButton("男 ");JRadioButton women = new JRadioButton("女");JTextField clas = new JTextField();JTextField scl = new JTextField();JButton reset = new JButton("重置 ");JButton addmsg = new JButton("添加 ");public AddMsg()supe

22、r(" 添加学生信息 ");this.setResizable(false);精彩文档实用标准文案this.setSize(500,400);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setLayout(null);addmsg.addActionListener(this);reset.addActionListener(this);/* 插入面板 */label1.setBounds(100,20,300,20);jpl.add(

23、label1);label2.setBounds(100,50,70,20);jpl.add(label2);num.setBounds(190,50,140,20);jpl.add(num);label3.setBounds(100,90,70,20);jpl.add(label3);nam.setBounds(190,90,140,20);jpl.add(nam);label4.setBounds(100,130,70,20);jpl.add(label4);man.setBounds(190,130,60,20);women.setBounds(270,130,60,20);jpl.ad

24、d(man);jpl.add(women);bgp.add(man);bgp.add(women);label5.setBounds(100,170,70,20);jpl.add(label5);clas.setBounds(190,170,140,20);jpl.add(clas);label6.setBounds(100,210,70,20);jpl.add(label6);scl.setBounds(190,210,140,20);jpl.add(scl);reset.setBounds(120,250,90,20);addmsg.setBounds(240,250,90,20);jpl

25、.add(reset);jpl.add(addmsg);public void actionPerformed(ActionEvent e)if(e.getSource()=addmsg)精彩文档实用标准文案String sex;if(man.isSelected()sex="男"elsesex="女"tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch (ClassNotFoundException ce)JOptionPane.showMessageDialog(s,ce.g

26、etMessage();tryConnection con = DriverManager.getConnection("jdbc:odbc:sysdb","sa","");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into STU(ID ,Pwd , Name , Sex , Class , Collage)values('"+num.getText()+"','"

27、+"12345678','"+nam.get Text()+"','"+sex+"','"+clas.getText()+"','"+scl.getText()+"')");if(a=1)JOptionPane.showMessageDialog(s,"已成功添加");elseJOptionPane.showMessageDialog(s,"添加失败 ");stmt.close();c

28、atch (SQLException se)JOptionPane.showMessageDialog(s,se.getMessage();精彩文档实用标准文案elsenum.setText("");nam.setText("");clas.setText("");scl.setText("");num.requestFocus();public static void main(String args)AddMsg amg = new AddMsg();(4) 添加学生成绩import java.awt.*;im

29、port javax.swing.*;import java.awt.event.*;import java.sql.*;publicclass Addscore extends JFrame implements ActionListenerstatic Addscore ss;JLabel label = new JLabel("学号: ") , new JLabel("计算机网络: ") , new JLabel("Linux操作系统: ") , new JLabel("计算机专业英语:") , new JL

30、abel("计算机信息技术基础:") , newJLabel("Java程序设计: ") , new JLabel("数据库应用实训教程:") , new JLabel(" 高等数学: ") , new JLabel("XML : "); JTextField txt = new JTextField() , new JTextField() , newJTextField(),new JTextField(),new JTextField(),newJTextField(),newJTextF

31、ield(),newJTextField(),newJTextField() ;JButton add = new JButton("添加 ");JButton reset = new JButton("重置 ");JPanel jpl = new JPanel();JLabel title = new JLabel("添加学生成绩 " , JLabel.CENTER);Font f = new Font("黑体 " , Font.BOLD , 16 );int s = 100;public Addscore()精

32、彩文档实用标准文案super(" 添加学生信息 ");this.setResizable(false);this.setSize(500,600);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.setVisible(true);this.add(jpl);add.addActionListener(this);reset.addActionListener(this);jpl.setLayout(null);title.setBounds(150,40,200,20);title.setFont(f);title.set

33、Foreground(Color.red);jpl.setBackground(Color.LIGHT_GRAY);jpl.add(title);for(int i = 0 ; i <label.length ; i+)labeli.setBounds(100,s,140,20);jpl.add(labeli);txti.setBounds(260,s,140,20);jpl.add(txti);s=s+40;add.setBounds(150,s,80,20);reset.setBounds(250,s,80,20);jpl.add(add);jpl.add(reset);public

34、 void actionPerformed(ActionEvent e)if(e.getSource()=add)tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch (ClassNotFoundException ce)JOptionPane.showMessageDialog(ss,ce.getMessage();try精彩文档实用标准文案Connectioncon=DriverManager.getConnection("jdbc:odbc:sysdb","sa",&quo

35、t;");Statement stmt = con.createStatement();int a = stmt.executeUpdate("insert into计算机系成绩 (SID ,计算机网络 , Linux操作系统 , 计算机专业英语 ,计算机信息技术基础 , Java程序设计 , 数据库应用实训教程 ,高等数学,Xml)values('"+txt0.getText()+"','"+txt1.getText()+"','"+txt2.getText()+"'

36、;,'"+txt3.getText()+"','"+txt4.getText()+"','"+txt5.getText()+"','"+txt6.getText()+"','"+tx t7.getText()+"','"+txt8.getText()+"')");if(a=1)JOptionPane.showMessageDialog(ss,"添加成功"

37、;);elseJOptionPane.showMessageDialog(ss,"添加失败");catch (SQLException se)JOptionPane.showMessageDialog(ss,se.getMessage();elsefor(int i = 0 ; i<txt.length ; i+)txti.setText("");txt0.requestFocus();public static void main(String args)Addscore as = new Addscore();(5) 查询学生信息精彩文档实用标

38、准文案import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.sql.*;public class Serch extends JFrame implements ActionListener/* 查询学生信息控件 */static Serch s;JPanel jpl = new JPanel();JLabel SCH = new JLabel("查询学生信息 ",JLabel.CENTER);JLabel label1 = new JLabel("请输入学号: &qu

39、ot;,JLabel.CENTER);JButton serch = new JButton("查询 ");JLabel label2 = new JLabel("姓名: ",JLabel.CENTER);JLabel label3 = new JLabel("班级: ",JLabel.CENTER);JLabel label4 = new JLabel("学校: ",JLabel.CENTER);JLabel label5 = new JLabel("性别: ",JLabel.CENTER);

40、ButtonGroup bgp = new ButtonGroup(); JRadioButton man = new JRadioButton(" 男 "); JRadioButton women = new JRadioButton(" 女"); JTextField num = new JTextField(); JTextField nam = new JTextField(); JTextField clas = new JTextField(); JTextField scl = new JTextField();JButton reset

41、= new JButton("重置 ");public Serch()this.setSize(500,400);this.setVisible(true);this.setResizable(false);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.add(jpl);jpl.setLayout(null);serch.addActionListener(this);reset.addActionListener(this);/* 查询面板 */SCH.setBounds(100,20,300,20);j

42、pl.add(SCH);label1.setBounds(100,60,100,20);jpl.add(label1);num.setBounds(220,60,140,20);jpl.add(num);精彩文档实用标准文案serch.setBounds(120,100,90,20);reset.setBounds(260,100,90,20);jpl.add(serch);jpl.add(reset);label2.setBounds(100,140,70,20);jpl.add(label2);nam.setBounds(190,140,140,20);jpl.add(nam);label

43、5.setBounds(100,180,70,20);jpl.add(label5);man.setBounds(205,180,60,20);women.setBounds(285,180,60,20);bgp.add(man);bgp.add(women);jpl.add(man);jpl.add(women);label3.setBounds(100,220,70,20);jpl.add(label3);clas.setBounds(190,220,140,20);jpl.add(clas);label4.setBounds(100,260,70,20);jpl.add(label4);

44、scl.setBounds(190,260,140,20);jpl.add(scl);public void actionPerformed(ActionEvent e)String id = num.getText();if(e.getSource()=serch)tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");catch (ClassNotFoundException ce)JOptionPane.showMessageDialog(s,ce.getMessage();tryConnection con = Driver

45、Manager.getConnection("jdbc:odbc:sysdb","sa","");精彩文档实用标准文案Statement stmt = con.createStatement();ResultSet rs = stmt.executeQuery("select * from STU where ID = '" + id + "'");while(rs.next()nam.setText(rs.getString("Name");if(rs.ge

46、tString("Sex").equals("男")man.setSelected(true);elsewomen.setSelected(true);clas.setText(rs.getString("Class");scl.setText(rs.getString("Collage");catch (SQLException se)JOptionPane.showMessageDialog(s,se.getMessage();public static void main(String args)Serch

47、sch = new Serch();(6) 查询成绩import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.awt.font.*;import java.sql.*;public class Score extends JFrame implements ActionListenerstatic Score s;JLabel title = new JLabel("查询成绩 ",JLabel.CENTER);精彩文档实用标准文案Font f = new Font("楷体

48、",Font.BOLD+Font.ITALIC,16);JPanel jpl = new JPanel();JLabel label1 = new JLabel("请输入学号: ",JLabel.CENTER);JTextField num = new JTextField();JButton serch = new JButton("查询成绩 ");JButton reset = new JButton("重置 ");JLabel label2 = new JLabel("计算机网络: ",JLabel

49、.LEFT);JLabel label3 = new JLabel("Linux操作系统: ",JLabel.LEFT);JLabel label4 = new JLabel("计算机专业英语: ",JLabel.LEFT);JLabel label5= new JLabel("计算机信息技术基础:",JLabel.LEFT);JLabel label6 = new JLabel("Java程序设计: ",JLabel.LEFT);JLabel label7 = new JLabel("数据库: &quo

50、t;,JLabel.LEFT);JLabel label8 = new JLabel("高等数学: ",JLabel.LEFT);JLabel label9 = new JLabel("XML: ",JLabel.LEFT);JTextFieldtxt=new JTextField(), new JTextField(),newJTextField(), newJTextField(),new JTextField(),newJTextField() ,new JTextField() , new JTextField();static int p =

51、140;public Score()super(" 查询分数 ");this.setResizable(false);this.setSize(500,550);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);title.setFont(f);this.add(jpl);jpl.setLayout(null);title.setBounds(100,20,300,20);jpl.add(title);label1.setBounds(100,60,90,20);jpl.add

52、(label1);num.setBounds(210,60,140,20);jpl.add(num);serch.setBounds(130,100,90,20);reset.setBounds(240,100,90,20);jpl.add(serch);jpl.add(reset);serch.addActionListener(this);reset.addActionListener(this);label2.setBounds(100,140,140,20);精彩文档实用标准文案label3.setBounds(100,180,140,20);label4.setBounds(100,

53、220,140,20);label5.setBounds(100,260,140,20);label6.setBounds(100,300,140,20);label7.setBounds(100,340,140,20);label8.setBounds(100,380,140,20);label9.setBounds(100,420,140,20);jpl.add(label2);jpl.add(label3);jpl.add(label4);jpl.add(label5);jpl.add(label6);jpl.add(label7);jpl.add(label8);jpl.add(labe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论