java编写的简单的学生信息管理系统(源码、需求分析)_第1页
java编写的简单的学生信息管理系统(源码、需求分析)_第2页
java编写的简单的学生信息管理系统(源码、需求分析)_第3页
java编写的简单的学生信息管理系统(源码、需求分析)_第4页
java编写的简单的学生信息管理系统(源码、需求分析)_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

学生信息管理系统 一 需求分析 1 可行性分析 知识爆炸的时代里 求学的人数越来越多 但学校的数 量及学校所能提供的资源很有限 为优化管理学生的人力资源 设计了这个系统 2 任务概述 1 目标 在计算机网络 数据库和先进的开发平台上 利用现有 的软件 硬件资源 开发一个具有开放体系结构的 易扩充的 易维护的 具有良好人机交互界面的学 生信息管理系统 2 需求要求 这个简单的学生信息管理系统包括以下两个基本功能 管理员登陆 学生信息管理 二 层次图 学生信息管理系统 管理员登陆 学生信息管理 增 加 学 生 信 息 查 询 学 生 信 息 修 改 学 生 信 息 删 除 学 生 信 息 显 示 学 生 信 息 三 界面预览 登录界面 该管理员不存在 学生信息管理界面 填写学生信息 录入学生信息 按学号进行查询 查询后可以进行信息的修改 学生信息的删除 显示全部学生信息 四 系统说明 1 该系统并未使用数据库 只是把信息存放在了一个新 建立的文本文档中 2 关于管理员信息 必须现在 C 盘建立一个名为 Login 的文本文档 在 Login 中存入用户名和密码且必须分行写入 3 若要修改学生信息必须先进行信息的查询 查询后方 可进行信息修改 五 源代码 登录界面源代码 import java awt event import javax swing import java awt import java awt event ActionEvent import java awt event ActionListener import java awt event WindowAdapter import java awt event WindowEvent import java io BufferedReader import java io File import java io FileReader import java io IOException import java util import java sql class Login extends JFrame implements ActionListener Container cp null String name null String psw null JFrame f null JButton j1 j2 JTextField t1 JPasswordField t2 JLabel jlable1 jlable2 Color c JPanel jp1 jp2 Login f new JFrame 学生管理系统 j1 new JButton 确定 j2 new JButton 取消 cp f getContentPane jlable1 new JLabel 输入用户名 jlable2 new JLabel 用户密码 jp1 new JPanel jp2 new JPanel t1 new JTextField 18 t2 new JPasswordField 18 jp1 add jlable1 jp1 add t1 jp1 add jlable2 jp1 add t2 JLabel JL new JLabel 欢迎进入学生管理系统 SwingConstants CENTER cp add JL North jp2 add j1 jp2 add j2 cp add jp1 Center cp add South jp2 jp1 setBackground Color lightGray Toolkit kit Toolkit getDefaultToolkit Dimension screen kit getScreenSize int x screen width 取得显示器窗口的宽度 int y screen height 取得显示器窗口的高度 setSize x y 让系统窗口平铺整个显示器窗口 f setSize 300 300 int xcenter x 300 2 int ycenter y 300 2 f setLocation xcenter ycenter 显示在窗口中央 f setVisible true j1 addActionListener this 注册事件监听器 j2 addActionListener this f addWindowListener new WindowAdapter public void windowClosing WindowEvent e System exit 0 public void confirm throws IOException 验证用户和密码是 否存在 File file new File C Login txt try if file exists file createNewFile catch IOException e e printStackTrace BufferedReader br new BufferedReader new FileReader file String temp br readLine String line 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 f hide br close else JOptionPane showMessageDialog null 该用户不存 在 提示 JOptionPane YES NO OPTION t1 setText t2 setText for int i 0 i str length i System out println str i public void actionPerformed ActionEvent e String cmd e getActionCommand if cmd equals 确定 try confirm catch IOException e1 TODO Auto generated catch block e1 printStackTrace else if cmd equals 取消 f dispose public static void main String arg Login a new Login 学生信息管理界面源代码 import java awt import java awt event import javax swing import java io import java util class Student implements java io Serializable String number name specialty grade borth sex public Student public void setNumber String number this number number public String getNumber return number public void setName String name this name name public String getName return name public void setSex String sex this sex sex public String getSex return sex public void setSpecialty String specialty this specialty specialty public String getSpecialty return specialty public void setGrade String grade this grade grade public String getGrade return grade public void setBorth String borth this borth borth public String getBorth return borth public class Test extends JFrame JLabel lb new JLabel 录入请先输入记录 查询 删除请先 输入学号 修改是对查询 内容改后的保存 JTextField 学号 姓名 专业 年级 出生 JRadioButton 男 女 ButtonGroup group null JButton 录入 查询 删除 修改 显示 JPanel p1 p2 p3 p4 p5 p6 pv ph Student 学生 null Hashtable 学生散列表 null File file null FileInputStream inOne null ObjectInputStream inTwo null FileOutputStream outOne null ObjectOutputStream outTwo null public Test super 学生信息管理系统 学号 new JTextField 10 姓名 new JTextField 10 专业 new JTextField 10 年级 new JTextField 10 出生 new JTextField 10 group new ButtonGroup 男 new JRadioButton 男 true 女 new JRadioButton 女 false group add 男 group add 女 录入 new JButton 录入 查询 new JButton 查询 删除 new JButton 删除 修改 new JButton 修改 显示 new JButton 显示 录入 addActionListener new InputAct 查询 addActionListener new InquestAct 修改 addActionListener new ModifyAct 删除 addActionListener new DeleteAct 显示 addActionListener new ShowAct 修改 setEnabled false p1 new JPanel p1 add new JLabel 学号 JLabel CENTER p1 add 学号 p2 new JPanel p2 add new JLabel 姓名 JLabel CENTER p2 add 姓名 p3 new JPanel p3 add new JLabel 性别 JLabel CENTER p3 add 男 p3 add 女 p4 new JPanel p4 add new JLabel 专业 JLabel CENTER p4 add 专业 p5 new JPanel p5 add new JLabel 年级 JLabel CENTER p5 add 年级 p6 new JPanel p6 add new JLabel 出生 JLabel CENTER p6 add 出生 pv new JPanel pv setLayout new GridLayout 6 1 pv add p1 pv add p2 pv add p3 pv add p4 pv add p5 pv add p6 ph new JPanel ph add 录入 ph add 查询 ph add 修改 ph add 删除 ph add 显示 file new File 学生信息 txt 学生散列表 new Hashtable if file exists try FileOutputStream out new FileOutputStream file ObjectOutputStream objectOut new ObjectOutputStream out objectOut writeObject 学生散列表 objectOut close out close catch IOException e Container con getContentPane con setLayout new BorderLayout con add lb BorderLayout NORTH con add pv BorderLayout CENTER con add ph BorderLayout SOUTH setDefaultCloseOperation EXIT ON CLOSE setBounds 100 100 600 300 setVisible true public static void main String args new Test class InputAct implements ActionListener public void actionPerformed ActionEvent e 修改 setEnabled false String number number 学号 getText if number length 0 try inOne new FileInputStream file inTwo new ObjectInputStream inOne 学生散列表 Hashtable inTwo readObject inOne close inTwo close catch Exception ee System out println 创建散列 表出现问题 if 学生散列表 containsKey number String warning 该生信息已存在 请到修 改页面修改 JOptionPane showMessageDialog null warning 警告 JOptionPane WARNING MESSAGE end if1 else String m 该生信息将被录入 int ok JOptionPane showConfirmDialog null m 确认 JOptionPane YES NO OPTION JOptionPane INFORMATION M ESSAGE if ok JOptionPane YES OPTION String name 姓名 getText String specialty 专业 getText String grade 年级 getText String borth 出生 getText String sex null if 男 isSelected sex 男 getText else sex 女 getText 学生 new Student 学生 setNumber number 学生 setName name 学生 setSpecialty specialty 学生 setGrade grade 学生 setBorth borth 学生 setSex sex try outOne new FileOutputStream file outTwo new ObjectOutputStream outOne 学生散列表 put number 学生 outTwo writeObject 学生散列表 outTwo close outOne close catch Exception ee System out println 输出散列表出现问题 学号 setText null 姓名 setText null 专业 setText null 年级 setText null 出生 setText null end else1 end if0 else String warning 必须输入学号 JOptionPane showMessageDialog null warning 警告 JOptionPane WARNING MESSAGE end else0 end actionPerformed end class class InquestAct implements ActionListener public void actionPerformed ActionEvent e String number number 学号 getText if number length 0 try inOne new FileInputStream file inTwo new ObjectInputStream inOne 学生散列表 Hashtable inTwo readObject inOne close inTwo close catch Exception ee System out println 散列表有 问题 if 学生散列表 containsKey number 修改 setEnabled true Student stu Student 学生散列表 get number 姓名 setText stu getName 专业 setText stu getSpecialty 年级 setText stu getGrade 出生 setText stu getBorth if stu getSex equals 男 男 setSelected true else 女 setSelected true else 修改 setEnabled false String warning 该学号不存在 JOptionPane showMessageDialog null warning 警告 JOptionPane WARNING MESSAGE else 修改 setEnabled false String warning 必须输入学号 JOptionPane showMessageDialog null warning 警告 JOptionPane WARNING MESSAGE class ModifyAct implements ActionListener public void actionPerformed ActionEvent e String number 学号 getText String name 姓名 getText String specialty 专业 getText String grade 年级 getText String borth 出生 getText String sex null if 男 isSelected sex 男 getText else sex 女 getText Student 学生 new Student 学生 setNumber number 学生 setName name 学生 setSpecialty specialty 学生 setGrade grade 学生 setBorth borth 学生 setSex sex try outOne new FileOutputStream file outTwo new ObjectOutputStream outOne 学生散列表 put number 学生 outTwo writeObject 学生散列表 outTwo close outOne close 学号 setText null 姓名 setText null 专业 setText null 年级 setText null 出生 setText null catch Exception ee System out println 录入修改出现异常 修改 setEnabled false class DeleteAct implements ActionListener public void actionPerformed ActionEvent e 修改 setEnabled false String number 学号 getText if number length 0 try inOne new FileInputStream file inTwo new ObjectInputStream inOne 学生散列表 Hashtable inTwo readObject inOne close inTwo close catch Exception ee if 学生散列表 containsKey number Student stu Student 学生散列表 get number 姓名 setText stu getName 专业 setText stu getSpecialty 年级 setText stu getGrade 出生 setText stu getBorth if stu getSex equals 男 男 setSelected true else 女 setSelected true String m 确定要删除该学生的记录吗 int ok JOptionPane showConfirmDialog null m 确认 JOptionPane YES NO OPTION JOptionPane QUESTION MESS AGE if ok JOptionPane YES OPTION 学生散列表 remove number try outOne new FileOutputStream file outTwo new ObjectOutputStream outOne outTwo writeObject 学生散列表 outTwo close outOne close 学号 setText null 姓名 setText null 专业 setText null 年级 setText null 出生 setText null catch Exception ee System out println ee else if ok JOptionPane NO OPTION 学号 setText null 姓名 setText null 专业 setText null 年级 setText null 出生 setText null else String warning 该学号不存在 JOptionPane showMessageDialog null warning 警告 JOptionPane WARNING MESSAGE else String warning 必须输入学号 JOptionPane showMessageDialog null warning 警告 JOptionPa

温馨提示

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

评论

0/150

提交评论