目录
题目:
设计一个学生管理系统。可以实现对学生信息的添加、删除、修改和查询功能,要求使用mysql数据库存储学生信息,并熟练使用数据库操作的常用方法实现相关的操作。
问题的解决方案
根据系统功能要求,可以将问题解决分为以下步骤:
(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;
(2)分析系统中的各个实体及它们之间的关系;
(3)根据问题描述,设计系统的类层次;
(4)完成类层次中各个类的描述;
(5)完成类中各个成员函数的定义;
(6)完成系统的应用模块;
(7)功能调试;
(8)完成系统总结报告。
运行截图:(登录界面,主界面,学生列表)



代码:
1.登录界面:
package view;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import datebase.Verifylogin;
import datebase.admin;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JTextField;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import java.awt.Font;
import javax.swing.JButton;
import javax.swing.LayoutStyle.ComponentPlacement;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Color;
import java.awt.Toolkit;
import java.awt.SystemColor;
public class Login extends JFrame {
private JPanel contentPane;
private JTextField LoginTextField;
private JTextField NumberTextField;
private JTextField PasswordTextField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Login frame = new Login();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Login() {
setIconImage(Toolkit.getDefaultToolkit().getImage("C:\\Users\\86187\\Desktop\\\u6821\u56ED.jpg"));
setTitle("\u5B66\u751F\u7BA1\u7406\u7CFB\u7EDF\u767B\u9646\u754C\u9762");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 666, 404);
contentPane = new JPanel();
contentPane.setBackground(SystemColor.menu);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JLabel lblNewLabel = new JLabel("\u5B66\u751F\u7BA1\u7406\u7CFB\u7EDF");
lblNewLabel.setFont(new Font("华文宋体", Font.BOLD, 18));
lblNewLabel.setIcon(new ImageIcon(Login.class.getResource("/images/\u5728\u7C4D\u5B66\u751F\u7BA1\u7406.png")));
JLabel lblNewLabel_1 = new JLabel("\u7528\u6237\u540D\uFF1A");
lblNewLabel_1.setFont(new Font("华文宋体", Font.PLAIN, 14));
lblNewLabel_1.setIcon(new ImageIcon(Login.class.getResource("/images/\u7528\u6237.png")));
LoginTextField = new JTextField();
LoginTextField.setBackground(SystemColor.inactiveCaptionBorder);
LoginTextField.setColumns(10);
JLabel lblNewLabel_2 = new JLabel("\u5B66\u5DE5\u53F7\uFF1A");
lblNewLabel_2.setIcon(new ImageIcon(Login.class.getResource("/images/\u73ED\u7EA7\u5217\u8868.png")));
lblNewLabel_2.setFont(new Font("华文宋体", Font.PLAIN, 14));
NumberTextField = new JTextField();
NumberTextField.setBackground(SystemColor.inactiveCaptionBorder);
NumberTextField.setColumns(10);
JLabel lblNewLabel_3 = new JLabel("\u5BC6\u7801\uFF1A");
lblNewLabel_3.setFont(new Font("华文宋体", Font.PLAIN, 14));
lblNewLabel_3.setIcon(new ImageIcon(Login.class.getResource("/images/\u5BC6\u7801.png")));
PasswordTextField = new JTextField();
PasswordTextField.setBackground(SystemColor.inactiveCaptionBorder);
PasswordTextField.setColumns(10);
JButton LoginbtnNewButton = new JButton("\u767B\u5F55");
LoginbtnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
loginAction(e);
}
});
LoginbtnNewButton.setFont(new Font("华文宋体", Font.PLAIN, 14));
LoginbtnNewButton.setIcon(new ImageIcon(Login.class.getResource("/images/\u9000\u51FA\u7CFB\u7EDF.png")));
JButton resetbtnNewButton = new JButton("\u91CD\u7F6E");
resetbtnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
resetbtnNewButton(e);
}
});
resetbtnNewButton.setFont(new Font("华文宋体", Font.PLAIN, 14));
resetbtnNewButton.setIcon(new ImageIcon(Login.class.getResource("/images/\u91CD\u7F6E.png")));
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(168)
.addComponent(lblNewLabel, GroupLayout.PREFERRED_SIZE, 192, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(142)
.addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING, false)
.addComponent(lblNewLabel_2, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(lblNewLabel_1, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(lblNewLabel_3, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGap(18)
.addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING, false)
.addComponent(PasswordTextField)
.addComponent(NumberTextField)
.addComponent(LoginTextField, GroupLayout.DEFAULT_SIZE, 237, Short.MAX_VALUE))))
.addContainerGap(167, Short.MAX_VALUE))
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(110)
.addComponent(LoginbtnNewButton, GroupLayout.PREFERRED_SIZE, 97, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED, 210, Short.MAX_VALUE)
.addComponent(resetbtnNewButton, GroupLayout.PREFERRED_SIZE, 97, GroupLayout.PREFERRED_SIZE)
.addGap(128))
);
gl_contentPane.setVerticalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(29)
.addComponent(lblNewLabel)
.addGap(36)
.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNewLabel_1)
.addComponent(LoginTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(37)
.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNewLabel_2)
.addComponent(NumberTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(41)
.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNewLabel_3)
.addComponent(PasswordTextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addPreferredGap(ComponentPlacement.RELATED, 50, Short.MAX_VALUE)
.addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
.addComponent(LoginbtnNewButton)
.addComponent(resetbtnNewButton))
.addGap(30))
);
contentPane.setLayout(gl_contentPane);
}
protected void resetbtnNewButton(ActionEvent e) {
// TODO Auto-generated method stub
LoginTextField.setText("");
NumberTextField.setText("");
PasswordTextField.setText("");
}
protected void loginAction(ActionEvent e) {
// TODO Auto-generated method stub
String userName=LoginTextField.getText().toString();
String id=NumberTextField.getText().toString();
String password=PasswordTextField.getText().toString();
if(StringUtil.isEmpty(userName)){
JOptionPane.showMessageDialog(this,"用户名不能为空!");
return;
}
if(StringUtil.isEmpty(id)){
JOptionPane.showMessageDialog(this,"学工号不能为空!");
return;
}
if(StringUtil.isEmpty(password)){
JOptionPane.showMessageDialog(this,"密码不能为空!");
return;
}
admin admin1=null;
Verifylogin adminDao=new Verifylogin();
admin adminTmp=new admin();
adminTmp.setName(userName);
adminTmp.setId(id);
adminTmp.setPassword(password);
admin1=adminDao.login(adminTmp);
if(admin1==null) {
JOptionPane.showMessageDialog(this, "用户名或密码错误!");
return;
}
JOptionPane.showMessageDialog(this, "欢迎:"+admin1.getName()+"老师登录本系统!");
this.dispose();
new Main(admin1).setVisible(true);
}
}
2.主界面
package view;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import datebase.admin;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.ImageIcon;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import java.awt.event.ActionListener;
import java.net.URI;
import java.awt.event.ActionEvent;
import javax.swing.JDesktopPane;
import java.awt.Color;
import java.awt.Desktop;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class Main extends JFrame {
private JPanel contentPane;
private JDesktopPane desktopPane;
public static admin admin1;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Main frame = new Main(null);
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Main(admin admin1) {
this.admin1=admin1;
setTitle("\u4FE1\u606F\u7CFB\u7EDF\u4E3B\u754C\u9762");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 828, 626);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu mnNewMenu = new JMenu("\u4E2A\u4EBA\u4FE1\u606F");
mnNewMenu.setIcon(new ImageIcon(Main.class.getResource("/images/Settings.png")));
menuBar.add(mnNewMenu);
JMenuItem mntmNewMenuItem = new JMenuItem("\u4FEE\u6539\u5BC6\u7801");
mntmNewMenuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
editPassword(ae);
}
});
mntmNewMenuItem.setIcon(new ImageIcon(Main.class.getResource("/images/\u4FEE\u6539\u5BC6\u7801.png")));
mnNewMenu.add(mntmNewMenuItem);
JMenu mnNewMenu_2 = new JMenu("\u4FE1\u606F\u7BA1\u7406");
mnNewMenu_2.setIcon(new ImageIcon(Main.class.getResource("/images/\u73ED\u7EA7\u7BA1\u7406.png")));
menuBar.add(mnNewMenu_2);
JMenuItem mntmNewMenuItem_4 = new JMenuItem("\u6DFB\u52A0\u5B66\u751F");
mntmNewMenuItem_4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
classstudentAdd editPasswordFrm=new classstudentAdd();
editPasswordFrm.setVisible(true);
desktopPane.add(editPasswordFrm);
}
});
mntmNewMenuItem_4.setIcon(new ImageIcon(Main.class.getResource("/images/\u6DFB\u52A01(1).png")));
mnNewMenu_2.add(mntmNewMenuItem_4);
JMenuItem mntmNewMenuItem_5 = new JMenuItem("\u4FE1\u606F\u5217\u8868");
mntmNewMenuItem_5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
liststudents editPasswordFrm=new liststudents();
editPasswordFrm.setVisible(true);
desktopPane.add(editPasswordFrm);
}
});
JMenuItem mntmNewMenuItem_2 = new JMenuItem("\u67E5\u627E\u5B66\u751F");
mntmNewMenuItem_2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
sceach sceach1=new sceach();
sceach1.setVisible(true);
desktopPane.add(sceach1);
}
});
mntmNewMenuItem_2.setIcon(new ImageIcon(Main.class.getResource("/images/\u67E5\u627E.png")));
mnNewMenu_2.add(mntmNewMenuItem_2);
mntmNewMenuItem_5.setIcon(new ImageIcon(Main.class.getResource("/images/\u73ED\u7EA7\u5217\u8868.png")));
mnNewMenu_2.add(mntmNewMenuItem_5);
JMenu mnNewMenu_3 = new JMenu("\u5E2E\u52A9");
mnNewMenu_3.setIcon(new ImageIcon(Main.class.getResource("/images/\u5E2E\u52A9.png")));
menuBar.add(mnNewMenu_3);
JMenuItem mntmNewMenuItem_6 = new JMenuItem("\u95EE\u9898\u4E0E\u53CD\u9988");
mntmNewMenuItem_6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
aboutUs(ae);
}
});
mntmNewMenuItem_6.setIcon(new ImageIcon(Main.class.getResource("/images/\u5173\u4E8E\u6211\u4EEC.png")));
mnNewMenu_3.add(mntmNewMenuItem_6);
JMenu mnNewMenu_1 = new JMenu("\u9000\u51FA");
mnNewMenu_1.setIcon(new ImageIcon(Main.class.getResource("/images/\u9000\u51FA.png")));
menuBar.add(mnNewMenu_1);
JMenuItem mntmNewMenuItem_1 = new JMenuItem("\u9000\u51FA\u8BE5\u7CFB\u7EDF");
mntmNewMenuItem_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(JOptionPane.showConfirmDialog(Main.this, "确定退出么?")==JOptionPane.OK_OPTION) {
System.exit(0);
}
}
});
mntmNewMenuItem_1.setIcon(new ImageIcon(Main.class.getResource("/images/\u9000\u51FA\u7CFB\u7EDF.png")));
mnNewMenu_1.add(mntmNewMenuItem_1);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
desktopPane = new JDesktopPane();
desktopPane.setBackground(new Color(173, 216, 230));
contentPane.add(desktopPane, BorderLayout.CENTER);
JLabel lblNewLabel = new JLabel("New label");
lblNewLabel.setIcon(new ImageIcon("C:\\Users\\86187\\Desktop\\\u6821\u56ED.jpg"));
lblNewLabel.setBounds(0, 0, 804, 556);
desktopPane.add(lblNewLabel);
}
protected void editPassword(ActionEvent ae) {
// TODO Auto-generated method stub
EditPassword editPasswordFrm=new EditPassword();
editPasswordFrm.setVisible(true);
//desktopPane.add(editPasswordFrm);
}
protected void aboutUs(ActionEvent ae) {
// TODO Auto-generated method stub
String info="问题建议请联系:\n";
info +="QQ:3104073309";
JOptionPane.showMessageDialog(this, info);
}
}
3.学生列表
package view;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import java.util.Vector;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import java.awt.BorderLayout;
import javax.swing.GroupLayout;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.GroupLayout.Alignment;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.table.DefaultTableModel;
import datebase.classstudents;
import datebase.studentsthings;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class liststudents extends JInternalFrame {
private JTable table;
private JTextField nametextField;
private JTextField agetextField;
private JTextField adresstextField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
liststudents frame = new liststudents();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public liststudents() {
setClosable(true);
setIconifiable(true);
setTitle("\u5B66\u751F\u5217\u8868");
setBounds(100, 100, 550, 511);
JScrollPane scrollPane = new JScrollPane();
JButton btnNewButton = new JButton("\u4FEE\u6539\u4FE1\u606F");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
editact(e);
}
});
btnNewButton.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u786E\u5B9A.png")));
JButton btnNewButton_1 = new JButton("\u5220\u9664\u4FE1\u606F");
btnNewButton_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
delete(e);
}
});
btnNewButton_1.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u53D6\u6D88\u4FEE\u6539\u540D\u79F0.png")));
JLabel lblNewLabel_1 = new JLabel("\u59D3\u540D\uFF1A");
lblNewLabel_1.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5B66\u751F\u7BA1\u7406.png")));
nametextField = new JTextField();
nametextField.setColumns(10);
JLabel lblNewLabel_2 = new JLabel("\u5E74\u9F84\uFF1A");
lblNewLabel_2.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5E74\u9F84.png")));
agetextField = new JTextField();
agetextField.setColumns(10);
JLabel lblNewLabel_3 = new JLabel("\u5BB6\u5EAD\u4F4F\u5740\uFF1A");
lblNewLabel_3.setFont(new Font("宋体", Font.PLAIN, 9));
lblNewLabel_3.setIcon(new ImageIcon(liststudents.class.getResource("/images/\u5BB6.png")));
adresstextField = new JTextField();
adresstextField.setColumns(10);
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 538, Short.MAX_VALUE)
.addGroup(groupLayout.createSequentialGroup()
.addGap(24)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(lblNewLabel_1, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(nametextField, GroupLayout.PREFERRED_SIZE, 247, GroupLayout.PREFERRED_SIZE))
.addGroup(groupLayout.createSequentialGroup()
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(lblNewLabel_2, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
.addGroup(groupLayout.createSequentialGroup()
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(lblNewLabel_3, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(ComponentPlacement.UNRELATED)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(adresstextField, 247, 247, 247)
.addComponent(agetextField, 247, 247, 247))))
.addGap(36)
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING, false)
.addComponent(btnNewButton_1, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnNewButton, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(54, Short.MAX_VALUE))
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 267, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED, 55, Short.MAX_VALUE)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNewLabel_1)
.addComponent(nametextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addComponent(btnNewButton))
.addGroup(groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addGap(32)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(agetextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addComponent(lblNewLabel_2))
.addGap(30)
.addGroup(groupLayout.createParallelGroup(Alignment.BASELINE)
.addComponent(adresstextField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addComponent(lblNewLabel_3)))
.addGroup(groupLayout.createSequentialGroup()
.addGap(50)
.addComponent(btnNewButton_1)))
.addGap(134))
);
table = new JTable();
table.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
rest(e);
}
});
table.setModel(new DefaultTableModel(
new Object[][] {
},
new String[] {
"\u5B66\u53F7", "\u59D3\u540D", "\u5E74\u9F84", "\u5BB6\u5EAD\u4F4F\u5740"
}
) {
boolean[] columnEditables = new boolean[] {
false, false, false, false
};
public boolean isCellEditable(int row, int column) {
return columnEditables[column];
}
});
scrollPane.setViewportView(table);
getContentPane().setLayout(groupLayout);
classstudents cs=new classstudents();
setTable(new classstudents());
}
protected void delete(ActionEvent e) {
// TODO Auto-generated method stub
if(JOptionPane.showConfirmDialog(this, "您确定要删除吗?")!=JOptionPane.OK_OPTION) {
return;
}
int n=table.getSelectedRow();
if(n==-1) {
JOptionPane.showMessageDialog(this, "请选择要删除的数据!");
return;
}
DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
String idString=(String) (dfDefaultTableModel.getValueAt(table.getSelectedRow(), 0).toString());
studentsthings cs=new studentsthings();
JOptionPane.showMessageDialog(this, cs.delete(idString));
setTable(new classstudents());
}
protected void editact(ActionEvent e) {
// TODO Auto-generated method stub
int n=table.getSelectedRow();
if(n==-1) {
JOptionPane.showMessageDialog(this, "请选择要修改的数据!");
return;
}
DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
String id=dfDefaultTableModel.getValueAt(table.getSelectedRow(),0).toString();
String name=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 1).toString();
String age=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 2).toString();
String adress=dfDefaultTableModel.getValueAt(table.getSelectedRow(), 3).toString();
String editname=nametextField.getText().toString();
String editage=agetextField.getText().toString();
String editadress=adresstextField.getText().toString();
if(StringUtil.isEmpty(editname)) {
JOptionPane.showMessageDialog(this, "请填写修改的姓名!");
return;
}
if(StringUtil.isEmpty(editage)) {
JOptionPane.showMessageDialog(this, "请填写修改的年龄!");
return;
}
if(StringUtil.isEmpty(editadress)) {
JOptionPane.showMessageDialog(this, "请填写修改的住址!");
return;
}
if(name.equals(editname)&&age.equals(editage)&&adress.equals(editadress)) {
JOptionPane.showMessageDialog(this, "您还没有做出任何修改!");
return;
}
else {
classstudents sc=new classstudents();
sc.setId(id);
sc.setName(editname);
sc.setAge(editage);
sc.setAdress(editadress);
studentsthings cs=new studentsthings();
JOptionPane.showMessageDialog(this, cs.reststu(sc));
setTable(new classstudents());
}
}
protected void rest(MouseEvent e) {
// TODO Auto-generated method stub
DefaultTableModel dfDefaultTableModel=(DefaultTableModel) table.getModel();
//idtextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(),0).toString());
nametextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 1).toString());
agetextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 2).toString());
adresstextField.setText(dfDefaultTableModel.getValueAt(table.getSelectedRow(), 3).toString());
}
private void setTable(classstudents classstudents1) {
// TODO Auto-generated method stub
DefaultTableModel dft=(DefaultTableModel) table.getModel();
dft.setRowCount(0);
studentsthings cs=new studentsthings();
List<classstudents> classList=cs.getClassList(classstudents1);
for(classstudents cst:classList) {
Vector vector=new Vector();
vector.add(cst.getId());
vector.add(cst.getName());
vector.add(cst.getAge());
vector.add(cst.getAdress());
dft.addRow(vector);
}
}
}
报告截图:
1267





