一个星期都是Java课,一直敲代码,感觉真的是好累好累啊。但是生活正在苦不一样要继续吗?今天接着码代码吧。说实话打了这么多东西,是真的学到了很多的东西。比如写GUI一般的格式有什么,大概改怎么打还是学到了一些。但是让自己独立写的话还是很难独立完成。毕竟懂的东西要更多一些。

今天接着昨天的打吧,开始写添加学生窗口AddStudentFrame

Java的学生信息管理系统 java学生信息管理系统总结_Java的学生信息管理系统


package net.lsl.student.gui;

import jdk.nashorn.internal.scripts.JO;
 import net.lsl.student.bean.Student;
 import net.lsl.student.service.StudentService;
 import net.lsl.student.service.impl.StudentServiceImpl;import javax.swing.;
 import java.awt.;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.KeyAdapter;
 import java.awt.event.KeyEvent;
 import java.util.List;
 import java.util.jar.JarFile;/**
• 功能:添加学生记录
• 作者:李世兰
• 日期:2019年6月22日10:34:09
 */
 public class AddStudentFrame extends JFrame {
 private JPanel panel;
 private JPanel pnlCenter;
 private JPanel pnlRow1;
 private JPanel pnlRow2;
 private JPanel pnlRow3;
 private JPanel pnlRow4;
 private JPanel pnlRow5;
 private JPanel pnlRow6;
 private JPanel pnlRow7;
 private JPanel pnlSouth;
private JLabel lblId;
 private JLabel lblName;
 private JLabel lblSex;
 private JLabel lblAge;
 private JLabel lblDepartment;
 private JLabel lblClass;
 private JLabel lblTelephone;
private JTextField txtId;
 private JTextField txtName;
 private JTextField txtSex;
 private JTextField txtAge;
 private JTextField txtDepartment;
 private JTextField txtClass;
 private JTextField txtTelephone;
private JButton btnExit;
 private JButton btnOK;
 private JButton btnCancel;
private int currentRow;
private List students;
public AddStudentFrame(String title){
 super(title);
 initGUI();
 }
private void initGUI() {
 //创建组件
 panel = (JPanel) getContentPane();
 pnlCenter = new JPanel();
 pnlSouth = new JPanel();
pnlRow1 = new JPanel();
 pnlRow2 = new JPanel();
 pnlRow3 = new JPanel();
 pnlRow4 = new JPanel();
 pnlRow5 = new JPanel();
 pnlRow6 = new JPanel();
 pnlRow7 = new JPanel();

 pnlRow1.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow2.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow3.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow4.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow5.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow6.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow7.setLayout(new FlowLayout(FlowLayout.LEFT));

 lblId = new JLabel("学号:");
 lblName = new JLabel("姓名:");
 lblSex = new JLabel("性别:");
 lblAge = new JLabel("年龄:");
 lblDepartment = new JLabel("系部:");
 lblClass = new JLabel("班级:");
 lblTelephone = new JLabel("电话:");

 txtId = new JTextField(20);
 txtName = new JTextField(20);
 txtSex = new JTextField(20);
 txtAge = new JTextField(20);
 txtDepartment = new JTextField(20);
 txtClass = new JTextField(20);
 txtTelephone = new JTextField(20);

 btnOK = new JButton("确定[O]");
 btnCancel = new JButton("取消[C]");
 btnExit = new JButton("退出[X]");
 btnOK.setMnemonic(KeyEvent.VK_O);
 btnCancel.setMnemonic(KeyEvent.VK_C);
 btnExit.setMnemonic(KeyEvent.VK_X);

 panel.setLayout(new BorderLayout());
 panel.add(pnlCenter,BorderLayout.CENTER);
 panel.add(pnlSouth,BorderLayout.SOUTH);
 pnlCenter.setLayout(new GridLayout(7,1));
 pnlCenter.add(pnlRow1);
 pnlCenter.add(pnlRow2);
 pnlCenter.add(pnlRow3);
 pnlCenter.add(pnlRow4);
 pnlCenter.add(pnlRow5);
 pnlCenter.add(pnlRow6);
 pnlCenter.add(pnlRow7);

 pnlRow1.add(lblId);
 pnlRow1.add(txtId);
 pnlRow2.add(lblName);
 pnlRow2.add(txtName);
 pnlRow3.add(lblSex);
 pnlRow3.add(txtSex);
 pnlRow4.add(lblAge);
 pnlRow4.add(txtAge);
 pnlRow5.add(lblDepartment);
 pnlRow5.add(txtDepartment);
 pnlRow6.add(lblClass);
 pnlRow6.add(txtClass);
 pnlRow7.add(lblTelephone);
 pnlRow7.add(txtTelephone);

 pnlSouth.add(btnOK);
 pnlSouth.add(btnCancel);
 pnlSouth.add(btnExit);

 setSize(800,500);
 //setResizable(false);
 pack();
 setLocationRelativeTo(null);
 setTitle("添加学生记录");
 setVisible(true);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 //【确定】按钮单击事件
 btnOK.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         //学号非空校验
         if (txtId.getText().trim().equals("")){
             JOptionPane.showMessageDialog(null,"学号不能为空!","增加学生记录",JOptionPane.WARNING_MESSAGE);
             txtId.requestFocus();
             return;
         }

         //年龄数字校验
         if (!isNumber(txtAge.getText().trim())){
             JOptionPane.showMessageDialog(null,"注意:年龄全由数字构成!","添加学生记录",JOptionPane.WARNING_MESSAGE);
             txtAge.setText("");
             txtAge.requestFocus();
             return;
         }

         //创建学生实体
         Student student = new Student();
         //设置学生实体属性
         student.setId(txtId.getText().trim());
         student.setName(txtName.getText().trim());
         student.setSex(txtSex.getText().trim());
         student.setAge(Integer.parseInt(txtAge.getText()));
         student.setDepartment(txtDepartment.getText().trim());
         student.setClazz(txtClass.getText().trim());
         student.setTelephone(txtTelephone.getText().trim());

         //创建学生服务对象
         StudentService studentService = new StudentServiceImpl();
         //添加学生记录
         int count = studentService.addStudent(student);
         //判断是否添加成功
         if (count > 0){
             JOptionPane.showMessageDialog(null,"添加记录成功!","添加学生记录",JOptionPane.WARNING_MESSAGE);
             txtId.setText("");
             txtName.setText("");
             txtSex.setText("");
             txtAge.setText("");
             txtDepartment.setText("");
             txtClass.setText("");
             txtTelephone.setText("");
             txtId.requestFocus();
         }else{
             JOptionPane.showMessageDialog(null,"添加记录失败!","增加学生信息",JOptionPane.WARNING_MESSAGE);
         }
     }
 });

 //【取消】按钮单击事件处理
 btnCancel.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         txtId.setText("");
         txtName.setText("");
         txtSex.setText("");
         txtAge.setText("");
         txtDepartment.setText("");
         txtClass.setText("");
         txtTelephone.setText("");
     }
 });
 //【退出】按钮单击事件处理
 btnExit.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         dispose();
     }
 });

 //【学号】文本框按钮事件处理
 txtId.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             if (txtId.getText().trim().equals("")){
                 txtName.requestFocus();
             }
         }
     }
 });

 //【姓名】文本框按钮事件处理
 txtName.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtSex.requestFocus();
         }
     }
 });

 //【性别】文本框按钮事件处理
 txtSex.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtAge.requestFocus();
         }
     }
 });

 //【年龄】文本框按键事件处理
 txtAge.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtDepartment.requestFocus();
         }
     }
 });
 //【系部】文本框按钮事件处理
 txtDepartment.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtClass.requestFocus();
         }
     }
 });
 //【班级】文本框按钮事件处理
 txtClass.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtTelephone.requestFocus();
         }
     }
 });
}
boolean isNumber(String str) {
 for (int i = 0; i < str.length();i++){
 if (str.charAt(i) < ‘0’ || str.charAt(i) > ‘9’){
 return false;
 }
 }
 return true;
 }public static void main(String[] args) {
 new AddStudentFrame("");
 }
 }

写完了这个以后,接着就写了编辑学生窗口EditStudentFrame
package net.lsl.student.gui;

import net.lsl.student.bean.Student;
 import net.lsl.student.service.StudentService;
 import net.lsl.student.service.impl.StudentServiceImpl;import javax.swing.;
 import java.awt.;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.KeyAdapter;
 import java.awt.event.KeyEvent;
 import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;/**
• 功能:编辑学生记录
• 作者:李世兰
• 日期:2019年6月22日13:01:22
 */
 public class EditStudentFrame extends JFrame{
 private JPanel panel;
 private JPanel pnlCenter;
 private JPanel pnlRow1;
 private JPanel pnlRow2;
 private JPanel pnlRow3;
 private JPanel pnlRow4;
 private JPanel pnlRow5;
 private JPanel pnlRow6;
 private JPanel pnlRow7;
 private JPanel pnlSouth;
 private JPanel pnlSouth1;
 private JPanel pnlSouth2;
private JLabel lblId;
 private JLabel lblName;
 private JLabel lblSex;
 private JLabel lblAge;
 private JLabel lblDepartment;
 private JLabel lblClass;
 private JLabel lblTelephone;
private JTextField txtId;
 private JTextField txtName;
 private JTextField txtSex;
 private JTextField txtAge;
 private JTextField txtDepartment;
 private JTextField txtClass;
 private JTextField txtTelephone;
private JButton btnTop;
 private JButton btnPrevious;
 private JButton btnNext;
 private JButton btnBottom;
 private JButton btnExit;
 private JButton btnEdit;
 private JButton btnOK;
 private JButton btnCancel;
private int currentRow;
private List students;
StudentService studentService;
public EditStudentFrame(String title){
 super(title);
 initGUI();
 }
private void initGUI() {
 panel = (JPanel) getContentPane();
 pnlCenter = new JPanel();
 pnlSouth = new JPanel();
 pnlSouth.setLayout(new GridLayout(2, 1));pnlRow1 = new JPanel();
 pnlRow2 = new JPanel();
 pnlRow3 = new JPanel();
 pnlRow4 = new JPanel();
 pnlRow5 = new JPanel();
 pnlRow6 = new JPanel();
 pnlRow7 = new JPanel();
 pnlSouth1 = new JPanel();
 pnlSouth2 = new JPanel();

 pnlRow1.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow2.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow3.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow4.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow5.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow5.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow6.setLayout(new FlowLayout(FlowLayout.LEFT));

 lblId = new JLabel("学号:");
 lblName = new JLabel("姓名:");
 lblSex = new JLabel("性别:");
 lblAge = new JLabel("年龄:");
 lblDepartment = new JLabel("系部:");
 lblClass = new JLabel("班级:");
 lblTelephone = new JLabel("电话:");

 txtId = new JTextField(40);
 txtName = new JTextField(40);
 txtSex = new JTextField(40);
 txtAge = new JTextField(40);
 txtDepartment = new JTextField(40);
 txtClass = new JTextField(40);
 txtTelephone = new JTextField(40);

 txtId.setEditable(false);
 txtName.setEditable(false);
 txtSex.setEditable(false);
 txtAge.setEditable(false);
 txtDepartment.setEditable(false);
 txtClass.setEditable(false);
 txtTelephone.setEditable(false);

 btnTop = new JButton("第一条[T]");
 btnPrevious = new JButton("上一条[P]");
 btnNext = new JButton("下一条[N]");
 btnBottom = new JButton("最后一条[B]");
 btnExit = new JButton("退出[X]");
 btnEdit = new JButton("编辑[E]");
 btnOK = new JButton("确定[O]");
 btnCancel = new JButton("取消[C]");
 btnOK.setEnabled(false);
 btnCancel.setEnabled(false);
 btnTop.setMnemonic(KeyEvent.VK_T);
 btnPrevious.setMnemonic(KeyEvent.VK_P);
 btnNext.setMnemonic(KeyEvent.VK_N);
 btnBottom.setMnemonic(KeyEvent.VK_B);
 btnExit.setMnemonic(KeyEvent.VK_X);
 btnEdit.setMnemonic(KeyEvent.VK_E);
 btnOK.setMnemonic(KeyEvent.VK_O);
 btnCancel.setMnemonic(KeyEvent.VK_C);

 panel.setLayout(new BorderLayout());
 panel.add(pnlCenter, BorderLayout.CENTER);
 panel.add(pnlSouth, BorderLayout.SOUTH);
 pnlCenter.setLayout(new GridLayout(7,1));

 pnlCenter.add(pnlRow1);
 pnlCenter.add(pnlRow2);
 pnlCenter.add(pnlRow3);
 pnlCenter.add(pnlRow4);
 pnlCenter.add(pnlRow5);
 pnlCenter.add(pnlRow6);
 pnlCenter.add(pnlRow7);

 pnlRow1.add(lblId);
 pnlRow1.add(txtId);
 pnlRow2.add(lblName);
 pnlRow2.add(txtName);
 pnlRow3.add(lblSex);
 pnlRow3.add(txtSex);
 pnlRow4.add(lblAge);
 pnlRow4.add(txtAge);
 pnlRow5.add(lblDepartment);
 pnlRow5.add(txtDepartment);
 pnlRow6.add(lblClass);
 pnlRow6.add(txtClass);
 pnlRow7.add(lblTelephone);
 pnlRow7.add(txtTelephone);

 pnlSouth.add(pnlSouth1);
 pnlSouth.add(pnlSouth2);
 pnlSouth1.add(btnTop);
 pnlSouth1.add(btnPrevious);
 pnlSouth1.add(btnNext);
 pnlSouth1.add(btnBottom);
 pnlSouth1.add(btnExit);
 pnlSouth2.add(btnEdit);
 pnlSouth2.add(btnOK);
 pnlSouth2.add(btnCancel);


 setSize(500, 300);
 setResizable(false);
 pack();
 setLocationRelativeTo(null);
 setVisible(true);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 studentService = new StudentServiceImpl();
 students = studentService.findAllStudents();

 if (students.size() > 0) {
     currentRow = 1;
     setTitle("浏览学生表记录" + "&& 当前记录:" + currentRow);
     fillFrameDate(currentRow);
 } else {
     JOptionPane.showMessageDialog(null, "表中没有记录!", "浏览学生表记录", JOptionPane.WARNING_MESSAGE);
     btnTop.setEnabled(false);
     btnPrevious.setEnabled(false);
     btnNext.setEnabled(false);
     btnBottom.setEnabled(false);
 }

 btnTop.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         currentRow = 1;
         fillFrameDate(currentRow);
     }
 });

 btnPrevious.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         if (currentRow > 1) {
             currentRow--;
             fillFrameDate(currentRow);
         } else {
             JOptionPane.showMessageDialog(null, "已到第一条记录!", "浏览学生表记录", JOptionPane.WARNING_MESSAGE);
         }
     }
 });

 btnNext.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         if (currentRow < students.size() - 1){
             currentRow++;
             fillFrameDate(currentRow);
         }else{
             JOptionPane.showMessageDialog(null,"已到最后一条记录","浏览学生表记录",JOptionPane.WARNING_MESSAGE);
         }
     }
 });

 btnBottom.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         currentRow = students.size() - 1;
         fillFrameDate(currentRow);
     }
 });

 btnExit.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         dispose();
     }
 });

 btnEdit.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         setTitle("编辑学生表记录" + "&& 当前记录:" + currentRow);

         txtName.setEditable(true);
         txtSex.setEditable(true);
         txtAge.setEditable(true);
         txtDepartment.setEditable(true);
         txtClass.setEditable(true);
         txtTelephone.setEditable(true);
         btnOK.setEnabled(true);
         btnCancel.setEnabled(true);
     }
 });


 btnOK.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         Student student = students.get(currentRow);
         if (isNumber(txtAge.getText())){
             if (isLegalTelephone(txtTelephone.getText())){
                 student.setName(txtName.getText());
                 student.setId(txtId.getText());
                 student.setSex(txtSex.getText());
                 student.setAge(Integer.parseInt(txtAge.getText()));
                 student.setDepartment(txtDepartment.getText());
                 student.setClazz(txtClass.getText());
                 student.setTelephone(txtTelephone.getText());

                 int count = studentService.updateStudent(student);

                 if (count > 0){
                     JOptionPane.showMessageDialog(null,"更新记录成功!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                     btnOK.setEnabled(false);
                     btnCancel.setEnabled(false);
                     btnEdit.setEnabled(true);
                     txtName.setEditable(false);
                     txtSex.setEditable(false);
                     txtAge.setEditable(false);
                     txtDepartment.setEditable(false);
                     txtClass.setEditable(false);
                     txtTelephone.setEditable(false);

                     students = studentService.findAllStudents();
                     setTitle("浏览学生表记录" + "&& 当前记录:" + currentRow);
                 }else{
                     JOptionPane.showMessageDialog(null,"更新记录失败!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                 }
             }else{
                 JOptionPane.showMessageDialog(null,"非法手机号!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                 txtTelephone.selectAll();
                 txtTelephone.requestFocus();
             }
         }else{
             JOptionPane.showMessageDialog(null,"年龄必须是数字!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
             txtAge.selectAll();
             txtAge.requestFocus();
         }
     }
 });

 btnCancel.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         btnOK.setEnabled(false);
         btnCancel.setEnabled(false);
         btnEdit.setEnabled(false);
         txtName.setEditable(false);
         txtSex.setEditable(false);
         txtAge.setEditable(false);
         txtDepartment.setEditable(false);
         txtClass.setEditable(false);
         txtTelephone.setEditable(false);

         txtName.setText(students.get(currentRow).getName());
         txtSex.setText(students.get(currentRow).getSex());
         txtAge.setText(students.get(currentRow).getAge() + "");
         txtDepartment.setText(students.get(currentRow).getClazz());
         txtClass.setText(students.get(currentRow).getClazz());
         txtTelephone.setText(students.get(currentRow).getTelephone());
     }
 });

 //【学号】文本框按钮事件
 txtId.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtName.requestFocus();
         }
     }
 });
 //【姓名】文本框按钮事件
 txtName.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtSex.requestFocus();
         }
     }
 });

 //【性别】文本框按钮事件
 txtSex.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtAge.requestFocus();
         }
     }
 });
 //【年龄】文本框按钮事件
 txtAge.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtDepartment.requestFocus();
         }
     }
 });

 //【系部【文本框按钮事件
 txtDepartment.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER) {
             txtClass.requestFocus();
         }
     }
 });

 //【班级】文本框按钮事件
 txtClass.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtTelephone.requestFocus();
         }
     }
 });
