软件工程课程设计论文学生管理系统.doc

上传人:土8路 文档编号:11068803 上传时间:2021-06-26 格式:DOC 页数:25 大小:522KB
返回 下载 相关 举报
软件工程课程设计论文学生管理系统.doc_第1页
第1页 / 共25页
软件工程课程设计论文学生管理系统.doc_第2页
第2页 / 共25页
软件工程课程设计论文学生管理系统.doc_第3页
第3页 / 共25页
软件工程课程设计论文学生管理系统.doc_第4页
第4页 / 共25页
软件工程课程设计论文学生管理系统.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《软件工程课程设计论文学生管理系统.doc》由会员分享,可在线阅读,更多相关《软件工程课程设计论文学生管理系统.doc(25页珍藏版)》请在三一文库上搜索。

1、软件工程设计课程设计总结软件工程设计课程设计总结 报告报告 设计题目设计题目: 学生姓名学生姓名: 院院 系系: 专专 业业: 班班 级级: 学学 号号: 指导教师指导教师: 年 月 日 目 录 一需求分析 .1 1 1.1 题目及目的 .1 1.2 内容简介 .1 1.3 功能简介.2 1.4 数据词典 .6 二.程序设计 .7 7 三.运行界面 .1111 附录(源代码) .1313 一需求分析 1.1 题目及目的 题目:学生信息管理系统; 目的:方便学生查询自己的信息提高工作效率,及时有效的 更新学生的最新情况,提供可靠的数据存档 1.2 内容简介 主要分为学生基本信息管理、学生成绩信息

2、管理、学生学籍 信息管理和统计报表管理四大部分。 1.3 功能简介 该系统跟其他外界的关系如下: 其内部数据流图如下: 以下为具体功能介绍: 1权限信息管理: 主要完成权限信息的验证、增删管理员、修改用户密码等功 能。它的输入为权限信息,即用户名跟密码,然后通过权限信息 验证,区分是一般用户,还是管理员,还是高级管理员。 2学生信息查询: 实现学生信息的检索功能。 3学生信息更新: 实现学生信息的更新。只有管理员跟高级管理员才能使用。 学生信息的更新包括了新学生信息的录入跟学生信息的修改两个 功能。 4学生统计: 实现学生信息的统计。先接收管理员或学生给出的统计条件, 比如分别按学号、性别、等

3、等。 1.4 数据词典 数据流名 称 简述来源去向组成 学生信息 录入 用户新建 学生记录 时所填写 的项目, 或修改后 的信息 教务处人 员 SMS 学号、姓 名、性别、 学院、班 级、入学 时间、学 籍状态、 获奖学金 情况 学生成绩 录入 用户在学 生考试完 后登记的 成绩 教务处人 员 SMS 学号、姓 名、 学生查询 个人信息 满足查询 条件的所 有信息 SMS 学生学号、姓 名、性别、 学院、班 级、入学 时间、学 籍状态、 获奖学金 情况 学生查询 个人成绩 满足查询 条件的所 有信息 SMS 学生学号、姓 名、课程 名、成绩 班主任查 询本班信 息 满足查询 条件的所 有信息

4、SMS 班主任学号、姓 名、性别、 学院、班 级、入学 时间、学 籍状态、 获奖学金 情况 班主任查 询本班成 绩 满足查询 条件的所 有信息 SMS 班主任学号、姓 名、课程 名、成绩 单门课程 的及格率 满足查询 条件的所 有信息 SMS 教务处人 员 百分比数 值 学生获取 奖学金的 比率 满足查询 条件的所 有信息 SMS 教务处人 员 百分比数 值 二程序设计 系统结构模块如下: 子系统名称模块名称程序层次结构 添加学生信息 修改学生信息 删除学生信息 大学生信息管理 查询学生信息 1 图 添加学生信息 修改学生信息 删除学生信息 大学生信息录入管 理 查询学生信息 2 图 添加学生

