JAVA学生信息管理系统源代码.docx
- 文档编号:9338459
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:26
- 大小:19.95KB
JAVA学生信息管理系统源代码.docx
《JAVA学生信息管理系统源代码.docx》由会员分享,可在线阅读,更多相关《JAVA学生信息管理系统源代码.docx(26页珍藏版)》请在冰豆网上搜索。
JAVA学生信息管理系统源代码
JAVA学生信息管理系统源代码
/*使用前请先建一个数据库放在同一个文件夹下,名为学生管理数据库.mdb
*然后建两张表名称分别为:
学生信息表和管理员
*学生信息表的字段有:
"学号","姓名","性别","民族","年龄","年级","班级","专业"其中"性别"为数值型其它为字符型
*管理员的字段有:
"用户名"和"密码",并且添加一条记录:
admin,admin
*/
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
importjavax.swing.border.*;
importjavax.swing.JOptionPane;
importjavax.swing.JLabel;
importjavax.swing.JPanel;
importjavax.swing.table.DefaultTableModel;importjavax.swing.table.TableColumn;importjava.sql.*;
importjava.awt.GridLayout;
publicclassmyStudent{
publicmyStudent(){
}
publicstaticvoidmain(String[]args){
//TODOcodeapplicationlogichere
loginFramelf=newloginFrame();
lf.setVisible(true);
lf.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
});
}
}
//主界面
classmainFrameextendsJFrameimplementsActionListener{
MenuBarmyMenuBar=newMenuBar();
MenumyMenuFile,myMenuEdit,myMenuUser,myMenuAbout;
MenuItemmiNew,miOpen,miSave,miSaveAs,miExit;
MenuItemmiAdd,miEdit,miDel,miFind,miShow,miUser,miAbout;
publicJTabletable=newJTable();
publicDefaultTableModelmm;
publicmainFrame(){
myMenuFile=newMenu("文件");
miNew=newMenuItem("新建");
miOpen=newMenuItem("打开");
miSave=newMenuItem("保存");
miExit=newMenuItem("退出");
//miNew.enable(false);
//miOpen.enable(false);
//miSave.enable(false);
//myMenuFile.add(miNew);
//myMenuFile.add(miOpen);
//myMenuFile.add(miSave);
myMenuFile.add(miExit);
myMenuEdit=newMenu("数据编辑");
miFind=newMenuItem("查找数据");
miAdd=newMenuItem("添加数据");
miEdit=newMenuItem("修改数据");
miDel=newMenuItem("删除数据");
miShow=newMenuItem("全部显示");
myMenuEdit.add(miFind);
myMenuEdit.add(miAdd);
myMenuEdit.add(miEdit);
myMenuEdit.add(miDel);
myMenuEdit.add(miShow);
myMenuUser=newMenu("用户");
miUser=newMenuItem("编辑用户");
myMenuUser.add(miUser);
myMenuAbout=newMenu("我的作业");
miAbout=newMenuItem("作业说明");
myMenuAbout.add(miAbout);
myMenuBar.add(myMenuFile);
myMenuBar.add(myMenuEdit);
myMenuBar.add(myMenuUser);
myMenuBar.add(myMenuAbout);
String[]col={"学号","姓名","性别","民族","年龄","年级","班级","专业"};//创建属性列名
mm=newDefaultTableModel(col,0);
table.setModel(mm);
JScrollPanetableScrollPane=newJScrollPane(table);
this.setMenuBar(myMenuBar);
this.add(tableScrollPane);
miExit.addActionListener(this);
miFind.addActionLmiAdd.addActionListener(this);
miEdit.addActionListener(this);
miDel.addActionListener(this);
miShow.addActionListener(this);
miUser.addActionListener(this);
miAbout.addActionListener(this);
}
publicvoidfreshTable(Stringsql){
myConnectionconn=newmyConnection();
ResultSetrs;
rs=conn.getResult(sql);
if(rs!
=null){
try{
mm.setRowCount(0);
table.setModel(mm);
while(rs.next()){
String学号=rs.getString("学号");
String姓名=rs.getString("姓名");
String性别=rs.getString("性别");
String民族=rs.getString("民族");
String年龄=rs.getString("年龄");
String年级=rs.getString("年级");
String班级=rs.getString("班级");
String专业=rs.getString("专业");
String[]cloumns={学号,姓名,性别,民族,年龄,年级,班级,专业};
mm.addRow(cloumns);
}
//table.clearSelection();
table.setModel(mm);
}catch(Exceptione){
System.out.println(e.toString());
}
}
}
publicvoidactionPerformed(ActionEvente){
//退出
if(e.getSource()==miExit){
System.exit(0);
//查找
}elseif(e.getSource()==miFind){
findFrameff=newfindFrame(this);
ff.setVisible(true);
//添加
}elseif(e.getSource()==miAdd){
addFrameaf=newaddFrame(this);
af.setVisible(true);
//修改
}elseif(e.getSource()==miEdit){
if(table.getSelectedRow()==-1){
JOptionPane.showMessageDialog(null,"请选择你要修改的内容","温馨
提示",JOptionPane.INFORMATION_MESSAGE);
}else{
editFrameef=neweditFrame(this);
ef.学
号.setText((String)table.getValueAt(table.getSelectedRow(),0));
ef.姓
名.setText((String)table.getValueAt(table.getSelectedRow(),1));
ef.性
别.setText((String)table.getValueAt(table.getSelectedRow(),2));
ef.民
族.setText((String)table.getValueAt(table.getSelectedRow(),3));
ef.年
龄.setText((String)table.getValueAt(table.getSelectedRow(),4));
ef.年
级.setText((String)table.getValueAt(table.getSelectedRow(),5));
ef.班
级.setText((String)table.getValueAt(table.getSelectedRow(),6));
ef.专
业.setText((String)table.getValueAt(table.getSelectedRow(),7));
ef.setVisible(true);
this.freshTable("select*from学生信息表");
}
//删除
}elseif(e.getSource()==miDel){
if(table.getSelectedRow()==-1){
JOptionPane.showMessageDialog(null,"请选择你要删除的行","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}else{
Stringsql="deletefrom学生信息表where学号='"+table.getValueAt(table.getSelectedRow(),0)+"'";
//JOptionPane.showMessageDialog(null,sql,"温馨提示",JOptionPane.INFORMATION_MESSAGE);
myConnectionconn=newmyConnection();
if(conn.executeSql(sql)){
JOptionPane.sthis.freshTable("select*from学生信息表");
}else{
JOptionPane.showMessageDialog(null,"未知错误","删除失败",JOptionPane.INFORMATION_MESSAGE);
}
}
//显示
}elseif(e.getSource()==miShow){
//JOptionPane.showMessageDialog(null,"未知错误","删除失败",JOptionPane.INFORMATION_MESSAGE);
this.freshTable("select*from学生信息表");
//用户管理
}elseif(e.getSource()==miUser){
userFrameuf=newuserFrame();
uf.setVisible(true);
//关于
}elseif(e.getSource()==miAbout){
aboutFrameaf=newaboutFrame();
af.setVisible(true);
}
}
}
classmyConnection{
ResultSetre;
Stringstrurl="jdbc:
odbc:
driver={MicrosoftAccessDriver(*.mdb)};DBQ=学生
管理数据库.mdb";
publicmyConnection(){}
publicResultSetgetResult(Stringsql){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectionconn=DriverManager.getConnection(strurl);
Statement
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDAT
ABLE);
ResultSetre=stmt.executeQuery(sql);
returnre;
}
catch(Exceptione){
System.out.println("getResult------"+e.toString());
returnnull;
}
}
publicbooleanexecuteSql(Stringsql){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connectionconn=DriverManager.getConnection(strurl);
Statementstmt=conn.createStatement();
stmt.executeUpdate(sql);
mit();
returntrue;
}
catch(Exceptione){
System.out.println("executeSql----"+e.toString());
returnfalse;
}
}
}
classaddFrameextendsJDialogimplementsActionListener{
publicstaticfinalintWIDTH=400;
publicstaticfinalintHEIGHT=400;
JLabel学号1,姓名1,性别1,民族1,年龄1,年级1,班级1,专业1;
JTextField学号,姓名,性别,民族,年龄,年级,班级,专业;
JButtonb;
JPanelp;
mainFramemf;
publicaddFrame(mainFramemmf){
setTitle("修改学生信息");
setSize(WIDTH,HEIGHT);
setLocation(120,180);
ContainercontentPane=getContentPane();
contentPane.setLayout(newFlowLayout());
学号1=newJLabel("学号");
姓名1=newJLabel("姓名");
性别1=newJLabel("性别");
民族1=newJLabel("民族");
年龄1=newJLabel("年龄");
年级1=newJLabel("年级");
班级1=newJLabel("班级");
专业1=newJLabel("专业");
学号=newJTextField(5);
姓名=newJTextField(5);
性别=newJTextField(5);
民族=newJTextField(5);
年龄=newJTextField(5);
年级=newJTextField(5);
班级=newJTextField(10);
专业=newJTextField(10);
b=newJButton("确定");
p=newJPanel();
p.setLayout(newGridLayout(10,2,5,5));
p.add(学号1);
p.add(学号);
p.add(姓名1);
p.add(姓p.add(性别1);
p.add(性别);
p.add(民族1);
p.add(民族);
p.add(年龄1);
p.add(年龄);
p.add(年级1);
p.add(年级);
p.add(班级1);
p.add(班级);
p.add(专业1);
p.add(专业);
p.add(newLabel(""));
p.add(newLabel(""));
p.add(b);
contentPane.add(p);
//添加按钮监听器
b.addActionListener(this);
mf=mmf;
}
publicvoidactionPerformed(ActionEvente){
if(学号.getText().toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入学号","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}elseif(姓名.getText().toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入姓名","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}elseif(年龄.getText().toString().equals("")){
JOptionPane.showMessageDialog(null,"请输入年龄","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}else{
Stringsql="select*from学生信息表where学号='"+学号.getText()+"'";
myConnectionconn=newmyConnection();
ResultSetrs;
rs=conn.getResult(sql);
try{
//System.out.println(rs.getRow());
if(rs.next()){
JOptionPane.showMessageDialog(null,"此学号已经存在","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}else{
sql="insertinto学生信息表values('"+学号.getText()+"','"+姓名.getText()+"','"+性别.getText()+"','"+民族.getText()+"',"+年龄.getText()+",'"+年级.getText()+"','"+班级.getText()+"','"+专业.getText()+"')";
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null,"添加成功","温馨提示",JOptionPane.INFORMATION_MESSAGE);
mf.freshTable("select*from学生信息表");
学号.setText("");
姓名.setText("");
性别.setText("");
民族.setText("");
年龄.setText("");
年级.setText("");
班级.setText("");
专业.setText("");
}else{
JOptionPane.showMessageDialog(null,"添加失败","温馨提示",JOptionPane.INFORMATION_MESSAGE);
}
}
}catch(Exceptioner){
System.out.println(er.toString());
}
}
}
}
classeditFrameextendsJDialogimplementsActionListener{
publicstaticfinalintWIDTH=400;
publicstaticfinalintHEIGHT=400;
JLabel学号1,姓名1,性别1,民族1,年龄1,年级1,班级1,专业1;
JTextField学号,姓名,性别,民族,年龄,年级,班级,专业;
JButtonb;
JPanelp;
mainFramemf;
publiceditFrame(mainFramemmf){
setTitle("修改学生信息");
setSize(WIDTH,HEIGHT);
setLocation(120,180);
ContainercontentPane=getContentPane();
contentPane.setLayout(newFlowLayout());
学号1=newJLabel("学号");
姓名1=newJLabel("姓名");
性别1=newJLabel("性别");
民族1=newJLabel("民族");
年龄1=newJLabel("年龄年级1=newJLabel("年级");
班级1=newJLabel("班级");
专业1=newJLabel("专业");
学号=newJTextField(5);
姓名=newJTextField(5);
性别=newJTextField(5);
民族=newJTextField(5);
年龄=newJTextField(5);
年级=newJTextField(5);
班级=newJTextField(10);
专业=newJTextField(10);
学号.setEnabled(false);
b=newJButton("确定");
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 学生 信息管理 系统 源代码