pnlRow1 = new JPanel();
 pnlRow2 = new JPanel();
 pnlRow3 = new JPanel();
 pnlRow4 = new JPanel();
 pnlRow5 = new JPanel();
 pnlRow6 = new JPanel();
 pnlRow7 = new JPanel();
 pnlSouth1 = new JPanel();
 pnlSouth2 = new JPanel();

 pnlRow1.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow2.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow3.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow4.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow5.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow5.setLayout(new FlowLayout(FlowLayout.LEFT));
 pnlRow6.setLayout(new FlowLayout(FlowLayout.LEFT));

 lblId = new JLabel("学号:");
 lblName = new JLabel("姓名:");
 lblSex = new JLabel("性别:");
 lblAge = new JLabel("年龄:");
 lblDepartment = new JLabel("系部:");
 lblClass = new JLabel("班级:");
 lblTelephone = new JLabel("电话:");

 txtId = new JTextField(40);
 txtName = new JTextField(40);
 txtSex = new JTextField(40);
 txtAge = new JTextField(40);
 txtDepartment = new JTextField(40);
 txtClass = new JTextField(40);
 txtTelephone = new JTextField(40);

 txtId.setEditable(false);
 txtName.setEditable(false);
 txtSex.setEditable(false);
 txtAge.setEditable(false);
 txtDepartment.setEditable(false);
 txtClass.setEditable(false);
 txtTelephone.setEditable(false);

 btnTop = new JButton("第一条[T]");
 btnPrevious = new JButton("上一条[P]");
 btnNext = new JButton("下一条[N]");
 btnBottom = new JButton("最后一条[B]");
 btnExit = new JButton("退出[X]");
 btnEdit = new JButton("编辑[E]");
 btnOK = new JButton("确定[O]");
 btnCancel = new JButton("取消[C]");
 btnOK.setEnabled(false);
 btnCancel.setEnabled(false);
 btnTop.setMnemonic(KeyEvent.VK_T);
 btnPrevious.setMnemonic(KeyEvent.VK_P);
 btnNext.setMnemonic(KeyEvent.VK_N);
 btnBottom.setMnemonic(KeyEvent.VK_B);
 btnExit.setMnemonic(KeyEvent.VK_X);
 btnEdit.setMnemonic(KeyEvent.VK_E);
 btnOK.setMnemonic(KeyEvent.VK_O);
 btnCancel.setMnemonic(KeyEvent.VK_C);

 panel.setLayout(new BorderLayout());
 panel.add(pnlCenter, BorderLayout.CENTER);
 panel.add(pnlSouth, BorderLayout.SOUTH);
 pnlCenter.setLayout(new GridLayout(7,1));

 pnlCenter.add(pnlRow1);
 pnlCenter.add(pnlRow2);
 pnlCenter.add(pnlRow3);
 pnlCenter.add(pnlRow4);
 pnlCenter.add(pnlRow5);
 pnlCenter.add(pnlRow6);
 pnlCenter.add(pnlRow7);

 pnlRow1.add(lblId);
 pnlRow1.add(txtId);
 pnlRow2.add(lblName);
 pnlRow2.add(txtName);
 pnlRow3.add(lblSex);
 pnlRow3.add(txtSex);
 pnlRow4.add(lblAge);
 pnlRow4.add(txtAge);
 pnlRow5.add(lblDepartment);
 pnlRow5.add(txtDepartment);
 pnlRow6.add(lblClass);
 pnlRow6.add(txtClass);
 pnlRow7.add(lblTelephone);
 pnlRow7.add(txtTelephone);

 pnlSouth.add(pnlSouth1);
 pnlSouth.add(pnlSouth2);
 pnlSouth1.add(btnTop);
 pnlSouth1.add(btnPrevious);
 pnlSouth1.add(btnNext);
 pnlSouth1.add(btnBottom);
 pnlSouth1.add(btnExit);
 pnlSouth2.add(btnEdit);
 pnlSouth2.add(btnOK);
 pnlSouth2.add(btnCancel);


 setSize(500, 300);
 setResizable(false);
 pack();
 setLocationRelativeTo(null);
 setVisible(true);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 studentService = new StudentServiceImpl();
 students = studentService.findAllStudents();

 if (students.size() > 0) {
     currentRow = 1;
     setTitle("浏览学生表记录" + "&& 当前记录:" + currentRow);
     fillFrameDate(currentRow);
 } else {
     JOptionPane.showMessageDialog(null, "表中没有记录!", "浏览学生表记录", JOptionPane.WARNING_MESSAGE);
     btnTop.setEnabled(false);
     btnPrevious.setEnabled(false);
     btnNext.setEnabled(false);
     btnBottom.setEnabled(false);
 }

 btnTop.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         currentRow = 1;
         fillFrameDate(currentRow);
     }
 });

 btnPrevious.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         if (currentRow > 1) {
             currentRow--;
             fillFrameDate(currentRow);
         } else {
             JOptionPane.showMessageDialog(null, "已到第一条记录!", "浏览学生表记录", JOptionPane.WARNING_MESSAGE);
         }
     }
 });

 btnNext.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         if (currentRow < students.size() - 1){
             currentRow++;
             fillFrameDate(currentRow);
         }else{
             JOptionPane.showMessageDialog(null,"已到最后一条记录","浏览学生表记录",JOptionPane.WARNING_MESSAGE);
         }
     }
 });

 btnBottom.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         currentRow = students.size() - 1;
         fillFrameDate(currentRow);
     }
 });

 btnExit.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         dispose();
     }
 });

 btnEdit.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         setTitle("编辑学生表记录" + "&& 当前记录:" + currentRow);

         txtName.setEditable(true);
         txtSex.setEditable(true);
         txtAge.setEditable(true);
         txtDepartment.setEditable(true);
         txtClass.setEditable(true);
         txtTelephone.setEditable(true);
         btnOK.setEnabled(true);
         btnCancel.setEnabled(true);
     }
 });


 btnOK.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         Student student = students.get(currentRow);
         if (isNumber(txtAge.getText())){
             if (isLegalTelephone(txtTelephone.getText())){
                 student.setName(txtName.getText());
                 student.setId(txtId.getText());
                 student.setSex(txtSex.getText());
                 student.setAge(Integer.parseInt(txtAge.getText()));
                 student.setDepartment(txtDepartment.getText());
                 student.setClazz(txtClass.getText());
                 student.setTelephone(txtTelephone.getText());

                 int count = studentService.updateStudent(student);

                 if (count > 0){
                     JOptionPane.showMessageDialog(null,"更新记录成功!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                     btnOK.setEnabled(false);
                     btnCancel.setEnabled(false);
                     btnEdit.setEnabled(true);
                     txtName.setEditable(false);
                     txtSex.setEditable(false);
                     txtAge.setEditable(false);
                     txtDepartment.setEditable(false);
                     txtClass.setEditable(false);
                     txtTelephone.setEditable(false);

                     students = studentService.findAllStudents();
                     setTitle("浏览学生表记录" + "&& 当前记录:" + currentRow);
                 }else{
                     JOptionPane.showMessageDialog(null,"更新记录失败!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                 }
             }else{
                 JOptionPane.showMessageDialog(null,"非法手机号!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
                 txtTelephone.selectAll();
                 txtTelephone.requestFocus();
             }
         }else{
             JOptionPane.showMessageDialog(null,"年龄必须是数字!","编辑学生记录",JOptionPane.WARNING_MESSAGE);
             txtAge.selectAll();
             txtAge.requestFocus();
         }
     }
 });

 btnCancel.addActionListener(new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         btnOK.setEnabled(false);
         btnCancel.setEnabled(false);
         btnEdit.setEnabled(false);
         txtName.setEditable(false);
         txtSex.setEditable(false);
         txtAge.setEditable(false);
         txtDepartment.setEditable(false);
         txtClass.setEditable(false);
         txtTelephone.setEditable(false);

         txtName.setText(students.get(currentRow).getName());
         txtSex.setText(students.get(currentRow).getSex());
         txtAge.setText(students.get(currentRow).getAge() + "");
         txtDepartment.setText(students.get(currentRow).getClazz());
         txtClass.setText(students.get(currentRow).getClazz());
         txtTelephone.setText(students.get(currentRow).getTelephone());
     }
 });

 //【学号】文本框按钮事件
 txtId.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtName.requestFocus();
         }
     }
 });
 //【姓名】文本框按钮事件
 txtName.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtSex.requestFocus();
         }
     }
 });

 //【性别】文本框按钮事件
 txtSex.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtAge.requestFocus();
         }
     }
 });
 //【年龄】文本框按钮事件
 txtAge.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtDepartment.requestFocus();
         }
     }
 });

 //【系部【文本框按钮事件
 txtDepartment.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER) {
             txtClass.requestFocus();
         }
     }
 });

 //【班级】文本框按钮事件
 txtClass.addKeyListener(new KeyAdapter() {
     @Override
     public void keyPressed(KeyEvent e) {
         if (e.getKeyCode() == KeyEvent.VK_ENTER){
             txtTelephone.requestFocus();
         }
     }
 });
}
 private void fillFrameDate(int currentRow){
 if (currentRow > 0){
 setTitle(“浏览学生表记录” + “&& 当前记录:” + currentRow);
 txtId.setText(students.get(currentRow).getId());
 txtName.setText(students.get(currentRow).getName());
 txtSex.setText(students.get(currentRow).getSex());
 txtAge.setText(students.get(currentRow).getAge() + “”);
 txtDepartment.setText(students.get(currentRow).getDepartment());
 txtClass.setText(students.get(currentRow).getClazz());
 txtTelephone.setText(students.get(currentRow).getTelephone());
 }
 }
 //判断一个字符串是否全是数字
 private boolean isNumber(String str) {
 for (int i = 0; i < str.length();i++){
 if (str.charAt(i) < ‘0’ || str.charAt(i) > ‘9’) {
 return false;
 }
 }
 return true;
 }private boolean isLegalTelephone(String telephone){
 Pattern p = Pattern.compile("((13[0-9])|(15[4,\D])|(18[0-9]))\d{8}$");
 Matcher m = p.matcher(telephone);
 return m.matches();
 }public static void main(String[] args) {
 new EditStudentFrame("");
 }}

