




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学生基本信息管理系统运行说明:1.运行系统2.输入管理员姓名和密码,点击进入按钮,进行步骤3;若输入的姓名或密码不正确,则弹出提示对话框,提示姓名输入错误或密码输入错误!3.进入操作界面(1)若选择了菜单选项下的录入学生基本信息,则进入录入界面:输入要录入的学号,姓名,选择性别、专业、年级、出生日期 ;若学号字段为空,则弹出提示对话框提示学号字段不能为空!,若其它字段为空则弹出对话框提示选项不能为空!;在正确的输入下点击录入按钮,弹出提示对话框提示录入成功.若要继续录入点击重置按钮.(2)若选择了菜单选项下的修改学生基本信息,则进入修改界面:输入要修改的学号,点击开始修改按钮,在下面的选项中会显示待修改的学生的基本信息,此时依次进行修改,修改完成后,点击录入修改,弹出对话框提示修改成功!;若学号输入为空,则弹出对话框提示学号字段不能为空!;若输入的学号没有在库中,则弹出对话框提示该学号不存在!请确认后再输入!;(3)若选择了菜单选项下的查询学生基本信息,则进入查询界面:输入要查询的学号,点击查询按钮,该学生的基本信息就会在下面的相应项中显示出来;若输入学号为空则弹出对话框提示学号字段不能为空!;若输入的学号不存在则弹出对话框提示该学号不存在!请确认后再输入!;(4)若选择了菜单选项下的删除学生基本信息,则进入删除界面:输入要删除的学号,打回车,则该学生的相关信息就会在下面的相应项中显示出来,点击删除按钮,弹出对话框确定要删除该学生的基本信息吗?,点击是,则该生基本信息被删除,点击否,则取消操作;(5)若选择了设置选项下的重新设置菜单,则弹出重新设置窗口:输入新的管理员姓名,密码及确认密码,点击重新注册,登陆的姓名和密码就会改变,点击取消,不改变.(6)若选择了设置选项下的退出菜单项,则退出操作界面,返回登陆界面.注:行动环境eclipse-SDK-3.4.1-win32(JAVA的一种集成开发平台).zip总体设计 本系统共包括8个java源文件和一个SQL Server数据库。1. 类之间的关系如图1所示。 StudentManagers.javaStudentSituation.javaLandat.javaInquest.javaDelete.javaModifySituation.javaLayoututil.javajdbcenroll2. Java源文件及其功能如表1所示表1 源文件功能简介序号文件名主要功能备注1StudentManagers.java学生信息管理系统的访问权限含main方法并且权限唯一2Landat.java菜单选项3StudentSituation.java录入学生基本信息4ModifySituation.java修改学生基本信息5Inquest.java查询学生基本信息6Delete.java删除学生基本信息7Layoututil.java登陆界面布局8Jdbcenroll.java负责与数据库进行连接二、 详细设计1. 主类StudentManagers.java(1) 成员变量(表2)表2 成员变量成员变量描述变量类型名称Txtname,txtpwdTextField管理员姓名,管理员密码btninJButton登陆(2) 方法(表3) 表3 方法方法名功能备注main启动学生信息管理系统主函数StudentManagers设置登陆访问权限构造方法actionPerformed处理ActionEvent事件接口方法(3) 源代码 StudentManagers.javaimport java.awt.BorderLayout;import java.awt.Component;import java.awt.Container;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.Insets;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.TextEvent;import java.awt.event.TextListener;import javax.swing.BorderFactory;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class StudentManagers static final JFrame mainf=new JFrame(); JLabel welcome=new JLabel(欢迎访问学生信息管理系统!); JLabel labname=new JLabel(请输入管理员姓名:);public JTextField txtname=new JTextField(); JLabel labpwd=new JLabel(请 输 入 密 码: );public JPasswordField txtpwd=new JPasswordField();JButton btnin=new JButton(进入); JPanel p;public StudentManagers() p=new JPanel();p.removeAll();p.setSize(400,400);txtname.requestFocus();txtname.setText();txtpwd.setText();p.setBorder(BorderFactory.createLoweredBevelBorder();p.setLayout(new GridBagLayout();Layoututil.add(p, GridBagConstraints.NONE, GridBagConstraints.CENTER, 0,0, 0, 0, 1,1,labname);Layoututil.add(p, GridBagConstraints.HORIZONTAL,GridBagConstraints.CENTER,1,0, 1, 0,1,1,txtname);Layoututil.add(p,GridBagConstraints.NONE,GridBagConstraints.CENTER,0,0,0, 1,1,1,labpwd);Layoututil.add(p,GridBagConstraints.HORIZONTAL,GridBagConstraints.CENTER,1,0, 1, 1, 1,1,txtpwd);Layoututil.add(p,GridBagConstraints.NONE, GridBagConstraints.CENTER,1, 0, 3, 1, 1, 1, btnin);mainf.getContentPane().add(p,BorderLayout.CENTER);txtname.requestFocus();btnin.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)String a1=txtname.getText();String a2=txtpwd.getText();txtname.setText();txtpwd.setText();boolean tof=false;jdbcenroll checks=new jdbcenroll(); tof=checks.check(a1,a2); if(tof=false)JOptionPane.showMessageDialog(null,姓名输入错误或密码输入错误!,警告,JOptionPane.WARNING_MESSAGE); else if(tof=true) new Landat(); mainf.setVisible(false););JPanel ap=new JPanel();ap.setLayout(new BorderLayout();ap.add(welcome,BorderLayout.CENTER);mainf.getContentPane().add(ap,BorderLayout.NORTH);mainf.setSize(400,400);mainf.show();mainf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);public static void main(String args)JPanel mainp=new JPanel();StudentManagers student=new StudentManagers();2. 类Landat.java (1).成员变量(表4)表4 成员变量成员变量描述变量类型名称菜单条JMenuBarmainmenubar菜单JMenutitlebar,messagebar菜单项JMenuIteminputs,modify,inquest,delete,reset,otherset标签JLabellabel布局管理器Boxbox1,box2,box3,box4,boxH文本框JTextFieldtxtname,txtpwd,txtrepwd按钮JButtonok,cancel (2)方法(表5)表5 方法方法名功能备注Landat选择菜单选项并执行构造方法actionPerformed处理ActionEvent事件接口方法reenroll重新设置管理员姓名和密码自定义方法(4) 实现代码 import java.awt.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;import java.awt.event.TextEvent;public class Landat extends JFrame implements ActionListener private static final int Sytle = 0;JFrame f; JPanel p;/登陆 JPanel p2;/录入 JPanel p3;/修改 JPanel p4;/查询 JPanel p5;/删除 JPanel newp; /*final int i=0;/控制菜单项的打开次数(录入学生基本信息) final int i1=0;/控制(修改学生基本信息)项 final int i2=0;/控制(查询学生基本信息)项 final int i3=0;/控制(删除学生基本信息)项*/ public Landat() super.setVisible(false); f=new JFrame(学生学籍管理系统); p=new JPanel(); p2=new JPanel(); p3=new JPanel(); p4=new JPanel(); p5=new JPanel(); newp=new JPanel(); Box box1=Box.createHorizontalBox();JLabel label=new JLabel( 欢迎进入学生基本信息管理系统);label.setForeground(Color.red);int style=Font.ITALIC;Font fo=new Font(宋体,style,25);label.setFont(fo);box1.add(label,JLabel.CENTER); p.setLayout(new BorderLayout(); p.add(box1,BorderLayout.CENTER);Container contentPane=f.getContentPane();contentPane.add(p,BorderLayout.CENTER);JMenuBar mainmenubar=new JMenuBar();JMenu titlebar=new JMenu(菜单选项);JMenuItem inputs=new JMenuItem(录入学生基本信息);inputs.addActionListener(this);JMenuItem modify=new JMenuItem(修改学生基本信息);modify.addActionListener(this);JMenuItem inquest=new JMenuItem(查询学生基本信息);inquest.addActionListener(this);JMenuItem delete=new JMenuItem(删除学生基本信息);delete.addActionListener(this);titlebar.add(inputs);titlebar.add(modify);titlebar.add(inquest);titlebar.add(delete);JMenu messagebar=new JMenu(设置选项);JMenuItem reset=new JMenuItem(重新设置);reset.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)reenroll reenrolls=new reenroll(););JMenuItem otherset=new JMenuItem(退出);otherset.addActionListener(this);messagebar.add(reset);messagebar.add(otherset);mainmenubar.add(titlebar);mainmenubar.add(messagebar);f.pack();f.setJMenuBar(mainmenubar);f.setSize(400,400);f.show();public void actionPerformed(ActionEvent e) if(e.getActionCommand()=录入学生基本信息)p.setVisible(false);p2.setVisible(false);p3.setVisible(false);p4.setVisible(false); p5.setVisible(false); StudentSituation stusituation=new StudentSituation(p2); f.getContentPane().add(p2); p2.setVisible(true);else if(e.getActionCommand()=修改学生基本信息)p.setVisible(false);p2.setVisible(false);p3.setVisible(false);p4.setVisible(false);p5.setVisible(false);ModifySituation modsituation=new ModifySituation(p3);f.getContentPane().add(p3);p3.setVisible(true); else if(e.getActionCommand()=查询学生基本信息)p.setVisible(false);p2.setVisible(false);p3.setVisible(false);p4.setVisible(false);p5.setVisible(false);Inquest quest=new Inquest(p4); f.getContentPane().add(p4); p4.setVisible(true);else if(e.getActionCommand()=删除学生基本信息)p.setVisible(false);p2.setVisible(false);p3.setVisible(false);p4.setVisible(false);p5.setVisible(false);Delete deletes=new Delete(p5);f.getContentPane().add(p5);p5.setVisible(true);else if(e.getActionCommand()=退出)StudentManagers me=new StudentManagers();f.setVisible(false);class reenroll extends JFrame JTextField txtname,txtpwd,txtrepwd;JFrame ff;JPanel pp;public reenroll() ff=new JFrame();pp=new JPanel();txtname=new JTextField(10);txtpwd=new JTextField(10);txtrepwd=new JTextField(10); txtrepwd.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)if(!txtrepwd.getText().equals(txtpwd.getText()JOptionPane.showMessageDialog(null,密码输入错误!,警告,JOptionPane.WARNING_MESSAGE);public void valueChanged(TextEvent e);JButton ok=new JButton(重新注册);ok.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)jdbcenroll reset=new jdbcenroll();reset.setloads(txtname.getText(),txtpwd.getText(););JButton cancel=new JButton(取消);cancel.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)ff.setVisible(false););Box box1=Box.createHorizontalBox();box1.add(new JLabel(请输入新的管理员姓名:,JLabel.CENTER);box1.add(txtname);Box box2=Box.createHorizontalBox();box2.add(new JLabel(请输入新的管理员密码:,JLabel.CENTER);box2.add(txtpwd);Box box3=Box.createHorizontalBox();box3.add(new JLabel(请确认密码:,JLabel.CENTER);box3.add(txtrepwd);Box box4=Box.createHorizontalBox();box4.add(ok);box4.add(cancel);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.setSize(300,200);ff.setSize(300,200); pp.add(boxH,BorderLayout.CENTER); ff.add(pp); ff.setVisible(true);3. 类StudentSituation(1) 成员变量(表6)表6 成员变量成员变量描述变量类型名称文本框JTextFieldTxtnumber,txtname组合框JComboBoxTxtspecial,txtgrade,txtborn单选按钮JRadioButtonradioboy单选按钮JRadioButtonradiogirl按钮JButtontruein,resetin(2) 方法(表7)表7 方法方法名功能备注StudentSituation录入学生基本信息构造方法actionPerformed处理ActionEvent事件接口方法(3) 代码实现 import java.awt.*;import javax.swing.*;import java.awt.event.*;public class StudentSituation JTextField txtnumber,txtname;JComboBox txtspecial,txtgrade,txtborn;JRadioButton radioboy,radiogirl;ButtonGroup group=null;JButton truein,resetin;public StudentSituation(JPanel psituation)psituation.removeAll(); psituation.setSize(300,300); txtnumber=new JTextField(10); txtname=new JTextField(10); radioboy=new JRadioButton(男); radiogirl=new JRadioButton(女); group=new ButtonGroup(); txtspecial=new JComboBox(); txtspecial.addItem(计算机); txtspecial.addItem(英语); txtspecial.addItem(机械); txtspecial.addItem(汽服); txtspecial.addItem(音乐); txtspecial.addItem(汉语学); txtgrade=new JComboBox(); txtgrade.addItem(2004级); txtgrade.addItem(2005级); txtgrade.addItem(2006级); txtgrade.addItem(2007级); txtgrade.addItem(2008级); txtgrade.addItem(2009级); txtgrade.addItem(2010级); txtborn=new JComboBox(); txtborn.addItem(1985); txtborn.addItem(1986); txtborn.addItem(1987); txtborn.addItem(1988); txtborn.addItem(1989); txtborn.addItem(1990); txtborn.addItem(1991); truein=new JButton(录入); truein.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) String number=txtnumber.getText(); String name=txtname.getText(); String sex = null; if(radioboy.isSelected() sex=radioboy.getText(); else if(radiogirl.isSelected() sex=radiogirl.getText(); String special=null; Object sp = null; String grade=null; Object gr = null; String born=null; Object bo = null; int index1=txtspecial.getSelectedIndex(); switch(index1) case 0: sp=txtspecial.getItemAt(0);break; case 1:sp=txtspecial.getItemAt(1);break; case 2:sp=txtspecial.getItemAt(2);break; case 3:sp=txtspecial.getItemAt(3);break; case 4:sp=txtspecial.getItemAt(4);break; case 5:sp=txtspecial.getItemAt(5);break; special=(String)sp; int index2=txtgrade.getSelectedIndex(); switch(index2) case 0:gr=txtgrade.getItemAt(0);break; case 1:gr=txtgrade.getItemAt(1);break; case 2:gr=txtgrade.getItemAt(2);break; case 3:gr=txtgrade.getItemAt(3);break; case 4:gr=txtgrade.getItemAt(4);break; case 5:gr=txtgrade.getItemAt(5);break; case 6:gr=txtgrade.getItemAt(6);break; grade=(String)gr; int index3=txtborn.getSelectedIndex(); switch(index3) case 0:bo=txtborn.getItemAt(0);break; case 1:bo=txtborn.getItemAt(1);break; case 2:bo=txtborn.getItemAt(2);break; case 3:bo=txtborn.getItemAt(3);break; case 4:bo=txtborn.getItemAt(4);break; case 5:bo=txtborn.getItemAt(5);break; case 6:bo=txtborn.getItemAt(6);break; born=(String)bo;jdbcenroll inputs=new jdbcenroll();inputs.input(number,name,sex,special,grade, born); ); resetin=new JButton(重置); resetin.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtnumber.setText(); txtname.setText(); radioboy.setSelected(false); radiogirl.setSelected(false); );group.add(radioboy);group.add(radiogirl);Box box1=Box.createHorizontalBox();box1.add(new JLabel(学号:,JLabel.CENTER);box1.add(txtnumber);Box box2=Box.createHorizontalBox();box2.add(new JLabel(姓名:,JLabel.CENTER);box2.add(txtname);Box box3=Box.createHorizontalBox();box3.add(new JLabel(性别:,JLabel.CENTER);box3.add(radioboy);box3.add(radiogirl);Box box4=Box.createHorizontalBox();box4.add(new JLabel(专业:,JLabel.CENTER);box4.add(txtspecial);Box box5=Box.createHorizontalBox();box5.add(new JLabel(年级:,JLabel.CENTER);box5.add(txtgrade);Box box6=Box.createHorizontalBox();box6.add(new JLabel(出生:);box6.add(txtborn);Box box7=Box.createHorizontalBox();box7.add(truein);box7.add(resetin);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.add(box5);boxH.add(box6);boxH.add(box7);boxH.setSize(300,300);psituation.add(boxH); 4. 类Inquest (1).成员变量(表8)表8 成员变量成员变量描述变量类型名称文本框JTextFieldnumber,name,special,grade,born单选按钮JRadioButtonboy,girl按钮JButtonsearch(2)方法(表9)表9 方法方法名功能备注Inquest查询已录入学生信息按学号进行查询actionPerformed处理ActionEvent事件接口方法(4) 代码实现import java.awt.*;import javax.swing.*;import java.awt.event.*;public class InquestJPanel p;JTextField number,name,special,grade,born;JButton search;JRadioButton boy,girl;ButtonGroup group=null;public Inquest(JPanel p)p.removeAll();p.setSize(300,300);number=new JTextField(10);search=new JButton(查询);/查询事件监听search.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)String searched=new String5;String searchnumber=number.getText();jdbcenroll searchs=new jdbcenroll();searched=searchs.search(searchnumber);name.setText(searched0);if(searched1.equals(男)boy.setSelected(true);girl.setSelected(false);else if(searched1.equals(女)girl.setSelected(true);boy.setSelected(false); special.setText(searched2); grade.setText(searched3); born.setText(searched4););name=new JTextField(10);name.setEditable(false);group=new ButtonGroup();boy=new JRadioButton(男);girl=new JRadioButton(女);group.add(boy);group.add(girl);special=new JTextField(10);special.setEditable(false);grade=new JTextField(10);grade.setEditable(false);born=new JTextField(10);born.setEditable(false);Box box1=Box.createHorizontalBox();box1.add(new JLabel(输入要查询的学号:,JLabel.CENTER);box1.add(number);box1.add(search);Box box2=Box.createHorizontalBox();box2.add(new JLabel(姓名:,JLabel.CENTER);box2.add(name);Box box3=Box.createHorizontalBox();box3.add(new JLabel(性别:,JLabel.CENTER);box3.add(boy);box3.add(girl);Box box4=Box.createHorizontalBox();box4.add(new JLabel(专业:,JLabel.CENTER);box4.add(special);Box box5=Box.createHorizontalBox();box5.add(new JLabel(年级:,JLabel.CENTER);box5.add(grade);Box box6=Box.createHorizontalBox();box6.add(new JLabel(出生:,JLabel.CENTER);box6.add(born);Box boxH=Box.createVerticalBox();boxH.add(box1);boxH.add(box2);boxH.add(box3);boxH.add(box4);boxH.add(box5);boxH.add(box6);p.add(boxH);5. 类ModifySituation (1).成员变量(表10)表10 成员变量成员变量描述变量类型名称文本框JTextFieldtnewnumber,tnewname单选按钮JRadioButtonsexman,sexwom按钮JButtonstartset,inset,reset组合框JComboBoxtnewspecial,tnewgrade,tnewborn字符串Stringnumbers(2)方法(表11)表11 方法方法名功能备注ModifySituation修改学生信息构造方法actionPerformed处理ActionEvent事件接口方法(3)实现代码import java.awt.*;import javax.swing.*;import java.awt.event.*;public class ModifySituation JTextField tnewn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年反担保股权质押合同范本
- 2025-2026学年小学语文统编版三年级上册第三单元试卷及答案
- 2025年表演专业考试题目及答案
- 工厂绿色规划方案范本
- 2025年陕西省属事业单位考试试卷
- 高速立交桥护栏施工方案
- 2025年安徽省立医院医技及医辅人员招聘131人考前自测高频考点模拟试题及答案详解(易错题)
- 2025吉林省汽车销售合同
- 2025电子商务有限公司 合作合同
- 2025年安庆职业技术学院高层次人才引进7人模拟试卷及答案详解1套
- 高一上学期《早读是需要激情的!》主题班会课件
- 精英中学6+1高效课堂变革 - 副本
- TCTBA 001-2019 非招标方式采购代理服务规范
- 冷库储存生姜合同范本
- 《酒类鉴赏威士忌》课件
- 消化道出血患者的护理
- 【MOOC】《中国马克思主义与当代》(北京科技大学)中国大学MOOC慕课答案
- 《国家电网公司电力安全工作规程(火电厂动力部分、水电厂动力部分)》
- 八年级语文下册-专题08-语言表达与运用-(中考真题演练)(原卷版)
- 肾脏病与药物治疗
- 泵站管理制度
评论
0/150
提交评论