5、信息输出 修改学生信息输出 删除学生信息输出 大学生信息输出管 理 查询学生信息输出 3 图 查询统计查询学生信息4 图 设置用户信息 用户管理 修改用户信息 5 图 大学生信息管理层次结构 大学生信息管理 输入信息 增加信息 信息查询 大学 生信 息修 改 查询信 息 删除 大学 生信 息 大学生信息检 查 连接数据库单元 学生信息输入管理层次结构 学生信息输入管理 输入学生信息 学生信息录入 学生信息查询 学生信 息修 改 查询学 生信 息 删除 学生 信 息 学生信息检查 连接数据库单元 学生信息输出管理层次结构 学生信息输出管理 学生信息学生信息查询 学生信息 修 改 查询学 生信息

6、删除学生 信 息 学生信息检查 连接数据库单元 查询统计层次结构 查询统计 信息统计 输出统计信息 连接数据库 系统功能逻辑结构: 三. . 运行界面 所设计的界面如下: 登录: 运行主界面 浏览帐户界面 学生状况信息 附录:源代码 主界面代码 package xueshengguanlixitong; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class zhujiemian public zhujiemian() public static void main(String args)

7、new z(学生管理系统); class zhujiemian extends JFrame implements ActionListener JLabel l1,l2; JButton bt1,bt2,bt3,bt4; JFrame f=null; zhujiemian(String s) super(s); l1=new JLabel(学生管理系统); l2=new JLabel(关于本系统的简介); l1.setHorizontalAlignment(JLabel.CENTER); bt1=new JButton(增加); bt2=new JButton(查询); bt3=new JB

