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

📄 dbcontroler.java

📁 是一个简化的学校教职工管理系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class DBControler implements ActionListener,ListSelectionListener{
  DBView view;
  DBModel model;
  final static  int DELETE=0;
  final static int QUERY=1;
  final static int UPDATE=2;
  final static int INSERT=3;
  boolean isTinfo=true;
  String mainString="欢迎访问教职工管理系统-v1.0 开发者:杨国东";
  
  ListSelectionModel listModel=null;
  int []row=null;
  int []column=null;
  public DBControler(){
	  
	  view=new DBView();
	  model=new DBModel();
	  model.addObserver(view);
	  ///////////////////////// add ListSelectionModel
	  listModel=view.jtable.getSelectionModel();
	  listModel.addListSelectionListener(this);
	  listModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
	  
	 
	  
	  
	  //////add ActionListener for menu and button
	  view.jb_del.addActionListener(this);
	  view.jb_ins.addActionListener(this);
	  view.jb_upd.addActionListener(this);
	  view.jb_que.addActionListener(this);
	  view.jm_tinfo.addActionListener(this);
	  view.jm_twage.addActionListener(this);
	  view.pop_que.addActionListener(this);
	  view.pop_ins.addActionListener(this);
	  view.pop_upd.addActionListener(this);
	  view.pop_del.addActionListener(this);
	  view.jm_exit.addActionListener(this);
	  view.jm_check.addActionListener(this);
	  view.jm_query.addActionListener(this);
	  //view.jtable.setCellSelectionEnabled(true);
	  //view.jtable.setRowSelectionAllowed(true);
	  view.jtable.setColumnSelectionAllowed(false);
	  
	  view.setVisible(true);
	  view.setTitle(mainString);

   }
     ////////
  
  
    //THIS WINDOW IS TO SHOW THE OPERATION OF THE DATA TABEL  
   ////////////////////////////////////////////////////
  public void valueChanged(ListSelectionEvent e) {
		
		row=view.jtable.getSelectedRows();
		column=view.jtable.getSelectedColumns();
  }
   public void deleteRows(){
	   long no;
	   try{
		   no=Long.parseLong(view.jtable.getValueAt(row[0], 0).toString());
			//JOptionPane.showMessageDialog(null, row[0]+" "+column[0]) ;   
	   }catch(NumberFormatException nunException ){
		   
		   return;
	   }
	    if(isTinfo){
		   model.delete(no, "", "", "", -1, -1, "", "", "");
	   }
	   else
		   model.delete(no, "", -1, -1, -1);
		   
   
   }
  public void updateRows(){
	   
	  //long no=Long.parseLong(view.jtable.getValueAt(row[0], column[0]).toString());
	  TinfoFrame info=new TinfoFrame(UPDATE);
	  info.setVisible(true);
	  info.setTitle(mainString+"update");
	  /////////////////////////////////
		 if(this.isTinfo){
			 info.setTinfoComEnable();
			 int i=0;
			 try{
			 info.jtf_oldNo.setText(view.jtable.getValueAt(row[0], i).toString());
			 info.jtf_no.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_name.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_sex.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_dept.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_age.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_worktime.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_pro.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_cla.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_expe.setText(view.jtable.getValueAt(row[0], i++).toString());
			 }catch(Exception eee){}
		 }
		 else {
			 info.setTwageComEnable();
			 int i=0;
			 try{
			 info.jtf_oldNo.setText(view.jtable.getValueAt(row[0], i).toString());
			 info.jtf_no.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_name.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_wage.setText(view.jtable.getValueAt(row[0], i++).toString());
			 info.jtf_oth.setText(view.jtable.getValueAt(row[0], i++).toString());
			 
			 info.jtf_mon.setText(view.jtable.getValueAt(row[0], i++).toString());
			 }catch(Exception eee){}
			 
		 }
		 
		 info.jtf_oldNo.setEditable(false);
  }
	   

  class TinfoFrame extends JFrame implements ActionListener{

	  int type=0;
	  JLabel jl1,jl2,jl3,jl4,jl5,jl6,jl7,jl8,jl9,jl10,jl11,jl12,jl13;
	  JTextField jtf_no,jtf_name,jtf_sex,jtf_dept,jtf_age,jtf_worktime,jtf_pro,jtf_cla,jtf_expe,jtf_oldNo;
	  JTextField jtf_wage,jtf_oth,jtf_mon;
	  JButton jb_ok,jb_reset;
	  public TinfoFrame(int type){
		  
		  
		  
		  this.type=type;
		  /////////GUI  Setting
		  jl1=new JLabel("oldNo(原编号)");jtf_oldNo=new JTextField("",10);
		  jl2=new JLabel("no(编号)");jtf_no=new JTextField("",10);
		  jl3=new JLabel("name(姓名)");jtf_name=new JTextField("",10);
		  jl4=new JLabel("sex(性别)");jtf_sex=new JTextField("",10);
		  jl5=new JLabel("dept(部门)");jtf_dept=new JTextField("",10);
		  jl6=new JLabel("age(年龄)");jtf_age=new JTextField("",10);
		  jl7=new JLabel("worktime(工作时间)");jtf_worktime=new JTextField("",10);
		  jl8=new JLabel("pro(职务)");jtf_pro=new JTextField("",10);
		  jl9=new JLabel("cla(职称)");jtf_cla=new JTextField("",10);
		  jl10=new JLabel("expe(简历)");jtf_expe=new JTextField("",10);
		  jl11=new JLabel("basic wage(基本工资)");jtf_wage=new JTextField("",10);
		  jl12=new JLabel("othwage(其他工资)");jtf_oth=new JTextField("",10);
		  jl13=new JLabel("monwage(月收入)");jtf_mon=new JTextField("",10);
		  jb_ok=new JButton("ok");jb_reset=new JButton("reset");
		  
		  jtf_oldNo.setEditable(false);
		  
		  
		  Container jp=this.getContentPane();
		  jp.setLayout(new GridLayout(15,2));
		  jp.add(jl1);jp.add(jtf_oldNo);
		  jp.add(jl2);jp.add(jtf_no);
		  jp.add(jl3);jp.add(jtf_name);
		  jp.add(jl4);jp.add(jtf_sex);
		  jp.add(jl5);jp.add(jtf_dept);
		  jp.add(jl6);jp.add(jtf_age);
		  jp.add(jl7);jp.add(jtf_worktime);
		  jp.add(jl8);jp.add(jtf_pro);
		  jp.add(jl9);jp.add(jtf_cla);
		  jp.add(jl10);jp.add(jtf_expe);
		  jp.add(jl11);jp.add(jtf_wage);
		  jp.add(jl12);jp.add(jtf_oth);
		  jp.add(jl13);jp.add(jtf_mon);
		  
		  
		  jp.add(jb_ok);jp.add(jb_reset);
		  jb_ok.addActionListener(this);
		  jb_reset.addActionListener(this);
		  
		  init();
		  
		  //////////////////////
		  
		  pack();
		  this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		  
	  }
	  
	 
	public void actionPerformed(ActionEvent e) {
		
		if(e.getActionCommand().equals("ok")){
			long oldNo = -1;
			long no=-1;
			try{
				if(!jtf_oldNo.getText().equals("")) 
					oldNo=Long.parseLong(jtf_oldNo.getText());
				if(!jtf_no.getText().equals(""))
				no=Long.parseLong(jtf_no.getText());
			}catch(NumberFormatException e1){
				JOptionPane.showMessageDialog(this, e1.getMessage());
			}
			//long oldNo=Long.parseLong(jtf_oldNo.getText());
			
			String name=jtf_name.getText();
			String sex=jtf_sex.getText();
			int age=-1;
			try{
				if(!jtf_age.getText().equals(""))
				age=Integer.parseInt(jtf_age.getText());
			}catch(NumberFormatException e2){
				JOptionPane.showMessageDialog(this, e2.toString());
			}
			
			String dept=jtf_dept.getText();
			int worktime=-1;
			double wage,othwage,monwage;
			wage=othwage=monwage=-1;
			try{
				if(!jtf_worktime.getText().equals(""))
				worktime=Integer.parseInt(jtf_worktime.getText());
				if(!jtf_wage.getText().equals(""))
				wage=Double.parseDouble(jtf_wage.getText());
				if(!jtf_oth.getText().equals(""))
				 othwage=Double.parseDouble(jtf_oth.getText());
				if(!jtf_mon.getText().equals(""))
				 monwage=Double.parseDouble(jtf_mon.getText());
				
			}catch(NumberFormatException e2){
				JOptionPane.showMessageDialog(this, e2.toString());
			}
			
			//JOptionPane.showMessageDialog(null, ""+wage);
			String pro=jtf_pro.getText();
			String cla=jtf_pro.getText();
			String expe=jtf_expe.getText();
			
			if(type==DELETE){
				if(isTinfo)
				model.delete(no, name, sex, dept, age, worktime, pro, cla, expe);
				else{
					//JOptionPane.showMessageDialog(null, "model.delete(no, name, wage, othwage, monwage)"+wage);
					model.delete(no, name, wage, othwage, monwage);
				}
					//model.delete(no, name, wage, othwage, monwage);
			}
			else if(type==INSERT){
				if(isTinfo)
				model.insert(no, name, sex, dept, age, worktime, pro, cla, expe);
				else
					model.insert(no, name, wage, othwage, monwage);
			}
			else if(type==UPDATE){
				if(isTinfo)
				model.update(oldNo, no, name, sex, dept, age, worktime, pro, cla, expe);

⌨️ 快捷键说明

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