程序笔记   发布时间:2022-06-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了java+SQL server2008学生信息管理系统源码大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例为大家分享了java学生信息管理系统源码的具体代码,供大家参,具体内容如下

1、studetManage类(主界面)

package com.sms3; 
 
import java.awt.*; 
import javax.swing.*; 
import java.awt.event.*; 
 
public class studentManage extends JFrame implements ActionListener  
{ 
  /** 
   * @param args 
   */ 
  public static voID main(String[] args)  
  { 
    // Todo auto-generated method stub 
    new studentManage(); 
  } 
 
  //========面板控件 
  private JLabel queryLab = null; 
  private JTextFIEld queryTxt = null; 
  private Jbutton queryBtn = null; 
  private Jbutton allBtn = null; 
  private Jtable resultTb = null; 
  private JscrollPane Jsp = null; 
  private Jbutton addBtn = null; 
  private Jbutton deleteBtn = null; 
  private Jbutton updateBtn = null; 
  private JPanel top = null; 
  private JPanel bottom = null; 
  //======== 
  private stuR_178_11845@odel sm = null; 
   
  //构造函数 
  public studentManage() 
  { 
    /***************************初始化面板控件***********************/ 
    //========查询栏 
    queryLab = new JLabel("请输入姓名:"); 
    queryTxt = new JTextFIEld(10); 
    queryBtn = new Jbutton("查询"); 
    allBtn = new Jbutton("全部"); 
    //......添加查询栏监听 
    queryBtn.addActionListener(this); 
    queryBtn.setActionCommand("query"); 
    allBtn.addActionListener(this); 
    allBtn.setActionCommand("all"); 
    //========增删改栏 
    addBtn = new Jbutton("添加"); 
    deleteBtn = new Jbutton("删除"); 
    updateBtn = new Jbutton("修改"); 
    //......添加增删改栏监听 
    addBtn.addActionListener(this); 
    addBtn.setActionCommand("add"); 
    deleteBtn.addActionListener(this); 
    deleteBtn.setActionCommand("delete"); 
    updateBtn.addActionListener(this); 
    updateBtn.setActionCommand("update"); 
    //========创建窗口整体布局 
    //......顶层查询栏 
    top = new JPanel(); 
    top.add(queryLab); 
    top.add(queryTxt); 
    top.add(queryBtn); 
    top.add(allBtn); 
    //......底层增删改栏 
    bottom = new JPanel(); 
    bottom.add(addBtn); 
    bottom.add(deleteBtn); 
    bottom.add(updateBtn); 
    //......中间层显示栏 
    sm = new stuR_178_11845@odel(); 
    String sql = "SELEct * from stu"; 
    sm.querystu(sql,null); 
    resultTb = new Jtable(sm); 
    Jsp = new JscrollPane(resultTb); 
    //......构建整体布局 
    this.add(top,borderLayout.norTH); 
    this.add(Jsp,borderLayout.CENTER); 
    this.add(bottom,borderLayout.soUTH); 
    //========设置窗口属性 
    this.setSize(400,300); 
    this.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE); 
    this.setVisible(true); 
    this.setResizable(false); 
  } 
   
  //监听 
  @OverrIDe 
  public voID actionPerformed(ActionEvent E) 
  { 
    // Todo auto-generated method stub 
    if(e.getActionCommand().equals("query")) { 
      /*********************查询***********************/ 
      //========获取输入学生的姓名 
      String name = queryTxt.getText().trim(); 
      if(name.length() != 0) { 
        //========姓名输入有效时,执行查询 
        //......@R_301_6341@ 
        String sql = "SELEct * from stu where stuname=?"; 
        String []paras = {name}; 
        //......更新模型 
        jtableupdate(sql,paras); 
      } else { 
        //========姓名为空时,设置提醒 
        JOptionPane.showmessageDialog(this,"姓名输入不能为空"); 
      } 
    } else if(e.getActionCommand().equals("add")) { 
      /*********************添加***********************/ 
      new stuAddDialog(this,"添加学生信息",truE); 
      String sql = "SELEct * from stu"; 
      jtableupdate(sql,null); 
    } else if(e.getActionCommand().equals("all")) { 
      /*********************全部显示***********************/ 
      String sql = "SELEct * from stu"; 
      jtableupdate(sql,null); 
    } else if(e.getActionCommand().equals("delete")) { 
      /*********************删除***********************/ 
      //========获取选择行号 
      int rowNum = this.resultTb.getSELEctedRow(); 
      if(rowNum == -1) { 
        JOptionPane.showmessageDialog(this,"请选择一行"); 
        return ; 
      } 
      //========获取学生ID号 
      String stuID = (String)sm.getValueAt(rowNum,0); 
      //========删除学生 
      String sql = "delete from stu where stuID=?"; 
      String []paras = {stuID}; 
      stuR_178_11845@odel tmp = new stuR_178_11845@odel(); 
      tmp.cudstu(sql,paras); 
      //========更新模型 
      sql = "SELEct * from stu"; 
      jtableupdate(sql,null); 
    } else if(e.getActionCommand().equals("update")) { 
      /*********************修改***********************/ 
      //========获取选择行号 
      int rowNum = this.resultTb.getSELEctedRow(); 
      if(rowNum == -1) { 
        JOptionPane.showmessageDialog(this,"请选择一行"); 
        return ; 
      } 
      new stuupdateDialog(this,"修改学生信息",true,sm,ROWNUM); 
      String sql = "SELEct * from stu"; 
      jtableupdate(sql,null); 
    } 
  } 
   
  //========更新Jtable内数据 
  public voID jtableupdate(String sql,String[] paras) 
  { 
    //......创建模型 
    sm = new stuR_178_11845@odel(); 
    sm.querystu(sql,paras); 
    //......更新显示 
    resultTb.setModel(sm); 
  } 
 
} 

2、stuR_178_11845@odel类(学生数据库模型)

package com.sms3; 
 
import java.sql.ResultSet; 
import java.util.Vector; 
import javax.swing.table.AbstracttableModel; 
 
public class stuR_178_11845@odel extends AbstracttableModel{ 
  private Vector columnnames; 
  private Vector rowDates; 
   
  // 
  public stuR_178_11845@odel() 
  { 
    String sql = "SELEct * from stu"; 
    String []paras = {}; 
     
  } 
   
  //========增删改学生 
  public Boolean cudstu(String sql,String []paras) 
  { 
    return new sqlHelper().cudExecute(sql,paras); 
  } 
   
  //========查询学生 
  public voID querystu(String sql,String []paras) 
  { 
    sqlHelper sqlHelper = null; 
    //========初始化Jtable信息 
    columnnames = new Vector(); 
    rowDates = new Vector(); 
    columnnames.add("学号"); columnnames.add("名字"); 
    columnnames.add("性别"); columnnames.add("年龄"); 
    columnnames.add("籍贯"); columnnames.add("系别"); 
     
    try { 
      sqlHelper = new sqlHelper(); 
      ResultSet rs = sqlHelper.queryExecute(sql,paras); 
      while(rs.next()) { 
        Vector row = new Vector(); 
        row.add(rs.getString(1)); 
        row.add(rs.getString(2)); 
        row.add(rs.getString(3)); 
        row.add(rs.getString(4)); 
        row.add(rs.getString(5)); 
        row.add(rs.getString(6)); 
        rowDates.add(row); 
      } 
    } catch (Exception E) { 
      // Todo: handle exception 
    } finally { 
      sqlHelper.close(); 
    } 
     
  } 
 
  @OverrIDe 
  public int getcolumnCount() { 
    // Todo auto-generated method stub 
    return this.columnnames.size(); 
  } 
 
  @OverrIDe 
  public int getRowCount() { 
    // Todo auto-generated method stub 
    return this.rowDates.size(); 
  } 
 
  @OverrIDe 
  public Object getValueAt(int row,int col) { 
    // Todo auto-generated method stub 
    if(!rowDates.isEmpty()) 
      return ((Vector)this.rowDates.get(row)).get(col); 
    else 
      return null; 
  } 
 
   
  @OverrIDe 
  public String getcolumnname(int column) { 
    // Todo auto-generated method stub 
    return (String)this.columnnames.get(column); 
  } 
 
   
} 

3、stuAddDialog类(添加学生信息子界面)

package com.sms3; 
 
import java.awt.borderLayout; 
import java.awt.Dialog; 
import java.awt.Frame; 
import java.awt.GrIDLayout; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
 
import javax.swing.*; 
 
public class stuAddDialog extends jdialog implements ActionListener{ 
  //=========面板控件 
  //......左侧标题栏 
  private JLabel IDLab,nameLab,sexLab,ageLab,jgLab,deptLab; 
  //......右侧信息选择填写栏 
  private JTextFIEld IDTxt,nameTxt,sexTxt,ageTxt,jgTxt,deptTxt; 
  //......添加和取消按钮 
  private Jbutton addBtn,cancelBtn; 
  //......布局控件 
  private JPanel left,center,bottom; 
   
