Java 学生管理系统代码

/*初学JAVA  开发了一个 学生管理程序,拿出来晒晒,以便大家参考或评论 指出不足之处!谢谢 由于此处不能上传照片,故信息管理系统图片放在我的像册里面

/*/这是登入界面的程序:

 

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.awt.event.WindowListener;
import java.util.*;
import java.util.jar.JarFile;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;


public class Denglujiemian extends Frame implements ActionListener {
 JLabel JLUserName = new JLabel("用户名:");
 JLabel JLPaw = new JLabel("密码");
 JTextField JTUserName = new JTextField();
 JPasswordField JPsw= new JPasswordField();
 JButton JB1 = new JButton("登入");
 JButton JB2 = new JButton("取消");
 JLabel JL1 = new JLabel("身份");
 JComboBox JC = new JComboBox();
 
 
 public Denglujiemian(){
  this.setTitle("学生信息管理系统");
  this.setLayout(null);
  JLUserName.setBounds(100,40,100,20);
  this.add(JLUserName);
  JTUserName.setBounds(200, 40, 80, 20);
  this.add(JTUserName);
  JLPaw.setBounds(100, 100, 60, 20);
  this.add(JLPaw);
  JPsw.setBounds(200, 100, 80, 20);
  this.add(JPsw);
  JL1.setBounds(100, 150, 60, 20);
  this.add(JL1);
  JC.setBounds(200, 150, 80, 20);
  this.add(JC);
  JC.addItem(new String("学生"));
  JC.addItem(new String("老师"));
 
  JB1.setBounds(100, 200, 60, 20);
  this.add(JB1);
  JB1.addActionListener(this);
 
 
 
  JB2.setBounds(200, 200, 60, 20);
  this.add(JB2);
  JB2.addActionListener(this);
 
  this.setVisible(true);
  this.setBounds(400, 250, 400, 250);
  //通過內部內重寫關閉窗體的方法;
  addWindowListener(new WindowAdapter() {
   public void windowClosing(WindowEvent e)
   {System.exit(0);
 }});
 
 
 }
 
 public static void main(String[] args) {
 new Denglujiemian();
 
 }
 public void actionPerformed(ActionEvent e){
 
    if(e.getSource()==JB1){ //處理登入事件;
   String name = JTUserName.getText();
     String Password =new String(JPsw.getPassword());
   String Box =(String)JC.getSelectedItem();//將當前所選項傳給BOx
  
   if(name.equals("cuisichao")&&((Password.equals("123")))){
    if(Box.equals("学生"))
    {
     new Studentjiemian();
    }
    if(Box.equals("老师")){
     new TeacherJianMian();
    } 
   }
  
   else {
    JOptionPane.showMessageDialog(null, "户名和密码错误");
   }
   
  
  }
 }
}


 

 /*这是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序://这//是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序://这是学生界面程序:

//这是学生界面程序:*/

import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;


public class Studentjiemian extends JFrame implements ActionListener{
JMenuBar jm = new JMenuBar();
JMenu jm1 = new JMenu("信息");
JMenu jm2 = new JMenu("成绩");
JMenuItem jmi1 = new JMenuItem("插入");
JMenuItem jmi2 = new JMenuItem("查询");

JMenuItem jmi21 = new JMenuItem("查询");

public Studentjiemian(){
 this.setTitle("学生界面");
 this.setLayout(null);
 this.setJMenuBar(jm);
 jm.add(jm1);
 jm.add(jm2);
 jm1.add(jmi1);
 jm1.add(jmi2);
 JLabel JL1 = new JLabel("欢迎进入学生查询界面");
 jmi1.addActionListener(this);
 jmi2.addActionListener(this);
 
 jm2.add(jmi21);
 jm2.addActionListener(this);
 jmi2.addActionListener(this);
 jmi21.addActionListener(this);
 
 this.add(JL1);
 
  JL1.setForeground(Color.red);
     JL1.setFont(new java.awt.Font("宋体",Font.PLAIN,20));
     JL1.setBounds(150, 80, 200, 200);
 this.setBounds(400, 250, 500, 400);
 this.setVisible(true);
}
 public void actionPerformed(ActionEvent e){
  if(e.getSource()==jmi1){
   new Addstudent();
  }
  if(e.getSource()==jmi2){
   new Selectstudent();
  }
  if(e.getSource()==jmi21){
   new Chengjistudent();
  }
 }
 public static void main(String agrs[]){
   new Studentjiemian();
 }

}
 

//*  这是增加数据界面   这是增加数据界面  这是增加数据界面  这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面 这是增加数据界面*/

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JTextField;


