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

📄 library.java

📁 初学者JAVA+SQL2005源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      contentPane.add( updateJButton );
      updateJButton.addActionListener( 
      
         new ActionListener() // anonymous inner class
         {
            // event handler called when updateJButton is pressed
            public void actionPerformed( ActionEvent event )
            {
               updateJButtonActionPerformed( event );
            }
            
         } // end anonymous inner class
         
      ); // end call to addActionListener
      
      // set properties of application's window
      setTitle( "学生图书馆管理" ); // set title bar string
      setSize( 513, 557 );        // set window size
      setVisible( true );         // display window
      
      loadParcel();
      
      getContentPane().setBackground(Color.LIGHT_GRAY);
      
   } // end method createUserInterface
   
  
   private void scanNewJButtonActionPerformed( ActionEvent event )
   {
      // clear JTextFields
      clearComponents();
;
  
      try 
	   {
		  
   	  myResultSet = myStatement.executeQuery( "SELECT * FROM parcel " );
   	  
   	  if(myResultSet.next()){
   		  myResultSet.close();
   		  myResultSet = myStatement.executeQuery( "SELECT max(parcelID) as maxID FROM parcel " );
   		  myResultSet.next();
   		  parcelID=Integer.parseInt(myResultSet.getString("maxID"))+1;
   	  }
   	  else{
   		  parcelID=1;
   		  myResultSet.close();
   	  }
   	  

	   } // end try

	   catch ( SQLException exception )
	   {
	      exception.printStackTrace();
	   }	
      
	      
	      
      //  unique ID number
		IDJTextField.setText(String.valueOf(parcelID));

		
		

		// disable appropriate components
		setJButtons(false);

		// enable or make editable appropriate components
		addJButton.setEnabled(true);
		parcelPersonalInformationJPanelEditable(true);
		
		
		
		
		
		

		// grab focus
		studentnameJTextField.requestFocusInWindow();
      
   } // end method scanNewJButtonActionPerformed
   
   
   private void addJButtonActionPerformed( ActionEvent event )
   {
      // set information 
      setParcelData();
      
      try 
      {
    	  myStatement.executeUpdate("insert into parcel"+
          		 "(parcelID,name,booknumber,bookname1,bookname2,borrow1,classes,borrow2,return1,return2)"+
                   "values('"+parcelID+
                   "'," +"'"+name+"','"+booknumber+"','"+bookname1+"','"+bookname2+"','"+borrow1+"','"+classes+
                   "','"+borrow2+"','"+return1+"','"+return2+"')" );


      } // end try

      catch ( SQLException exception )
      {
         exception.printStackTrace();
      }
      
      // disable or make uneditable appropriate components
      addJButton.setEnabled( false );
      parcelPersonalInformationJPanelEditable( false );

      // enable appropriate components
      setJButtons( true );
      
      // change selected item in ClassesJComboBox
      ClassesJComboBox.setSelectedIndex( 
         classesJComboBox.getSelectedIndex() );
         
   } // end method addJButtonActionPerformed
   
   
   private void removeJButtonActionPerformed( ActionEvent event )
   {
	   parcelID=Integer.parseInt(IDJTextField.getText());
	      
	      try {
			int result = JOptionPane.showOptionDialog(null, "是否删除学生信息?",
					"系统提示", JOptionPane.YES_NO_OPTION,
					JOptionPane.QUESTION_MESSAGE, null,
					new String[] { "是", "否" }, "否");
			if (result == JOptionPane.NO_OPTION)
				return;
			else{
				myStatement.executeUpdate("delete from parcel where parcelID="+parcelID);
			}	

	      } // end try

	      catch ( SQLException exception )
	      {
	         exception.printStackTrace();
	      }
      
	      loadParcel();
	      
	     
	      IDJTextField.setText( "");
	      studentnameJTextField.setText( "");
	      booknumberJTextField.setText( "");
	      nameJTextField1.setText( "");
	      nameJTextField2.setText( "");
	      borrowJTextField1.setText( ""); 
	      borrowJTextField2.setText("");
	      returnJTextField1.setText( "");
	      returnJTextField2.setText( "");
	      

	      classesJComboBox.setSelectedIndex( 0);
	      
	      removeJButton.setEnabled(false);
	      editJButton.setEnabled(false);
	    
   } // end method removeJButtonActionPerformed
   
   // allow user to edit  information
   private void editJButtonActionPerformed(ActionEvent event) 
   {
		setJButtons(false);

		// make user able to update information
		updateJButton.setEnabled(true);
		parcelPersonalInformationJPanelEditable(true);
		
		DefaultTableModel tableModel1 = (DefaultTableModel) table.getModel();
		
	    int i = table.getSelectedRow(); 

	      
	      
	      IDJTextField.setText(
	    		  (String)tableModel1.getValueAt(i, 0));
	      studentnameJTextField.setText( (String)tableModel1.getValueAt(i, 1));
	      booknumberJTextField.setText( (String)tableModel1.getValueAt(i, 3));
	      nameJTextField1.setText( (String)tableModel1.getValueAt(i, 4));
	      nameJTextField2.setText( (String)tableModel1.getValueAt(i, 5));
	      
	      borrowJTextField1.setText( (String)tableModel1.getValueAt(i, 6)); 
	      borrowJTextField2.setText((String)tableModel1.getValueAt(i, 7));
	      returnJTextField1.setText( String.valueOf( tableModel1.getValueAt(i, 8)));
	      returnJTextField2.setText( String.valueOf( tableModel1.getValueAt(i, 9)));
	    
	      classesJComboBox.setSelectedIndex( ClassesJComboBox.getSelectedIndex() );
	      
	} // end method editJButtonActionPerformed

   // move to next 
   private void updateJButtonActionPerformed( ActionEvent event )
   {
	   setParcelData();
	   parcelID=Integer.parseInt(IDJTextField.getText());
	      
	      try 
	      {
	    	  myStatement.executeUpdate("update parcel set name='"+name+"',borrow1='"+borrow1+
	    			  "',classes='"+classes+"',borrow2='"+borrow2+"',return1='"+return1+"',return2='"+return2+
	    			  "',bookname1='"+bookname1+"',bookname2='"+bookname2+"',booknumber='"+booknumber+"' where parcelID="+parcelID);


	      } // end try

	      catch ( SQLException exception )
	      {
	         exception.printStackTrace();
	      }
	      
	      // disable or make uneditable appropriate components
	      addJButton.setEnabled( false );
	      parcelPersonalInformationJPanelEditable( false );

	      // enable appropriate components
	      setJButtons( true );
	      removeJButton.setEnabled(false);
	      editJButton.setEnabled(false);
	      updateJButton.setEnabled(false);
	      
	     
	      ClassesJComboBox.setSelectedIndex( 
	         classesJComboBox.getSelectedIndex() );
      
   } // end method updateJButtonActionPerformed

   // change the list  in the ClassesJList
   private void ClassesJComboBoxActionPerformed(
      ActionEvent event )
   {
	   loadParcel();
      
   } 
   
   // set all information 
   private void setParcelData()
   {
	  name=studentnameJTextField.getText();
	  borrow1=borrowJTextField1.getText();
	  borrow2=borrowJTextField2.getText();
      classes=classnumber[classesJComboBox.getSelectedIndex()];
      return1=Integer.parseInt(returnJTextField1.getText());
      return2=returnJTextField2.getText();
      bookname1=nameJTextField1.getText();
      bookname2=nameJTextField2.getText();
      booknumber=Integer.parseInt(booknumberJTextField.getText());
      
   } // end method 
   
   // display all information 
   private void loadParcel()
   {
	   /* 表格列向量 */
	    Vector cell;
		
		/* 表格行向量 */
	    Vector row = new Vector();
		
		//初始化表格数据,这些数据实例运行来源于数据库中
	   try 
	   {
		   
	      myResultSet = myStatement.executeQuery( "SELECT parcelID,name,booknumber,bookname1,bookname2,borrow1,classes,borrow2,return1,return2 " + 
	         "FROM parcel " +
	         "WHERE classes='"+classnumber[ClassesJComboBox.getSelectedIndex()]+"'" );
	     
	      while(myResultSet.next()){
				cell = new Vector();
				
				
				cell.add(myResultSet.getString("parcelID"));
				
				
				cell.add(myResultSet.getString("name"));
				cell.add(myResultSet.getString("classes"));
				cell.add(myResultSet.getString("booknumber"));
				cell.add(myResultSet.getString("bookname1"));
				cell.add(myResultSet.getString("bookname2"));
				
				cell.add(myResultSet.getString("borrow1"));
				
				cell.add(myResultSet.getString("borrow2"));
				cell.add(myResultSet.getString("return1"));
				cell.add(myResultSet.getString("return2"));
				row.add(cell);
			}
			
	      myResultSet.close(); // close myResultSet

	   } // end try

	   catch ( SQLException exception )
	   {
	      exception.printStackTrace();
	   }
	   
	   // 设置表格模型
	   tableModel.setDataVector(row, tableHeadName);
	   
	      table = new JTable(tableModel);
		  table.addMouseListener(new MouseAdapter() {
		   	public void mouseClicked(MouseEvent e) {
		   		clicktable();
		   	}
		   });
	      
		  table.getColumnModel().getColumn(0).setPreferredWidth(40);
		  table.getColumnModel().getColumn(1).setMinWidth(30);
		  table.getColumnModel().getColumn(2).setPreferredWidth(40);
		  table.getColumnModel().getColumn(3).setPreferredWidth(40);
		  table.getColumnModel().getColumn(4).setPreferredWidth(140);
		  table.getColumnModel().getColumn(5).setPreferredWidth(140);
		  table.getColumnModel().getColumn(6).setPreferredWidth(85);
		  table.getColumnModel().getColumn(7).setPreferredWidth(85); 
		  
	      scrollPane.setViewportView(table);
	   
   } 
   
   protected void clicktable() {
	
	   editJButton.setEnabled(true );
	   scanNewJButton.setEnabled( true );
	   updateJButton.setEnabled(false);
	   addJButton.setEnabled(false);
	   removeJButton.setEnabled(true);
	   
	   parcelPersonalInformationJPanelEditable(false);
	   
	   DefaultTableModel tableModel1 = (DefaultTableModel) table.getModel();
		
	    int i = table.getSelectedRow(); 

	      // display package data
	      
	      IDJTextField.setText(
	    		  (String)tableModel1.getValueAt(i, 0));
	      studentnameJTextField.setText( (String)tableModel1.getValueAt(i, 1));
	      booknumberJTextField.setText( (String)tableModel1.getValueAt(i, 3));
	      nameJTextField1.setText( (String)tableModel1.getValueAt(i, 4));
	      nameJTextField2.setText( (String)tableModel1.getValueAt(i, 5));
	      
	      borrowJTextField1.setText( (String)tableModel1.getValueAt(i, 6)); 
	      borrowJTextField2.setText((String)tableModel1.getValueAt(i, 7));
	      returnJTextField1.setText( String.valueOf( tableModel1.getValueAt(i, 8)));
	      returnJTextField2.setText( String.valueOf( tableModel1.getValueAt(i, 9)));
	   
	      classesJComboBox.setSelectedIndex( ClassesJComboBox.getSelectedIndex() );
   }

// clear all information 
   private void clearComponents()
   {
      studentnameJTextField.setText( "" );
      booknumberJTextField.setText("");
      nameJTextField1.setText("");
      nameJTextField2.setText("");
      
      
      borrowJTextField1.setText( "" );
      borrowJTextField2.setText( "" );
      returnJTextField1.setText( "" );
      returnJTextField2.setText( "" );
      IDJTextField.setText( "" );

   } // end method clearComponents

   // enabled/disable JButtons
   private void setJButtons( boolean state )
   {
      
      scanNewJButton.setEnabled( state );
      removeJButton.setEnabled( state );
      editJButton.setEnabled( state );

   } // end method setJButtons

   // make editable or uneditable components
   // in PersonalInformationJPanel
   private void parcelPersonalInformationJPanelEditable( boolean editable )
   {
      
      borrowJTextField1.setEditable( editable );
      borrowJTextField2.setEditable( editable );
      classesJComboBox.setEnabled( editable );
      returnJTextField2.setEditable( editable );
      nameJTextField2.setEditable(editable);
      nameJTextField1.setEditable(editable);
      returnJTextField1.setEditable(editable);
      studentnameJTextField.setEditable( editable );
      booknumberJTextField.setEditable(editable);
    
   } // end method 
   
   // main method
   public static void main( String[] args )
   {
      Library application = new Library();
      application.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

   } // end method main
   
} // end class Library

/**
  版本注册:信息07—1。
**/

⌨️ 快捷键说明

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