  //构造函数 
  public stuAddDialog(Frame owner,String title,Boolean modal)  
  { 
    //========重写父类方法 
    super(owner,title,modal); 
    //========左侧标签栏 
    IDLab = new JLabel("学号: "); 
    nameLab = new JLabel("姓名: "); 
    sexLab = new JLabel("性别: "); 
    ageLab = new JLabel("年龄: "); 
    jgLab = new JLabel("籍贯: "); 
    deptLab = new JLabel("系别: "); 
    //========右侧信息填写栏 
    IDTxt = new JTextFIEld(); 
    nameTxt = new JTextFIEld(); 
    sexTxt = new JTextFIEld(); 
    ageTxt = new JTextFIEld(); 
    jgTxt = new JTextFIEld(); 
    deptTxt = new JTextFIEld(); 
    //========添加和取消按钮 
    addBtn = new Jbutton("添加"); 
    cancelBtn = new Jbutton("取消"); 
    //......添加监听 
    addBtn.addActionListener(this); 
    addBtn.setActionCommand("add"); 
    cancelBtn.addActionListener(this); 
    cancelBtn.setActionCommand("cancel"); 
    //========创建布局 
    //......创建左边栏 
    left = new JPanel(); 
    left.setLayout(new GrIDLayout(6,1)); 
    left.add(IDLab); left.add(nameLab);  
    left.add(sexLab); left.add(ageLab);  
    left.add(jgLab); left.add(deptLab);  
    //......创建右边栏 
    center = new JPanel(); 
    center.setLayout(new GrIDLayout(6,1)); 
    center.add(IDTxt); center.add(nameTxt); 
    center.add(sexTxt); center.add(ageTxt); 
    center.add(jgTxt); center.add(deptTxt); 
    //========底层添加和取消按钮 
    bottom = new JPanel(); 
    bottom.add(addBtn); 
    bottom.add(cancelBtn); 
    //========整体布局 
    this.add(left,borderLayout.West); 
    this.add(center,borderLayout.soUTH); 
    //========设置窗口属性 
     
    this.setSize(300,250); 
    this.setResizable(false); 
    this.setVisible(true); 
  } 
 
  @OverrIDe 
  public voID actionPerformed(ActionEvent E)  
  { 
    // Todo auto-generated method stub 
    if(e.getActionCommand().equals("add")) { 
      /***********************添加学生信息**************************/ 
      stuR_178_11845@odel tmp = new stuR_178_11845@odel(); 
      String sql = "insert into stu values(?,?,?)"; 
      String []paras = {IDTxt.getText(),nameTxt.getText(),sexTxt.getText(),ageTxt.getText(),jgTxt.getText(),deptTxt.getText()}; 
      if(!tmp.cudstu(sql,paras)) 
        JOptionPane.showmessageDialog(this,"添加学生信息失败"); 
      //========关闭窗口 
      this.dispose(); 
    } else if(e.getActionCommand().equals("cancel")) { 
      //========关闭窗口 
      this.dispose(); 
    } 
  } 
} 

4、stuupdateDialog类(修改学生信息子界面)

package com.sms3; 
 
import java.awt.borderLayout; 
import java.awt.Frame; 
import java.awt.GrIDLayout; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
 
import javax.swing.Jbutton; 
import javax.swing.jdialog; 
import javax.swing.JLabel; 
import javax.swing.JOptionPane; 
import javax.swing.JPanel; 
import javax.swing.JTextFIEld; 
import javax.swing.table.AbstracttableModel; 
 
public class stuupdateDialog extends jdialog implements ActionListener{ 
  //=========面板控件 
  //......左侧标题栏 
  private JLabel IDLab,bottom; 
   
