亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bookborrowframe.java

?? 書籍管理系統
?? JAVA
字號:
/**********************************
 * FileName:BookBorrowFrame.java
 * Function:根據書本ID借閱圖書
 * Time:2004 1.11
 *********************************/

import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.border.*;
import javax.swing.table.*;
import java.sql.*; 

class BookBorrowFrame extends Frame implements ActionListener 
{   
	Panel topPanel = new Panel ();
	Label lbBookID = new Label ("書本ID");
	Label lbUserID = new Label ("讀者ID");
	Label lbResult = new Label ("結果顯示");
	
	TextField tfUserID = new TextField(4);
	TextField tfBookID = new TextField (4);
	TextField tfUserName = new TextField (8);
	TextField tfResult = new TextField (20);
	Button butQuery = new Button("查詢");
	Button butBorrow = new Button ("借閱");
	Button butClear = new Button ("清空");
	Button butExit = new Button ("退出");
	JTable tbBBResult;
	JScrollPane tbPane1;
	private Vector vect = new Vector ();
	String labels[] = {"書本ID","讀者ID","讀者姓名","借閱日期"};
    ConDB conUserQuery= new ConDB();

	BookBorrowFrame()
	{
		setTitle("圖書借閱窗口");
		BorderLayout gbLayout = new BorderLayout();
		setLayout(gbLayout);
		tbBBResult = new JTable(tm);
	    tbBBResult.setToolTipText("圖書借閱記錄");
	    tbBBResult.setCellSelectionEnabled(false);
	    tbBBResult.setShowVerticalLines(true);
	    tbBBResult.setShowHorizontalLines(true);
	    tbPane1 = new  JScrollPane(tbBBResult);
		

	    topPanel.add(lbBookID);
		topPanel.add(tfBookID);
	    topPanel.add(butQuery);
		topPanel.add(butBorrow);
		topPanel.add(butClear);
	    topPanel.add(butExit);
		topPanel.add(lbUserID);
		topPanel.add(tfUserID);
		topPanel.add(lbResult);
		topPanel.add(tfResult);
		tfResult.setEditable (false);
		
	  
	    add("North",topPanel);
	    add("Center",tbPane1);
		butQuery.addActionListener (this);
		butBorrow.addActionListener (this);
		butClear.addActionListener (this);
	    butExit.addActionListener (this);
	    this.setVisible (true);
	    this.setSize(900,600);
	    this.setLocation (100,100);	
		
	    addWindowListener(new WindowAdapter() 
	   {
		  public void windowClosing(WindowEvent e) 
        	{
               System.exit (0);
        	}
      	 });
		openDB();
	 
	}//end of new UserQueryFrame()
	
	
	//設定數據
        //聲明一個類AbstractTableModel對象
        //實現AbstractTableModel對象tm中的方法
      AbstractTableModel tm= new AbstractTableModel() 
		{
			//取得表格列數
			public int getColumnCount() { return labels.length; }
            //取得表格行數
			public int getRowCount() { return vect.size();}
            //取得單元格中的屬性值
			public Object getValueAt(int arow, int acol) 
			{ 
				Vector row = (Vector)vect.elementAt(arow);
	            return row.elementAt(acol);
			 }
			//設置表格列名
		   public  String getColumnName(int column)
			{
			   if (labels[column] != null) 
			   {
            	  return labels[column];
        		}
			
			   else 
			  {
				   return "";
        		
			   }
		    }
			
			//數據模型不可編輯,該方法設置為空
			public void setValueAt(Object value,int arow,int acol){  }
			
		    //取得列所屬對象類
			public  Class getColumnClass(int column)
			{
      	        int type;
      	        try {
      	            type = conUserQuery.rs.getMetaData().getColumnType(column+1);
      	        }
      	        catch (SQLException e) {
      	            return super.getColumnClass(column);
      	        }
      
      	        switch(type) {
      	        case Types.CHAR:
      	        case Types.VARCHAR:
      	        case Types.LONGVARCHAR:
      	            return String.class;
      
      	        case Types.BIT:
      	            return Boolean.class;
      
      	        case Types.TINYINT:
      	        case Types.SMALLINT:
      	        case Types.INTEGER:
      	            return Integer.class;
      
      	        case Types.BIGINT:
      	            return Long.class;
      
      	        case Types.FLOAT:
      	        case Types.DOUBLE:
      	            return Double.class;
      
      	        case Types.DATE:
      	            return java.sql.Date.class;
      
      	        default:
      	            return Object.class;
      	        }
      	    }
		  //設置單元格不可編輯,為缺省實現
		  public  boolean isCellEditable(int row,int column)
		  {
			return false;
		  }

			
		};//end of new AbstractTableModel()  
	
