Java实现XML文件学生通讯录
作者:刺破黎明 发布时间:2023-07-23 19:21:49
标签:Java,XML,通讯录
java实现学生通讯录,使用XML文件作为数据存储,实现学生编号,姓名,年龄,住址,专业,生日等信息的添加,删除,修改,查找,备份,恢复,专业分类查找等功能。
项目需要导入dom4j.jar包。
/*
添加学生记录
*/
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.JButton;
import javax.swing.JComboBox;
public class AddPerson extends JFrame {
private JPanel contentPane;
private JTextField jt1;
private JTextField jt2;
private JTextField jt3;
private JTextField jt4;
private JTextField jt5;
private JTextField jt6;
private JTextField jt7;
public AddPerson() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 489);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(null);
setContentPane(contentPane);
JLabel jl1 = new JLabel("学生通讯录");
jl1.setFont(new Font("宋体", Font.PLAIN, 16));
jl1.setBounds(10, 0, 95, 29);
contentPane.add(jl1);
JLabel jl2 = new JLabel("学生编号");
jl2.setFont(new Font("宋体", Font.PLAIN, 16));
jl2.setBounds(51, 39, 65, 29);
contentPane.add(jl2);
JLabel jl3 = new JLabel("学生姓名");
jl3.setFont(new Font("宋体", Font.PLAIN, 16));
jl3.setBounds(51, 78, 65, 29);
contentPane.add(jl3);
JLabel jl4 = new JLabel("学生性别");
jl4.setFont(new Font("宋体", Font.PLAIN, 16));
jl4.setBounds(51, 117, 65, 29);
contentPane.add(jl4);
JLabel jl5 = new JLabel("学生年龄");
jl5.setFont(new Font("宋体", Font.PLAIN, 16));
jl5.setBounds(51, 163, 65, 29);
contentPane.add(jl5);
JLabel jl6 = new JLabel("出生日期");
jl6.setFont(new Font("宋体", Font.PLAIN, 16));
jl6.setBounds(51, 202, 65, 29);
contentPane.add(jl6);
JLabel jl7 = new JLabel("手机号码");
jl7.setFont(new Font("宋体", Font.PLAIN, 16));
jl7.setBounds(51, 250, 65, 29);
contentPane.add(jl7);
JLabel jl8 = new JLabel("电子邮箱");
jl8.setFont(new Font("宋体", Font.PLAIN, 16));
jl8.setBounds(51, 296, 65, 29);
contentPane.add(jl8);
JLabel jl9 = new JLabel("家庭住址");
jl9.setFont(new Font("宋体", Font.PLAIN, 16));
jl9.setBounds(51, 345, 65, 29);
contentPane.add(jl9);
JLabel jl10 = new JLabel("专业名称");
jl10.setFont(new Font("宋体", Font.PLAIN, 16));
jl10.setBounds(51, 389, 65, 29);
contentPane.add(jl10);
jt1 = new JTextField();
jt1.setBounds(129, 38, 150, 34);
contentPane.add(jt1);
jt1.setColumns(10);
jt2 = new JTextField();
jt2.setColumns(10);
jt2.setBounds(129, 83, 150, 34);
contentPane.add(jt2);
jt3 = new JTextField();
jt3.setColumns(10);
jt3.setBounds(129, 163, 150, 34);
contentPane.add(jt3);
jt4 = new JTextField();
jt4.setColumns(10);
jt4.setBounds(129, 201, 150, 34);
contentPane.add(jt4);
jt5 = new JTextField();
jt5.setColumns(10);
jt5.setBounds(129, 250, 150, 34);
contentPane.add(jt5);
jt6 = new JTextField();
jt6.setColumns(10);
jt6.setBounds(129, 301, 150, 34);
contentPane.add(jt6);
jt7 = new JTextField();
jt7.setColumns(10);
jt7.setBounds(129, 350, 150, 34);
contentPane.add(jt7);
JRadioButton radioButton = new JRadioButton("男",true);
radioButton.setBounds(139, 121, 65, 23);
contentPane.add(radioButton);
JRadioButton radioButton_1 = new JRadioButton("女");
radioButton_1.setBounds(221, 121, 121, 23);
contentPane.add(radioButton_1);
ButtonGroup bb=new ButtonGroup();
bb.add(radioButton);bb.add(radioButton_1);
JButton jb1 = new JButton("添加");
jb1.setFont(new Font("宋体", Font.PLAIN, 16));
jb1.setBounds(314, 78, 110, 61);
contentPane.add(jb1);
JButton jb2 = new JButton("关闭");
jb2.setFont(new Font("宋体", Font.PLAIN, 16));
jb2.setBounds(314, 167, 110, 61);
contentPane.add(jb2);
JButton jb3 = new JButton("清除");
jb3.setFont(new Font("宋体", Font.PLAIN, 16));
jb3.setBounds(314, 265, 110, 61);
contentPane.add(jb3);
String str1[]= {"计算机科学与技术","信息安全","电子信息科学与技术","网络工程"};
JComboBox comboBox=new JComboBox(str1); ;
comboBox.setBounds(126, 400, 155, 29);
contentPane.add(comboBox);
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
PersonOperatorDome ppp=new PersonOperatorDome();
if(ppp.SerachPersonbool(jt1.getText())) {
JOptionPane.showMessageDialog(null, "此ID已存在,请勿重复添加");
}
else {
Person pp=new Person();
PersonOperatorDome person=new PersonOperatorDome();
String sex;
if(radioButton.isSelected()) {
sex=radioButton.getText();
}
else {
sex=radioButton_1.getText();
}
pp.setId(jt1.getText());
pp.setName(jt2.getText());
pp.setSex(sex);
pp.setBirthday(jt4.getText());
pp.setAge(jt3.getText());
pp.setPhone(jt5.getText());
pp.setEmail(jt6.getText());
pp.setAddress(jt7.getText());
pp.setMajor(String.valueOf(comboBox.getSelectedItem()));
person.addPerson(pp);
JOptionPane.showMessageDialog(null, "添加成功");
}
}});
jb3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
jt1.setText("");
jt2.setText("");
jt3.setText("");
jt4.setText("");
jt5.setText("");
jt6.setText("");
jt7.setText("");
}
});
jb2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
dispose();
}
});
}
}
/*
人员信息类
*/
public class Person {
private String id;
private String name;
private String sex;
private String age;
private String birthday;
private String phone;
private String email;
private String address;
private String major;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
}
/*
人员操作接口
*/
import org.dom4j.Document;
public interface PersonOperator {
public void addPerson(Person person);
public void updatePerson(Person person);
public void deletePerson(String id);
public Person SerachPerson(String id);
public boolean SerachPersonbool(String id);
public void beifen();
public void huifu();
}
import java.io.File;
import java.io.FileOutputStream;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class PersonOperatorDome {
public void addPerson(Person person) {
try {
File file = new File("E:/person.xml");
Document doc = null;
Element rootElem = null;
if(!file.exists()) {
doc = DocumentHelper.createDocument();
rootElem = doc.addElement("personlist");
} else {
doc = new SAXReader().read(file);
rootElem = doc.getRootElement();
}
Element personElem = rootElem.addElement("person");
personElem.addAttribute("id", person.getId());
personElem.addElement("name").setText(person.getName());
personElem.addElement("sex").setText(person.getSex());
personElem.addElement("age").setText(person.getAge());
personElem.addElement("birthday").setText(person.getBirthday());
personElem.addElement("phone").setText(person.getPhone());
personElem.addElement("email").setText(person.getEmail());
personElem.addElement("address").setText(person.getAddress());
personElem.addElement("major").setText(person.getMajor());
XML.Writexml(doc);
} catch (Exception e) {
e.printStackTrace();
}
}
public void UpdataPerson(Person person) {
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
for(int i=0;i<persons.size();i++) {
Element test=(Element)persons.get(i);
if(person.getId().equals(test.attributeValue("id"))) {
for(Iterator it =test.elementIterator();it.hasNext();) {
Element node=(Element)it.next();
String type=node.getName();
if("name".equals(type)) {
node.setText(person.getName());
}
if("sex".equals(type)) {
node.setText(person.getSex());
}
if("age".equals(type)) {
node.setText(person.getAge());
}
if("birthday".equals(type)) {
node.setText(person.getBirthday());
}
if("phone".equals(type)) {
node.setText(person.getPhone());
}
if("email".equals(type)) {
node.setText(person.getEmail());
}
if("address".equals(type)) {
node.setText(person.getAddress());
}
if("major".equals(type)) {
node.setText(person.getMajor());
}
}
}
}
XML.Writexml(doc);
}
public void beifen() {
Document doc1 = XML.getDocument();
try {
File file = new File("E:/persondome.xml");
Document doc = null;
Element rootElem = null;
if(!file.exists()) {
doc = DocumentHelper.createDocument();
rootElem = doc.addElement("personlist");
} else {
doc = new SAXReader().read(file);
rootElem = doc.getRootElement();
}
}catch (Exception e) {
e.printStackTrace();
}
try {
//3.把Document写到XML文件
FileOutputStream out = new FileOutputStream("e:/persondome.xml");
//书写格式(优美的格式)
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(out,format);
writer.write(doc1);
writer.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException();
}
}
public void huifu() {
Document doc1 = XML.getDocument1();
try {
FileOutputStream out = new FileOutputStream("e:/person.xml");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(out,format);
writer.write(doc1);
writer.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException();
}
}
public void deletePerson(String id) {
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(id.equals(test.attributeValue("id"))) {
test.detach();
break;
}
}
XML.Writexml(doc);
}
public boolean SerachPersonbool(String id) {
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
Person person=new Person();
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(id.equals(test.attributeValue("id"))) {
return true;
}
}
return false;
}
public Person SerachPerson(String id) {
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
Person person=new Person();
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(id.equals(test.attributeValue("id"))) {
for(Iterator it =test.elementIterator();it.hasNext();) {
Element node=(Element)it.next();
String type=node.getName();
if("name".equals(type)) {
person.setName(node.getText());
}
if("sex".equals(type)) {
person.setSex(node.getText());
}
if("age".equals(type)) {
person.setAge(node.getText());
}
if("birthday".equals(type)) {
person.setBirthday(node.getText());
}
if("phone".equals(type)) {
person.setPhone(node.getText());
}
if("email".equals(type)) {
person.setEmail(node.getText());
}
if("address".equals(type)) {
person.setAddress(node.getText());
}
if("major".equals(type)) {
person.setMajor(node.getText());
}
}
}
}
return person;
}
}
/*
查找
*/
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.JButton;
import javax.swing.JComboBox;
public class SerachPerson extends JFrame {
private JPanel contentPane;
private JTextField jt1;
private JTextField jt2;
private JTextField jt3;
private JTextField jt4;
private JTextField jt5;
private JTextField jt6;
private JTextField jt7;
public SerachPerson() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 489);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(null);
setContentPane(contentPane);
JLabel jl1 = new JLabel("学生通讯录");
jl1.setFont(new Font("宋体", Font.PLAIN, 16));
jl1.setBounds(10, 0, 95, 29);
contentPane.add(jl1);
JLabel jl2 = new JLabel("学生编号");
jl2.setFont(new Font("宋体", Font.PLAIN, 16));
jl2.setBounds(51, 39, 65, 29);
contentPane.add(jl2);
JLabel jl3 = new JLabel("学生姓名");
jl3.setFont(new Font("宋体", Font.PLAIN, 16));
jl3.setBounds(51, 78, 65, 29);
contentPane.add(jl3);
JLabel jl4 = new JLabel("学生性别");
jl4.setFont(new Font("宋体", Font.PLAIN, 16));
jl4.setBounds(51, 117, 65, 29);
contentPane.add(jl4);
JLabel jl5 = new JLabel("学生年龄");
jl5.setFont(new Font("宋体", Font.PLAIN, 16));
jl5.setBounds(51, 163, 65, 29);
contentPane.add(jl5);
JLabel jl6 = new JLabel("出生日期");
jl6.setFont(new Font("宋体", Font.PLAIN, 16));
jl6.setBounds(51, 202, 65, 29);
contentPane.add(jl6);
JLabel jl7 = new JLabel("手机号码");
jl7.setFont(new Font("宋体", Font.PLAIN, 16));
jl7.setBounds(51, 250, 65, 29);
contentPane.add(jl7);
JLabel jl8 = new JLabel("电子邮箱");
jl8.setFont(new Font("宋体", Font.PLAIN, 16));
jl8.setBounds(51, 296, 65, 29);
contentPane.add(jl8);
JLabel jl9 = new JLabel("家庭住址");
jl9.setFont(new Font("宋体", Font.PLAIN, 16));
jl9.setBounds(51, 345, 65, 29);
contentPane.add(jl9);
JLabel jl10 = new JLabel("专业名称");
jl10.setFont(new Font("宋体", Font.PLAIN, 16));
jl10.setBounds(51, 389, 65, 29);
contentPane.add(jl10);
jt1 = new JTextField();
jt1.setBounds(129, 38, 150, 34);
contentPane.add(jt1);
jt1.setColumns(10);
jt2 = new JTextField();
jt2.setColumns(10);
jt2.setBounds(129, 83, 150, 34);
contentPane.add(jt2);
jt3 = new JTextField();
jt3.setColumns(10);
jt3.setBounds(129, 163, 150, 34);
contentPane.add(jt3);
jt4 = new JTextField();
jt4.setColumns(10);
jt4.setBounds(129, 201, 150, 34);
contentPane.add(jt4);
jt5 = new JTextField();
jt5.setColumns(10);
jt5.setBounds(129, 250, 150, 34);
contentPane.add(jt5);
jt6 = new JTextField();
jt6.setColumns(10);
jt6.setBounds(129, 301, 150, 34);
contentPane.add(jt6);
jt7 = new JTextField();
jt7.setColumns(10);
jt7.setBounds(129, 350, 150, 34);
contentPane.add(jt7);
JRadioButton radioButton = new JRadioButton("男",true);
radioButton.setBounds(139, 121, 65, 23);
contentPane.add(radioButton);
JRadioButton radioButton_1 = new JRadioButton("女");
radioButton_1.setBounds(221, 121, 79, 23);
contentPane.add(radioButton_1);
ButtonGroup bb=new ButtonGroup();
bb.add(radioButton);bb.add(radioButton_1);
JButton jb1 = new JButton("查找");
jb1.setFont(new Font("宋体", Font.PLAIN, 16));
jb1.setBounds(314, 78, 110, 61);
contentPane.add(jb1);
JButton jb2 = new JButton("关闭");
jb2.setFont(new Font("宋体", Font.PLAIN, 16));
jb2.setBounds(314, 280, 110, 61);
contentPane.add(jb2);
JButton jb3 = new JButton("清除");
jb3.setFont(new Font("宋体", Font.PLAIN, 16));
jb3.setBounds(314, 357, 110, 61);
contentPane.add(jb3);
JButton jb4 = new JButton("修改");
jb4.setFont(new Font("宋体", Font.PLAIN, 16));
jb4.setBounds(314, 174, 110, 61);
contentPane.add(jb4);
String str1[]= {"计算机科学与技术","信息安全","电子信息科学与技术","网络工程"};
JComboBox comboBox = new JComboBox(str1);
comboBox.setBounds(126, 394, 153, 29);
contentPane.add(comboBox);
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
PersonOperatorDome person=new PersonOperatorDome();
String id=jt1.getText();
Person pp=person.SerachPerson(id);
jt2.setText(pp.getName());
if(radioButton.getText().equals(pp.getSex())) {
radioButton.setSelected(true);
}else {
radioButton_1.setSelected(true);
}
jt3.setText(pp.getAge());
jt4.setText(pp.getBirthday());
jt5.setText(pp.getPhone());
jt6.setText(pp.getEmail());
jt7.setText(pp.getAddress());
if(pp.getMajor().equals("计算机科学与技术")) comboBox.setSelectedIndex(0);
if(pp.getMajor().equals("信息安全")) comboBox.setSelectedIndex(1);
if(pp.getMajor().equals("电子信息科学与技术")) comboBox.setSelectedIndex(2);
if(pp.getMajor().equals("网络工程")) comboBox.setSelectedIndex(3);
}
});
jb3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
jt1.setText("");
jt2.setText("");
jt3.setText("");
jt4.setText("");
jt5.setText("");
jt6.setText("");
jt7.setText("");
}
});
jb2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
dispose();
}
});
jb4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Person pp=new Person();
PersonOperatorDome person=new PersonOperatorDome();
String sex;
if(radioButton.isSelected()) {
sex=radioButton.getText();
}
else {
sex=radioButton_1.getText();
}
pp.setId(jt1.getText());
pp.setName(jt2.getText());
pp.setSex(sex);
pp.setBirthday(jt4.getText());
pp.setAge(jt3.getText());
pp.setPhone(jt5.getText());
pp.setEmail(jt6.getText());
pp.setAddress(jt7.getText());
pp.setMajor(String.valueOf(comboBox.getSelectedItem()));
person.UpdataPerson(pp);
JOptionPane.showMessageDialog(null, "修改成功");
}});
}
}
import java.io.File;
import java.io.FileOutputStream;
import org.dom4j.Document;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class XML {
public static Document getDocument() {
try {
Document doc = new SAXReader().read(new File("e:/person.xml"));
return doc;
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static Document getDocument1() {
try {
Document doc = new SAXReader().read(new File("e:/persondome.xml"));
return doc;
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
/*
* 写出XML文件
*/
public static void Writexml(Document doc) {
try {
//3.把Document写到XML文件
FileOutputStream out = new FileOutputStream("e:/person.xml");
//书写格式(优美的格式)
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(out,format);
writer.write(doc);
writer.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException();
}
}
}
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.JTextArea;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import org.dom4j.Document;
import org.dom4j.Element;
public class MainContral extends JFrame {
private JPanel contentPane;
private JTable table;
public MainContral() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1200, 392);
contentPane = new JPanel();
contentPane.setLayout(null);
setContentPane(contentPane);
JButton jb1 = new JButton("添加");
jb1.setFont(new Font("宋体", Font.PLAIN, 16));
jb1.setBounds(23, 10, 101, 48);
contentPane.add(jb1);
JButton jb3 = new JButton("删除");
jb3.setFont(new Font("宋体", Font.PLAIN, 16));
jb3.setBounds(134, 10, 101, 48);
contentPane.add(jb3);
JButton jb4 = new JButton("\u67E5\u627E\u4E0E\u4FEE\u6539");
jb4.setFont(new Font("宋体", Font.PLAIN, 16));
jb4.setBounds(245, 10, 139, 48);
contentPane.add(jb4);
JButton jb5 = new JButton("显示全部");
jb5.setFont(new Font("宋体", Font.PLAIN, 16));
jb5.setBounds(394, 10, 126, 48);
contentPane.add(jb5);
JRadioButton radioButton = new JRadioButton("计算机科学与技术");
radioButton.setFont(new Font("宋体", Font.PLAIN, 16));
radioButton.setBounds(23, 89, 161, 23);
contentPane.add(radioButton);
JRadioButton radioButton_1 = new JRadioButton("信息安全");
radioButton_1.setFont(new Font("宋体", Font.PLAIN, 16));
radioButton_1.setBounds(186, 89, 101, 23);
contentPane.add(radioButton_1);
JRadioButton radioButton_2 = new JRadioButton("电子信息科学与技术");
radioButton_2.setFont(new Font("宋体", Font.PLAIN, 16));
radioButton_2.setBounds(289, 89, 174, 23);
contentPane.add(radioButton_2);
JRadioButton radioButton_3 = new JRadioButton("网络工程");
radioButton_3.setFont(new Font("宋体", Font.PLAIN, 16));
radioButton_3.setBounds(465, 89, 101, 23);
contentPane.add(radioButton_3);
JRadioButton radioButton_4 = new JRadioButton("全部");
radioButton_4.setFont(new Font("宋体", Font.PLAIN, 16));
radioButton_4.setBounds(568, 89, 121, 23);
contentPane.add(radioButton_4);
ButtonGroup bb=new ButtonGroup();
bb.add(radioButton);
bb.add(radioButton_3);
bb.add(radioButton_2);
bb.add(radioButton_1);
bb.add(radioButton_4);
table = new JTable();
table.setFont(new Font("宋体", Font.PLAIN, 16));
table.setModel(new DefaultTableModel(
new Object[][] {
},
new String[] {
"\u7F16\u53F7", "\u59D3\u540D", "\u6027\u522B", "\u5E74\u9F84", "\u751F\u65E5", "\u7535\u8BDD", "\u90AE\u7BB1", "\u5730\u5740", "\u4E13\u4E1A"
}
));
DefaultTableModel model = (DefaultTableModel) table.getModel();
Object[] rowData= {"编号","姓名","性别","年龄","生日","电话","邮箱","地址","专业"};
model.addRow(rowData);
//JScrollPane scroll = new JScrollPane(table);
table.setBounds(23, 131, 1100, 212);
contentPane.add(table);
JButton jb6 = new JButton("备份");
jb6.setFont(new Font("宋体", Font.PLAIN, 16));
jb6.setBounds(530, 10, 101, 48);
contentPane.add(jb6);
JButton jb7 = new JButton("恢复");
jb7.setFont(new Font("宋体", Font.PLAIN, 16));
jb7.setBounds(641, 10, 101, 48);
contentPane.add(jb7);
jb6.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
PersonOperatorDome p=new PersonOperatorDome();
p.beifen();
JOptionPane.showMessageDialog(null, "备份成功");
}
});
jb7.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
PersonOperatorDome p=new PersonOperatorDome();
p.huifu();
JOptionPane.showMessageDialog(null, "恢复成功");
}
});
jb1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
AddPerson test=new AddPerson();
test.setVisible(true);
}
});
jb3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int count1=table.getSelectedRow();
String id= table.getValueAt(count1, 0).toString();
PersonOperatorDome p=new PersonOperatorDome();
p.deletePerson(id);
JOptionPane.showMessageDialog(null, "删除成功");
}
});
jb4.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
SerachPerson test=new SerachPerson();
test.setVisible(true);
}
});
jb5.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
PersonOperatorDome person=new PersonOperatorDome();
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
DefaultTableModel model = (DefaultTableModel) table.getModel();
while(model.getRowCount()>1){
model.removeRow(model.getRowCount()-1);
}
for(int i=0;i<persons.size();i++) {
Element test=(Element)persons.get(i);
Person person1=new Person();
person1.setId(test.attributeValue("id"));
person1.setName(test.elementText("name"));
person1.setSex(test.elementText("sex"));
person1.setAge(test.elementText("age"));
person1.setPhone(test.elementText("phone"));
person1.setEmail(test.elementText("email"));
person1.setBirthday(test.elementText("birthday"));
person1.setAddress(test.elementText("address"));
person1.setMajor(test.elementText("major"));
Object[] rowData = {person1.getId(), person1.getName(),person1.getSex(),person1.getAge(), person1.getBirthday(), person1.getPhone(), person1.getEmail(),person1.getAddress(),person1.getMajor()};
model.addRow(rowData);
}
radioButton_4.setSelected(true);
}
});
radioButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
String str=radioButton.getText();
Person person1=new Person();
DefaultTableModel model = (DefaultTableModel) table.getModel();
while(model.getRowCount()>1){
model.removeRow(model.getRowCount()-1);
}
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(str.equals(test.element("major").getText())) {
person1.setId(test.attributeValue("id"));
person1.setName(test.elementText("name"));
person1.setSex(test.elementText("sex"));
person1.setAge(test.elementText("age"));
person1.setPhone(test.elementText("phone"));
person1.setEmail(test.elementText("email"));
person1.setBirthday(test.elementText("birthday"));
person1.setAddress(test.elementText("address"));
person1.setMajor(test.elementText("major"));
Object[] rowData = {person1.getId(), person1.getName(),person1.getSex(),person1.getAge(), person1.getBirthday(), person1.getPhone(), person1.getEmail(),person1.getAddress(),person1.getMajor()};
model.addRow(rowData);
}
}
}
});
radioButton_1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
String str=radioButton_1.getText();
Person person1=new Person();
DefaultTableModel model = (DefaultTableModel) table.getModel();
while(model.getRowCount()>1){
model.removeRow(model.getRowCount()-1);
}
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(str.equals(test.element("major").getText())) {
person1.setId(test.attributeValue("id"));
person1.setName(test.elementText("name"));
person1.setSex(test.elementText("sex"));
person1.setAge(test.elementText("age"));
person1.setPhone(test.elementText("phone"));
person1.setEmail(test.elementText("email"));
person1.setBirthday(test.elementText("birthday"));
person1.setAddress(test.elementText("address"));
person1.setMajor(test.elementText("major"));
Object[] rowData = {person1.getId(), person1.getName(),person1.getSex(),person1.getAge(), person1.getBirthday(), person1.getPhone(), person1.getEmail(),person1.getAddress(),person1.getMajor()};
model.addRow(rowData);
}
}
}
});
radioButton_2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
String str=radioButton_2.getText();
Person person1=new Person();
DefaultTableModel model = (DefaultTableModel) table.getModel();
while(model.getRowCount()>1){
model.removeRow(model.getRowCount()-1);
}
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(str.equals(test.element("major").getText())) {
person1.setId(test.attributeValue("id"));
person1.setName(test.elementText("name"));
person1.setSex(test.elementText("sex"));
person1.setAge(test.elementText("age"));
person1.setPhone(test.elementText("phone"));
person1.setEmail(test.elementText("email"));
person1.setBirthday(test.elementText("birthday"));
person1.setAddress(test.elementText("address"));
person1.setMajor(test.elementText("major"));
Object[] rowData = {person1.getId(), person1.getName(),person1.getSex(),person1.getAge(), person1.getBirthday(), person1.getPhone(), person1.getEmail(),person1.getAddress(),person1.getMajor()};
model.addRow(rowData);
}
}
}
});
radioButton_3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
Document doc = XML.getDocument();
Element root=doc.getRootElement();
List persons=root.elements();
String str=radioButton_3.getText();
Person person1=new Person();
DefaultTableModel model = (DefaultTableModel) table.getModel();
while(model.getRowCount()>1){
model.removeRow(model.getRowCount()-1);
}
for(int i=0;i<persons.size();i++) {
Element test =(Element)persons.get(i);
if(str.equals(test.element("major").getText())) {
person1.setId(test.attributeValue("id"));
person1.setName(test.elementText("name"));
person1.setSex(test.elementText("sex"));
person1.setAge(test.elementText("age"));
person1.setPhone(test.elementText("phone"));
person1.setEmail(test.elementText("email"));
person1.setBirthday(test.elementText("birthday"));
person1.setAddress(test.elementText("address"));
person1.setMajor(test.elementText("major"));
Object[] rowData = {person1.getId(), person1.getName(),person1.getSex(),person1.getAge(), person1.getBirthday(), person1.getPhone(), person1.getEmail(),person1.getAddress(),person1.getMajor()};
model.addRow(rowData);
}
}
}
});
}
public static void main(String[] args) {
MainContral test1=new MainContral();
test1.setVisible(true);
}
}
来源:http://blog.csdn.net/CUMTLZ/article/details/79181743