public class Addstudent extends JFrame implements ActionListener {

JLabel JL = new JLabel("添加基本信息",JLabel.CENTER);
JLabel JLNumber =new JLabel ("学号:");
JTextField JTNumber = new JTextField();

JLabel JLName = new JLabel("姓名:");
JTextField JTName = new JTextField();

JLabel JLClass = new JLabel("班级:");
JTextField JTClass = new JTextField();

JLabel JLsex = new JLabel("性别:");
ButtonGroup BG = new ButtonGroup();
JRadioButton JRB1 = new JRadioButton("男");
JRadioButton JRB2 = new JRadioButton("女");

JLabel JL1 = new JLabel("学院:");
JTextField JT1 = new JTextField();

JButton JBAdd = new JButton("添加");
JButton JBNext = new JButton("重置");

String sql="";

public Addstudent()
{
 this.setTitle("添加学生信息");
 this.setLayout(null);
 JL.setForeground(Color.red);

 JL.setBounds(100, 30, 200, 40);
 this.add(JL);
 
 JLNumber.setBounds(100, 80, 100, 20);
 this.add(JLNumber);
 
 JTNumber.setBounds(200, 80, 80, 20);
 this.add(JTNumber);
 
 JLName.setBounds(100, 120, 60, 20);
 this.add(JLName);
 
 JTName.setBounds(200, 120, 80, 20);
 this.add(JTName);
 
 JLsex.setBounds(100, 160, 100, 20);
 this.add(JLsex);
 
 JRB1.setBounds(200, 160, 40, 20);
 JRB2.setBounds(300, 160, 40, 20);
 this.add(JRB1);
 this.add(JRB2);
 BG.add(JRB1);
 BG.add(JRB2);
 
 JLClass.setBounds(100, 240, 60, 20);
 this.add(JLClass);
 
 JTClass.setBounds(200, 240, 80, 20);
 this.add(JTClass);
 
 JL1.setBounds(100, 280, 60, 20);
 this.add(JL1);
 
 JT1.setBounds(200, 280, 100, 20);
 this.add(JT1);
 
 JBAdd.setBounds(80, 320, 90, 20);
 this.add(JBAdd);
 
 JBAdd.addActionListener(this);
 JBNext.setBounds(190, 320, 90, 20);
 this.add(JBNext);
 JBNext.addActionListener(this);
 
 this.setBounds(400, 250, 500, 400);
 this.setVisible(true);
 
 
 
 
 
 
}

@Override
public void actionPerformed(ActionEvent e)
{
 // TODO Auto-generated method stub
 
 if(e.getSource()==JBAdd){
  String snumber= JTNumber.getText();
  String sname = JTName.getText();
  String sclass = JTClass.getText();
  String ssex ="女";
  if(JRB1.isSelected())
   ssex="男";
  
  
  String scollect = JT1.getText();
  sql="select * from student where snumber ='"+snumber+"'";
  try{
   Class.forName("com.mysql.jdbc.Driver").newInstance();
   Connection cot = DriverManager.getConnection("jdbc:mysql://localhost:3306/student?characterEncoding=gbk" ,"root","123");
   Statement stm =cot.createStatement();//提交查巡
   ResultSet rs =stm.executeQuery(sql);//取得查巡結果
   
   if(rs.next())
    JOptionPane.showMessageDialog(null, "该號已經存在");
   else{
    sql="insert into student values ('"+snumber+"','"+sname+"','"+sclass+"','"+ssex+"','"+scollect+"')";
   int i =stm.executeUpdate(sql);
   //對數據庫進行更新
   if(i>0)
    JOptionPane.showMessageDialog(null, "添加成功");
   else
    JOptionPane.showMessageDialog(null, "刪除失敗");
    
   }
  }
   catch(Exception ee){
    
   }
   }
   
   if(e.getSource()==JBNext){
    JTNumber.setText(null);
    JTName.setText(null);
    JTClass.setText(null);
    JT1.setText(null);
    
   }
   
  }
 
  public static void main(String agrs[]){
   new Addstudent();
  }
  
 

}

 

/*这是查询界面  这是查询界面  这是查询界面   这是查询界面   这是查询界面   这是查询界面  这是查询界面   这是查询界面  这是查询界v  面   这是查询界面  这是查询界面   这是查询界面  这是查询界面   这是查询界面  这是查询界面   这是查询界面  */

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.text.JTextComponent;

import org.omg.PortableServer.ImplicitActivationPolicyValue;


public class Selectstudent extends JFrame implements ActionListener {
  JLabel JL = new JLabel("查询学生信息",JLabel.CENTER);
     JLabel JLNumber = new JLabel("请输入学号:");
     JTextField JTNumber =new JTextField();
    
     JButton JBset =new JButton("查询");
     JButton JBnext = new JButton("重置");
    
