大佬教程收集整理的这篇文章主要介绍了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(); } } }
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学生信息管理系统源码所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。