📄 employee.java
字号:
package UI;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
import java.sql.*;
import DB.*;
public class Employee extends JPanel
implements ListSelectionListener,ActionListener
{
private JLabel jId = new JLabel("编号");
private JLabel jName = new JLabel("姓名");
private JLabel jDeptName = new JLabel("部门名称");
private JLabel jEmail = new JLabel("邮箱");
private JLabel jTel = new JLabel("电话");
private JList list;
private DefaultListModel listModel = new DefaultListModel();
private JButton insert;
private JButton del;
private JButton modify;
private JButton save;
private JTextField id;
private JTextField name;
private JTextField deptName;
private JTextField email;
private JTextField tel;
DB db;
ResultSet rs;
String sql1 = "select name from employee;";
public Employee()
{
try{
db = new DB();
rs = db.search(sql1);
while(rs.next())
{
String sName = rs.getString("name");
listModel.addElement(sName);
}
}
catch(Exception e)
{
e.printStackTrace();
}
this.setLayout(null);
list = new JList(listModel);
list.addListSelectionListener(this);
JScrollPane listScrollPane = new JScrollPane(list);
listScrollPane.setBounds(50,50,200,400);
this.setSize(800,600);
this.add(listScrollPane);
insert = new JButton("添加"); insert.setBounds(50,500,70,30);
insert.addActionListener(this);
del = new JButton("删除"); del.setBounds(150,500,70,30);
del.addActionListener(this);
modify = new JButton("修改"); modify.setBounds(250,500,70,30);
modify.addActionListener(this);
save = new JButton("保存"); save.setBounds(350,500,70,30);
save.setEnabled(false);save.addActionListener(this);
jId.setBounds(300,50,100,40);
jName.setBounds(300,140,100,40);
jDeptName.setBounds(300,230,100,40);
jEmail.setBounds(300,320,100,40);
jTel.setBounds(300, 410, 100, 40);
id = new JTextField(); id.setBounds(400,50,250,40);id.setEditable(false);
name = new JTextField(); name.setBounds(400,140,250,40);name.setEditable(false);
deptName = new JTextField(); deptName.setBounds(400,230,250,40);deptName.setEditable(false);
email = new JTextField(); email.setBounds(400,320,250,40);email.setEditable(false);
tel = new JTextField(); tel.setBounds(400, 410, 250, 40);tel.setEditable(false);
this.add(jId);
this.add(jName);
this.add(jDeptName);
this.add(jEmail);
this.add(jTel);
this.add(insert);
this.add(del);
this.add(modify);
this.add(save);
this.add(id);
this.add(name);
this.add(deptName);
this.add(email);
this.add(tel);
db = new DB();
}
public void valueChanged(ListSelectionEvent e) {
String sName = (String)list.getSelectedValue();
String sID = null;
String sDeptName = null;
String sEmail = null;
String sTel = null;
String sqlSelect = "select * from employee where name = '"+sName+"';";
try {
rs.close();
rs = db.search(sqlSelect);
while(rs.next())
{
sName = rs.getString("name");
sID = rs.getString("id");
sDeptName = rs.getString("deptName");
sEmail = rs.getString("email");
sTel = rs.getString("tel");
}
id.setText(sID);
name.setText(sName);
deptName.setText(sDeptName);
email.setText(sEmail);
tel.setText(sTel);
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == insert)
{
int index = listModel.getSize();
new InsertEmployee(list,index);
}
if(e.getSource() == del)
{
String temp = (String) list.getSelectedValue();
int index = list.getSelectedIndex();
String sqlDel = "delete from employee where name='"+temp+"';";
db.update(sqlDel);
listModel.removeElementAt(index);
int size = listModel.getSize();
if(size == 0)
del.setEnabled(false);
else{
if (index == listModel.getSize()) {
index--;
}
}
list.setSelectedIndex(index);
list.ensureIndexIsVisible(index);
}
if(e.getSource() == modify)
{
//String select = (String) list.getSelectedValue();
name.setEditable(true);
id.setEditable(true);
deptName.setEditable(true);
email.setEditable(true);
tel.setEditable(true);
save.setEnabled(true);
modify.setEnabled(false);
insert.setEnabled(false);
del.setEnabled(false);
}
if(e.getSource() == save)
{
String select = (String) list.getSelectedValue();
int index = list.getSelectedIndex();
String sName = name.getText();
String sID = id.getText();
String sDeptName = deptName.getText();
String sEmail = email.getText();
String sTel = tel.getText();
String sqlSave = "update employee set id='"+ sID+"'," +
"name='"+sName+"',DeptName='"+sDeptName+"',email='"+sEmail+"',tel='"+sTel+"'"+
"where name='"+select+"';";
db.update(sqlSave);
listModel.set(index,sName);
name.setEditable(false);
id.setEditable(false);
deptName.setEditable(false);
email.setEditable(false);
tel.setEditable(false);
save.setEnabled(false);
modify.setEnabled(true);
insert.setEnabled(true);
del.setEnabled(true);
}
}
public static void main(String args[])
{
JFrame f = new JFrame();
f.add(new Employee());
f.setSize(800,600);
f.setVisible(true);
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -