JAVA编写的学生基本信息管理系统.docx
《JAVA编写的学生基本信息管理系统.docx》由会员分享,可在线阅读,更多相关《JAVA编写的学生基本信息管理系统.docx(61页珍藏版)》请在冰豆网上搜索。
![JAVA编写的学生基本信息管理系统.docx](https://file1.bdocx.com/fileroot1/2023-4/28/df0eff8b-f5f9-4f46-a92f-77af7afa76a0/df0eff8b-f5f9-4f46-a92f-77af7afa76a01.gif)
JAVA编写的学生基本信息管理系统
"学生基本信息管理系统"运行说明:
1.运行系统
2.输入管理员姓名和密码,点击"进入"按钮,进行步骤3;若输入的姓名或密码不正确,则弹出提示对话框,提示"姓名输入错误或密码输入错误!
"
3.进入操作界面
(1)若选择了"菜单选项"下的"录入学生基本信息",则进入录入界面:
输入要录入的学号,姓名,选择性别、专业、年级、出生日期;
若学号字段为空,则弹出提示对话框提示"学号字段不能为空!
",若其它字段为空则弹出对话框提示"选项不能为空!
";
在正确的输入下点击"录入"按钮,弹出提示对话框提示"录入成功".若要继续录入点击"重置"按钮.
(2)若选择了"菜单选项"下的"修改学生基本信息",则进入修改界面:
输入要修改的学号,
点击"开始修改"按钮,在下面的选项中会显示待修改的学生的基本信息,此时依次进行修改,修改完成后,点击"录入修改",弹出对话框提示"修改成功!
";
若学号输入为空,则弹出对话框提示"学号字段不能为空!
";
若输入的学号没有在库中,则弹出对话框提示"该学号不存在!
请确认后再输入!
";
(3)若选择了"菜单选项"下的"查询学生基本信息",则进入查询界面:
输入要查询的学号,点击"查询"按钮,该学生的基本信息就会在下面的相应项中显示出来;
若输入学号为空则弹出对话框提示"学号字段不能为空!
";
若输入的学号不存在则弹出对话框提示"该学号不存在!
请确认后再输入!
";
(4)若选择了"菜单选项"下的"删除学生基本信息",则进入删除界面:
输入要删除的学号,打回车,则该学生的相关信息就会在下面的相应项中显示出来,点击"删除"按钮,弹出对话框"确定要删除该学生的基本信息吗?
",点击"是",则该生基本信息被删除,点击"否",则取消操作;
(5)若选择了"设置选项"下的"重新设置"菜单,则弹出重新设置窗口:
输入新的管理员姓名,密码及确认密码,点击"重新注册",登陆的姓名和密码就会改变,点击"取消",不改变.
(6)若选择了"设置选项"下的"退出"菜单项,则退出操作界面,返回登陆界面.
注:
行动环境eclipse-SDK-3.4.1-win32(JAVA的一种集成开发平台).zip
总体设计
本系统共包括8个java源文件和一个SQLServer数据库。
1.类之间的关系如图1所示。
2.Java源文件及其功能如表1所示
表1源文件功能简介
序号
文件名
主要功能
备注
1
StudentManagers.java
学生信息管理系统的访问权限
含main方法并且权限唯一
2
Landat.java
菜单选项
3
StudentSituation.java
录入学生基本信息
4
ModifySituation.java
修改学生基本信息
5
Inquest.java
查询学生基本信息
6
Delete.java
删除学生基本信息
7
Layoututil.java
登陆界面布局
8
Jdbcenroll.java
负责与数据库进行连接
二、详细设计
1.主类StudentManagers.java
(1)成员变量(表2)
表2成员变量
成员变量描述
变量类型
名称
Txtname,txtpwd
TextField
管理员姓名,管理员密码
btnin
JButton
登陆
(2)方法(表3)
表3方法
方法名
功能
备注
main
启动学生信息管理系统
主函数
StudentManagers
设置登陆访问权限
构造方法
actionPerformed
处理ActionEvent事件
接口方法
(3)源代码StudentManagers.java
importjava.awt.BorderLayout;
importjava.awt.Component;
importjava.awt.Container;
importjava.awt.GridBagConstraints;
importjava.awt.GridBagLayout;
importjava.awt.Insets;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.TextEvent;
importjava.awt.event.TextListener;
importjavax.swing.BorderFactory;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JPanel;
importjavax.swing.JPasswordField;
importjavax.swing.JTextField;
publicclassStudentManagers{
staticfinalJFramemainf=newJFrame();
JLabelwelcome=newJLabel("欢迎访问学生信息管理系统!
");
JLabellabname=newJLabel("请输入管理员姓名:
");
publicJTextFieldtxtname=newJTextField();
JLabellabpwd=newJLabel("请输入密码:
");
publicJPasswordFieldtxtpwd=newJPasswordField();
JButtonbtnin=newJButton("进 入");
JPanelp;
publicStudentManagers()
{
p=newJPanel();
p.removeAll();
p.setSize(400,400);
txtname.requestFocus();
txtname.setText("");
txtpwd.setText("");
p.setBorder(BorderFactory.createLoweredBevelBorder());
p.setLayout(newGridBagLayout());
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(newActionListener(){
publicvoidactionPerformed(ActionEvente)
{
Stringa1=txtname.getText();
Stringa2=txtpwd.getText();
txtname.setText("");
txtpwd.setText("");
booleantof=false;
jdbcenrollchecks=newjdbcenroll();
tof=checks.check(a1,a2);
if(tof==false)
{
JOptionPane.showMessageDialog(null,"姓名输入错误或密码输入错误!
","警告",JOptionPane.WARNING_MESSAGE);
}
elseif(tof==true)
{
newLandat();
mainf.setVisible(false);
}
}
});
JPanelap=newJPanel();
ap.setLayout(newBorderLayout());
ap.add(welcome,BorderLayout.CENTER);
mainf.getContentPane().add(ap,BorderLayout.NORTH);
mainf.setSize(400,400);
mainf.show();
mainf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
publicstaticvoidmain(String[]args)
{
JPanelmainp=newJPanel();
StudentManagersstudent=newStudentManagers();
}
}
2.类Landat.java
(1).成员变量(表4)
表4成员变量
成员变量描述
变量类型
名称
菜单条
JMenuBar
mainmenubar
菜单
JMenu
titlebar,messagebar
菜单项
JMenuItem
inputs,modify,inquest,delete,reset,otherset
标签
JLabel
label
布局管理器
Box
box1,box2,box3,box4,boxH
文本框
JTextField
txtname,txtpwd,txtrepwd
按钮
JButton
ok,cancel
(2)方法(表5)
表5方法
方法名
功能
备注
Landat
选择菜单选项并执行
构造方法
actionPerformed
处理ActionEvent事件
接口方法
reenroll
重新设置管理员姓名和密码
自定义方法
(4)实现代码
importjava.awt.*;
importjava.sql.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.awt.event.TextEvent;
publicclassLandatextendsJFrameimplementsActionListener{
privatestaticfinalintSytle=0;
JFramef;
JPanelp;//登陆
JPanelp2;//录入
JPanelp3;//修改
JPanelp4;//查询
JPanelp5;//删除
JPanelnewp;
/*finalinti=0;//控制菜单项的打开次数(录入学生基本信息)
finalinti1=0;//控制(修改学生基本信息)项
finalinti2=0;//控制(查询学生基本信息)项
finalinti3=0;//控制(删除学生基本信息)项*/
publicLandat()
{
super.setVisible(false);
f=newJFrame("学生学籍管理系统");
p=newJPanel();
p2=newJPanel();
p3=newJPanel();
p4=newJPanel();
p5=newJPanel();
newp=newJPanel();
Boxbox1=Box.createHorizontalBox();
JLabellabel=newJLabel("欢迎进入学生基本信息管理系统");
label.setForeground(Color.red);
intstyle=Font.ITALIC;
Fontfo=newFont("宋体",style,25);
label.setFont(fo);
box1.add(label,JLabel.CENTER);
p.setLayout(newBorderLayout());
p.add(box1,BorderLayout.CENTER);
ContainercontentPane=f.getContentPane();
contentPane.add(p,BorderLayout.CENTER);
JMenuBarmainmenubar=newJMenuBar();
JMenutitlebar=newJMenu("菜单选项");
JMenuIteminputs=newJMenuItem("录入学生基本信息");
inputs.addActionListener(this);
JMenuItemmodify=newJMenuItem("修改学生基本信息");
modify.addActionListener(this);
JMenuIteminquest=newJMenuItem("查询学生基本信息");
inquest.addActionListener(this);
JMenuItemdelete=newJMenuItem("删除学生基本信息");
delete.addActionListener(this);
titlebar.add(inputs);
titlebar.add(modify);
titlebar.add(inquest);
titlebar.add(delete);
JMenumessagebar=newJMenu("设置选项");
JMenuItemreset=newJMenuItem("重新设置");
reset.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
reenrollreenrolls=newreenroll();
}
});
JMenuItemotherset=newJMenuItem("退出");
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();
}
publicvoidactionPerformed(ActionEvente){
if(e.getActionCommand()=="录入学生基本信息")
{
p.setVisible(false);
p2.setVisible(false);
p3.setVisible(false);
p4.setVisible(false);
p5.setVisible(false);
StudentSituationstusituation=newStudentSituation(p2);
f.getContentPane().add(p2);
p2.setVisible(true);
}
elseif(e.getActionCommand()=="修改学生基本信息")
{
p.setVisible(false);
p2.setVisible(false);
p3.setVisible(false);
p4.setVisible(false);
p5.setVisible(false);
ModifySituationmodsituation=newModifySituation(p3);
f.getContentPane().add(p3);
p3.setVisible(true);
}
elseif(e.getActionCommand()=="查询学生基本信息")
{
p.setVisible(false);
p2.setVisible(false);
p3.setVisible(false);
p4.setVisible(false);
p5.setVisible(false);
Inquestquest=newInquest(p4);
f.getContentPane().add(p4);
p4.setVisible(true);
}
elseif(e.getActionCommand()=="删除学生基本信息")
{
p.setVisible(false);
p2.setVisible(false);
p3.setVisible(false);
p4.setVisible(false);
p5.setVisible(false);
Deletedeletes=newDelete(p5);
f.getContentPane().add(p5);
p5.setVisible(true);
}
elseif(e.getActionCommand()=="退出")
{
StudentManagersme=newStudentManagers();
f.setVisible(false);
}
}
}
classreenrollextendsJFrame{
JTextFieldtxtname,txtpwd,txtrepwd;
JFrameff;
JPanelpp;
publicreenroll(){
ff=newJFrame();
pp=newJPanel();
txtname=newJTextField(10);
txtpwd=newJTextField(10);
txtrepwd=newJTextField(10);
txtrepwd.addActionListener(newActionListener()
{
publicvoidactionPerformed(ActionEvente)
{
if(!
txtrepwd.getText().equals(txtpwd.getText())){
JOptionPane.showMessageDialog(null,"密码输入错误!
","警告",JOptionPane.WARNING_MESSAGE);
}
}
publicvoidvalueChanged(TextEvente)
{
}
});
JButtonok=newJButton("重新注册");
ok.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente)
{
jdbcenrollreset=newjdbcenroll();
reset.setloads(txtname.getText(),txtpwd.getText());
}
});
JButtoncancel=newJButton("取消");
cancel.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente)
{
ff.setVisible(false);
}
});
Boxbox1=Box.createHorizontalBox();
box1.add(newJLabel("请输入新的管理员姓名:
",JLabel.CENTER));
box1.add(txtname);
Boxbox2=Box.createHorizontalBox();
box2.add(newJLabel("请输入新的管理员密码:
",JLabel.CENTER));
box2.add(txtpwd);
Boxbox3=Box.createHorizontalBox();
box3.add(newJLabel("请确认密码:
",JLabel.CENTER));
box3.add(txtrepwd);
Boxbox4=Box.createHorizontalBox();
box4.add(ok);
box4.add(cancel);
BoxboxH=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