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

📄 database.java

📁 人事管理系统
💻 JAVA
字号:
package welcome;

import java.awt.*;
import java.awt.event.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JLabel;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.*;
import java.sql.*;
import javax.swing.table.*;
import javax.swing.JOptionPane.*;
import javax.swing.event.*;
import java.util.*;
/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class Database
    extends JFrame {
  JPanel contentPane;
  JMenuBar jMenuBar1 = new JMenuBar();
  JMenu jMenuFile = new JMenu();
  JMenuItem jMenuFileExit = new JMenuItem();
  JMenu jMenuHelp = new JMenu();
  JMenuItem jMenuHelpAbout = new JMenuItem();
  JLabel statusBar = new JLabel();
  JSplitPane jSplitPane1 = new JSplitPane();
  JPanel jPanel1 = new JPanel();
  JTable jTable1;
  DefaultTableModel model; 
  JLabel jLabel1 = new JLabel();
  JComboBox jComboBox1 = new JComboBox();
  JTextField jTextField1 = new JTextField();
  JButton jButton1 = new JButton();
  JButton jButton2 = new JButton();
  JButton jButton3 = new JButton();
  JButton jButton4 = new JButton();
  JButton jButton5 = new JButton();
  JButton jButton6 = new JButton();
  JMenuItem jMenuItem1 = new JMenuItem();
  JMenuItem jMenuItem2 = new JMenuItem();
    JScrollPane jScrollPane1=new JScrollPane();
       JScrollPane jScrollPane2=new JScrollPane();
     Statement stmt;
    Connection con;
    ResultSet rs;
       public Database() {
    try {
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      jbInit();
    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

  /**
   * Component initialization.
   *
   * @throws java.lang.Exception
   */
  private void jbInit() throws Exception {
    contentPane = (JPanel) getContentPane();
    contentPane.setLayout(null);
    setBounds(300,300,410, 360);
    setTitle("人事管理系统");
    statusBar.setText(" ");
    statusBar.setBounds(new Rectangle(0, 284, 400, 16));
     jMenuFile.setText(" 文件");
    jMenuFileExit.setText("退出");
    		model=new DefaultTableModel(new Object[][]{},
    					new Object[] {"姓名","性别","年龄","电话","地址","备注"})
			{
		 public boolean isCellEditable(int rowIndex, int mColIndex) {
            return false;
				}
			};
   jTable1=new JTable(model);
    jMenuFileExit.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent actionEvent) {
        jMenuFileExit_actionPerformed(actionEvent);
      }
    });

    jMenuHelp.setText("帮助");
    jMenuHelpAbout.setText("关于本程序");
    jMenuHelpAbout.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent actionEvent) {
        jMenuHelpAbout_actionPerformed(actionEvent);
      }
    });
    jSplitPane1.setBorder(BorderFactory.createLineBorder(Color.black));
    jSplitPane1.setBounds(new Rectangle(4, 3, 393, 277));
     jPanel1.setLayout(null);
     jLabel1.setText("搜索项");
    jLabel1.setBounds(new Rectangle(4, 3, 54, 26));
    jComboBox1.setBounds(new Rectangle(4, 30, 80, 25));
    jComboBox1.addItem("姓名");
    jComboBox1.addItem("性别");
    jComboBox1.addItem("年龄");
    jComboBox1.addItem("电话");
    jComboBox1.addItem("地址");
    jComboBox1.addItem("备注");
    jTextField1.setBounds(new Rectangle(4, 61, 80, 25));
    jButton1.setBounds(new Rectangle(3, 92, 80, 29));
    jButton1.setText("搜      索");
    jButton1.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		jButton1_actionPerformed(e);
    	}
    });
    jButton3.setBounds(new Rectangle(3, 125, 80, 30));
    jButton3.setToolTipText("");
    jButton3.setText("显      示");
    jButton3.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		jButton3_actionPerformed(e);
    	}
    });
    jButton4.setBounds(new Rectangle(4, 159, 80, 30));
    jButton4.setText("增      加");
    jButton4.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		jButton4_actionPerformed(e);
    	}
    });
    jButton5.setBounds(new Rectangle(5, 195, 80, 29));
    jButton5.setText("删      除");
    jButton5.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		jButton5_actionPerformed(e);
    	}
    });
    jButton6.setBounds(new Rectangle(6, 228, 80, 29));
    jButton6.setText("修      改");
    jButton6.addActionListener(new ActionListener()
    {
    	public void actionPerformed(ActionEvent e)
    	{
    		jButton6_actionPerformed(e);
    	}
    });
    jMenuItem1.setText("打开");
      jMenuFileExit.setText("退出");
    jMenuItem2.setText("保存");
    jMenuBar1.add(jMenuFile);
    jMenuFile.add(jMenuItem1);
    jMenuFile.add(jMenuItem2);
    jMenuFile.add(jMenuFileExit);
    jMenuBar1.add(jMenuHelp);
    jMenuHelp.add(jMenuHelpAbout);
    setJMenuBar(jMenuBar1);
    contentPane.add(statusBar, null);
    contentPane.add(jSplitPane1);
    jPanel1.add(jLabel1);
    jPanel1.add(jComboBox1);
    jPanel1.add(jTextField1);
    jPanel1.add(jButton1);
    jPanel1.add(jButton3);
    jPanel1.add(jButton4);
    jPanel1.add(jButton5);
    jPanel1.add(jButton6);
    TableColumn column;
    column=jTable1.getColumnModel().getColumn(0);//获取表格模型里的第一列
		column.setMaxWidth(80);
		column.setMinWidth(50);
		column=jTable1.getColumnModel().getColumn(1);
		column.setMaxWidth(50);
		column.setMinWidth(20);
		column=jTable1.getColumnModel().getColumn(2);
		column.setMaxWidth(50);
		column.setMinWidth(20);
		column=jTable1.getColumnModel().getColumn(3);
		column.setMaxWidth(250);
		column.setMinWidth(50);
		column=jTable1.getColumnModel().getColumn(4);
		column.setMaxWidth(200);
		column.setMinWidth(50);
		column=jTable1.getColumnModel().getColumn(5);
		column.setMaxWidth(200);
		column.setMinWidth(50);
		jTable1.setRowHeight(30);
    jSplitPane1.add(jTable1, JSplitPane.RIGHT);
    jSplitPane1.add(jPanel1, JSplitPane.LEFT);
    jScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    jScrollPane1.getViewport().add(jTable1,null);
    jSplitPane1.add(jScrollPane1,JSplitPane.RIGHT);
    jSplitPane1.add(jScrollPane1,JSplitPane.RIGHT);
    
     jScrollPane1.getViewport().add(jTable1,null);
    jSplitPane1.setDividerLocation(90);
    jSplitPane1.setDividerSize(5);
    jSplitPane1.setEnabled(false);
    jTable1.getSelectionModel().addListSelectionListener(new ListSelectionListener()
    {
    	public void valueChanged(ListSelectionEvent e)
    	{
    		if(jTable1.getSelectedRow()!=-1)
    		{
    			jButton5.setEnabled(true);
    			jButton6.setEnabled(true);
    		} 
    }
});
      String url="jdbc:odbc:rhaik";
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  con=DriverManager.getConnection(url);
  stmt=con.createStatement();
  String sql="Select * from rhaik2";
  update(sql);
  }

  
  void jMenuFileExit_actionPerformed(ActionEvent actionEvent) {
    System.exit(0);
  }
  void jButton1_actionPerformed(ActionEvent actionEvent) {
  	int index=jComboBox1.getSelectedIndex();
  	String value=jTextField1.getText().trim();
  	String colName=getColumnName(index);
  	String sql;
  	if(colName!=null)
  	{
  		if(index!=2)
  		{
  		
  			sql="select * from rhaik2 where "+colName+" like '%"+value+"%'";
  	}
  	  	else
  		{
  			try{
  				int age=Integer.parseInt(value);
  				sql="select * from rhaik2 where "+colName+"="+age;
  				  			}
  			catch(NumberFormatException ev)
  			{
   	JOptionPane.showMessageDialog(this,"年龄只能为数字","消息对话框",JOptionPane.OK_OPTION);
		return;
  			}
  		}
  		update(sql);
  	jButton5.setEnabled(false);
  		jButton6.setEnabled(false);
  	}
  	
  	else
  	{
  		return;
  }
}

  void jButton3_actionPerformed(ActionEvent actionEvent) {
  	String sql="select * from rhaik2";
  	update(sql);
  	jButton5.setEnabled(false);
  		jButton6.setEnabled(false);
  }
 
  	
  void jButton4_actionPerformed(ActionEvent actionEvent) {
  	MyDialog1 dialog=new MyDialog1(this,"添加数据",true);
  	dialog.setBounds(400,300,220,310);
    dialog.setResizable(false);
  	dialog.setModal(true);
  	dialog.show();
  }
 
  void jButton5_actionPerformed(ActionEvent actionEvent) {
  	int n=jTable1.getSelectedRow();
  	String name=(String)jTable1.getValueAt(n,0);
  	String sql="delete From rhaik2 where 姓名='"+name+"'";
  	try
  	{
  		stmt.executeQuery(sql);
  		
  	}
  	catch(SQLException ev)
  	{
  		System.out.println(ev);
  	}
  	DefaultTableModel model=(DefaultTableModel)jTable1.getModel();
  	model.removeRow(n);
  	jButton5.setEnabled(false);
  		jButton6.setEnabled(false);
  	}
  	void jButton6_actionPerformed(ActionEvent actionEvent) {
  		String data[]=new String[6];
  		int r=jTable1.getSelectedRow();
  		for(int i=0;i<6;i++)
  		{
  			data[i]=(String)jTable1.getValueAt(r,i);
  		}
  		MyDialog1 dialog=new MyDialog1(this,"修改数据",true,data);
  		dialog.setBounds(400,300,220,310);
    dialog.setResizable(false);
  	dialog.setModal(true);
  	dialog.show();
  	
  	}
  	void jMenuHelpAbout_actionPerformed(ActionEvent actionEvent) {
   /* Frame3_AboutBox dlg = new Frame3_AboutBox(this);
    Dimension dlgSize = dlg.getPreferredSize();
    Dimension frmSize = getSize();
    Point loc = getLocation();
    dlg.setLocation( (frmSize.width - dlgSize.width) / 2 + loc.x,
                    (frmSize.height - dlgSize.height) / 2 + loc.y);
    dlg.setModal(true);
    dlg.pack();
    dlg.show();
  */}
  String getColumnName(int index)
  {
  	if(index==0)
  	{
  		return "姓名";
  		}
  		else if(index==1)
  		{
  			return "性别";
  			  }
  			  else if(index==2)
  		{
  			return "年龄";
  			  }
  			  else if(index==3)
  		{
  			return "电话";
  			  }
  			  else if(index==4)
  		{
  			return "地址";
  			  }
  			  else if(index==5)
  		{
  			return "备注";
  			  }
  			  else 
  			  {
  			  	return null;
  			  }
  			 }
  			 void addRecord(String data[])
  			 {
  			 	try
  			 		{
  			 	String sql="insert into rhaik2 values('"+data[0]+"','"+data[1]+"','"+data[2]+"','"+data[3]+"','"+data[4]+"','"+data[5]+"')";
	 			stmt.executeQuery(sql);
  			 		}
  			 		catch(SQLException ev)
  			 		{
  			 			System.out.println(ev.getMessage());
  			 			return;
  			 		}
  			 		if(data[2]=="0")
  			 		data[2]="";
  			 		DefaultTableModel model=(DefaultTableModel)jTable1.getModel();
  			 		model.addRow(data);
  			 	 		  }
  			  void editRecord(String data[])
  			  {
  			  	String sql="uppdate rhaik2 set sex='"+data[1]+"'";
  			  	sql+=",age="+Integer.parseInt(data[2]);
  			  	sql+=",phone='"+data[3]+"'";
  			  	sql+=",address='"+data[4]+"'";
  			  	sql+=",remark='"+data[5]+"'";
  			  	sql+=". where name='"+data[0]+"'";
  			  	try
  			  	{
  			  		stmt.executeQuery(sql);
  			  		
  			  	}
  			  	catch(SQLException ev)
  			  	{
  			  		
  			 			System.out.println(ev.getMessage());
  			 			return;
  			  	}
  			  	int n=jTable1.getSelectedRow();
  			  	if(data[2]=="0")
  			  	data[2]="";
  			  	for(int i=1;i<6;i++)
  			  	{
  			  		jTable1.setValueAt(data[i],n,i);
  			  	}
  			  }
  			
  			  
  			 void update(String sql)
  			 {
  			 	DefaultTableModel model=(DefaultTableModel)jTable1.getModel();
  			 	int count=jTable1.getRowCount();
  			 	for(int i=0;i<count;i++)
  			 	{
  			 		model.removeRow(0);
  			 	}
  			 	try
  			 	{
  			 		ResultSet rs=stmt.executeQuery(sql);
  			 		while(rs.next())
  			 		{
  			 			String name=rs.getString(1).trim();
  			 			String sex=rs.getString(2).trim();
  			 			String age=rs.getString(3).trim();
  			 			if(age=="0")
  			 			age="";
  			 			String phone=rs.getString(4).trim();
  			 			String addr=rs.getString(5).trim();
  			 			String remark=rs.getString(6).trim();
  			 			String row[]={name,sex,age,phone,addr,remark};
  			 			model.addRow(row);
  			 		}
  			 		if(jTable1.getRowCount()==0)
  			 	JOptionPane.showMessageDialog(this,"没有找到","消息对话框",JOptionPane.OK_OPTION);
  			 	}
  			 	catch(SQLException ev)
  			 	{
  			 		System.out.println(ev);
  			 		
  			 	}
  			 	
  			 	}
  public static void main(String args[])
  {
  	Database frame=new Database();
  	frame.setResizable(false);
  	frame.setVisible(true);
  }

}

⌨️ 快捷键说明

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