📄 returninfo.java
字号:
package library.info;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.GregorianCalendar;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import library.hibernate.BookBrowse;
import library.main.HibernateUtil;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
/**
* 修改还书信息类
*
* @author lianhw
*
*/
public class ReturnInfo extends JFrame implements ActionListener {
JPanel panel1, panel2;
Container container;
JLabel tipLabel = new JLabel("输入还书者姓名和书名点击确定,将调出此书的相关信息");
JLabel returnedBookStudentLabel, returnedBookNameLabel, returnedDateLabel,
returnedCommentLabel;
JTextField returnedBookStudentText, returnedBookNameText, returnedDateText,
returnedCommentText;
JButton clearButton, yesButton, updateButton, cancelButton;
public ReturnInfo() {
super("修改书籍还入信息");
container = getContentPane();
container.setLayout(new BorderLayout());
container.add(tipLabel, BorderLayout.NORTH);
// “还书者姓名”标签
returnedBookStudentLabel = new JLabel("还书者姓名", JLabel.CENTER);
// “书名”标签
returnedBookNameLabel = new JLabel("书名", JLabel.CENTER);
// “还书日期”标签
returnedDateLabel = new JLabel("还书日期", JLabel.CENTER);
// “备注”标签
returnedCommentLabel = new JLabel("备注", JLabel.CENTER);
// 输入还书学生姓名文本框
returnedBookStudentText = new JTextField(15);
// 输入还书名称文本框
returnedBookNameText = new JTextField(15);
// 输入还书日期文本框
returnedDateText = new JTextField(15);
// 输入还书备注文本框
returnedCommentText = new JTextField(15);
panel1 = new JPanel();
panel1.setLayout(new GridLayout(4, 2));
panel1.add(returnedBookStudentLabel);
panel1.add(returnedBookStudentText);
panel1.add(returnedBookNameLabel);
panel1.add(returnedBookNameText);
panel1.add(returnedDateLabel);
panel1.add(returnedDateText);
panel1.add(returnedCommentLabel);
panel1.add(returnedCommentText);
container.add(panel1, BorderLayout.CENTER);
panel2 = new JPanel();
panel2.setLayout(new GridLayout(1, 4));
// “清空”按钮
clearButton = new JButton("清空");
// “确定”按钮
yesButton = new JButton("确定");
// “更新”按钮
updateButton = new JButton("更新");
// “取消”按钮
cancelButton = new JButton("取消");
// 为“清空”按钮添加监听者
clearButton.addActionListener(this);
// 为“确定”按钮添加监听者
yesButton.addActionListener(this);
// 为“更新”按钮添加监听者
updateButton.addActionListener(this);
updateButton.setEnabled(false);
// 为“取消”按钮添加监听者
cancelButton.addActionListener(this);
panel2.add(clearButton);
panel2.add(yesButton);
panel2.add(updateButton);
panel2.add(cancelButton);
container.add(panel2, BorderLayout.SOUTH);
}
/**
* 动作响应方法,将修改后的出借图书信息提交到数据库中
*
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
*/
public void actionPerformed(ActionEvent action) {
if (action.getSource() == clearButton) {
// 单击“清空”按钮,清空所有的文本框
returnedBookStudentText.setText("");
returnedBookNameText.setText("");
returnedDateText.setText("");
returnedCommentText.setText("");
} else if (action.getSource() == cancelButton) {
// 单击“退出”按钮不作任何事情
this.dispose();
} else if (action.getSource() == yesButton) {
// 取得SessionFactory
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
// 打开session
Session session = sessionFactory.openSession();
// 创建一个事务
Transaction tx = session.beginTransaction();
// hsql执行语句
String hql = "from BookBrowse where studentName='"
+ returnedBookStudentText.getText().trim()
+ "'and bookName='" + returnedBookNameText.getText().trim()
+ "'";
// 执行查询
Query userList = session.createQuery(hql);
// 将查询结果放置到一个list链表中
List list = userList.list();
BookBrowse browse = (BookBrowse) list.get(0);
returnedBookStudentText.setText(browse.getStudentName());
returnedBookNameText.setText(browse.getBookName());
returnedDateText.setText(browse.getBorrowDate().toString());
returnedCommentText.setText(browse.getCom());
updateButton.setEnabled(true);
// 事务提交
tx.commit();
// 关闭session
session.close();
} else if (action.getSource() == updateButton) {
// 取得SessionFactory
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
// 打开session
Session session = sessionFactory.openSession();
// 创建一个事务
Transaction tx = session.beginTransaction();
BookBrowse browse2 = new BookBrowse();
browse2.setBookName(returnedBookNameText.getText().trim());
browse2.setStudentName(returnedBookStudentText.getText().trim());
browse2.setBorrowDate(new GregorianCalendar().getTime());
browse2.setCom(returnedCommentText.getText().trim());
browse2.setReturnDate(new GregorianCalendar().getTime());
session.saveOrUpdate(browse2);
JOptionPane.showMessageDialog(null, "修改书籍成功!");
// 事务提交
tx.commit();
// 关闭session
session.close();
this.dispose();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -