学生信息管理系统方案_第1页
学生信息管理系统方案_第2页
学生信息管理系统方案_第3页
学生信息管理系统方案_第4页
学生信息管理系统方案_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、.JAVA 编程技术课程设计报告/ 学年第学期)学生姓名:学生专业:学生班级:学生学号:指导教师 :年月日学习参考.目录一、需求分析 .11.1本系统需要实现的功能11.2用例11.3用例图2二、系统总体设计32.1 系统模块图32.2类 图42.3顺序图52.4状态图6三、详细设计7四、实现74.1主函数74.2登录84.3管理员界面104.4学生信息管理模块104.5课程信息管理模块154.6选课信息管理模块194.7成绩信息管理模块234.8用户信息管理模块26五、测试295.1学生信息管理系统的登录295.2实现管理员和学生操作功能的界面31六、体会36学习参考.一、需求分析1.1 本

2、系统需要实现的功能:1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。(2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。1.2用例该管理系统的用例主要有:管理员登录,学生登录,学生信息管理,课程信息管理,选课信息管理,成绩信息管理,用户信息管理,学生信息查看,成绩信息查看,个人信息查看,退出系统。学习参考.1.3用例图学生信息管理系统增加删除学生信息管理修改查询显示增加删除修改课程信息管理查询显示增加管理员登录选课信息管理删除修改管理员查询显示修改成绩信息管理退出系统查询显示用户信息管理学生信息查

3、看成绩信息查看学生登录学生个人信息查看修改密码退出系统图 1.1用例图学习参考.二、系统总体设计:学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括: 学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。系统总体结构如图所示。2.1系统模块图图 2.1 系统的模块图学习参考.2.2类图登录学生操作事物输入拥有学生、成绩、个人信息修改、查询、显管理员操作示拥有拥有学生信息成绩信息通课程信息课选课信息通用户信事务学生学通通息学生、程用学 信信 课程号、信学信成绩、号、姓名学号、课学课程名、号学号、课用户信户课程

4、、选课性别、年 号程号、成号程号、先号名龄、班绩先行课程 、行课程号息、密信息增加、号名码查询、级、删除、修改、显示1+个人信通成绩信息通学生信息息用学生学信学号、课学信学户号、姓名用户程号、成 号性别、年 号名、密 名绩龄、班码级、系统退出1+图 2.2系统的类图学习参考.2.3顺序图管理员/ 学学生信息管理学生、课程、选课、成绩、用户信生系统息管理要求密码输入密码请求验证用户,密码用户,密码有效要求事务类型输入类型请求处理事务请求继续此事务事务成功结束退出图 2.3 系统的顺序图学习参考.2.4状态图登陆界面输入账户、密码登陆do/显示do/ 要求账号密码do/ 验证账户密码错账点取户有消

5、退效出系统退出取消管理员无效账户dodo/ 显示取消信do/ 显示操作界息面点击系统退出学生do/ 显示操作界面do/要求学号增加或修改学生 / 课程 /选课信息管理学生 /成绩信息个人信息查输入查看看do/ 存入数据库中do/ 从数据库中读取数据查询界面do/ 显示学生信息do/ 从数据库中读取数据显示界面do/ 显示学生信息do/从数据库中读取数据do/存入数据库do/要求姓名do/要求年龄do/要求班级do/要求性别do/ 要求学号do/ 要求选中记录do/ 从数据库中读取数据do/ 要求学号do/ 要求学号并进行修改do/ 增加或修改信息查询输入do/ 输入信息删除输入do/ 删除信息

6、显示do/ 显示信息查询 /显示输入do/ 输入信息修改输入do/ 输入do/ 显示操作界面成绩 /用户信息管理do/ 显示操作界面do/ 显示操作界do/ 显示操作面界面do/ 要求学号do/要求用户名do/ 从数据库中do/ 从数据库中读读取数据取数据显示界面显示界面do/ 显示学生信do/显示学生信息息修改密码do/ 修改do/ 存入数据库中图 2.4状态图学习参考.三、详细设计:开始输入账户、密码N正确Y学生信息管理NNNN修改记录?查询记录?删除记录?增加记录?YYYY选择要删除的记输入要查选择要删除的记添加学号,姓录询的学号录名,性别,年龄,班级N删除成功学号存在?删除成功Y学号重

7、复?YN显示查询显示查询结果结果添加成功退出管理系统结束图 3.1 学生信息的增、删、改、查询、显示功能流程图注:成绩信息管理, 课程信息管理, 选课信息管理及用户信息管理功能的实现与学生信息管理功能的实现一样。四、实现:4.1主函数public class SimpleStudentManager public static void main(String args) new DLFrame();学习参考.4.2登录classDLFrame extendsJFrameimplements ActionListener, ItemListener /登录界面JPanel p1 =null;J

8、Panel p2 =null;JPanel p3 =null;JLabel userName =new JLabel(用户: );JTextField txtUser = new JTextField();/文本框控件JLabel password =new JLabel(密码: );JPasswordField txtPwd =new JPasswordField(6);/密码框控件JLabel role = new JLabel(角色: );JComboBox cbrole = new JComboBox();JButton btnLogin = new JButton(登录 );JBut

9、ton btncz = new JButton(重置 );JButton btnCancel = new JButton(取消 );JLabel imageLabel;Icon image;staticint OK = 1;staticint CANCEL = 0;int actionCode = 0;Connection con = null;Statement stmt =null;ResultSet rs =null;int qxian = 0;public DLFrame() /构造方法super(登录界面 );p1 = new JPanel();p2 = new JPanel();学

10、习参考.p3 = new JPanel();cbrole.addItem(管理员 );cbrole.addItem(学生 );image = new ImageIcon(picturest.jpg);imageLabel = new JLabel(image);p1.add(imageLabel);this.setLayout(new FlowLayout();this.setBounds(50, 50, 500, 400);this.setVisible(true);p2.setLayout(new GridLayout(4,3);p2.add(userName);p2.add(txtUse

11、r);p2.add(password);p2.add(txtPwd);p2.add(role);p2.add(cbrole);p3.add(btnLogin);p3.add(btncz);p3.add(btnCancel);this.add(p1);this.add(p2);this.add(p3);this.setResizable(false);this.setDefaultCloseOperation(JFrameEXIT._ON_CLOSE);this.show();btnLogin.addActionListener(this);cbrole.addItemListener(this

12、);btncz.addActionListener(this);btnCancel.addActionListener(this);学习参考.4.3管理员界面classManagerFrameextendsJFrameimplements ActionListener / 管理员界面 JPanel p1 =new JPanel();JPanel p2 =new JPanel();JButton btns = new JButton(学生信息管理 );JButton btnc = new JButton(课程信息管理 );JButton btnsc = new JButton(选课信息管理 );

13、JButton btng = new JButton(成绩信息管理 );JButton btnu = new JButton(用户信息管理 );JButton btnClose = new JButton(退出管理系统 );JLabel l = new JLabel(管理员 );ManagerFrame() / 构造方法super(学生信息管理系统 );setSize(350, 200);add(North, p1);add(Center, p2);p1.add(l);p2.add(btns);p2.add(btnc);p2.add(btnsc);p2.add(btng);p2.add(btn

14、u);p2.add(btnClose);btns.addActionListener(this);btnc.addActionListener(this);btnsc.addActionListener(this);btng.addActionListener(this);btnu.addActionListener(this);学习参考.btnClose.addActionListener(this);this.setResizable(false);this.setDefaultCloseOperation(JFrameEXIT._ON_CLOSE);show();public void

15、actionPerformed(ActionEvent e) if (e.getActionCommand() = 学生信息管理 )new StudentManage().display();if (e.getActionCommand() = 课程信息管理 ) new CourseManage(课程信息管理 ).display();if (e.getActionCommand() = 选课信息管理 ) new SCManage(选课信息管理 ).display();if (e.getActionCommand() = 成绩信息管理 ) new GradeManage(成绩信息管理 ).dis

16、play();if (e.getActionCommand() = 用户信息管理 ) new PM( 用户信息管理 ).display();if (e.getActionCommand() = 退出管理系统 ) System.exit(0);4.4学生信息管理模块学生信息管理模块包括增加、删除、修改、查询、显示全部等。classStudentManageextendsJFrameimplements ActionListener / 学生信息管理学习参考.JPanel p =new JPanel();JButton btnAdd = new JButton(增加 );JButton btnDe

17、lete = new JButton(删除 );JButton btnAlter = new JButton(修改 );JButton btnSearch =new JButton(查询 );JButton btnDisplay = new JButton(显示 );JMenuBar mb = new JMenuBar();JPanel p1 =new JPanel();JTable sTable;JScrollPane scroll;Connection con = null;Statement stmt =null;ResultSet rs =null;Object playerInfo;

18、SSelect sst;String mxh = null;booleanbstd = false;StudentManage() / 构造方法super(学生信息管理 );add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB(); / 连接数据库/ this.display();this.setBounds(200, 200, 400, 260);学习参考.btnAdd.addAc

19、tionListener(this);btnDelete.addActionListener(this);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();StudentManage(SSelect sst) / 构造方法super

20、(学生信息管理 );this.sst = sst;bstd = true;add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();this.setBounds(200, 200, 400, 260);btnAdd.addActionListener(this);btnDelete.addActionListener(this);btnAlter.addActionListener(

21、this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);学习参考./ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();public void display() / 显示所有学生的基本信息int i = 0;int j = 0;int k = 0;List al = new ArrayList();try rs = stmt.executeQ

22、uery(select * from student);while (rs.next() / 找出表中的记录数赋给 ial.add(rs.getString(sno);al.add(rs.getString(sn);al.add(rs.getString(ss);al.add(rs.getInt(sa);al.add(rs.getString(sc);i+; catch (SQLException e) e.printStackTrace();playerInfo = new Objecti5;String columnNames = 学号 , 姓名 , 年龄 , 性别 , 班级 ;try r

23、s = stmt.executeQuery(select * from student order by sno); while (rs.next() playerInfoj0 = rs.getString(sno);学习参考.playerInfoj1 = rs.getString(sn);playerInfoj2 = rs.getInt(sa);playerInfoj3 = rs.getString(ss);playerInfoj4 = rs.getString(sc);j+; catch (SQLException e) e.printStackTrace();sTable = new J

24、Table(playerInfo, columnNames);/ 创建网格 p1.add(sTable);scroll = new JScrollPane(sTable);this.add(scroll);4.5 课程信息管理模块课程信息管理模块包括增加、删除、修改、查询、显示全部等。classCourseManageextends JFrameimplements ActionListener / 课程信息管理 JPanel p =new JPanel();JButton btnAdd = new JButton(增加 );JButton btnDelete = new JButton(删除

25、 );JButton btnAlter = new JButton(修改 );JButton btnSearch =new JButton(查询 );JButton btnDisplay = new JButton(显示 );JMenuBar mb = new JMenuBar();JPanel p1 =new JPanel();JTable sTable;JScrollPane scroll;Connection con = null;Statement stmt =null;学习参考.ResultSet rs =null;Object playerInfo;CourseSelect cst

26、;String mkch = null;booleanbstd = false;CourseManage(String title) / 构造方法super(title);add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();/ 连接数据库this.setBounds(200, 200, 400, 260);btnAdd.addActionListener(this);btnDe

27、lete.addActionListener(this);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();学习参考.CourseManage(CourseSelect cst, String title) / 构造方法super(

28、title);this.cst = cst;bstd = true;add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();this.setBounds(200, 200, 400, 260);btnAdd.addActionListener(this);btnDelete.addActionListener(this);btnAlter.addActionListener(thi

29、s);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();setVisible(false);setVisible(true);public void display() / 显示所有的课程信息int i = 0;int j = 0;学习参考.int k = 0;List al = new Arra

30、yList();try rs = stmt.executeQuery(select * from course);while (rs.next() / 找出表中的记录数赋给 ial.add(rs.getString(cno);al.add(rs.getString(cn);al.add(rs.getString(pcno);i+; catch (SQLException e) e.printStackTrace();playerInfo = new Objecti5;String columnNames = 课程号 , 课程名 , 先行课程号 ;try rs = stmt.executeQue

31、ry(select * from course order by cno); /rs = stmt.executeQuery(select * from course where cno=); while (rs.next() playerInfoj0 = rs.getString(cno);playerInfoj1 = rs.getString(cn);playerInfoj2 = rs.getString(pcno);j+; catch (SQLException e) e.printStackTrace();学习参考.sTable = new JTable(playerInfo, col

32、umnNames);/ 创建网格p1.add(sTable);scroll = new JScrollPane(sTable);this.add(scroll);4.6 选课信息管理模块选课信息管理模块包括增加、删除、修改、查询、显示全部等。classSCManageFrameextendsJFrame implementsActionListener /选课信息管理的界面显示JPanel p =new JPanel();JButton btnAdd = new JButton(增加 );JButton btnDelete = new JButton(删除 );JButton btnAlter

33、 = new JButton(修改 );JButton btnSearch =new JButton(查询 );JButton btnDisplay = new JButton(显示 );JMenuBar mb = new JMenuBar();JPanel p1 =new JPanel();JTable sTable;JScrollPane scroll;Connection con = null;Statement stmt =null;ResultSet rs =null;Object playerInfo;SCSelect cst;String mkch = null;booleanb

34、std = false;SCManageFrame(String title) / 构造方法super(title);学习参考.add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();/ 连接数据库this.setBounds(200, 200, 400, 260);btnAdd.addActionListener(this);btnDelete.addActionListener

35、(this);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();SCManageFrame(SCSelect cst, String title) / 构造方法super(title);this.cst = cst;bstd = t

36、rue;add(South, p);this.add(Center, p1);mb.add(btnAdd);mb.add(btnDelete);mb.add(btnAlter);学习参考.mb.add(btnSearch);mb.add(btnDisplay);this.connDB();this.setBounds(200, 200, 400, 260);btnAdd.addActionListener(this);btnDelete.addActionListener(this);btnAlter.addActionListener(this);btnSearch.addActionLis

37、tener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();setVisible(false);setVisible(true);public void display() / 显示所有的课程信息int i = 0;int j = 0;int k = 0;List al = new ArrayList();try rs = stmt.executeQ

38、uery(select * from class);while (rs.next() / 找出表中的记录数赋给 ial.add(rs.getString(classNum);al.add(rs.getString(cno);al.add(rs.getString(pcno);学习参考.i+; catch (SQLException e) e.printStackTrace();playerInfo = new Objecti3;String columnNames = 班级号 , 课程名 , 先行课程号 ;try rs = stmt.executeQuery(select * from cla

39、ss order by classNum);while (rs.next() playerInfoj0 = rs.getString(classNum);playerInfoj1 = rs.getString(cno);playerInfoj2 = rs.getString(pcno);j+; catch (SQLException e) e.printStackTrace();sTable = new JTable(playerInfo, columnNames);/ 创建网格 p1.add(sTable);scroll = new JScrollPane(sTable);this.add(

40、scroll);public void connDB() / 连接数据库try Class.forName(com.mysql.jdbc.Driver);学习参考. catch (ClassNotFoundException e) e.printStackTrace();try con = DriverManager.getConnection(jdbc:mysql:/localhost:3306/test,root, renjie);stmt = con.createStatement(); catch (SQLException e) e.printStackTrace();4.7 成绩信

41、息管理模块成绩信息管理模块包括修改成绩、查询、显示全部等。classGradeManageextendsJFrame implementsActionListener / 成绩信息管理 JPanel p =new JPanel();JButton btnAlter = new JButton(修改成绩 );JButton btnSearch =new JButton(查询 );JButton btnDisplay = new JButton(显示 );JMenuBar mb = new JMenuBar();JPanel p1 =new JPanel();JTable sTable;JScro

42、llPane scroll;Connection con = null;Statement stmt =null;ResultSet rs =null;Object playerInfo;GradeSelectFrame gst;int ii = 0;学习参考.String mxh = null;booleanbstd = false;GradeManage(String title) / 构造方法super(title);add(South, p);this.add(Center, p1);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDispla

43、y);this.connDB();this.setBounds(200, 200, 400, 260);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();GradeManage(GradeSelectFrame gst, Strin

44、g title) /构造方法super(title);this.gst = gst;bstd = true;add(South, p);this.add(Center, p1);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);学习参考.this.connDB();this.setBounds(200, 200, 400, 260);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.addActionListener(this);t

45、his.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();public void display() / 显示所有的成绩信息int i = 0;int j = 0;int k = 0;List al = new ArrayList();try rs = stmt.executeQuery(select * from grade,course where o=o);while (rs.next() / 找出表中的记录数赋给 ial.add(rs

46、.getString(sno);al.add(rs.getString(cn);al.add(rs.getString(grade);i+; catch (SQLException e) e.printStackTrace();playerInfo = new Objecti3;学习参考.String columnNames = 学号 , 课程名 , 成绩 ;try rs=stmt.executeQuery(select *fromgrade,o=o);while (rs.next() playerInfoj0 = rs.getString(sno);playerInfoj1 = rs.get

47、String(cn);playerInfoj2 = rs.getString(grade);j+; catch (SQLException e) e.printStackTrace();sTable = new JTable(playerInfo, columnNames);/ 创建网格 p1.add(sTable);scroll = new JScrollPane(sTable);this.add(scroll);4.8 用户信息管理模块用户信息管理模块包括修改、查询、显示全部等。classPM extendsJFrameimplementsActionListener / 用户信息管理JP

48、anel p =new JPanel();JButton btnAlter = new JButton(修改 );JButton btnSearch =new JButton(查询 );JButton btnDisplay = new JButton(显示 );JMenuBar mb = new JMenuBar();学习参考.JPanel p1 =new JPanel();JTable sTable;JScrollPane scroll;Connection con = null;Statement stmt =null;ResultSet rs =null;Object playerInf

49、o;PSelect pst;String myh = null;booleanbstd = false;PM(String title) /构造方法super(title);add(South, p);this.add(Center, p1);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();this.setBounds(200, 200, 200, 260);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDispl

50、ay.addActionListener(this);this.setJMenuBar(mb);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setResizable(false);show();学习参考.PM(PSelect pst, String title) / 构造方法super(title);this.pst = pst;bstd = true;add(South, p);this.add(Center, p1);mb.add(btnAlter);mb.add(btnSearch);mb.add(btnDisplay);this.connDB();this.setBounds(200, 200, 200, 260);btnAlter.addActionListener(this);btnSearch.addActionListener(this);btnDisplay.add

温馨提示

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

评论

0/150

提交评论