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

📄 workbench.java

📁 大型数据库课程设计源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
}
	/**
	 * This method initializes jTable
	 * 
	 * @return javax.swing.JTable
	 */
	private JTable getMyTable() {
		if (tab == null) {

			mod = new MyTableModel("employee");
			tab = new MyTable(mod) {
				private static final long serialVersionUID = 1L;

				public JPopupMenu getComponentPopupMenu() {
					return getPopupmenu();
				}

			};
			tab.setPreferredScrollableViewportSize(new Dimension(650, 400));
			tab.setAutoResizeMode(JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS);

			tab.addMouseListener(new MyJTableMouseLisener());
		}
		return tab;
	}

	private JPopupMenu getPopupmenu() {
		jpm = new JPopupMenu();
		Action act;
		if(f==0) {
		  act = new CreateNewAction("添加");
		jpm.add(act);
		act = new ModifyAction("修改");
		jpm.add(act);
		act = new DeleteAction("删除");
		jpm.add(act);
		}else {
		act=new SetAdminAction("设置管理员");
		jpm.add(act);
		}
		return jpm;
	}

	class ModifyAction extends AbstractAction {
		private static final long serialVersionUID = 1L;

		public ModifyAction(String label) {
			super(label);
		}

		public void actionPerformed(ActionEvent evt) {
			ModifyActionPerformed(evt);
		}

	}

	private void ModifyActionPerformed(ActionEvent evt) {
		int r = tab.getSelectedRow();
		updaterow.addElement(r);
		tab.setCellEditable(true);
		saveUpdate(updaterow);
	}

	class CreateNewAction extends AbstractAction {
		/** */
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;

		public CreateNewAction(String label) {
			super(label);
		}

		public void actionPerformed(ActionEvent evt) {
			createNewActionPerformed(evt);
		}
	}

	private void createNewActionPerformed(ActionEvent evt) {
		Vector v = new Vector();

		mod.addRow(v);
		rowid.addElement(mod.getRowCount() - 1);
		v = mod.getDataVector();
		repaint();
	}

	class DeleteAction extends AbstractAction {
		/** */
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;

		public DeleteAction(String label) {
			super(label);
		}

		public void actionPerformed(ActionEvent evt) {
			deleteActionPerformed(evt);
		}
	}
	class SetAdminAction extends AbstractAction {
		/** */
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;

		public SetAdminAction(String label) {
			super(label);
		}

		public void actionPerformed(ActionEvent evt) {
			setAdminActionPerformed(evt);
		}
	}