  //构造函数 
  public stuupdateDialog(Frame owner,Boolean modal,stuR_178_11845@odel sm,int ROWNUM)  
  { 
    //========重写父类方法 
    super(owner,modal); 
    //========左侧标签栏 
    IDLab = new JLabel("学号: "); 
    nameLab = new JLabel("姓名: "); 
    sexLab = new JLabel("性别: "); 
    ageLab = new JLabel("年龄: "); 
    jgLab = new JLabel("籍贯: "); 
    deptLab = new JLabel("系别: "); 
    //========右侧信息填写栏 
    IDTxt = new JTextFIEld();   
    IDTxt.setText((String)sm.getValueAt(rowNum,0)); 
    IDTxt.setEditable(false); 
    nameTxt = new JTextFIEld(); 
    nameTxt.setText((String)sm.getValueAt(rowNum,1)); 
    sexTxt = new JTextFIEld(); 
    sexTxt.setText((String)sm.getValueAt(rowNum,2)); 
    ageTxt = new JTextFIEld(); 
    ageTxt.setText((String)sm.getValueAt(rowNum,3)); 
    jgTxt = new JTextFIEld(); 
    jgTxt.setText((String)sm.getValueAt(rowNum,4)); 
    deptTxt = new JTextFIEld(); 
    deptTxt.setText((String)sm.getValueAt(rowNum,5)); 
    //========添加和取消按钮 
    addBtn = new Jbutton("修改"); 
    cancelBtn = new Jbutton("取消"); 
    //......添加监听 
    addBtn.addActionListener(this); 
    addBtn.setActionCommand("update"); 
    cancelBtn.addActionListener(this); 
    cancelBtn.setActionCommand("cancel"); 
    //========创建布局 
    //......创建左边栏 
    left = new JPanel(); 
    left.setLayout(new GrIDLayout(6,250); 
    this.setResizable(false); 
    this.setVisible(true); 
  } 
 
  @OverrIDe 
  public voID actionPerformed(ActionEvent E) { 
    // Todo auto-generated method stub 
    if(e.getActionCommand().equals("update")) { 
    /***********************修改学生信息**************************/ 
      stuR_178_11845@odel tmp = new stuR_178_11845@odel(); 
      String sql = "update stu set stuname=?,stuSex=?,stuAge=?,stuJg=?,stuDept=? where stuID=?"; 
      String []paras = {nameTxt.getText(),deptTxt.getText(),IDTxt.getText()}; 
      if(!tmp.cudstu(sql,"修改学生信息失败"); 
      //========关闭窗口 
      this.dispose(); 
    } else if(e.getActionCommand().equals("cancel")) { 
      //========关闭窗口 
      this.dispose(); 
    } 
  } 
} 

5、sqlHelper类(最底层数据库类)

package com.sms3; 
 
import java.sql.*; 
 
public class sqlHelper { 
  //========数据库 
  private Connection ct = null; 
  private PreparedStatement ps = null; 
  private ResultSet rs = null; 
  private String driver = "com.microsoft.sqlserver.jdbc.sqlServerDriver"; 
  private String url = "jdbc:sqlserver://127.0.0.1:1433;database=studentMan"; 
  private String user = "sa"; 
  private String passwd = "****"; 
   
  //========查询 
  public ResultSet queryExecute(String sql,String []paras) 
  { 
    try { 
      //========1、加载驱动 
      Class.forname(driver); 
      //========2、连接 
      ct = DriveRMANager.getConnection(url,user,passwd); 
      //========3、创建PreparedStatement 
      ps = ct.prepareStatement(sql); 
      //========4、给问号赋值 
      if(paras != null) { 
        for(int i = 0; i < paras.length; i++) { 
          ps.setString(i + 1,paras[i]); 
        } 
      } 
      //========5、执行 
      rs = ps.executequery(); 
    } catch (Exception E) { 
      // Todo: handle exception 
      e.printstacktrace(); 
    } finally { 
      //this.close(); 
    } 
    //========返回值 
    return rs; 
  } 
   
  //========增删改 
  public Boolean cudExecute(String sql,String []paras) 
  { 
    Boolean b = true; 
    try { 
      //========1、加载驱动 
      Class.forname(driver); 
      //========2、连接 
      ct = DriveRMANager.getConnection(url,passwd); 
      //========3、创建PreparedStatement 
      ps = ct.prepareStatement(sql); 
      //========4、给问号赋值 
      for(int i = 0; i < paras.length; i++) { 
        ps.setString(i + 1,paras[i]); 
      } 
      //========5、执行 
      if(ps.executeupdate() != 1) b = false; 
    } catch (Exception E) { 
      // Todo: handle exception 
      b = false; 
      e.printstacktrace(); 
    } finally { 
      this.close(); 
    } 
    //========返回值 
    return b; 
  } 
   
  //========关闭资源 
  public voID close() 
  { 
    try { 
      if(rs!=null) rs.close(); 
      if(ps!=null) ps.close(); 
      if(ct!=null) ct.close(); 
    } catch (Exception e2) { 
      // Todo: handle exception 
      e2.printstacktrace(); 
    } 
  } 
   
} 

主界面

java+SQL server2008学生信息管理系统源码

添加学生信息界面

java+SQL server2008学生信息管理系统源码

修改学生信息界面

java+SQL server2008学生信息管理系统源码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

大佬总结

以上是大佬教程为你收集整理的java+SQL server2008学生信息管理系统源码全部内容,希望文章能够帮你解决java+SQL server2008学生信息管理系统源码所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。