8、utton(删除); bt4=new JButton(更改); f=new JFrame(); Container con=f.getContentPane(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); f.setSize(200,300); BorderLayout b=new BorderLayout(); con.setLayout(b); con.add(l1,BorderLayout.NORTH); JPanel p=new JPanel(); p.setLayout(new Grid

9、Layout(4,1); p.add(bt1); p.add(bt2); p.add(bt3); p.add(bt4); con.add(p,BorderLayout.WEST); bt1.addActionListener(this); bt2.addActionListener(this); bt3.addActionListener(this); bt4.addActionListener(this); JPanel p1=new JPanel(); / p1.setBackground(Color.cyan); p1.add(l2); con.add(p1,BorderLayout.C

10、ENTER); public void actionPerformed(ActionEvent e) if(e.getSource()=bt1) new zengjia(); System.out.println(dkkkkkkkkkkk44444); if(e.getSource()=bt2) new chaxun(); if(e.getSource()=bt3) new shanchu(); if(e.getSource()=bt4) new xiugai(); 查询代码 package xueshengguanlixitong; import java.awt.*; import jav

11、a.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.sql.*; public class chaxun extends JDialog implements ActionListener JTextField t1,t2,t4; JTextArea t3; JButton bt; JLabel l1,l2,l3,l4; chaxun() bt=new JButton(查询); t2= new JTextField(10); t1=new JTextField(10); t3=new JTe

12、xtArea(,10,6); l1=new JLabel(学生管理系统); l2=new JLabel(学号); l3=new JLabel(姓名); l4=new JLabel(查询信息); Container conn=this.getContentPane(); JPanel con=new JPanel(); conn.add(con); BorderLayout b=new BorderLayout(); con.setLayout(b); this.setVisible(true); this.validate(); this.setBounds(120,125,180,200);

13、 con.add(l1,b.NORTH); JPanel p1=new JPanel(); con.add(p1,b.CENTER); p1.add(l2); p1.add(t1); p1.add(l3);p1.add(t2); p1.add(bt);p1.add(l4); / JPanel p2=new JPanel(); / con.add(p2,b.SOUTH); p1.add(t3);bt.addActionListener(this); public void actionPerformed(ActionEvent e) if(e.getSource()=bt) String str

14、=t2.getText(); int t=Integer.parseInt(t1.getText(); String strr=null; try Connection con= gongyongfangfa.f(); PreparedStatement ps=con.prepareStatement(select * from student where id=? or name=?); ps.setInt(1,t); ps.setString(2,str); ResultSet rs=ps.executeQuery(); while(rs.next() t=rs.getInt(id); s

15、tr=rs.getString(name); strr=rs.getString(score); if(strr!=null) t3.setText(t+str+strr); elset3.setText(查询的学生不存在); catch (Exception ex) ex.printStackTrace(); 删除代码 package xueshengguanlixitong; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.s

16、ql.*; public class shanchu extends JDialog implements ActionListener JTextField t1,t2,t3; JButton bt1,bt2; JLabel l1,l2,l3; JFrame f=null; shanchu()bt1=new JButton(删除); bt2=new JButton(重置); t2= new JTextField(10); t1=new JTextField(10); t3=new JTextField(10); l1=new JLabel(姓名学号任选一项); l2=new JLabel(学

17、号); l3=new JLabel(姓名); Container conn=getContentPane(); BorderLayout b=new BorderLayout(); JPanel con=new JPanel(); conn.add(con); con.setLayout(b); setVisible(true); validate(); setBounds(120,125,180,200); con.add(l1,BorderLayout.NORTH); JPanel p1=new JPanel(); con.add(p1,BorderLayout.CENTER); l1.s

18、etHorizontalAlignment(JLabel.CENTER); p1.add(l2,BorderLayout.CENTER); p1.add(t1,BorderLayout.CENTER); p1.add(l3,BorderLayout.CENTER); p1.add(t2,BorderLayout.CENTER); p1.add(bt1,BorderLayout.CENTER); p1.add(bt2,BorderLayout.CENTER); p1.add(t3,BorderLayout.CENTER); bt1.addActionListener(this); bt2.add

19、ActionListener(this); public void actionPerformed(ActionEvent e) String s1; int t; s1=t2.getText(); t=Integer.parseInt(t1.getText(); boolean flag=false; if(e.getSource()=bt1) try Connection con=gongyongfangfa.f(); PreparedStatement st=con.prepareStatement(delete from student where id=? or name=?); s

20、t.setInt(1,t); st.setString(2,s1); st.executeUpdate(); st.close(); con.close(); catch (Exception ex) ex.printStackTrace(); flag=true; if(flag) t3.setText(删除成功); else t3.setText(); if(e.getSource()=bt2) t1.setText(); t2.setText(); t3.setText(); 修改代码 package xueshengguanlixitong; import java.awt.*; im

21、port java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.sql.*; public class xiugai extends JDialog implements ActionListener JTextField t1,t2,t3,t4; JButton bt1,bt2; JLabel l1,l2,l3,l4; xiugai()bt1=new JButton(更改); bt2=new JButton(重置); t2= new JTextField(10); t1=new JTe

22、xtField(10); t3=new JTextField(10); t4=new JTextField(10); l1=new JLabel(姓名学号任选一项); l2=new JLabel(学号); l3=new JLabel(姓名); l4=new JLabel(成绩); this.setVisible(true); this.validate(); this.setBounds(120,125,180,200); Container conn=this.getContentPane(); JPanel con=new JPanel(); BorderLayout b=new Bord

23、erLayout(); con.setLayout(b); conn.add(con); con.add(l1,BorderLayout.NORTH); l1.setHorizontalAlignment(JLabel.CENTER); JPanel p1=new JPanel(); con.add(p1,BorderLayout.CENTER); p1.add(l2); p1.add(t1); p1.add(l3); p1.add(t2); p1.add(l4); p1.add(t4); p1.add(bt1); p1.add(bt2); p1.add(t3); bt1.addActionL

24、istener(this); bt2.addActionListener(this); public void actionPerformed(ActionEvent e) String s1,s2; int t; t=Integer.parseInt(t1.getText(); s1=t2.getText(); s2=t4.getText(); boolean flag=false; if(e.getSource()=bt1) try Connection con=gongyongfangfa.f(); Statement st1=con.createStatement(); / Strin

25、g sql=select *from student where id=t or name=s1; / ResultSet m=st1.executeQuery(sql); / if(m.next() PreparedStatement st=con.prepareStatement(update student set score=? where id=? or name=?); st.setString(1,s2); st.setInt(2,t); st.setString(3,s1); st.executeUpdate(); st.close(); con.close(); flag=t

26、rue; if(flag) t3.setText(更改成功); else t3.setText(); catch (Exception ex) ex.printStackTrace(); if(e.getSource()=bt2) t1.setText(); t2.setText(); t4.setText(); t3.setText(); 添加代码 package xueshengguanlixitong; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public c

27、lass zengjia extends JDialog implements ActionListener JLabel l1,l2,l3; JButton bt1,bt2; JTextField t1,t2,t3,t4; zengjia() l1=new JLabel(学号); l2=new JLabel(姓名); l3=new JLabel(成绩); bt1=new JButton(确定); bt2=new JButton(重置); t1=new JTextField(10); t2=new JTextField(10); t3=new JTextField(10); t4=new JT

28、extField(10); Container c=this.getContentPane(); JPanel cp=new JPanel(); cp.setLayout(new FlowLayout(); this.setVisible(true); this.validate(); this.setBounds(120,125,180,200); cp.add(l1); cp.add(t1); cp.add(l2); cp.add(t2); cp.add(l3); cp.add(t3); cp.add(bt1); cp.add(bt2); cp.add(t4); bt1.addAction

29、Listener(this); c.add(cp); bt2.addActionListener(this); public void actionPerformed(ActionEvent e) String s1,s2,s3; int num; boolean flag=false; num=Integer.parseInt(t1.getText(); s1=t2.getText(); s2=t3.getText(); if(e.getSource()=bt1) try Connection con=gongyongfangfa.f(); Statement st=con.createSt

30、atement(); String sql=insert into student(id,name,score)values(+num+,+s1+,+s2+); int value=st.executeUpdate(sql); st.close(); con.close(); catch (Exception ex) ex.printStackTrace(); flag=true; if(flag) s3=插入成功; t4.setText(s3); else t4.setText(插入失败); if(e.getSource()=bt2) t2.setText(); t1.setText();

31、t3.setText(); t4.setText(); 数据库连接代码 package xueshengguanlixitong; import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.*; import java.sql.*; import javax.swing.*; public class login public static void main(String args) new m(学生管理系统); class m exte

32、nds JFrame implements ActionListener JButton bt1,bt2,bt3; JTextField l1; JLabel b1,b2,b3,b4; JRadioButton rb1,rb2; ButtonGroup bp; JPasswordField l2; Container con=null; JFrame f=null; m(String s) super(s); bt1=new JButton(确定); bt2=new JButton(重置); bt3=new JButton(注册); rb1=new JRadioButton(教师); rb2=

33、new JRadioButton(学生,true); bp=new ButtonGroup(); l1=new JTextField(10); l2=new JPasswordField(10); b1=new JLabel(学生管理系统); b1.setHorizontalAlignment(JLabel.CENTER); b2=new JLabel(用户名); b3=new JLabel(密码); b4=new JLabel(如果没注册,请点击注册); f=new JFrame(); /this.setBounds(500,400,180,200); con=f.getContentPan

34、e(); BorderLayout bl=new BorderLayout(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); f.setSize(200,200); con.setLayout(bl); JPanel jp=new JPanel(); con.add(jp,bl.CENTER); GridLayout g=new GridLayout(4,1,2,5); jp.setLayout(g); con.add(b1,bl.NORTH); jp.add(b2,b1.CENTER); jp.a

35、dd(l1,bl.CENTER); jp.add(b3,bl.CENTER); jp.add(l2,bl.CENTER); bp.add(rb1); bp.add(rb2); jp.add(rb1); jp.add(rb2); jp.add(bt1,bl.CENTER); jp.add(bt2,bl.CENTER); con.add(b4,bl.SOUTH); con.add(bt3,bl.SOUTH); bt1.addActionListener(this); bt2.addActionListener(this); bt3.addActionListener(this); rb1.addA

36、ctionListener(this); rb2.addActionListener(this); public void actionPerformed(ActionEvent e) String str,str1,str2=null; str=l1.getText(); str1=l2.getText(); boolean flag=false; if(rb1.isSelected()str2=教师; else str2=学生; try Connection conn=gongyongfangfa.f(); String sql=select * from guanli where nam

37、e=? and mima=? and guanxian=?; PreparedStatement st=conn.prepareStatement(sql); st.setString(1,str); st.setString(2,str1); st.setString(3,str2); ResultSet rs=st.executeQuery(); if(rs.next() if(e.getSource()=bt1) f.setVisible(false); new zhujiemian(学生管理系统); else b1.setText(用户名或密码错误); catch (Exception ex) ex.printStackTrace(); if(e.getSource()=bt2)l1.setText(); l2.setText(); b1.setText(学生管理系统); if(e.getSource()=bt3) new zhuce(学生管理系统);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1