java编写的简单的学生信息管理系统源码需求分析Word格式.docx
《java编写的简单的学生信息管理系统源码需求分析Word格式.docx》由会员分享,可在线阅读,更多相关《java编写的简单的学生信息管理系统源码需求分析Word格式.docx(23页珍藏版)》请在冰豆网上搜索。
填写学生信息
录入学生信息
按学号进行查询
查询后可以进行信息的修改
学生信息的删除
显示全部学生信息
四、系统说明
1该系统并未使用数据库,只是把信息存放在了一个新建立的文本文档中
2关于管理员信息,必须现在C盘建立一个名为Login的文本文档,在Login中存入用户名和密码且必须分行写入
3若要修改学生信息必须先进行信息的查询,查询后方可进行信息修改
五、源代码
登录界面源代码
importjava.awt.event.*;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileReader;
importjava.io.IOException;
importjava.util.*;
importjava.sql.*;
classLoginextendsJFrameimplementsActionListener
{Containercp=null;
Stringname=null;
Stringpsw=null;
JFramef=null;
JButtonj1,j2;
JTextFieldt1;
JPasswordFieldt2;
JLabeljlable1,jlable2;
Colorc;
JPaneljp1,jp2;
Login(){
f=newJFrame("
学生管理系统"
);
j1=newJButton("
确定"
j2=newJButton("
取消"
cp=f.getContentPane();
jlable1=newJLabel("
输入用户名"
jlable2=newJLabel("
用户密码"
jp1=newJPanel();
jp2=newJPanel();
t1=newJTextField(18);
t2=newJPasswordField(18);
jp1.add(jlable1);
jp1.add(t1);
jp1.add(jlable2);
jp1.add(t2);
JLabelJL=newJLabel("
<
html>
fontcolor=#000000size='
6'
>
i>
欢迎进入学生管理系统<
/i>
/font>
"
SwingConstants.CENTER);
cp.add(JL,"
North"
jp2.add(j1);
jp2.add(j2);
cp.add(jp1,"
Center"
cp.add("
South"
jp2);
jp1.setBackground(Color.lightGray);
Toolkitkit=Toolkit.getDefaultToolkit();
Dimensionscreen=kit.getScreenSize();
intx=screen.width;
/*取得显示器窗口的宽度*/
inty=screen.height;
/*取得显示器窗口的高度*/
//setSize(x,y);
/*让系统窗口平铺整个显示器窗口*/
f.setSize(300,300);
intxcenter=(x-300)/2;
intycenter=(y-300)/2;
f.setLocation(xcenter,ycenter);
/*显示在窗口中央*/
f.setVisible(true);
//-----------------------------------------------------
j1.addActionListener(this);
//注册事件监听器
j2.addActionListener(this);
f.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
}
);
}
publicvoidconfirm()throwsIOException//验证用户和密码是否存在
{
Filefile=newFile("
C:
//Login.txt"
try{
if(!
file.exists())
file.createNewFile();
}catch(IOExceptione){
e.printStackTrace();
BufferedReaderbr=newBufferedReader(newFileReader(file));
Stringtemp=br.readLine();
Stringline;
while((line=br.readLine())!
=null){
temp+="
"
+line;
if(temp==null){
System.out.println();
}else{
///分割字符串
String[]str=temp.split("
name=str[0];
psw=str[1];
if(t1.getText().trim().equals(name)&
&
t2.getText().trim().equals(psw)){
newTest();
f.hide();
br.close();
}else{
JOptionPane.showMessageDialog(null,"
该用户不存在"
提示!
JOptionPane.YES_NO_OPTION);
t1.setText("
t2.setText("
//for(inti=0;
str.length;
i++){
//System.out.println(str[i]);
//}
publicvoidactionPerformed(ActionEvente)
Stringcmd=e.getActionCommand();
if(cmd.equals("
)){
try{
confirm();
}catch(IOExceptione1){
//TODOAuto-generatedcatchblock
e1.printStackTrace();
elseif(cmd.equals("
f.dispose();
publicstaticvoidmain(String[]arg){
Logina=newLogin();
}
学生信息管理界面源代码
importjava.io.*;
classStudentimplementsjava.io.Serializable{
Stringnumber,name,specialty,grade,borth,sex;
publicStudent(){};
publicvoidsetNumber(Stringnumber){this.number=number;
publicStringgetNumber(){returnnumber;
publicvoidsetName(Stringname){this.name=name;
publicStringgetName(){returnname;
publicvoidsetSex(Stringsex){this.sex=sex;
publicStringgetSex(){returnsex;
publicvoidsetSpecialty(Stringspecialty){this.specialty=specialty;
publicStringgetSpecialty(){returnspecialty;
publicvoidsetGrade(Stringgrade){this.grade=grade;
publicStringgetGrade(){returngrade;
publicvoidsetBorth(Stringborth){this.borth=borth;
publicStringgetBorth(){returnborth;
publicclassTestextendsJFrame{
JLabellb=newJLabel("
录入请先输入记录,查询、删除请先输入学号,修改是对查询"
+
"
容改后的保存!
JTextField学号,姓名,专业,年级,出生;
JRadioButton男,女;
ButtonGroupgroup=null;
JButton录入,查询,删除,修改,显示;
JPanelp1,p2,p3,p4,p5,p6,pv,ph;
Student学生=null;
Hashtable学生散列表=null;
Filefile=null;
FileInputStreaminOne=null;
ObjectInputStreaminTwo=null;
FileOutputStreamoutOne=null;
ObjectOutputStreamoutTwo=null;
publicTest(){
super("
学生信息管理系统"
学号=newJTextFiel