	private void borrowQuery()
	{
		String bookID =tfBookID.getText ();
 	    
		try{
		    int id = Integer.parseInt (bookID);
			ResultSetMetaData rsmd = conUserQuery.rs.getMetaData();
	        conUserQuery.stm = conUserQuery.con.createStatement();
			conUserQuery.rs = conUserQuery.stm.executeQuery("select * from borrow where bookid ='"+id+"'");
		  
		   //初始化向量對象
		   vect.removeAllElements();
		  //更新表格內容
		  tm.fireTableStructureChanged();
         
		  while(conUserQuery.rs.next())
		  {
			Vector rec_vector = new Vector();
			for(int i =1; i<=rsmd.getColumnCount(); i++)
			{
				//從結果集中取數據放入向量rec_vector中
				rec_vector.addElement(conUserQuery.rs.getObject(i));
			}
			
			//向量rec_vector加入向量vect中
			vect.addElement(rec_vector);
		 }
		
		//更新表格,顯示向量vect的內容		
		tm.fireTableStructureChanged();
		//查詢完成后,關閉該SQL
		conUserQuery.stm.close();
		//重新執行SQL
		openDB();

   	}
	
    catch(NumberFormatException e)
	{
		tfResult.setText("輸入格式有誤,請重新輸入");
	}
		
	catch(Exception e)
	{
		  System.out.print("Error in Query Data." + e);
   		  System.exit(1); 
    }	
  }// end of private void dataQuery()


