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

📄 readermanageraction.java

📁 一个简单的图书馆的管理系统,该系统主要是针对学校的图书馆而做的
💻 JAVA
字号:
package librarymanagement.action.dialogAction;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.Iterator;
import java.util.Vector;

import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import librarymanagement.common.GetJTable;
import librarymanagement.dao.common.DbException;
import librarymanagement.dao.libraryDao.LibraryDao;
import librarymanagement.dao.libraryDao.LibraryDaoIpml;
import librarymanagement.dao.readerManagerDao.ReaderManagerDao;
import librarymanagement.dao.readerManagerDao.ReaderManagerdaoImp;
import librarymanagement.factory.MainFrameFactory;
import librarymanagement.view.common.CheckInputText;
import librarymanagement.view.dialog.ReaderMangement;
import librarymanagement.view.dialog.base.BaseDialog;
import librarymanagement.vo.BookVo;
import librarymanagement.vo.ReaderVo;

public class ReaderManagerAction implements ActionListener {

	BaseDialog baseDialog;
	
	 private JFileChooser fileChooser;

	CheckInputText check = new CheckInputText();

	ReaderManagerDao readerDao = new ReaderManagerdaoImp();

	public ReaderManagerAction(BaseDialog baseDialog) {
		this.baseDialog = baseDialog;
	}

	public void actionPerformed(ActionEvent e) {
		String name = e.getActionCommand();
		if (name.equals("查询")) {
			String info = baseDialog.getTextInfo();
			if (check.checkInputIsNull(info)) {
				JOptionPane.showMessageDialog(null, "请输入你要查找的读者编号!", "提示信息",
						JOptionPane.YES_OPTION);
				return;
			} else if (check.checkIsContainCharactor(info)) {
				JOptionPane.showMessageDialog(null, "您输入的信息不正确,请输入数字形式的编号",
						"提示信息", JOptionPane.YES_OPTION);
				return;
			}
			 else {

				int in = Integer.parseInt(info);
				ReaderVo rv = readerDao.getReaderVo(in);
				if (rv == null) {
					JOptionPane.showMessageDialog(null, "数据库中没有这个编号的读者!",
							"提示信息", JOptionPane.YES_OPTION);
					return;
				} else {
					JTable table = baseDialog.buildJTable();
				
					DefaultTableModel model = (DefaultTableModel) table
							.getModel();
				    int rows = model.getRowCount();
				    for (int i = rows - 1; i >= 0; i--) {
				      model.removeRow(i);
				    }
					Object[] data = { new Integer(rv.getReaderId()),
							rv.getReaderName(), rv.getSex(), rv.getAcd(),
							rv.getTell(),rv.getJob(),rv.getZhengId(),rv.getEMail(),
							rv.getRegisterDate()
							 };
					model.addRow(data);
				}
			}
		} else if (name.equals("添加")) {
			new MainFrameFactory().getInstance("增加读者").getContainer()
					.setVisible(true);
		} else if (name.equals("修改")) {
			new MainFrameFactory().getInstance("修改").getContainer()
			.setVisible(true);
		} else if (name.equals("删除")) {
			Vector v = null;
			JTable table = baseDialog.buildJTable();
			int row = table.getSelectedRow();
			if (row >= 0) {
//				int book_id = Integer.parseInt(table.getValueAt(row, 0)
//						.toString());
				int reader_id =Integer.parseInt( table.getValueAt(row, 0)
					.toString());//获得某行第0列的值
				int ch = JOptionPane.showConfirmDialog(null, "你确定要删除该条记录吗?",
						"图书数据删除", JOptionPane.YES_NO_OPTION);
				if (ch == JOptionPane.YES_OPTION) {
					if (readerDao.deleteReaderById(reader_id)) {
						JOptionPane.showMessageDialog(null, "数据删除成功", "info",
								JOptionPane.YES_OPTION);
						DefaultTableModel model = (DefaultTableModel) table
								.getModel();
						model.removeRow(row);
					}
				}
				table.setRequestFocusEnabled(false);
			} else {
				JOptionPane.showMessageDialog(null, "请选择你要删除的记录", "删除提示",
						JOptionPane.YES_OPTION);
				table.setRequestFocusEnabled(false);
			}

		} else if (name.equals("刷新")) {
		  	  Vector v = null;
	          try {
	        	  
	              v = readerDao.findReaderInfo();
	            if (v.size() != 0) {
	              DefaultTableModel model = (DefaultTableModel)  baseDialog.buildJTable()
	                  .getModel();
	              int rows = model.getRowCount();
	              for (int i = rows - 1; i >= 0; i--) {
	                model.removeRow(i);
	              }
            	Iterator iter = v.iterator();
	    		while (iter.hasNext()) {
	    			ReaderVo value = (ReaderVo) iter.next();
	    			Object[] data = { new Integer(value.getReaderId()),
	    					value.getReaderName(), value.getSex(), value.getAcd(),
	    					value.getTell(),value.getJob(),value.getZhengId(),value.getEMail(),
	    					value.getRegisterDate() };
	    			 
	    			model.addRow(data);
	    		}
	            }
	          } catch (DbException ex) {
	            JOptionPane.showMessageDialog(null, ex.getMessage(), "数据查找",
	                JOptionPane.YES_OPTION);
	            return;
	          }
		} else if (name.equals("显示全部")) {
		  	  Vector v = null;
	          try {
	        	  
	              v = readerDao.findReaderInfo();
	            if (v.size() != 0) {
	              DefaultTableModel model = (DefaultTableModel)  baseDialog.buildJTable()
	                  .getModel();
	              int rows = model.getRowCount();
	              for (int i = rows - 1; i >= 0; i--) {
	                model.removeRow(i);
	              }
            	Iterator iter = v.iterator();
	    		while (iter.hasNext()) {
	    			ReaderVo value = (ReaderVo) iter.next();
	    			Object[] data = { new Integer(value.getReaderId()),
	    					value.getReaderName(), value.getSex(), value.getAcd(),
	    					value.getTell(),value.getJob(),value.getZhengId(),value.getEMail(),
	    					value.getRegisterDate() };
	    			 
	    			model.addRow(data);
	    		}
	            }
	          } catch (DbException ex) {
	            JOptionPane.showMessageDialog(null, ex.getMessage(), "数据查找",
	                JOptionPane.YES_OPTION);
	            return;
	          }
		}  else if (name.equals("转Excel")) {
			  String fileName = null;
		      fileChooser = new JFileChooser();
		      fileChooser.setCurrentDirectory(new File("."));
		      fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
		      File file = null;
		      if (fileName == null) {
		        int result = fileChooser.showSaveDialog(baseDialog);
		        if (result == JFileChooser.APPROVE_OPTION) {
		          file = fileChooser.getSelectedFile();
		          fileName = file.getAbsolutePath();
		          System.out.println(fileName);
		        } else {
		          return;
		        }
		      }
		      try {
		        ExportReaderInfo exportAction = new ExportReaderInfo();
		        String fileNameSave = file.getAbsolutePath() + fileName;
		        Vector data = readerDao.findReaderInfo();// 得到所有读者信息
		        exportAction.writeExcelOfFile(fileName, data, null);

		        // 记录到数据库中去
		        String content = "导出读者信息 ";

		        JOptionPane.showMessageDialog(null, "已导出到工程目录下,请刷新工程");
		      } catch (DbException ex) {
		    	  JOptionPane.showConfirmDialog(null, ex.getMessage(),"异常提示",JOptionPane.YES_OPTION);
		      }
			baseDialog.setVisible(false);
		}else if (name.equals("退出")) {
			baseDialog.dispose();
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -