代码如下
package org.lanqian.mimi;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.io.EOFException;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.JScrollPane;
public class TestMian extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField textField_1;
private JTextField textField_2;
private JTable table;
private List person =new ArrayList();
private String[] columnNames = {"密码","性别","爱好"};// 定义表格列名数组,"密码","性别","爱好","专业","出生年月"
private Person seletd;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
增删改查 frame = new 增删改查();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public 增删改查() {
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setBounds(100, 100, 595, 620);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel label = new JLabel("序号");
label.setBounds(14, 13, 43, 18);
contentPane.add(label);
textField = new JTextField();
textField.setBounds(56, 10, 86, 24);
contentPane.add(textField);
textField.setColumns(10);
JLabel label_1 = new JLabel("姓名");
label_1.setBounds(171, 13, 35, 18);
contentPane.add(label_1);
textField_1 = new JTextField();
textField_1.setBounds(220, 10, 86, 24);
contentPane.add(textField_1);
textField_1.setColumns(10);
JLabel label_2 = new JLabel("年龄");
label_2.setBounds(14, 47, 43, 18);
contentPane.add(label_2);
textField_2 = new JTextField();
textField_2.setBounds(56, 44, 86, 24);
contentPane.add(textField_2);
textField_2.setColumns(10);
JButton button = new JButton("增加");
button.setBounds(320, 9, 86, 27);
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
add();
}
});
contentPane.add(button);
JButton button_1 = new JButton("删除");
button_1.setBounds(420, 9, 80, 27);
button_1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int row = table.getSelectedRow();
System.out.println(row);
int a = table.getSelectedRows().length;
System.out.println(a);
if(row!=-1){
for(int i =0;i
person实体类
package org.lanqian.mimi;
import java.io.Serializable;
public class Person implements Serializable{
/**
*
*/
private static final long serialVersionUID = 5820406232562041052L;
private String fid;
private String fname;
private int fage;
public String getFid() {
return fid;
}
public void setFid(String fid) {
this.fid = fid;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public int getFage() {
return fage;
}
public void setFage(int fage) {
this.fage = fage;
}
public Person(String fid, String fname, int fage) {
super();
this.fid = fid;
this.fname = fname;
this.fage = fage;
}
public Person() {
super();
}
@Override
public String toString() {
return "Person [fid=" + fid + ", fname=" + fname + ", fage=" + fage
+ "]";
}
}
这是主界面,运行结果如下
下面是增加和刷新和修改的方法
//修改
public void modify(){
String aid = textField.getText();
String naem = textField_1.getText();
String age = textField_2.getText();
seletd.setFid(aid);
seletd.setFname(naem);
seletd.setFage(Integer.parseInt(age));
getinfo();
}
//增加
public void add(){
String aid = textField.getText();
String naem = textField_1.getText();
String age = textField_2.getText();
Person p = new Person(aid, naem, Integer.parseInt(age));
person.add(p);
getinfo();
textField.setText("");
textField_1.setText("");
textField_2.setText("");
}
//刷新
public void getinfo(){
System.out.println(person);
Object[][] tableValues = new Object[person.size()][];
for(int i =0;i
在退出程序的时候用输出流和对象流来保存数据
在点开程序的时候用输入流和对象流来读取数据