3、按学号删除学生窗口DeleteStudentByIdFrame
package net.lsl.student.gui;

import net.lsl.student.bean.Student;
 import net.lsl.student.service.StudentService;
 import net.lsl.student.service.impl.StudentServiceImpl;import javax.swing.;
 import javax.swing.border.TitledBorder;
 import java.awt.;
 import java.awt.event.*;
 import java.util.Vector;
 import java.util.List;public class DeleteStudentByIdFrame extends JFrame {
 /**
 * 学号标签
/
 private JLabel lblInputId;
 /*
 * 学号文本框
/
 private JTextField txtId;
 /*
 * 面板
 */
 private JPanel panel;
 private JPanel pnlSouth;
 private JPanel pnlCenter;
 private JPanel pnlNorth;
/**
     * 按钮
     */
    private JButton btnQuery;
    private JButton btnBrowseAll;
    private JButton btnDelete;
    private JButton btnExit;
    /**
     * 记录行集
     */
    private Vector rows;
    /**
     * 表格列标题
     */
    private Vector<String> colHead;
    /**
     * 表格
     */
    private JTable table;
    /**
     * 滚动面板
     */
    private JScrollPane scroller;
    /**
     * 当前记录行号
     */
    private int currentRow;
    /**
     * 学生列表
     */
    private List<Student> students;
    /**
     * 创建学生服务对象
     */
    private StudentService studentService;

    /**
     * 构造方法
     *
     * @param title
     */
    public DeleteStudentByIdFrame(String title) {
        super(title);
        intiGUI();
    }

    private void intiGUI() {
        // 创建组件
        panel = (JPanel) getContentPane();
        pnlNorth = new JPanel();
        pnlCenter = new JPanel();
        pnlSouth = new JPanel();

        rows = new Vector();
        colHead = new Vector();

        lblInputId = new JLabel("输入学号:");
        txtId = new JTextField(10);
        txtId.setHorizontalAlignment(JTextField.CENTER);
        btnQuery = new JButton("查询[Q]");
        btnQuery.setMnemonic(KeyEvent.VK_Q);
        btnBrowseAll = new JButton("显示全部记录[A]");
        btnBrowseAll.setMnemonic(KeyEvent.VK_A);
        btnDelete = new JButton("删除查询的记录[D]");
        btnDelete.setEnabled(false);// 删除按钮不可用
        btnDelete.setMnemonic(KeyEvent.VK_D);
        btnExit = new JButton("退出[X]");
        btnExit.setMnemonic(KeyEvent.VK_X);

        // 添加组件
        panel.add(pnlSouth, BorderLayout.SOUTH);
        panel.add(pnlCenter, BorderLayout.CENTER);
        panel.add(pnlNorth, BorderLayout.NORTH);

        pnlNorth.add(lblInputId);
        pnlNorth.add(txtId);
        pnlNorth.add(btnQuery);
        pnlNorth.add(btnBrowseAll);
        pnlSouth.setLayout(new FlowLayout(FlowLayout.RIGHT));
        pnlSouth.add(btnDelete);
        pnlSouth.add(btnExit);
        pnlCenter.setLayout(new BorderLayout());

        // 创建标题边框对象
        TitledBorder tb = new TitledBorder("查询结果");
        pnlCenter.setBorder(tb);

        // 创建学生服务对象
        studentService = new StudentServiceImpl();
        // 获取全部学生列表
        students = studentService.findAllStudents();
        // 填充表格数据
        fillTableData();

        // 设置窗口大小
        setSize(600, 350);
        // 设置窗口不可调整大小
        setResizable(false);
        // 设置窗口屏幕居中
        setLocationRelativeTo(null);
        // 设置窗口标题
        setTitle("按学号删除学生记录");
        // 设置窗口可见
        setVisible(true);
        // 设置窗口默认关闭操作
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 【退出】按钮单击事件
        btnExit.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent event) {
                dispose();
            }
        });

        // 【删除】按钮单击事件
        btnDelete.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                if (!rows.isEmpty()) {
                    long choice = JOptionPane.showConfirmDialog(null, "是否要删除记录?");
                    if (choice == JOptionPane.OK_OPTION) {
                        // 获取待删学生学号
                        String id = txtId.getText().trim();
                        // 按学号删除学生
                        int count = studentService.deleteStudentById(id);
                        if (count > 0) {
                            JOptionPane.showMessageDialog(null, "记录删除成功!", "提示", JOptionPane.INFORMATION_MESSAGE);
                            // 重新获取全部学生列表
                            students = studentService.findAllStudents();
                            // 清空待删学生学号文本框
                            txtId.setText("");
                            // 填充数据
                            fillTableData();
                            // 删除按钮不可用
                            btnDelete.setEnabled(false);
                        } else {
                            JOptionPane.showMessageDialog(null, "记录删除失败!", "警告", JOptionPane.WARNING_MESSAGE);
                        }
                    }
                }
            }
        });

        // 【查询】按钮单击事件
        btnQuery.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent event) {
                doQuery();
            }
        });

        // 【显示全部记录】按钮单击事件
        btnBrowseAll.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent event) {
                // 获取全部学生记录
                students = studentService.findAllStudents();
                // 填充表格数据
                fillTableData();
                // 删除按钮不可用
                btnDelete.setEnabled(false);
            }
        });

        // 【学号】文本框按键事件
        txtId.addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
                if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                    doQuery();
                }
            }
        });

        // 表格单击事件
        table.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                // 获取当前行的行数
                int row = table.rowAtPoint(e.getPoint());
                // 选中鼠标单击的行
                table.setRowSelectionInterval(row, row);
                // 设置文本框内容
                txtId.setText(table.getValueAt(row, 0).toString());
            }
        });
    }

    /**
     * 查询方法
     */
    private void doQuery() {
        // 获取查询学号
        String id = txtId.getText().trim();
        if (!id.equals("")) {
            students.clear();
            Student student = studentService.findStudentById(id);
            if (student != null) {
                // 将查询到的学生添加到列表
                students.add(student);
                // 让删除按钮可用
                btnDelete.setEnabled(true);
            }
            // 填充表格
            fillTableData();
        } else {
            JOptionPane.showMessageDialog(this, "请输入待查学生学号!", "警告", JOptionPane.WARNING_MESSAGE);
            txtId.requestFocus();
        }
    }

    /**
     * 填充表格方法
     */
    private void fillTableData() {
        // 填充表头
        colHead.clear();
        colHead.add("学号");
        colHead.add("姓名");
        colHead.add("性别");
        colHead.add("年龄");
        colHead.add("系部");
        colHead.add("班级");
        colHead.add("电话");

        // 填充表记录
        rows.clear();
        for (Student student : students) {
            Vector<String> currentRow = new Vector<String>();
            currentRow.addElement(student.getId());
            currentRow.addElement(student.getName());
            currentRow.addElement(student.getSex());
            currentRow.addElement(student.getAge() + "");
            currentRow.addElement(student.getDepartment());
            currentRow.addElement(student.getClazz());
            currentRow.addElement(student.getTelephone());
            // 将当前行添加到记录行集
            rows.add(currentRow);
        }

        // 创建表格(参数1:记录集;参数2:表头)
        table = new JTable(rows, colHead);

        // 定义滚动面板
        scroller = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
                JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
        // 将滚动面板添加到中心面板
        pnlCenter.add(scroller, BorderLayout.CENTER);

        // 重绘窗体
        repaint();

        // 判断是否有记录行
        if (rows.isEmpty()) {
            JOptionPane.showMessageDialog(this, "没有符合条件的记录!", "错误提示", JOptionPane.WARNING_MESSAGE);
            txtId.setText("");
        } else {
            // 让滚动条移到最上方
            scroller.getVerticalScrollBar().setValue(0);
        }
    }

    /**
     * 主方法
     *
     * @param args
     */