     JLabel JLName = new JLabel("姓名");
     JTextField JTName = new JTextField();
    
     JLabel JLsex = new JLabel("性别");
    JTextField JTxb = new JTextField();
    
     JLabel JLClass = new JLabel("班级");
     JTextField JTClass = new JTextField();
    
     JLabel JL1 = new JLabel("学院");
     JTextField JT1 = new JTextField();
    
     String sql= "" ;
    
    
public Selectstudent(){
  
   
    this.setTitle("查询学生信息");
    this.setLayout(null);
   
    JL.setForeground(Color.red);
    JL.setFont(new java.awt.Font("宋体",Font.PLAIN,19));
    JL.setBounds(100, 30, 200, 40);
    this.add(JL);
   
    JLNumber.setBounds(100, 80, 100, 20);
    this.add(JLNumber);
   
    JTNumber.setBounds(200, 80, 80, 20);
    this.add(JTNumber);
   
    JLName.setBounds(100, 160, 80, 20);
    this.add(JLName);
   
    JTName.setBounds(200, 160, 80, 20);
    this.add(JTName);
   
    JLsex.setBounds(100, 200, 100, 20);
    this.add(JLsex);
   
    JTxb.setBounds(200, 200, 80, 20);
    this.add(JTxb);
   
    JLClass.setBounds(100, 280, 60, 20);
    this.add(JLClass);
   
    JTClass.setBounds(200, 280, 80, 20);
    this.add(JTClass);
   
    JL1.setBounds(100, 320, 60, 20);
    this.add(JL1);
   
    JT1.setBounds(200, 320, 80, 20);
    this.add(JT1);
   
    JBset.setBounds(80, 120, 90, 20);
    this.add(JBset);
    JBset.addActionListener(this);
   
    JBnext.setBounds(190, 120, 90, 20);
    this.add(JBnext);
    JBnext.addActionListener(this);
   
    this.setBounds(400, 250, 500, 400);
    this.setVisible(true);
   
   
    //通过内部内重写关闭的方法
   
  
}
 
 
 
 @Override
 public void actionPerformed(ActionEvent e) {
  // TODO Auto-generated method stub
  if(e.getSource()==JBset){
   String snumber =JTNumber.getText();
   String sname=JTName.getText();
   String sclass=JTClass.getText();
   String ssex ="女";
   
   String scollect=JT1.getText();
   sql="select*from student where snumber='"+snumber+"'";
   
   try{
    
     Class.forName("com.mysql.jdbc.Driver").newInstance();
     Connection cot = DriverManager.getConnection("jdbc:mysql://localhost:3306/student?characterEncoding=gbk" ,"root","123");
     Statement stm =cot.createStatement();//提交查巡
     ResultSet rs =stm.executeQuery(sql);//取得查巡結果
     
     if(rs.next())
     {
      String name =rs.getString(3);
     JTName.setText(name);
     String clas =rs.getString(5);
     JTClass.setText(clas);
     String sex =rs.getString(4);
     JTxb.setText(sex);
     String collect=rs.getString(6);
     JT1.setText(collect);
     
     String bir = rs.getString(6);
     
     //对数苦苦进行查询
     int n = stm.executeUpdate(sql);
     if(n>0)
      JOptionPane.showMessageDialog(null, "查询成功");
     else
      JOptionPane.showMessageDialog(null, "查询失败");
     }
     else
     {
      JOptionPane.showMessageDialog(null, "次用户不在");
      
     }
     
   cot.close();
   stm.close();
   rs.close();
  
 }
   catch(Exception ee)
   {
    
}
}
  
  if(e.getSource()==JBnext)
  {
   JTNumber.setText(null);
   JTName.setText(null);
   JTClass.setText(null);
   JT1.setText(null);
   JTxb.setText(null);
   
  }
}
 public static void main(String[] args) {
  new Selectstudent();
 }
}

 

 

/* 这是成绩查询界面 这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面这是成绩查询界面 */

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JTextField;


public class Chengjistudent extends JFrame implements ActionListener {
 JLabel JL = new JLabel("查询成績",JLabel.CENTER);
    JLabel JLNumber = new JLabel("请输入学号:");
    JTextField JTNumber =new JTextField();
   
    JButton JBset =new JButton("查询");
    JButton JBnext = new JButton("重置");
   
    JLabel JLName = new JLabel("姓名");
    JTextField JTName = new JTextField();
   
    JLabel JLClass = new JLabel("班级");
    JTextField JTClass = new JTextField();
   
    JLabel JL1 = new JLabel("数学");
    JTextField JT1 = new JTextField();
   
    JLabel JL2 = new JLabel("语文");
    JTextField JT2 =new JTextField();
   
