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

📄 basicinfo.java

📁 简单的实现了一个人事资源管理系统
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
package mypackage;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.ComponentOrientation;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Vector;

import javax.swing.DefaultCellEditor;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.event.TableModelEvent;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableColumnModel;

import com.jgoodies.forms.factories.FormFactory;
import com.jgoodies.forms.layout.CellConstraints;
import com.jgoodies.forms.layout.ColumnSpec;
import com.jgoodies.forms.layout.FormLayout;
import com.jgoodies.forms.layout.RowSpec;

public class BasicInfo extends JFrame {

	private JTextField textField_4;

	private JTextField Des;

	private JTextField Mdate;

	private JTextField mDep;

	private JTextField Topic;

	private JComboBox Sort;

	private JTextField pName;

	private JTextField eDuty;

	private JTextField eDep;

	class TableTableModel extends AbstractTableModel {
		/**
		 * 
		 */
		private Vector<Vector<Comparable>> content = null;

		private static final long serialVersionUID = 1L;

		private String[] title_name = { "ID", "员工号", "姓名" };

		public TableTableModel() {
			content = new Vector<Vector<Comparable>>();
		}

		public TableTableModel(int count) {
			content = new Vector<Vector<Comparable>>(count);
		}

		// public final String[] COLUMN_NAMES = new String[] {"员工号", "姓名"};
		// private String[][] CELLS=new
		// String[][]{{"001","孙业亮"},{"002","孙妍"},{"003","孙三"}};
		public void addRow(String Stno, String Sname) {
			Vector<Comparable> v = new Vector<Comparable>(3);
			v.add(0, new Integer(content.size() + 1));
			v.add(1, Stno);
			v.add(2, Sname);
			content.add(v);
		}

		public void removeRow(int row) {
			content.remove(row);
		}

		public void removeRows(int row, int count) {
			for (int i = 0; i < count; i++) {
				if (content.size() > row) {
					content.remove(row);
				}
			}
		}

		/**
		 * 让表格中某些值可修改,但需要setValueAt(Object value, int row, int col)方法配合才能使修改生效
		 */
		public boolean isCellEditable(int rowIndex, int columnIndex) {
			// if (columnIndex == 0) {
			return false;
			// }
			// return true;
		}

		/**
		 * 使修改的内容生效
		 */
		@SuppressWarnings("unchecked")
		public void setValueAt(Object value, int row, int col) {
			((Vector) content.get(row)).remove(col);
			((Vector) content.get(row)).add(col, value);
			this.fireTableCellUpdated(row, col);
		}

		public String getColumnName(int col) {
			return title_name[col];
		}

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

		public int getRowCount() {
			return content.size();
		}

		public Object getValueAt(int row, int col) {
			return ((Vector) content.get(row)).get(col);
		}

		/**
		 * 返回数据类型
		 */
		@SuppressWarnings("unchecked")
		public Class getColumnClass(int col) {
			return getValueAt(0, col).getClass();
		}

	}

	private JTable table;

	private JTextField Folk;

	private JTextField Brief;

	private JTextField Com;

	private JTextField Tel;

	private JTextField Relation;

	private JTextField Name;

	private JTextField textField_24;

	private JTextField Duty;

	private JTextField Dep;

	private JTextField Company;

	private JTextField Edate;

	private JTextField Sdate;

	private JTextField SBrief;

	private JTextField Address;

	private JTextField Barend;

	private JTextField Special;

	private JTextField Barstart;

	private JTextField studyLevel;

	private JTextField Baryear;

	private JTextField Indate;

	private JTextField SDuty;

	private JTextField Married;

	private JTextField SDep;

	private JTextField Body;

	private JTextField Birth;

	private JTextField Politics;

	private JTextField Sex;

	private JTextField Recno;

	private JTextField SName;

	private JTextField Cardno;

	private JTextField Stano;

	TableTableModel tmodel = new TableTableModel(20);
	

	void clearInfo(JTabbedPane tabbedPane2) {// 使界面清空
		int number = 0;// 记录当前选中的行号
		number = table.getSelectedRow();
		if (number < 0) {
			return;
		} else {
			switch (tabbedPane2.getSelectedIndex()) {
			case 0:
				Stano.setText("");
				SName.setText("");
				Sex.setText("");
				Birth.setText("");
				SDep.setText("");
				SDuty.setText("");
				Folk.setText("");
				studyLevel.setText("");
				Special.setText("");
				Cardno.setText("");
				Recno.setText("");
				Politics.setText("");
				Married.setText("");
				Indate.setText("");
				Body.setText("");
				Baryear.setText("");
				Barstart.setText("");
				Barend.setText("");
				Address.setText("");
				SBrief.setText("");
				break;
			case 1:
				Sdate.setText("");
				Edate.setText("");
				Company.setText("");
				eDep.setText("");
				eDuty.setText("");
				break;
			case 2:
				Sort.setSelectedItem("");
				Topic.setText("");
				mDep.setText("");
				Mdate.setText("");
				Des.setText("");
				break;
			case 3:
				Sort.setSelectedItem("");
				Topic.setText("");
				mDep.setText("");
				Mdate.setText("");
				Des.setText("");
				break;
			default:
				break;
			}
		}
	}

	void saveInfo(JTabbedPane tabbedPane3) {// 保存按钮的响应事件,使界面内容保存到数据库中
		int number = 0;// 记录当前选中的行号,列表中的员工号和姓名应为空
		number = table.getSelectedRow();
		// System.out.println("sid="+number);
		if (number < 0) {
			return;
		} else {
			try {
				Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
				String url = "jdbc:odbc:Password";
				Connection conn = DriverManager.getConnection(url, "", "");
				Statement stmt = conn.createStatement();
				String sid;
				sid = (String) table.getValueAt(number, 1);// 获得当前选中的员工列表中的员工号
				switch (tabbedPane3.getSelectedIndex()) {
				case 0:// 保存基本资料

					ResultSet rs1 = stmt
					.executeQuery("select * from BaseInfo where Stano='"
							+ Stano.getText() + "'");
					String s="";
					if(rs1.next())
					{
						s=rs1.getString("Stano");
						if( sid.equals("")||!sid.equals(s))//rs1.next() && sid.equals("")
						{
							JOptionPane.showMessageDialog(this,"您输入的员工号已经存在!","提示",JOptionPane.ERROR_MESSAGE);
							break;
						}
					}
					ResultSet rs = stmt
							.executeQuery("select * from BaseInfo where Stano='"
									+ sid + "'");// 基本资料数据库查询
					if (!rs.next())// 没有查询结果,则需要在数据库中新增界面上的信息
					{
					//	System.out.println("需要插入新行");
						//		stmt.executeUpdate("insert into BaseInfo values'"+Stano)
						String str;
						str="insert into BaseInfo";
						str=str+"(";
						str=str+"Stano,"+"Name,"+"Sex,"+"Birth,"+"Dep,"+"Duty,"+"Folk,";
						str=str+"studyLevel,"+"Special,"+"Cardno,"+"Recno,"+"Politics,"+"Married,";
						str=str+"Indate,"+"Body,"+"Barstart,"+"Barend,"+"Address,"+"Brief";
						str=str+")"+"values(";
						str=str+"'"+Stano.getText()+"',";
						str=str+"'"+SName.getText()+"',";
						str=str+"'"+Sex.getText()+"',";
						str=str+"'"+Birth.getText()+"',";
						str=str+"'"+SDep.getText()+"',";
						str=str+"'"+SDuty.getText()+"',";
						str=str+"'"+Folk.getText()+"',";
						str=str+"'"+studyLevel.getText()+"',";
						str=str+"'"+Special.getText()+"',";
						str=str+"'"+Cardno.getText()+"',";
						str=str+"'"+Recno.getText()+"',";
						str=str+"'"+Politics.getText()+"',";
						str=str+"'"+Married.getText()+"',";
						str=str+"'"+Indate.getText()+"',";
						str=str+"'"+Body.getText()+"',";
						str=str+"'"+Barstart.getText()+"',";
						str=str+"'"+Barend.getText()+"',";
						str=str+"'"+Address.getText()+"',";
						str=str+"'"+SBrief.getText()+"'";
						str=str+")";
						
						stmt.executeUpdate(str);
						//tmodel.addRow("", "");
						//table.updateUI();
						table.setValueAt(Stano.getText(), number, 1);
						table.setValueAt(SName.getText(), number, 2);
					//	System.out.println("number="+number);
						table.updateUI();
						
					} else {// 修改新输入的内容

						stmt.executeUpdate("update BaseInfo SET Stano='"
										+ Stano.getText() + "',Name='"
										+ SName.getText() + "',Sex='"
										+ Sex.getText() + "',Birth='"
										+ Birth.getText() + "',Dep='"
										+ SDep.getText() + "',Duty='"
										+ SDuty.getText() + "',Folk='"
										+ Folk.getText() + "',studyLevel='"
										+ studyLevel.getText() + "',Special='"
										+ Special.getText() + "',Cardno='"
										+ Cardno.getText() + "',Recno='"
										+ Recno.getText() + "',Politics='"
										+ Politics.getText() + "',Married='"
										+ Married.getText() + "',Indate='"
										+ Indate.getText() + "',Body='"
										+ Body.getText() + "',Baryear='"
										+ Baryear.getText() + "',Barstart='"
										+ Barstart.getText() + "',Barend='"
										+ Barend.getText() + "',Address='"
										+ Address.getText() + "',Brief='"
										+ Brief.getText() + "'WHERE Stano='"
										+ sid + "'");
						//tmodel.setValueAt(Stano.getText(), number, 1);
						//table = new JTable(tmodel);
						table.setValueAt(Stano.getText(), number, 1);
						table.setValueAt(SName.getText(), number, 2);
						table.updateUI();

					}
					stmt.close();
					break;
				case 1:// 更新工作经历

					rs = stmt.executeQuery("select * from History where Sid='"
									+ sid + "'");// 基本资料数据库查询
					if (!rs.next())// 没有查询结果,则需要在数据库中新增界面上的信息
					{
						String str;
						str="insert into History";
						str=str+"(";
						str=str+"Sid,"+"Sdate,"+"Edate,"+"Company,"+"Dep,"+"Duty";
						str=str+")"+"values(";
						str=str+"'"+sid+"',";
						str=str+"'"+Sdate.getText()+"',";
						str=str+"'"+Edate.getText()+"',";
						str=str+"'"+Company.getText()+"',";
						str=str+"'"+eDep.getText()+"',";
						str=str+"'"+eDuty.getText()+"'";
						str=str+")";
						
						stmt.executeUpdate(str);
						
						
					} else {// 修改新输入的内容

						System.out.println("需要更新列表");
						stmt.executeUpdate("update History SET Sid='"
										+ sid + "',Sdate='"

⌨️ 快捷键说明

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