猜你喜欢
- 先看看代码再说:package com.b510.note; import java.math.BigInteger;
- ScrollView可实现控件在超出屏幕范围的情况下滚动显示。用法:在XML文件中将需滚动的控件包含在ScrollView中,当控件超出屏幕
- Spring如何使用 * 缓存解决循环依赖在没开始文章之前首先来了解一下什么是循环依赖@Componentpublic class A {@A
- 返回值转成JSONString的处理主要需求描述有些返回值中的null需要转换成“”或[],另外有些
- 在协程启动模式中已经知道async是可以返回结果的,但是只返回一个,那么在复杂场景下就会不够用了,所以Channel就出现了。1.认识Cha
- 本文实例讲述了java中javamail发送带附件的邮件实现方法。分享给大家供大家参考。具体分析如下:JavaMail,顾名思义,提供给开发
- 封装:就是把一些属性和方法封装到一个类里。 继承:就如子类继承父类的一些属性和方法。 多态:就如一个父类有多个不同特色的子类。 这里我就不多
- 一:背景1.讲故事前段时间分析了一个dump,一顿操作之后,我希望用外力来阻止程序内部对某一个com组件的调用,对,就是想借助外力实现,如果
- spring cloud oauth2 feign 遇到的坑关于oauth2相关的内容这里不重复描述,在spring cloud中在管理内部
- 常用事件的分类Java AWT里面的事件可以简单的分为窗体事件(WindowEvent),鼠标事件(MouseEvent),键盘事件(Key
- 由于需要访问MongoDB,但是本地开发环境不能直接连接MongoDB,需要通过SecureCRT使用127.0.0.2本地IP代理。但是程
- 前段时间由于VSS上的一个项目要给2个公司开发使用,而2个公司的需求不同 就把该项目复制到VSS上的另外一个目录,结果在别人的电脑取出并打开
- 在很多场景中我们需要验证时间日期的是否属于正确的格式,验证时间是否符合常规的。1、验证 yyyy-MM-dd HH:mm:dd 格式的日期S
- 本文实例为大家分享了Java实现部门员工管理的具体代码,供大家参考,具体内容如下项目作业:部门员工管理题目要求:某公司要开发内部的 &
- 作者: juky_huang 事件的简单解释: 事件是对象发送的消息,以发信号通知操作的发生。操作可能是由用户交互(例如
- Web Fragment 是什么 - 它是在 servlet 3.0开始支持的,可以把一个dy web项目拆分为多个项目,解耦合,使其在项目
- select 相当于 for 循环select id from IDArrayLinkedList a = new LinkedList()
- 本文实例为大家分享了C#多线程Thread使用的示例代码,供大家参考,具体内容如下多线程:线程生命周期状态图:C#线程优先级(概率高低):基
- 前言Inotify会对工程内的所有文件夹设置”watch handle”。不幸的是,Linux默认的watch handle的限值不能满足实
- 工程搭建1.File->new->project;2.选择“Spring Initializr”,点击next;(jdk1.8默