public static void main(String[] args) {
    new DeleteStudentByIdFrame("");
}

}

写完了这个GUI以后,我突然觉得里面的内容至少有一般以上是相同或者相类似的,其实自己可以不用那么累,可以复制粘贴,但是又想到复制粘贴对自己有什么用呢,自己一样学不到然后东西。于是又接着一个一个 的开始码代码。

Java的学生信息管理系统 java学生信息管理系统总结_sed_02


这三个删除类其实差不多,只是有一些地方有一些不一样而已。写完了这三个删除类的界面,接着就写查询窗口

Java的学生信息管理系统 java学生信息管理系统总结_ide_03


查询有四种方法,按学号查询,按姓名查询,按班级查询,按系部查询。

四种查询方法都是差不多的,代码也就差不多。

按学号查询学生窗口FindStudentById

package net.lsl.student.gui;
import net.lsl.student.bean.Student;
 import net.lsl.student.service.StudentService;
 import net.lsl.student.service.impl.StudentServiceImpl;import javax.swing.;
 import javax.swing.border.TitledBorder;
 import java.awt.;
 import java.awt.event.*;
 import java.awt.print.PrinterException;
 import java.util.Vector;
 import java.util.List;public class FindStudentByIdFrame extends JFrame {
/**
 * 学号标签
 */
private JLabel lblInputId;
/**
 * 学号文本框
 */
private JTextField txtId;
/**
 * 面板
 */
private JPanel panel;
private JPanel pnlSouth;
private JPanel pnlCenter;
private JPanel pnlNorth;
/**
 * 按钮
 */
private JButton btnQuery;
private JButton btnBrowseAll;
private JButton btnPrint;
private JButton btnExit;
/**
 * 记录行集
 */
private Vector rows;
/**
 * 表格列标题
 */
private Vector<String> colHead;
/**
 * 表格
 */
private JTable table;
/**
 * 滚动面板
 */
private JScrollPane scroller;
/**
 * 当前记录行号
 */
private int currentRow;
/**
 * 学生列表
 */
private List<Student> students;
/**
 * 创建学生服务对象
 */
private StudentService studentService;

/**
 * 构造方法
 *
 * @param title
 */
public FindStudentByIdFrame(String title) {
    super(title);
    intiGUI();
}

/**
 * 初始化用户界面
 */
private void intiGUI() {
    // 创建组件
    panel = (JPanel) getContentPane();
    pnlNorth = new JPanel();
    pnlCenter = new JPanel();
    pnlSouth = new JPanel();

    rows = new Vector();
    colHead = new Vector();

    lblInputId = new JLabel("输入学号:");
    txtId = new JTextField(10);
    txtId.setHorizontalAlignment(JTextField.CENTER);
    btnQuery = new JButton("查询[Q]");
    btnQuery.setMnemonic(KeyEvent.VK_Q);
    btnBrowseAll = new JButton("显示全部记录[A]");
    btnBrowseAll.setMnemonic(KeyEvent.VK_A);
    btnPrint = new JButton("打印[P]");
    btnPrint.setMnemonic(KeyEvent.VK_D);
    btnExit = new JButton("退出[X]");
    btnExit.setMnemonic(KeyEvent.VK_X);

    // 添加组件
    panel.add(pnlSouth, BorderLayout.SOUTH);
    panel.add(pnlCenter, BorderLayout.CENTER);
    panel.add(pnlNorth, BorderLayout.NORTH);

    pnlNorth.add(lblInputId);
    pnlNorth.add(txtId);
    pnlNorth.add(btnQuery);
    pnlNorth.add(btnBrowseAll);
    pnlSouth.setLayout(new FlowLayout(FlowLayout.RIGHT));
    pnlSouth.add(btnPrint);
    pnlSouth.add(btnExit);
    pnlCenter.setLayout(new BorderLayout());

    // 创建标题边框对象
    TitledBorder tb = new TitledBorder("查询结果");
    pnlCenter.setBorder(tb);

    // 创建学生服务对象
    studentService = new StudentServiceImpl();
    // 获取全部学生列表
    students = studentService.findAllStudents();
    // 填充表格数据
    fillTableData();

    // 设置窗口大小
    setSize(600, 350);
    // 设置窗口不可调整大小
    setResizable(false);
    // 设置窗口屏幕居中
    setLocationRelativeTo(null);
    // 设置窗口标题
    setTitle("按学号查询学生记录");
    // 设置窗口可见
    setVisible(true);
    // 设置窗口默认关闭操作
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


    // 【退出】按钮单击事件
    btnExit.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent event) {
            dispose();
        }
    });

    // 【打印】按钮单击事件
    btnPrint.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            try {
                table.print();
            } catch (PrinterException e1) {
                e1.printStackTrace();
            }
        }
    });

    // 【查询】按钮单击事件
    btnQuery.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent event) {
            doQuery();
        }
    });

    // 【显示全部记录】按钮单击事件
    btnBrowseAll.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent event) {
            // 获取全部学生记录
            students = studentService.findAllStudents();
            // 填充表格数据
            fillTableData();
            // 删除按钮不可用
            btnPrint.setEnabled(false);
        }
    });

    // 【学号】文本框按键事件
    txtId.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent e) {
            if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                doQuery();
            }
        }
    });

    // 表格单击事件
    table.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent e) {
            // 获取当前行的行数
            int row = table.rowAtPoint(e.getPoint());
            // 选中鼠标单击的行
            table.setRowSelectionInterval(row, row);
            // 设置文本框内容
            txtId.setText(table.getValueAt(row, 0).toString());
        }
    });
}