    String sql= "" ;
   
   
public Chengjistudent(){


this.setTitle("查询成绩");
this.setLayout(null);

JL.setForeground(Color.red);
JL.setFont(new java.awt.Font("宋体",Font.PLAIN,19));
JL.setBounds(100, 30, 200, 40);
this.add(JL);

JLNumber.setBounds(100, 80, 100, 20);
this.add(JLNumber);

JTNumber.setBounds(200, 80, 80, 20);
this.add(JTNumber);

JLName.setBounds(100, 160, 80, 20);
this.add(JLName);

JTName.setBounds(200, 160, 80, 20);
this.add(JTName);

JL2.setBounds(100, 240, 100, 20);
this.add(JL2);
JT2.setBounds(200, 240, 80, 20);
this.add(JT2);

JLClass.setBounds(100, 280, 60, 20);
this.add(JLClass);

JTClass.setBounds(200, 280, 80, 20);
this.add(JTClass);

JL1.setBounds(100, 320, 60, 20);
this.add(JL1);

JT1.setBounds(200, 320, 80, 20);
this.add(JT1);

JBset.setBounds(80, 120, 90, 20);
this.add(JBset);
JBset.addActionListener(this);

JBnext.setBounds(190, 120, 90, 20);
this.add(JBnext);
JBnext.addActionListener(this);

this.setBounds(400, 250, 500, 400);
this.setVisible(true);


//通过内部内重写关闭的方法

 

}

 
 

 
 @Override
 public void actionPerformed(ActionEvent e) {
  // TODO Auto-generated method stub
  if(e.getSource()==JBset){
   String snumber =JTNumber.getText();
   String sname=JTName.getText();
   String sclass=JTClass.getText();
   String ssex ="女";
   String sbir =JT2.getText();
   String scollect=JT1.getText();
   sql="select*from student where Id='"+snumber+"'";
   
   try{
    
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
     Connection cot = DriverManager.getConnection("jdbc:odbc://student","root","123");
     Statement stm =cot.createStatement();//提交查巡
     ResultSet rs =stm.executeQuery(sql);//取得查巡結果
     
     if(rs.next())
     {
      String name =rs.getString(2);
     JTName.setText(name);
     String clas =rs.getString(3);
     JTClass.setText(clas);
     
     String collect=rs.getString(5);
     JT1.setText(collect);
     
     String bir = rs.getString(6);
     JT2.setText(bir);
     //对数苦苦进行查询
     int n = stm.executeUpdate(sql);
     if(n>0)
      JOptionPane.showMessageDialog(null, "查询成功");
     else
      JOptionPane.showMessageDialog(null, "查询失败");
     }//通过showmessagedialog()打印信息
     else
     {
      JOptionPane.showMessageDialog(null, "次用户不在");
      
     }
     
   
  
 }
   catch(Exception ee)
   {
}
}
  
  if(e.getSource()==JBnext)
  {
   JTNumber.setText(null);
   JTName.setText(null);
   JTClass.setText(null);
   JT1.setText(null);
   JT2.setText(null);
  }
}
  
  
 
 
 public static void main(String[] args) {
  new Chengjistudent();
 }

}

 

1、把6个java文件保存到同一文件夹,例如C:\Student.然后将6个java文件分别编译生成相应的字节码(.class)文件,然后,用java 解释器运行主类:C:\Student\java StudentManager 2、使用jar.exe把一些文件压缩成JAR文件,来发布我们的应用程序。我们可以把本java应用程序中涉及到的类文件(*.class)压缩成一个JAR文件,例如StudentManager.jar。 首先,用记事本编写一个清单文件(Manifestfiles): Manifest-Version: 1.0 Main-class: StudentManager Created-By: 1.2.2(Sun Microsystems Inc.) 例如,清单文件命名为moon.mf,保存到C:\Student。 注意:在编写清单文件时,在“Manifest-Version:”和“1.0”之间,“Main-class:”和“StudentManager”之间,以及在“Created-By:”和“1.2.2(Sun Microsystems Inc.)”之间必须有且只有一个空格。 然后,如下生成JAR文件: C:\Student\jar cvfm StudentManager.jar moon.mf *.class 其中,参数C表示要生成一个新的JAR文件;f表示要生成的JAR文件的名字,m表示文件清单文件的名字,v表示生成详细输出到标准输出上。具体运行jar命令请查看 现在就可以将StudentManager.jar拷贝到任何一个安装了java运行环境(jdk版本号须高于1.2.2)的计算机上,只要鼠标双击StudentManager.jar文件就可以运行该java应用程序了。 注意在装了WinRAR解压缩软件的机子上可能不能运行,因此,在发布本系统时,还应该建立一个有如下内容的.bat文件(StudentManager.bat),用记事本编写: javaw -jar StudentManager.jar 保存即可。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值