📄 readermodify.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class ReaderModify
extends JFrame
implements ActionListener {
DataBaseManager db = new DataBaseManager();
ResultSet rs;
JPanel panel1, panel2, panel3;
JLabel TipLabel = new JLabel("输入学号点确定,将调出此书相关信息");
JLabel ReadernoLabel, ReaderNameLabel,//用于短文本字符串或图像或二者的显示区
ReaderTypeLabel, sexLabel,PartLabel, AddressLabel,
TelephoneLabel, EmailLabel,IntimeLabel,ComLabel;
JTextField ReadernoTextField, ReaderNameTextField,//JTextField允许编辑单行文本
ReaderTypeTextField, sexTextField,PartTextField,
AddressTextField, TelephoneTextField,EmailTextField,IntimeTextField,ComTextField;
Container c;
JButton clearBtn, yesBtn, updateBtn, exitBtn;
public ReaderModify() {
super("修改读者信息");
c = getContentPane();
c.setLayout(new BorderLayout());
panel3 = new JPanel();
panel3.add(TipLabel);
c.add(panel3, BorderLayout.NORTH);
ReadernoLabel = new JLabel("学号", JLabel.CENTER);//显示名称
ReaderNameLabel = new JLabel("姓名", JLabel.CENTER);
ReaderTypeLabel= new JLabel("类型", JLabel.CENTER);
sexLabel = new JLabel("性别", JLabel.CENTER);
PartLabel = new JLabel("单位", JLabel.CENTER);
AddressLabel = new JLabel("地址", JLabel.CENTER);
TelephoneLabel = new JLabel("电话", JLabel.CENTER);
EmailLabel= new JLabel("电子邮件",JLabel.CENTER);
IntimeLabel = new JLabel("登记日期",JLabel.CENTER);
ComLabel = new JLabel("备注", JLabel.CENTER);
ReadernoTextField = new JTextField(20);//文本框的宽度可以容纳20个字符
ReaderNameTextField = new JTextField(20);
ReaderTypeTextField = new JTextField(20);
sexTextField = new JTextField(20);
PartTextField = new JTextField(20);
AddressTextField = new JTextField(20);
TelephoneTextField = new JTextField(20);
EmailTextField = new JTextField(20);
IntimeTextField = new JTextField(20);
ComTextField = new JTextField(20);
panel1 = new JPanel();
panel1.setLayout(new GridLayout(10, 2));
panel1.add(ReadernoLabel);
panel1.add(ReadernoTextField);
panel1.add(ReaderNameLabel);
panel1.add(ReaderNameTextField);
panel1.add(ReaderTypeLabel);
panel1.add(ReaderTypeTextField);
panel1.add(sexLabel);
panel1.add(sexTextField);
panel1.add(PartLabel);
panel1.add(PartTextField);
panel1.add(AddressLabel);
panel1.add(AddressTextField);
panel1.add(TelephoneLabel);
panel1.add(TelephoneTextField);
panel1.add(EmailLabel);
panel1.add(EmailTextField);
panel1.add(IntimeLabel);
panel1.add(IntimeTextField);
panel1.add(ComLabel);
panel1.add(ComTextField);
panel2 = new JPanel();
panel2.setLayout(new GridLayout(1, 4));
clearBtn = new JButton("清空");
yesBtn = new JButton("确定");
updateBtn = new JButton("更新");
exitBtn = new JButton("退出");
panel2.add(clearBtn);
panel2.add(yesBtn);
panel2.add(updateBtn);
panel2.add(exitBtn);
clearBtn.addActionListener(this);
yesBtn.addActionListener(this);
updateBtn.addActionListener(this);
exitBtn.addActionListener(this);
updateBtn.setEnabled(false);
c.add(panel1, BorderLayout.CENTER);
c.add(panel2, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == exitBtn) {//退出
this.dispose();
}
else if (e.getSource() == clearBtn) {//清空按钮将所有文本框中的内容清空
ReadernoTextField.setText("");//设置文本框为空
ReaderNameTextField.setText("");
ReaderTypeTextField.setText("");
sexTextField.setText("");
PartTextField.setText("");
AddressTextField.setText("");
TelephoneTextField.setText("");
EmailTextField.setText("");
IntimeTextField.setText("");
ComTextField.setText("");
}
else if (e.getSource() == yesBtn) {//确定按钮将图书信息读出
try {
String strSQL = "select * from readers where Readerno='" +
ReadernoTextField.getText().trim() + "'";
if (ReadernoTextField.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null, "请输入学号:<*v*>");
}
else if (!db.getResult(strSQL).first()) {
JOptionPane.showMessageDialog(null, "没有此读者");
}
else {
rs = db.getResult(strSQL);
rs.first();
ReaderNameTextField.setText(rs.getString(2).trim());
ReaderTypeTextField.setText(rs.getString(3).trim());
sexTextField.setText(rs.getString(4).trim());
PartTextField.setText(rs.getString(5).trim());
AddressTextField.setText(rs.getString(6).trim());
TelephoneTextField.setText(rs.getString(7).trim());
EmailTextField.setText(rs.getString(8).trim());
IntimeTextField.setText(rs.getString(9).trim());
ComTextField.setText(rs.getString(10).trim());
updateBtn.setEnabled(true);
}
}
catch (NullPointerException upe) {//空指针
System.out.println(upe.toString());
}
catch (SQLException sqle) {//数据库连接不成功
System.out.println(sqle.toString());
}
catch (Exception ex) {
System.out.println(ex.toString());
}
}
else if (e.getSource() == updateBtn) {//更新
try {
String strSQL = "update readers set ReaderName='" +
ReaderNameTextField.getText().trim() + "',ReaderType='" +
ReaderTypeTextField.getText().trim() + "',sex='" +
sexTextField.getText().trim() + "',Part='" +
PartTextField.getText().trim() + "',Address='" +
AddressTextField.getText().trim() + "',Telephone='" +
TelephoneTextField.getText().trim() + "',Email='" +
EmailTextField.getText().trim() + "',Intime='" +
IntimeTextField.getText().trim() + "',Com='" +
ComTextField.getText().trim() + "'where Readerno='"+
ReadernoTextField.getText().trim()+"'";
if (db.updateSql(strSQL)>0) {
JOptionPane.showMessageDialog(null, "更新读者信息成功!");
db.closeConnection();
this.dispose();
}
else {
JOptionPane.showMessageDialog(null, "更新读者信息失败!");
db.closeConnection();
this.dispose();
}
}
catch (Exception ex) {
System.out.println(ex.toString());
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -