用java做一个学生成绩管理系统需要哪些技术?

2024-04-30 00:24

1. 用java做一个学生成绩管理系统需要哪些技术?

用java做一个学生成绩管理系统,可以用到如下技术:
后台:SSH框架,不用框架的话,单纯地用JSP + Servlet也可以。前台:html + css + js + jquery数据库:掌握SQL语言的编写,数据库的连接。复杂的项目还需要用到存储过程。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高
效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话
和互联网,同时拥有全球最大的开发者专业社群。
Java由四方面组成:
1、Java编程语言,即语法。
2、Java文件格式,即各种文件夹、文件的后缀。
3、Java虚拟机(JVM),即处理*.class文件的解释器。
4、Java应用程序接口(Java API)。

用java做一个学生成绩管理系统需要哪些技术?

2. 用java基础编写一个简单的学生管理系统,有如下功能,添加学生,删除学生,查询学生。看好是用JAVA基础。

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);}
           }
           );
       }
   }
}

3. 用java做一个学生成绩管理系统 需要哪些技术

用java做一个学生成绩管理系统,可以用到如下技术:
后台:SSH框架,不用框架的话,单纯地用JSP + Servlet也可以。前台:html + css + js + jquery数据库:掌握SQL语言的编写,数据库的连接。复杂的项目还需要用到存储过程。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高
效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话
和互联网,同时拥有全球最大的开发者专业社群。
Java由四方面组成:
1、Java编程语言,即语法。
2、Java文件格式,即各种文件夹、文件的后缀。
3、Java虚拟机(JVM),即处理*.class文件的解释器。
4、Java应用程序接口(Java API)。

用java做一个学生成绩管理系统 需要哪些技术

4. 如何用java实现学生成绩管理界面

1成绩管理系统------分析报告(不知如何贴数据流程图之类的到这里,所以把相关图片贴到空间里啦)(另:数据字典是表格形式啦,贴来这里就变了。) 

一 . 引言 
1.系统名称:学生成绩管理信息系统 
2.开发目标:开发出一个操作简便,界面友好,灵活实用,安全可靠的学生成绩管理信息系统。 
该系统的开发以教务管理人员和任课教师服务为对象,能够提高学校对学生成绩的统计分析效率,减轻教务管理人员对学生成绩管理和统计的负担,提高学校对学生成绩的规范化管理。 
该成绩管理系统能够及时对学生成绩进行收集整理,使学校相关部门及时获取可靠的学生成绩信息,便于管理。 
3.主要功能: 
本系统的使用者根据其使用者------教务处管理人员和任课教师-----可分为以下几方面: 
(1)教务处管理人员登陆后,进入教务人员管理模块,可以进行个人信息查询,教师住处职称工资情况的查询,学生信息查询,成绩查询以及退出系统等操作。 
(2)教师登陆教师管理子系统,要能够对学生成绩进行权限范围内的录入、添加、修改、删除、查询;查询教师信息、更改个人登陆密码、修改个人信息等; 
(3)学生单科成绩、全科成绩的总分、平均分,最高分、最低分,排序等计算和统计实现自动化;可以按班级、按个人进行信息查询;信息可以发布到网络,以实现数据共享; 
(4)能够自动进行录入错误检查 

4.开发背景 
每个学校都需要在学期末进行期末考试成绩的统计分析工作,而这些工作都必须在考试结束后近一个星期的时间内完成。大量的成绩数据的统计分析工作如果只靠人工来完成,费时费力,还容易出错。随着计算机技术的飞速发展,计算机在日常管理应用中迅速普及,利用计算机进行学生成绩管理势在必行。因此需开发出一个能满足学校进行成绩的录入,统计,查询,报表和打印等需求的、功能完善、安全可靠、迅速简便的成绩管理信息系统。 
二. 系统目标和开发的可行性 
1.系统目标: 
(1)为教务处管理人员提供各学期、各年级、各班级学生的基本成绩信息,以作为其进行成绩汇总,分析和考绩和总结评比的依据。 
(2)方便各任课教师记录,统计所带班学生成绩,提高工作效率,减轻负担;总结经验,提高教学质量。 
(3)实现快速方便地处理大量成绩数据信息,完成成绩的录入、添加、修改、删除、统计、查询、排序等处理要求。 
(4)输出和打印成绩单和各种成绩报表。 

2.开发的可行性 
(1)系统的名称、功能、目标等已如前所述,此地不再重复。 
(2)系统环境以及工具: 
A. 软件环境: 
用户端:Windows2000,Windows2003,Windows XP 
服务器端:WindowsNT/Windows2000及以上操作系统 
编程语言:SOL 
数据库:Access2003

5. 如何用java实现学生成绩管理界面

1成绩管理系统------分析报告(不知如何贴数据流程图之类的到这里,所以把相关图片贴到空间里啦)(另:数据字典是表格形式啦,贴来这里就变了。) 

一 . 引言 
1.系统名称:学生成绩管理信息系统 
2.开发目标:开发出一个操作简便,界面友好,灵活实用,安全可靠的学生成绩管理信息系统。 
该系统的开发以教务管理人员和任课教师服务为对象,能够提高学校对学生成绩的统计分析效率,减轻教务管理人员对学生成绩管理和统计的负担,提高学校对学生成绩的规范化管理。 
该成绩管理系统能够及时对学生成绩进行收集整理,使学校相关部门及时获取可靠的学生成绩信息,便于管理。 
3.主要功能: 
本系统的使用者根据其使用者------教务处管理人员和任课教师-----可分为以下几方面: 
(1)教务处管理人员登陆后,进入教务人员管理模块,可以进行个人信息查询,教师住处职称工资情况的查询,学生信息查询,成绩查询以及退出系统等操作。 
(2)教师登陆教师管理子系统,要能够对学生成绩进行权限范围内的录入、添加、修改、删除、查询;查询教师信息、更改个人登陆密码、修改个人信息等; 
(3)学生单科成绩、全科成绩的总分、平均分,最高分、最低分,排序等计算和统计实现自动化;可以按班级、按个人进行信息查询;信息可以发布到网络,以实现数据共享; 
(4)能够自动进行录入错误检查 

4.开发背景 
每个学校都需要在学期末进行期末考试成绩的统计分析工作,而这些工作都必须在考试结束后近一个星期的时间内完成。大量的成绩数据的统计分析工作如果只靠人工来完成,费时费力,还容易出错。随着计算机技术的飞速发展,计算机在日常管理应用中迅速普及,利用计算机进行学生成绩管理势在必行。因此需开发出一个能满足学校进行成绩的录入,统计,查询,报表和打印等需求的、功能完善、安全可靠、迅速简便的成绩管理信息系统。 
二. 系统目标和开发的可行性 
1.系统目标: 
(1)为教务处管理人员提供各学期、各年级、各班级学生的基本成绩信息,以作为其进行成绩汇总,分析和考绩和总结评比的依据。 
(2)方便各任课教师记录,统计所带班学生成绩,提高工作效率,减轻负担;总结经验,提高教学质量。 
(3)实现快速方便地处理大量成绩数据信息,完成成绩的录入、添加、修改、删除、统计、查询、排序等处理要求。 
(4)输出和打印成绩单和各种成绩报表。 

2.开发的可行性 
(1)系统的名称、功能、目标等已如前所述,此地不再重复。 
(2)系统环境以及工具: 
A. 软件环境: 
用户端:Windows2000,Windows2003,Windows XP 
服务器端:WindowsNT/Windows2000及以上操作系统 
编程语言:SOL 
数据库:Access2003

如何用java实现学生成绩管理界面

最新文章
热门文章
推荐阅读