学生管理系统课程设计

上传人:shug****ng1 文档编号:179603309 上传时间:2023-01-02 格式:DOCX 页数:30 大小:322.05KB
返回 下载 相关 举报
学生管理系统课程设计_第1页
第1页 / 共30页
学生管理系统课程设计_第2页
第2页 / 共30页
学生管理系统课程设计_第3页
第3页 / 共30页
点击查看更多>>
资源描述
Java 课程设计报告题目学生管理系统学生姓名侯旻燊专业班级计科完成日期 2014年12月30日摘要学校的学生学籍信息管理是学校管理中的一项重要任务,以往的手工操作已经不能 适应现在办公的需要.为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成 为必然.开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时,准 确地获取需要的信息,充分发挥人员的工作潜力。因此,不难想象,正是咨询业的迅速发 展使得人们从过去的手工劳动中得以解脱.同时,编写一套完善的学生学籍管理系统的 任务就显得尤为重要。软件开发的意图为便于学校的管理,方便查看有关学校及学生的 情况。如教务处对学生成绩的修改、删除、查找、添加等。目录1总体设计 11.1 本系统的主要功能11.2 系统包含的类及类之间的关系11.3 功能概要11.3.1 学生登录11.3.2 管理员登录 11.3.3 程序总逻辑22详细设计22.1 主类 Client 22.2 类 AdminGUI 22.3 类 UpdateAndInsert 33 运行效果 43.1 登陆界面43.2 学生登陆界面43.3 管理员登陆63.4 数据库7参考文献8附录 1 软件源程序81.StudentGUI.java 82.AdminGUI.java 14课程设计实践总结:261总体设计1.1 本系统的主要功能该项目主要功能为:学生学籍基本信息查看,管理员信息处理1.2 系统包含的类及类之间的关系如图1-1所示。图1-1类之间的关系1.3 功能概要学生管理系统分为两大功能:1.3.1 学生登录1.完成查询自己的学籍信息 2.修改自己的登录密码3.修改自己的籍贯 4.修 改自己的电话号码1.3.2 管理员登录1.删除指定学生学籍 2.增加指定学生学籍 3.修改指定学生学籍 4.查询指定 学生学籍 5.列出全部学生学籍信息1.3.3程序总逻辑2详细设计2.1 主类 Client(1) 成员变量见表2-1表2-1主要成员变量(属性)成员变量描述变量类型名称主入口标识LoginGUIlg(3)源代码见文件Client.java2.2 类 Admi nGUI(1)成员变量见表2-2表 2-2 主要成员变量成员变量描述变量类型名称文本域TextFieldjtf按钮JButtonJb标签JLabeljl2)方法见表 2-3表 2-3 主要方法方法名功能备注adminGo生成面板无AdminGUI初始化面板无3)源代码见文件 AdminGUI.java2.3 类 UpdateAndInsert(1)成员变量见表 2-4表 2-4 主要成员变量成员变量描述变量类型名称文本域TextFieldjf按钮JButtonJb标签JLabeljl2)方法见表 2-5表 2-5 主要方法方法名功能备注insertStudent插入学生信息无updateStudent修改学生信息无updatePassword修改密码无3)源代码见文件 UpdateAndInsert.java3运行效果3.1登陆界面主界面输入登录信息下拉菜单选择登录方式: 学生登录管理员登陆图3-1登陆界面功能描述登陆界面要求输入用户名(Int,非空),密码(String,非空),选择登录方式(学 生登录,管理员登陆),调用相应的数据库进行验证消息的正确性,如果通过验证进入 程序处理模块,未通过则需要用户重新输入。3.2学生登陆界面图3-2-1学生登陆界面点击学生登陆界面的修改信息后弹出的界面图3-2-2学生登陆修改信息界面功能说明点击我的信息,调用数据库相关信息,查看自己的全部学籍信息,在新密码输入框 里输入新密码,点击密码修改,更新数据库(password),完成密码修改功能。3.3管理员登陆图3-3-1管理员登陆使用修改,增加按钮出现的界面,实现增加,修改条目功能图3-3-2管理员登陆修改,增加功能说明根据输入在学号文本框内的学号,调用数据库相关连的记录,完成查询,修改,删 除功能。单击修改,增加按钮,在出现的文本中填入相应的修改或增加信息,点击确定, 更新数据库。点击查询全部学生信息则在中间文本框内列出全部的学籍信息。3.4数据库MS-DOS界面3.4.1登陆MYSQL数据库:MisersMiikemysq 1 -lipcot -psystemoutc leone to the M516QL mor itov. Commancls end uitli ; ov .oup MSQL connect ion id is 57ervev ueision - 5.5.16 HyWQL Commuin Sevuep CGPLJ:opyright 20S0, 2011, Oracle and/ar its affiliates. All rights reserued.pacle is a registered trademark of Oracle Corporation and/or itsf 1 Hates:- Other names: mai* be t:pademapkii: qF thair respectluewners ype f help;f op 1 if f of help. Type f Xcf to clear the cuppent input statement 图3-4-1登陆MYSQL数据库3.4.2检索学生表(Tiyaql select * f init student;+tlrt+十fr+*卜!id 5(iane !sex !bonSate !nationality 3liometown !najcla !telHkim !iKissmord 5tr1+1-r1-*1-:4 :丄昏 I W :I 吳京I ; |耳芒口世:A9R2 : H111H1 I 1:t1-1+1-1-1-1卜L row in set 0.00 品tc)图3-4-2检索学生3.4.3检索学生表ysqi? se leet * t ion adnin ;+4-id i pas si;qrd !row in set 图3-4-3检索学生功能说明创建数据库并建立学生表与管理员表,记录相应的信息,作为后台运行,使用java 编程语言,使用JDBC作为连接桥梁,实时调用修改数据库记录。参考文献1 软件工程导论(第5版) 清华大学出版社 张海藩编著2 Java从入门到精通(第2版)清华大学出版社 周小彤,陈丹丹 等编著3 数据库系统概论(第4版)高等教育出版社王珊,萨师煊著附录1软件源程序1Student GUI.java/*学生操作图形界面*/ package ms;impor t java.aw t.BorderLayo ut;impor t java.aw t.GridLayo ut;impor t java.aw t.Tex tF ield;impor t java.aw t.even t.Ac tio nEven t;impor t java.aw t.even t.Ac tio nLis tener;impor t java.aw t.even t.WindowAdap ter;impor t java.aw t.even t.WindowEven t;impor t javax.swing.Imagelcon;impor t javax.swing.JB utton;impor t javax.swing.JDialog;impor t javax.swing.JFrame;impor t javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;public class StudentGUIJDialog log二null;/学生登入类主窗口JPanel jpl二null;/用于存放登入块JPanel jp2二null;/用于存放信息块JPanel jp3=null;/用于密码存放修改块JPanel jp4二null;/用于存放我的信息按钮JLabel jll二null;/学生登入标签JLabel jl2=null;/学号标签JLabel jl3=null;/学生姓名标签JLabel jl4=null;/性别标签JLabel jl5=null;/出生日期标签JLabel jl6二null;/民族标签JLabel jl7=null;/籍贯标签JLabel jl8=null;/专业标签JLabel jl9二null;/班级标签JLabel jllO二null;/联系电话标签JLabel jlll二null;/请输入密码标签JBu tton jbl二null;/我的信息按钮JBu tton jb2二null;/密码修改按钮Tex tField tl二null;/学号文本框Tex tField t2二null;/学生姓名文本框Tex tField t3二null;/性别文本框Tex tField t4二null;/出生日期文本框Tex tField t5二null;/民族文本框Tex tField t6二null;/籍贯文本框Tex tField t7二null;/专业文本框Tex tField t8二null;/班级文本框Tex tField t9二null;/联系电话文本框Tex tField 110二null;/密码文本框JPanel jp5=new JPanel();/存放密码输入框String id=null;public StudentGUI(JFrame log,String str)super();t his.log = new JDialog(log,学生登入,t rue);jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jl1=new JLabel(new ImageIcon(image/student.jpg);jl2二new JLabel(学号:);jl3二new JLabel(学生姓名:);jl4二new JLabel(性别:);jl5=new JLabel(出生日期:);jl6=new JLabel(民族:);jl7=new JLabel(籍贯:);jl8二new JLabel(专业:);jl9=new JLabel(班级:);jl10=new JLabel(联系电话:);jl11=new JLabel(请输入新密码:);jb1=new JBu tton(我的信息);jb2二new JBu tton(密码修改);t1=new TextField();t2=new TextField();t3=new TextField();t4=new TextField();t5=new TextField();t6=new TextField();t7=new TextField();t8=new TextField();t9=new TextField();t10=new TextField();this.id=str;public void studentGo()BorderLayout bl=new BorderLayout();bl.setHgap(30);bl.setVgap(30);log.setLayout(bl);log.add(jpl,BorderLayout.NORTH);/将登入块 信息块 密码修改块放入主窗 口log.add(jp2,BorderLayout.CENTER);log.add(jp3,BorderLayout.SOUTH);log.add(jp4,BorderLayout.WEST);jp1.add(jl1,BorderLayout.CENTER);jp2.setLayout(new GridLayout(5,2,20,10);jp2.add(jl2);jp2.add(t1);jp2.add(jl3);jp2.add(t2);jp2.add(jl4);jp2.add(t3);jp2.add(jl5);jp2.add(t4);jp2.add(jl6);jp2.add(t5);jp2.add(jl7);jp2.add(t6);jp2.add(jl8);jp2.add(t7);jp2.add(jl9);jp2.add(t8);jp2.add(jl10);jp2.add(t9);jp4.add(jb1);BorderLayout bl1=new BorderLayout(); bl1.setHgap(38);jp3.setLayout(bl1);jp3.add(jb2,BorderLayout.WEST);jp3.add(jp5,BorderLayout.CENTER);jp5.setLayout(new GridLayout(); jp5.add(jl11);jp5.add(t10);jb1.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) Select sel=new Select();sel.selectStudent(id);Student student=sel.getStudent();t1.setText(new Integer(student.getId().toString(); t2.setText(student.getName();t3.setText(student.getSex(); t4.setText(student.getBornDate(); t5.setText(student.getNationality(); t6.setText(student.getHometown();t7.setText(student.getMaj();t8.setText(student.getCla(); t9.setText(student.getTelNum(););jb2.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)String password=StudentGUI.this.t10.getText();UpdateAndInsert up=new UpdateAndInsert(); if(up.updatePassword(id, password)=true)功);JOptionPane.showMessageDialog(StudentGUI.this.log,修改成);log.addWindowListener(new WindowAdapter()Override public void windowClosing(WindowEvent e) System.exit(0););log.setSize(550,420);log.setLocationRelativeTo(null);log.setResizable(false);log.setVisible(true);2.AdminGUI.java/*管理员登陆图形界面*/package ms;import java.awt.BorderLayout;import java.awt.GridLayout;import java.awt.TextArea;import java.awt.TextField;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;public class AdminGUIJDialog log二null;/管理员登陆主窗口JPanel jpl二null;/用于存放管理员登陆标签和jp5JPanel jp2=null;/用于存放查询修改增加删除按钮JPanel jp3二null;/用于存放信息块 和jp5JPanel jp4二null;/用于存放 修改 插入 删除 按钮JPanel jp5=null;/用于存放请输入学号 文本框JLabel jadminLog=null; /管理员登陆标签JLabel jLabel=null; /请输入学号 标签TextField tf=null; /请输入学号 文本框JButton jbl二null;/查询按钮JButton jb2二null;/修改按钮JButton jb3二null;/增加按钮JBu tt on jb4二null;/删除按钮JButton jb5=null; /列出全部学生信息Tex tArea t a二null;/信息文本框JLabel jl=null; /用于站位String id=null; /用于保存用户输入查询学号TextField jtf = new TextField9 ;JDialog jdialog=null;public AdminGUI(JFrame log) super();t his.log = new JDialog(log,管理员登陆,t rue);jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jp5=new JPanel();jadminLog=new JLabel(new ImageIcon(image/admin.jpg); jLabel二new JLabel(请输入学号);tf=new TextField();jbl二new JBu tt on(查询);jb2二new JBu tt on(修改);jb3二new JBu tt on(增加);jb4二new JBu tt on(删除);jb5二new JBu tton(列出全部学生信息);ta二new Tex tArea(“点击查询按钮将在此显示查询信息); jl=new JLabel();public void adminGo()BorderLayout bl=new BorderLayout();bl.setVgap(30);bl.setHgap(30);log.setLayout(bl);log.add(jp1,BorderLayout.NORTH);BorderLayout bl1=new BorderLayout();bl1.setVgap(20);jp1.setLayout(bl1);jp1.add(jadminLog,BorderLayout.CENTER);jp5.setLayout(new GridLayout(1,2,200,200); jp5.add(jLabel);jp5.add(tf);log.add(jp2,BorderLayout.WEST);jp2.setLayout(new GridLayout(2,1,200,300); jp2.add(jb1);jp2.add(jb5);log.add(jp3,BorderLayout.CENTER);jp3.setLayout(new BorderLayout(10, 10);jp3.add(jp5,BorderLayout.NORTH);jp3.add(ta);jp5.setLayout(new GridLayout(1,5,10,10); jp5.add(jLabel);jp5.add(tf);log.add(jp4,BorderLayout.SOUTH);jp4.setLayout(new GridLayout(1,3,200,30); jp4.add(jb2);jp4.add(jb3);jp4.add(jb4);log.addWindowListener(new WindowAdapter()Overridepublic void windowClosing(WindowEvent e) System.exit(0););jb1.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)AdminGUI.this.id=AdminGUI.this.tf.getText();Select sel=new Select();sel.selectStudent(AdminGUI.this.id);if(sel.getStudent()!=null)Student student=sel.getStudent();AdminGUI. this, ta.setText (“学号tt+姓名tt+性别tt+出生日期tt +民族tt+籍贯tt +专业tt +班级tt +联系电话tt +密码tt );AdminGUI.this.ta.append(n+student.getId()+tt+student.getName()+ tt+student.getSex()+tt+student.getBornDate()+tt+student.getNationality()+tt+student.getNationality()+tt+student .getMaj()+t+student.getCla()+tt+student.getTelNum()+tt+student.getPassword()+n);elseAdminGUI. this, ta.setText (查无此人););jb5.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)Select sel=new Select(); sel.selectAllStudent();AdminGUI. this, ta.setText (学号tt+姓名tt+性别tt+出 生日期tt +民族tt+籍贯tt+专业tt +班级tt +联系电话tt+密 码ttn);for(i nt i=O;isel.ge tAllS tu den t( ).size();i+)Student student=sel.getAllStudent().get(i);AdminGUI.this.ta.append(student.getId()+tt+student.getName()+tt+ student.getSex()+tt+student.getBornDate()+tt+student.getNationality()+tt+student.getHometown()+tt+student.ge tMaj()+t+student.getCla()+tt+student.getTelNum()+tt+student.getPassword( )+n););log.setSize(850,580); log.setLocationRelativeTo(null);log.setResizable(false);jb3.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)jdialog=new JDialog(AdminGUI.this.log);St ring st r=new St ring 姓名,性别,出生日期,民族,籍 贯,专业,班级,联系电话,密码;JLabel jlabel=new JLabel9;for(int i=0;i9;i+)jlabeli=new JLabel(stri);jtfi=new TextField();JPanel jpanel1=new JPanel();JPanel jpanel2=new JPanel();JButton jbuttonl 二new JButton(确定);JBu tton jbu tt on2二new JBu tt on( 取消);jdialog.setLayout(new BorderLayout();jdialog.add(jpanel1,BorderLayout.CENTER);jdialog.add(jpanel2,BorderLayout.SOUTH);jpanel1.setLayout(new GridLayout(9,2,10,10);for(int i=0;i9;i+)jpanel1.add(jlabeli);jpanel1.add(jtfi);jpanel2.add(jbutton1);jpanel2.add(jbutton2);jbutton1.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)Student student=new Student();student.setName(AdminGUI.this.jtf0.getText();student.setSex(AdminGUI.this.jtf1.getText();student.setBornDate(AdminGUI.this.jtf2.getText();student.setNationality(AdminGUI.this.jtf3.getText();加成功);student.setHometown(AdminGUI.this.jtf4.getText();student.setMaj(AdminGUI.this.jtf5.getText();student.setCla(AdminGUI.this.jtf6.getText();student.setTelNum(AdminGUI.this.jtf7.getText();student.setPassword(AdminGUI.this.jtf8.getText();UpdateAndInsert up=new UpdateAndInsert();if(up.insertStudent(student)=true)JOp tio nPane.showMessageDialog(AdminGU I.t his.log,添jdialog.dispose(););jbutton2.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)jdialog.dispose(););jdialog.setSize(500,400); jdialog.setLocationRelativeTo(null); jdialog.setResizable(false);jdialog.setVisible(true););jb4.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)if(new Delete().delete(AdminGUI.this.tf.getText()=true) JOptionPane.showMessageDialog(AdminGUI.this.log,刪除成功 );elseJOptionPane.showMessageDialog(AdminGUI.this.log,刪除失敗););jb2.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)Select sel=new Select();AdminGUI.this.id=AdminGUI.this.tf.getText(); sel.selectStudent(AdminGUI.this.tf.getText();Student student=sel.getStudent();if(student=null)JOptionPane.showMessageDialog(AdminGUI. this.log,请检查输入的学号);elsejdialog=new JDialog(AdminGUI.this.log);St ring st r=new St ring姓名,性别,出生日期,民族,籍贯,专业,班级,联系电话,密码;JLabel jlabel=new JLabel9;for(int i=0;i9;i+)jlabeli=new JLabel(stri);jtf0=new TextField(student.getName();jtf1=new TextField(student.getSex();jtf2=new TextField(student.getBornDate();jtf3=new TextField(student.getNationality();jtf4=new TextField(student.getHometown();jtf5=new TextField(student.getMaj();jtf6=new TextField(student.getCla();jtf7=new TextField(student.getTelNum();jtf8=new TextField(student.getPassword();JPanel jpanel1=new JPanel();JPanel jpanel2=new JPanel();JButton jbuttonl 二new JButton(确定);JBu tton jbu tt on2二new JBu tto n(取消);jdialog.setLayout(new BorderLayout();jdialog.add(jpanel1,BorderLayout.CENTER);jdialog.add(jpanel2,BorderLayout.SOUTH);jpanel1.setLayout(new GridLayout(9,2,10,10);for(int i=0;i9;i+)jpanel1.add(jlabeli);jpanel1.add(jtfi);jpanel2.add(jbutton1);jpanel2.add(jbutton2);jbutton1.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)Student student=newStudent(Integer.parseInt(AdminGUI.this.id), jtf0.getText(), jtf1.getText(), jtf2.getText(), jtf3.getText(), jtf4.getText(), jtf5.getText(), jtf6.getText(), jtf7.getText(), jtf8.getText();UpdateAndInsert up=new UpdateAndInsert(); if(up.updateStudent(student)=true)JOptionPane.showMessageDialog(AdminGUI.this.log,更改成功);jdialog.dispose(););jbutton2.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e)jdialog.dispose(););jdialog.setSize(500,400);jdialog.setLocationRelativeTo(null);jdialog.setResizable(false);jdialog.setVisible(true););log.setVisible(true);课程设计实践总结:课程设计总结:课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何 去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学 分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄, 学会了宽容,学会了理解,也学会了做人与处世。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工 作前一个必不少的过程千里之行始于足下”,通过这次课程设计,我深深体会到 这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步, 就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.通过这次学生管理系统设计,本人在多方面都有所提高。通过这次学生管理系统设计, 综合运用本专业所学课程的理论和生产实际知识进行一次软件设计工作的实际训练 从而培养和提高学生独立工作能力,巩固与扩充了软件设计等课程所学的内容,掌握 软件设计的方法和步骤,掌握怎样确定工艺方案,了解了软件的基本结构,提高了计 算能力,绘图能力,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独 立思考的能力也有了提咼。在这次设计过程中,体现出自己单独设计软件的能力以及综合运用知识的能力,体会 了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环 节,从而加以弥补。在此感谢我们的老师,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜 样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次软件设计的每个 实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度, 帮助我能够很顺利的完成了这次课程设计。同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊。 由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十 分乐意接受你们的批评与指正,本人将万分感谢。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!