/**
 * 查询方法
 */
private void doQuery() {
    // 获取查询学号
    String id = txtId.getText().trim();
    if (!id.equals("")) {
        students.clear();
        Student student = studentService.findStudentById(id);
        if (student != null) {
            // 将查询到的学生添加到列表
            students.add(student);
        }
        // 填充表格
        fillTableData();
    } else {
        JOptionPane.showMessageDialog(this, "请输入待查学生学号!", "警告", JOptionPane.WARNING_MESSAGE);
        txtId.requestFocus();
    }
}

/**
 * 填充表格方法
 */
private void fillTableData() {
    // 填充表头
    colHead.clear();
    colHead.add("学号");
    colHead.add("姓名");
    colHead.add("性别");
    colHead.add("年龄");
    colHead.add("系部");
    colHead.add("班级");
    colHead.add("电话");

    // 填充表记录
    rows.clear();
    for (Student student : students) {
        Vector<String> currentRow = new Vector<String>();
        currentRow.addElement(student.getId());
        currentRow.addElement(student.getName());
        currentRow.addElement(student.getSex());
        currentRow.addElement(student.getAge() + "");
        currentRow.addElement(student.getDepartment());
        currentRow.addElement(student.getClazz());
        currentRow.addElement(student.getTelephone());
        // 将当前行添加到记录行集
        rows.add(currentRow);
    }

    // 创建表格(参数1:记录集;参数2:表头)
    table = new JTable(rows, colHead);

    // 定义滚动面板
    scroller = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
            JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    // 将滚动面板添加到中心面板
    pnlCenter.add(scroller, BorderLayout.CENTER);

    // 重绘窗体
    repaint();

    // 判断是否有记录行
    if (rows.isEmpty()) {
        JOptionPane.showMessageDialog(this, "没有符合条件的记录!", "错误提示", JOptionPane.WARNING_MESSAGE);
        txtId.setText("");
    } else {
        // 让滚动条移到最上方
        scroller.getVerticalScrollBar().setValue(0);
    }
}

/**
 * 主方法
 *
 * @param args
 */
public static void main(String[] args) {
    new FindStudentByIdFrame("");
}

}

其他查询也是和这个相类似的所有就不写在博客上面了。看了一下老师的代码发现好像剩下的不是很多了,而且自己今天也差不多接近下课了,就觉得不写了。正好晚上也还有事情就歇一下明天写吧。