public void setAdminActionPerformed(ActionEvent evt) {
	int rowid=jTable.getSelectedRow();
	if(rowid==-1)return;
	String name=(String)jTable.getValueAt(rowid, 0);

	String sql=" select empid from employee where empName='"+name+"'";
	String empid="";
	DBManager.getConnection();
	ResultSet rs=DBManager.executeSelect(sql);
	try {
		if(rs.next()) {
			empid=rs.getString("empid");
		}
	} catch (SQLException e) {
		// TODO 自动生成 catch 块
		System.out.println("不存在此员工!");
	}
	String opnum="";
	sql="select operatenum from operator where empid='"+empid+"'";
	rs=DBManager.executeSelect(sql);
	try {
		if(rs.next()) {
			opnum=rs.getString("operatenum");
		}
	} catch (SQLException e) {
		// TODO 自动生成 catch 块
		System.out.println("不存在此操作员!");
	}
	sql="update priv set openAccount='1',lostAccount='1',storeMoney='1',cash='1',"
		+"openAccountCard='1',openNetBank='1',disableAccount='1',searchEmpInfo='1',"
		+"addEmp='1',modifyEmpInfo='1',emmPwdManage='1',iceCreditCard='1' where operatenum='"+opnum+"'";
	DBManager.execUpdate(sql);
	sql="update operator set isadmin='y' where operatenum='"+opnum+"'";
	DBManager.execUpdate(sql);
	System.out.print(sql);
}
	public synchronized void deleteActionPerformed(ActionEvent evt) {
		int row = mod.getRowCount();
		row = tab.getSelectedRow();
		System.out.println(row);
		String num = (String) tab.getValueAt(row, 0);
		mod.removeRow(row);
		DBManager.getConnection();
		int i = DBManager.executeQuery("select * from operator where empid='"
				+ num + "'");
		if (i == 0) {
			JOptionPane.showMessageDialog(this,
					"此员工是操作员,现在不能删除。如果确实要删除此员工,请先取消其操作员帐号。", "alert",
					JOptionPane.ERROR_MESSAGE);
		} else {
			DBManager.getConnection();
			DBManager.execDel("delete from employee where empID='" + num + "'");
			System.out
					.println("delete from employee where empID='" + num + "'");
			DBManager.releaseCon();
		}
	}

	public boolean doubleClick() {
		long time = (new Date()).getTime();
		if (time - clicktime < 300) {
			clicktime = time;
			return true;
		}
		clicktime = time;
		return false;
	}

	class MyJTableMouseLisener implements MouseListener {
		public void mouseClicked(MouseEvent me) {
			if (doubleClick()) {
				Point p = me.getPoint();
				int i = tab.rowAtPoint(p);
				int j = tab.columnAtPoint(p);
				tab.setCellEditable(true);
				tab.revalidate();

			}
		}

		public void mouseEntered(MouseEvent e) {
			// TODO 自动生成方法存根

		}

		public void mouseExited(MouseEvent e) {
			// TODO 自动生成方法存根

		}

		public void mousePressed(MouseEvent e) {
			// TODO 自动生成方法存根

		}

		public void mouseReleased(MouseEvent e) {
			// TODO 自动生成方法存根

		}
	}

	class TableTableModel extends DefaultTableModel {
		/**
		 * 
		 */
		private static final long serialVersionUID = 679265889547674796L;

		public final String[] title = { "操作员", "开户", "帐号挂失", "存款", "取款",
				"办理借记卡", "开通网上服务", "注销帐号", "查询员工资料", "录入员工资料", "修改员工资料",
				"设置操作密码", "冻结信用卡" };

		public Object[][] v;

		private boolean cellEditable;

		public TableTableModel() {
			cellEditable = false;
		}

		public int getColumnCount() {
			return title.length;
		}

		public String getColumnName(int columnIndex) {
			return title[columnIndex];
		}

		// 将Table设成只读的
		public boolean isCellEditable(int row, int column) {
			return column != 0 && cellEditable;
		}

		/**
		 * @param cellEditable
		 *            要设置的 cellEditable
		 */
		public void setCellEditable(boolean cellEditable) {
			this.cellEditable = cellEditable;
		}
	}

	private TableTableModel mode = null;

	private JTable jTable = null;

	private JLabel jLabel = null;

	public final String[] title = { "操作员", "开户", "帐号挂失", "存款", "取款", "办理借记卡",
			"开通网上服务", "注销帐号", "查询员工资料", "录入员工资料", "修改员工资料", "设置操作密码", "冻结信用卡" };

	private static Vector v = null;

	Object[][] d = null;

	int rowI = -1;

	private JTable getJTable() {
		if (jTable == null) {
			System.out.println("priv");
			getData();
			
			jTable = new JTable(mode) {private static final long serialVersionUID = 1L;

			public JPopupMenu getComponentPopupMenu() {
				return getPopupmenu();
			}

		};
			jTable.setToolTipText("双击要修改的行进行编辑。");
			jTable.setDefaultEditor(jTable.getColumnClass(1),
					new CheckBoxCellEditor());
			try {
				GridTableRender cellRenderer = new GridTableRender();
				jTable.setDefaultRenderer(jTable.getColumnClass(1),
						new CheckBoxCellRenderer());
			} catch (Exception e) {
			}
			jTable.getColumn("操作员").setCellRenderer(new GridTableRender());
			jTable.addMouseListener(new UserMouseAdapter() {
				/** */
				/**
				 * 鼠标单击事件
				 * 
				 * @param e
				 *            事件源参数
				 */
				public void mouseSingleClicked(MouseEvent e) {
					// System.out.println("Single Clicked!");
					rowI = jTable.rowAtPoint(e.getPoint());// 得到table的行号
					if (rowI > -1) {
						System.out.println("单击鼠标 "
								+ ((TableModel) jTable.getModel()).getValueAt(
										rowI, 1));

					}
				}

				/** */
				/**
				 * 鼠标双击事件
				 * 
				 * @param e
				 *            事件源参数
				 */
				public void mouseDoubleClicked(MouseEvent e) {
					// System.out.println("Doublc Clicked!");
					rowI = jTable.rowAtPoint(e.getPoint());// 得到table的行号
					if (rowI > -1)
						System.out.println("双击鼠标 "
								+ ((TableModel) jTable.getModel()).getValueAt(
										rowI, 2));
					rowid.addElement(rowI);
					mode.setCellEditable(true);
				}

			});

		}
		return jTable;
	}

	private void getData() {
		String sql = "select * from  priv_view";
		DBManager.getConnection();
		java.sql.ResultSet rs = DBManager.executeSelect(sql);
		mode = new TableTableModel();
		mode.setColumnIdentifiers(title);
		// mode.setDataVector(d, title);
		try {// System.out.println("rs.next()="+rs.next());
			rs.afterLast();
			rs.previous();
			int r = rs.getRow();// System.out.println("rs.next()="+rs.next());
			rs.beforeFirst();// System.out.println("rs.getRow()="+r);
			d = new Object[r][title.length];
			r = 0;
			int i = 1;
			while (rs.next()) {
				System.out.println("rs.getRow()=" + r);
				i = 2;
				v = new Vector();
				v.add(rs.getString(1));
				d[r][i - 1] = rs.getString(1);// System.out.println(d[r][i-1]);
				for (; i <= 13; i++) {
					if (rs.getString(i).equals("1"))
						d[r][i - 1] = new Boolean(true);
					else
						d[r][i - 1] = new Boolean(false);
					System.out.print(rs.getString(i));
					v.add(d[r][i - 1]);
				}
				mode.addRow(v);
				System.out.println();
				System.out.println(v);
				r++;
			}
		} catch (SQLException e) {
			// TODO 自动生成 catch 块
			e.printStackTrace();
		}

	}

	class GridTableRender extends DefaultTableCellRenderer {

		public Component getTableCellRendererComponent(JTable table,
				Object value, boolean isSelected, boolean hasFocus, int row,
				int column) {

			super.getTableCellRendererComponent(table, value, isSelected,
					hasFocus, row, column);
			String s = (String) value;
			this.setValue(s);
			if (hasFocus) {
				this.setBackground(Color.blue);
				this.setForeground(Color.black);
			} else {
				if ((row % 2) == 0) {
					this.setBackground(Color.CYAN);
					this.setForeground(Color.black);

				} else {
					this.setBackground(Color.white);
					this.setForeground(Color.black);
				}

			}

			return this;

		}
	}

} // @jve:decl-index=0:visual-constraint="10,10"

⌨️ 快捷键说明

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