?? frborrow.java
字號:
package mybook.book;
import java.awt.*;
import javax.swing.*;
import java.awt.Rectangle;
import javax.swing.BorderFactory;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import mydbc.dbc.DBC;
import java.sql.ResultSet;
import java.sql.*;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2008</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
//該類用于借書
public class FrBorrow extends JFrame {
public FrBorrow() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
getContentPane().setLayout(null);
setSize(new Dimension(323, 334));
this.setTitle("借書登記");
lblBid.setText("圖書編號:");
lblBid.setBounds(new Rectangle(64, 82, 63, 15));
jLabel8.setFont(new java.awt.Font("宋體", Font.BOLD, 20));
jLabel8.setText("借書登記");
jLabel8.setBounds(new Rectangle(111, 16, 101, 40));
btnSure.setBounds(new Rectangle(49, 235, 80, 30));
btnSure.setText("確定");
btnSure.addActionListener(new FrBorrow_btnSure_actionAdapter(this));
btnCancel.setBounds(new Rectangle(179, 235, 80, 30));
btnCancel.setText("取消");
btnCancel.addActionListener(new FrBorrow_btnCancel_actionAdapter(this));
txtRenttime.setBounds(new Rectangle(139, 184, 65, 20));
txtUid.setBounds(new Rectangle(139, 131, 66, 20));
txtBid.setBounds(new Rectangle(139, 77, 66, 20));
lblRenttime.setText("借書期限:");
lblRenttime.setBounds(new Rectangle(64, 182, 73, 15));
this.getContentPane().add(txtBid);
this.getContentPane().add(txtUid);
this.getContentPane().add(lblBid);
this.getContentPane().add(lblUid);
this.getContentPane().add(lblRenttime);
this.getContentPane().add(txtRenttime);
this.getContentPane().add(btnSure);
this.getContentPane().add(btnCancel);
this.getContentPane().add(jLabel8);
lblUid.setText("借書人編號:");
lblUid.setBounds(new Rectangle(64, 132, 74, 15));
}
JTable jTable1 = new JTable();
JLabel lblBid = new JLabel();
JLabel lblUid = new JLabel();
JLabel lblRenttime = new JLabel();
JTextField txtBid = new JTextField();
JTextField txtUid = new JTextField();
JTextField txtRenttime = new JTextField();
JLabel jLabel8 = new JLabel();
JButton btnSure = new JButton();
JButton btnCancel = new JButton();
//該方法用于退出
public void btnCancel_actionPerformed(ActionEvent e) {
this.setVisible(false);
}
//該方法用于提交借書信息
public void btnSure_actionPerformed(ActionEvent e) {
//欄位判斷
if (txtBid.getText().equals("") || txtUid.getText().equals("") ||
txtRenttime.getText().equals("")) {
javax.swing.JOptionPane.showMessageDialog(this, "各欄位不能為空!");
} else {
try {
//是否為數字型
Integer.parseInt(txtBid.getText());
Integer.parseInt(txtUid.getText());
Integer.parseInt(txtRenttime.getText());
} catch (NumberFormatException ex) {
javax.swing.JOptionPane.showMessageDialog(this, "各欄位必須均為數字!");
return;
}
DBC dbc = DBC.getInstance();
ResultSet rs1 = dbc.executeQuery("SELECT * FROM Books WHERE Bid = " +
Integer.parseInt(txtBid.getText()));
ResultSet rs2 = dbc.executeQuery("SELECT * FROM Users WHERE Uid = " +
Integer.parseInt(txtUid.getText()));
int uyue = 0;
int bprice = 0;
//查詢是否有此書信息
try {
rs1.next();
rs1.getInt("Bprice");
rs1.close();
} catch (SQLException ex1) {
javax.swing.JOptionPane.showMessageDialog(this,
"庫中無此書信息!請重新確認。");
return;
}
//查詢是否有該讀者信息
try {
rs2.next();
uyue = rs2.getInt("Uyue");
rs2.close();
} catch (SQLException ex2) {
javax.swing.JOptionPane.showMessageDialog(this, "無此讀者信息!請重新確認。");
return;
}
//判斷余額是否容許租借本書
if (uyue < bprice) {
javax.swing.JOptionPane.showMessageDialog(this, "該讀者余額不足以租借此書!");
return;
} else {
//更新相關數據并將該書庫存量減1
if(Integer.parseInt(txtRenttime.getText()) < 0){
javax.swing.JOptionPane.showMessageDialog(this,"時間不能為負數!");
return;
}
if (dbc.executeUpdate("INSERT OutBooks VALUES (" +
Integer.parseInt(txtBid.getText()) +
"," +
Integer.parseInt(txtUid.getText()) +
"," +
bprice +
",DEFAULT," +
Integer.parseInt(txtRenttime.getText()) +
",DEFAULT,DEFAULT)") &&
dbc.executeUpdate(
"UPDATE Books SET Bsum = Bsum-1 WHERE Bid =" +
Integer.parseInt(txtBid.getText()))) {
javax.swing.JOptionPane.showMessageDialog(this, "借書成功!");
} else {
javax.swing.JOptionPane.showMessageDialog(this,
"借書失敗!請重試。");
}
}
}
}
}
class FrBorrow_btnSure_actionAdapter implements ActionListener {
private FrBorrow adaptee;
FrBorrow_btnSure_actionAdapter(FrBorrow adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnSure_actionPerformed(e);
}
}
class FrBorrow_btnCancel_actionAdapter implements ActionListener {
private FrBorrow adaptee;
FrBorrow_btnCancel_actionAdapter(FrBorrow adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnCancel_actionPerformed(e);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -