⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 borrowinfo.java

📁 是Eclipse web开发从入门到精通的源码
💻 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 BorrowInfo extends JFrame implements ActionListener {

	JPanel panel1, panel2, panel3;

	Container container;

	JLabel tipLabel = new JLabel("输入借阅者姓名和书名点击确定,将调出此书的相关信息");

	JLabel borrowedBookStudentLabel, borrowedBookNameLabel, borrowedDateLabel,
			borrowedCommentLabel;

	JTextField borrowedBookStudentText, borrowedBookNameText, borrowedDateText,
			borrowedCommentText;

	JButton clearButton, yesButton, updateButton, cancelButton;

	public BorrowInfo() {
		super("修改书籍出借信息");
		container = getContentPane();
		container.setLayout(new BorderLayout());
		panel3 = new JPanel();
		panel3.add(tipLabel);
		container.add(panel3, BorderLayout.NORTH);
		// “借阅者姓名”标签
		borrowedBookStudentLabel = new JLabel("借阅者姓名", JLabel.CENTER);
		// “书名”标签
		borrowedBookNameLabel = new JLabel("书名", JLabel.CENTER);
		// “借书日期”标签
		borrowedDateLabel = new JLabel("借书日期", JLabel.CENTER);
		// “备注”标签
		borrowedCommentLabel = new JLabel("备注", JLabel.CENTER);
		// 输入借阅者姓名的文本框
		borrowedBookStudentText = new JTextField(15);
		// 输入书名文本框
		borrowedBookNameText = new JTextField(15);
		// 输入出借日期文本框
		borrowedDateText = new JTextField(15);
		// 输入备注信息文本框
		borrowedCommentText = new JTextField(15);
		panel1 = new JPanel();
		panel1.setLayout(new GridLayout(4, 2));
		panel1.add(borrowedBookStudentLabel);
		panel1.add(borrowedBookStudentText);
		panel1.add(borrowedBookNameLabel);
		panel1.add(borrowedBookNameText);
		panel1.add(borrowedDateLabel);
		panel1.add(borrowedDateText);
		panel1.add(borrowedCommentLabel);
		panel1.add(borrowedCommentText);
		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) {
			borrowedBookStudentText.setText("");
			borrowedBookNameText.setText("");
			borrowedDateText.setText("");
			borrowedCommentText.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='"
					+ borrowedBookStudentText.getText().trim()
					+ "'and bookName='" + borrowedBookNameText.getText().trim()
					+ "'";
			// 执行查询
			Query userList = session.createQuery(hql);
			// 将查询结果放置到一个list链表中
			List list = userList.list();
			BookBrowse browse = (BookBrowse) list.get(0);
			borrowedBookStudentText.setText(browse.getStudentName());
			borrowedBookNameText.setText(browse.getBookName());
			borrowedDateText.setText(browse.getBorrowDate().toString());
			borrowedCommentText.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(borrowedBookNameText.getText().trim());
			browse2.setStudentName(borrowedBookStudentText.getText().trim());
			browse2.setBorrowDate(new GregorianCalendar().getTime());
			browse2.setCom(borrowedCommentText.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 + -