这个系统的要求是信息浏览,信息录入,信息修改,信息删除。每当按这些按钮的时候就会提示输入学生学号和密码,以学号来搜索相应的信息,还要有个管理员,希望高手帮帮忙。import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;public class StudentSql extends JFrame{
public static final int WINDOW_WIDTH = 800;
public static final int WINDOW_HEIGHT = 600;
int width = getToolkit().getScreenSize().width;
int height = getToolkit().getScreenSize().height;
Tables table = new Tables();
ChangeTable ct = new ChangeTable();
EnterFrame etf = new EnterFrame();

public static void main(String[] args) {

new StudentSql();
}

StudentSql() {
Container cont = this.getContentPane();
setTitle("学生信息数据库");

setSize(WINDOW_WIDTH, WINDOW_HEIGHT);
setLocation((width - WINDOW_WIDTH) / 2, (height - WINDOW_HEIGHT) / 2);
// 菜单栏
JMenuBar myJMenuBar = new JMenuBar();
this.setJMenuBar(getJMenuBar());
JMenu jMenu1 = new JMenu("学生信息管理");
/*JMenu jMenu2 = new JMenu("退出");*/
JMenuItem jit1 = new JMenuItem("信息浏览");
JMenuItem jit2 = new JMenuItem("信息录入");
JMenuItem jit3 = new JMenuItem("信息修改");
JMenuItem jit4 = new JMenuItem("信息删除");
JMenuItem jit5 = new JMenuItem("退出"); myJMenuBar.add(jMenu1);
myJMenuBar.add(jit5); jMenu1.add(jit1);
jMenu1.add(jit2);
jMenu1.add(jit3);
jMenu1.add(jit4);

addWindowListener(new WindowAdapter() {
   public void windowClosing(WindowEvent e) {
     dispose();
    }
  });

cont.add(myJMenuBar,BorderLayout.NORTH);
addWindowListener(new WindowAdapter() {
public void windowClosed(WindowEvent e) {
System.exit(1);
}
});
//设置监听
jit1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
etf.enter();
if(etf.getMessage() == "tiger") {
table.createTable();
}
}
});
jit2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ct.ChangeTables();
ct.actionPerformed(e);
}
});
jit3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {


}
});
jit5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {

System.exit(1);
}
});
this.setResizable(false);
setVisible(true);
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
public class Tables extends JTable{ StudentSql sqd = new StudentSql();
JFrame frame = new JFrame("学生信息") ; 
private JTable table = null ;
private DefaultTableModel tableModel ; // TableModel
private String[] titles = {"学号","姓名","年龄","性别","数学成绩","英语成绩","总分","是否及格"} ;
private Object [][] userInfo = {
{"1","小李",30,"男",89,97,186,"及格"} ,
{"2","李康",23,"女",90,93,183,"不及格"} 
} ; // 定义数据

//创建表格
public void createTable() {
//创建窗口
frame.setSize(400,200);
frame.setLocation((sqd.width - sqd.WINDOW_WIDTH) / 2+20, (sqd.height - sqd.WINDOW_HEIGHT) / 2+60);
// 建立表格
this.tableModel = new DefaultTableModel(this.userInfo,this.titles) ;
table = new JTable(userInfo,titles);
JScrollPane scr = new JScrollPane(table) ;
frame.add(scr) ;
frame.add(scr,BorderLayout.CENTER) ; // 加入组件
frame.setVisible(true);
}
}
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import java.awt.event.*;
//修改表格
public class ChangeTable implements ActionListener {
Tables table = new Tables();
JFrame frame = new JFrame("学生信息");
private JButton addRowBtn = new JButton("增加行"); // 定义按钮
private JButton removeRowBtn = new JButton("删除行"); // 定义按钮
private JButton addColBtn = new JButton("增加列"); // 定义按钮
private JButton removeColBtn = new JButton("删除列"); // 定义按钮
private DefaultTableModel tableModel; // TableModel public void ChangeTables() {
table.createTable();
frame.addWindowListener(new WindowAdapter() {
public void windowClosed(WindowEvent e) {
System.exit(1);
}
});
// 设置按钮的监听
this.addRowBtn.addActionListener(this);
this.removeRowBtn.addActionListener(this);
this.addColBtn.addActionListener(this);
this.removeColBtn.addActionListener(this);
frame.setVisible(true);

} @Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == this.addColBtn) { // 增加列
this.tableModel.addColumn("新增列");
}
if (e.getSource() == this.addRowBtn) {
this.tableModel.addRow(new Object[] {});
}
if (e.getSource() == this.removeColBtn) {
int colCount = this.tableModel.getColumnCount() - 2;// 取得列的数量
if (colCount >= 0) {
// 如果要想删除,则必须找到TableColumnModel
TableColumnModel columMode = table.getColumnModel();
TableColumn taleColumn = columMode.getColumn(colCount);
columMode.removeColumn(taleColumn); // 删除指定的列
this.tableModel.setColumnCount(colCount);
}
}
if (e.getSource() == this.removeRowBtn) {
int rowCount = this.tableModel.getRowCount() - 2;
if (rowCount >= 0) { // 判断是否还有行可以删除
this.tableModel.removeRow(rowCount);
this.tableModel.setRowCount(rowCount); // 设置新的行数
}
}
}}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;public class EnterFrame {
JFrame frame = new JFrame();
private JTextField username = new JTextField(); // 用户名输入框
private JPasswordField password = new JPasswordField(); // 密码输入框
private JButton logonButton = new JButton("登录"); // 登录按钮
private JButton cancelButton = new JButton("取消"); // 退出按钮
String message = null;

public String getMessage() {
return message;
} int width = Toolkit.getDefaultToolkit().getScreenSize().width;
int height = Toolkit.getDefaultToolkit().getScreenSize().height; public void enter() {
frame.setTitle("登录界面");
frame.setSize(300, 120);
frame.setLocation((width - 300) / 2, (height - 120) / 2);
frame.setLayout(new GridLayout(3, 2, 2, 2));

logonButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
char[] pw = password.getPassword();
/*message = "您的用户名:" + username.getText() + " 您的密码:"
+ new String(pw);*/ // 消息字符串
/*JOptionPane.showMessageDialog(null, message);*/ // 显示消息
message = new String(pw);
}
});
cancelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(1);

}
});

frame.add(new JLabel("学号:"));
frame.add(username);
frame.add(new JLabel("密  码:"));
frame.add(password);
frame.add(logonButton);
frame.add(cancelButton);
frame.setResizable(false);
frame.setVisible(true); }}