   //打開表
   private void openDB() 
   {
	   try
	   {
		   conUserQuery.stm = conUserQuery.con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
                                      ResultSet.CONCUR_UPDATABLE);
		   conUserQuery.rs = conUserQuery.stm.executeQuery("select * from borrow");
		   conUserQuery.rs.first();
 
	   }
	   catch(Exception e)
	   {
		   System.out.print("Error in open table." + e);
		   System.exit(1); 
   	
	   }
   } // end of private void openDB() 
   
   private void inserData()
   {
	   String bookID = tfBookID.getText ();
	   String userID = tfUserID.getText ();
	   String userName = tfUserName.getText ();
	   try
	   {
	       int bID = Integer.parseInt (bookID);
		   int uID = Integer.parseInt (userID);
		   conUserQuery.con.setAutoCommit(false); 
		   String stmp="{call book_borrow(?,?)}"; 
	       CallableStatement cstmt=conUserQuery.con.prepareCall(stmp); //調用存儲過程book_borrow
           int i=bID; 
           cstmt.setInt(1,i);
	       int y=uID;
	       cstmt.setInt(2,y);
	       cstmt.execute();
           conUserQuery.con.commit(); 
	       cstmt.close(); 
	       conUserQuery.con.close();
	   }
	   catch(NumberFormatException e)
	{
		tfResult.setText("輸入格式有誤,請重新輸入");
	}
		
	catch(Exception e)
	{
		 tfResult.setText("此書已借出或無此書");
    }	
	   
   }// end of inserData()
	
	public void actionPerformed(ActionEvent e)
	{
		
		if(e.getActionCommand () == "查詢")
			borrowQuery();
		if(e.getActionCommand ()== "借閱")
		{
			inserData();
		}
		if(e.getActionCommand ()=="清空")
		{	tfBookID.setText ("");
		    tfResult.setText ("");
		}
	   if(e.getActionCommand () == "退出")
			dispose ();
	}
}	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品免费国产一区二区三区四区| 国产馆精品极品| 欧美一区二区三区婷婷月色| 亚洲国产成人91porn| 欧美精品xxxxbbbb| 美女诱惑一区二区| 日本一区二区三区视频视频| 高清成人在线观看| 洋洋av久久久久久久一区| 91高清视频在线| 日韩av高清在线观看| 精品久久国产老人久久综合| 国产成人亚洲综合a∨猫咪| 成人欧美一区二区三区在线播放| 91福利精品视频| 日韩av二区在线播放| 国产三区在线成人av| 一本大道综合伊人精品热热| 日本成人在线不卡视频| 中文文精品字幕一区二区| 色婷婷精品大视频在线蜜桃视频| 丝袜国产日韩另类美女| 国产日韩在线不卡| 欧美性大战久久久久久久蜜臀| 精品一区二区在线观看| 亚洲人成网站色在线观看| 91精品国产品国语在线不卡| 丁香另类激情小说| 婷婷丁香久久五月婷婷| 国产欧美日韩中文久久| 欧美久久久一区| 成人小视频免费观看| 日日骚欧美日韩| 国产精品理论在线观看| 正在播放一区二区| 99r国产精品| 久久国产视频网| 夜夜嗨av一区二区三区中文字幕 | 在线不卡中文字幕| 国产大陆亚洲精品国产| 五月天一区二区三区| 亚洲日本一区二区| 国产肉丝袜一区二区| 日韩欧美一级片| 欧美日韩一级片在线观看| 国产激情偷乱视频一区二区三区| 亚洲福利视频一区| 亚洲日本在线观看| 美女爽到高潮91| 一区二区日韩av| 亚洲欧洲一区二区在线播放| 欧美精品一区二区久久久| 91精品国产综合久久久蜜臀粉嫩| av一区二区久久| 成人精品国产免费网站| 国产精品一区在线观看你懂的| 日产国产高清一区二区三区| 亚洲宅男天堂在线观看无病毒| 国产精品久久久久三级| www一区二区| 日韩久久久久久| 欧美天堂亚洲电影院在线播放| 国产69精品久久久久毛片| 天天av天天翘天天综合网| 国产亚洲一区二区三区在线观看| 欧美精品在线观看一区二区| 成人午夜激情在线| 国模无码大尺度一区二区三区| 亚洲午夜av在线| 日韩欧美一二三| 欧美视频日韩视频在线观看| 精品一区免费av| 亚洲蜜臀av乱码久久精品| 亚洲人成网站色在线观看| 日韩精品一区二区三区中文不卡| 欧美人牲a欧美精品| 成人黄色a**站在线观看| 国产在线一区二区综合免费视频| 午夜精品久久久久影视| 亚洲精品视频一区| 一级日本不卡的影视| 一二三四社区欧美黄| 亚洲五码中文字幕| 天天综合天天做天天综合| 天涯成人国产亚洲精品一区av| 亚洲h精品动漫在线观看| 肉色丝袜一区二区| 青青草97国产精品免费观看| 久久成人羞羞网站| 国产乱码精品一区二区三区av | 久久夜色精品一区| 亚洲精品一区二区三区影院| 日韩一区二区在线观看视频播放| 欧美日高清视频| 欧美日本韩国一区二区三区视频 | 国产一二三精品| 国产精品69久久久久水密桃| 国产在线日韩欧美| 国产一区二区主播在线| 国产成人免费视频网站高清观看视频 | 国产精品久久影院| 亚洲欧洲成人自拍| 国产乱码精品一区二区三区五月婷| 久久66热偷产精品| 美女视频第一区二区三区免费观看网站 | 亚洲电影激情视频网站| 午夜精品久久久久久久久| 免费成人结看片| 国产一区二区三区免费在线观看| 国产综合一区二区| 成人sese在线| 欧美三级视频在线观看| 欧美一区二区大片| 久久久精品蜜桃| 日韩一区在线看| 免播放器亚洲一区| 国产91精品在线观看| 91丨porny丨户外露出| 欧美三级韩国三级日本三斤 | 另类人妖一区二区av| 成人av电影在线| 日韩一区二区在线播放| 日本一区二区三区dvd视频在线| 欧美肥妇free| 午夜av一区二区| 国产一区二区影院| 91啦中文在线观看| 日韩视频不卡中文| 国产精品国产自产拍高清av| 亚洲欧美日韩国产手机在线| 精品写真视频在线观看| 色综合 综合色| 欧美va日韩va| 尤物视频一区二区| 久久福利视频一区二区| 成人自拍视频在线观看| 欧美成人在线直播| 樱花影视一区二区| 激情欧美一区二区| 欧美午夜精品一区二区蜜桃| 欧美吞精做爰啪啪高潮| 中文字幕字幕中文在线中不卡视频| 婷婷久久综合九色综合绿巨人| 国产成人啪午夜精品网站男同| 欧美日韩电影在线| 中文字幕在线不卡国产视频| 午夜影院久久久| 欧美优质美女网站| 国产欧美1区2区3区| 毛片基地黄久久久久久天堂| 欧美久久久久久久久中文字幕| 亚洲精品亚洲人成人网在线播放| 国产在线国偷精品免费看| 欧美男人的天堂一二区| 一区二区三区日韩欧美| 成人丝袜18视频在线观看| 欧美一区二区三区免费| 亚洲一区二区欧美日韩| 99视频一区二区| 日韩精品一区二区三区中文不卡| 天堂va蜜桃一区二区三区| 色哟哟国产精品| 国产精品久久久久久久久免费相片| 久久精品国产一区二区三区免费看| 色拍拍在线精品视频8848| 国产日韩精品一区二区三区 | 亚洲伊人色欲综合网| 99精品国产热久久91蜜凸| 久久综合久久综合久久| 国产精品久久免费看| 成人丝袜18视频在线观看| 久久综合99re88久久爱| 久久精品99国产精品| 欧美电影在线免费观看| 玖玖九九国产精品| 亚洲精品一线二线三线无人区| 国产一区二区0| 国产精品毛片a∨一区二区三区| 国产一区二区三区久久久| 国产欧美一区二区精品久导航| 久久爱另类一区二区小说| 欧美三级在线视频| 亚洲va欧美va国产va天堂影院| 欧美在线观看视频一区二区三区| 亚洲国产精品成人久久综合一区| 五月激情丁香一区二区三区| 欧美视频在线播放| 亚洲亚洲精品在线观看| 欧美亚洲愉拍一区二区| 性欧美疯狂xxxxbbbb| 91麻豆免费视频| 亚洲v日本v欧美v久久精品| 欧美精品一级二级三级| 日韩国产欧美视频| 欧美第一区第二区| 蜜桃av一区二区三区电影| 欧美成人精精品一区二区频| 韩国女主播一区二区三区| 国产亚洲综合性久久久影院| 岛国精品一区二区|