求毕业设计及论文“基于Java的学生信息管理系统的设计与实现”

要有论文,源程序,答辩,发至rexxueer@sina.com
满意附加100积分
谢谢

  仅仅给你个参考

  //Java Group Project_StudentManagement源码
  //NetBeans IDE 6.5 环境

  package studentmanager;
  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 StudentManager 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 StudentManager(){
  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 StudentManager();}
  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_MESSAGE);
  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_MESSAGE);
  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,
  "警告",JOptionPane.WARNING_MESSAGE);
  }
  }
  }
  class ShowAct implements ActionListener{
  public void actionPerformed(ActionEvent e){
  new StudentShow(file);
  }
  }
  class StudentShow extends JDialog{
  Hashtable 学生散列表= null;
  JTextArea 显示=null;
  FileInputStream inOne=null;
  ObjectInputStream inTwo=null;
  File file=null;
  public StudentShow(File file){
  super(new JFrame(),"显示对话框");
  this.file=file;
  显示=new JTextArea(16,30);
  try{
  inOne=new FileInputStream(file);
  inTwo=new ObjectInputStream(inOne);
  学生散列表=(Hashtable)inTwo.readObject();
  inOne.close();
  inTwo.close();
  }
  catch(Exception ee){}
  if(学生散列表.isEmpty())显示.append("目前还没有学生的信息记录!\n");
  else{
  显示.setText("学号 姓名 性别 专业 年级 出生\n");
  for(Enumeration enm=学生散列表.elements();enm.hasMoreElements();){
  Student stu=(Student)enm.nextElement();
  String sex="";
  if(stu.getSex().equals("男"))sex="男";
  else sex="女";
  String str=stu.getNumber()+","+stu.getName()+","+sex+","
  +stu.getSpecialty()+","+stu.getGrade()+","+stu.getBorth()+"\n";
  显示.append(str);
  }
  }
  JScrollPane scroll=new JScrollPane(显示);
  Container con=getContentPane();
  con.add("Center",scroll);
  con.validate();
  setVisible(true);
  setBounds(200,200,400,300);
  addWindowListener(new WindowAdapter(){
  public void windowClosing(WindowEvent e){setVisible(false);}
  }
  );
  }
  }
  }
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-04-24
你这个需求比较艰难, 空手套白狼不太可能有人会给你
首先这个课题非常简单
第一: 代码层面就是用springmvc 或者springboot之类的框架, 数据层采用hibernate/mybaits, 不要想着自己手写servlet了, 那个工作量太大, 随便套一个主题就能用了
第二: 论文方面可以去文库里东拼西凑一番, 毕竟本科论文讲来讲去都是那些东西, 写一些每个框架的优点, 自己的业务设计, 数据库设计, 测试样例等等就能拼个一万字的论文了
Look at my name ~ you will find the code
第2个回答  2021-01-15

java毕业设计项目,怎么做?流程是怎么样的?
---1.设计一个完整的项目 例如完成一个学生信息管理系统、网上商城购物系统等。从前后端完成一个健全的系统,前端用html、css等做页面展示,后端制作服务端响应页面请求,完成系统的整个功能。利用数据库保存系统的数据。---2.结合web前端与服务器端完成一个完整的毕设 前端通常指的就是我们能看到的部分...

毕业论文管理系统的设计与实现的内容怎么写
首先选定开发框架, 由于是毕业设计, 不要选那些花里胡哨的, 许多老师对新技术不了解, 会直接在答辩会上怼你 这种题目推荐使用javaweb技术开发, 最近比较流行的就是ssm框架或者springboot框架 前端可以选一个bootstrap主题, 也可以用ant-design或者elementui这种组建类框架 毕业论文管理系统的难点有如下几...

十几套Java实战项目分享,拿去当毕业设计、课程设计简直太爽了(文档...
系统采用Java+Servlet+Jsp方式,实现B\/S模式的图书管理系统,包括登录、首页、图书管理、借阅信息、公告管理等功能。功能展示:登录页面、首页、图书管理、借阅信息、公告管理等 JavaWeb宿舍管理系统 宿舍管理系统以计算机和互联网为基础,实现宿舍管理自动化,降低难度,提高效率,适合高校学生毕业设计。技术选...

信息管理系统设计论文
在对计算机信息管理系统进行相应的设计时,首先需要对数据进行全面的分析,找出对信息系统进行管理的具体 方法 ,最终的目标及在系统中所提供的一系列相关管理功能;其次将功能管理的模块设计出来,来实现服务器中所具有的功能;同时需要对数据库的管理进行设计、完成各个模块的属性设置以及数据字典;然后对客户所提出的要求以及...

求毕业设计及论文“基于Java的学生信息管理系统的设计与实现”
求毕业设计及论文“基于Java的学生信息管理系统的设计与实现” 要有论文,源程序,答辩,发至rexxueer@sina.com满意附加100积分谢谢... 要有论文,源程序,答辩,发至rexxueer@sina.com满意附加100积分谢谢 展开  我来答 4个回答 #热议# 生活中有哪些成瘾食物? 匿名用户 2010-01-07 展开全部 仅仅给你个...

2023-2024最新计算机专业毕设选题推荐 毕业设计题目大全
1 Java Web 管理系统 毕设选题 Java Web 系统选题通常包括但不限于: 学籍管理系统设计与实现 教务管理系统设计与实现 网上考试系统设计与实现 在线考试系统设计与实现 题库管理系统设计与实现 网络远程作业处理系统设计与实现 毕业论文管理系统的设计与实现 毕业生学历证明系统设计与实现 毕业生派遣管理系统设计与实现 ...

学生信息管理系统毕业论文设计怎么做?
8·基本课程信息的修改。9·学生课程的设置和修改。10·学生成绩信息的输入。11·学生成绩信息的修改。12·学生成绩信息的查询。13·学生成绩信息的统计。 针对一般学生管理系统的需求,通过对学生学习过程的内容和数据流程分析,设计如下面所示的数据项和数据结构: ·学生基本信息:包括的数据项有:...

基于什么技术的什么程序的实设计与实现
题主是准备走一个基于xxx技术的xxx系统设计与实现的毕业设计吗?如果你是学计算机的话, 推荐用javaweb来实现一个xxx管理系统网站, 毕竟javaweb是目前技术最成熟, 比如各种学生管理系统, 寝室管理系统, 人力资源管理系统等等 如果对自己要求高的话可以试试做一个在线商城这样的复杂项目, 项目技术一般都是...

学生成绩管理系统类毕业论文文献包含哪些?
学位论文一:《基于Web的高校学生成绩管理系统的设计和实现》,该论文于2017年获得计算机技术硕士学位,重点研究了高校学生成绩管理系统的Web设计与实现。学位论文二:《高职院校学生成绩管理系统的设计与实现》,同样于2017年获得硕士学位,论文针对高职院校特点,探讨了学生成绩管理系统的具体设计和实现。学位...

求一篇学生学籍管理系统的毕业论文
1、系统模块结构图13 2、系统功能框图-13 3、系统主界面14 4、用户登录窗口-14 5、信息录入窗口-15 6、成绩录入窗口16 7、考试管理窗口-18 五、系统实现技术19 (一)学生信息模块19 1、 学生信息录入子模块-19 2、 学生信息查询子模块-20 3、 学生信息修改、删除子模块-21 (二)学生成绩管理...

相似回答