亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
国精品**一区二区三区在线蜜桃| 91国产免费看| 日本精品视频一区二区| 欧美大片一区二区| 一区二区三区四区在线播放 | 一区二区免费视频| 久久www免费人成看片高清| 日韩欧美国产一区二区在线播放| 国产精品久久99| 国内久久精品视频| 欧美一区午夜视频在线观看| 亚洲欧美日韩国产中文在线| 国产精品一区在线观看你懂的| 欧美日韩aaa| 亚洲激情在线播放| 91一区二区在线| 国产日韩欧美电影| 精品一区二区综合| 日韩午夜电影在线观看| 亚洲国产精品视频| 色域天天综合网| 1024成人网| 97久久人人超碰| 亚洲天堂a在线| 97精品国产露脸对白| 国产蜜臀av在线一区二区三区| 国内成人精品2018免费看| 欧美xxxxx裸体时装秀| 日av在线不卡| 精品国产免费人成在线观看| 久久成人18免费观看| 欧美成人猛片aaaaaaa| 黄一区二区三区| 久久免费视频一区| 国产成人综合精品三级| 国产欧美日韩精品一区| 欧美日韩精品欧美日韩精品一| 一区二区三区视频在线看| 91国偷自产一区二区三区观看| 亚洲图片欧美激情| 色婷婷久久综合| 亚洲成在线观看| 欧美一卡二卡在线观看| 麻豆成人久久精品二区三区红| 欧美一级高清大全免费观看| 久久99精品国产.久久久久久| 欧美精品一区二区三区一线天视频| 精品在线播放免费| 中文字幕av资源一区| 93久久精品日日躁夜夜躁欧美| 亚洲综合成人网| 91精品欧美综合在线观看最新| 日日夜夜免费精品| 国产日韩欧美制服另类| 成人h动漫精品一区二| 亚洲卡通欧美制服中文| 欧美男女性生活在线直播观看| 奇米色一区二区三区四区| 久久久久久亚洲综合| 99精品欧美一区二区三区小说 | 欧美性做爰猛烈叫床潮| 日韩中文字幕一区二区三区| 精品久久久久久久久久久久久久久| 丰满岳乱妇一区二区三区| 中文字幕在线不卡视频| 欧美一级黄色录像| 成人不卡免费av| 玖玖九九国产精品| 亚洲女人小视频在线观看| 91精品国产综合久久蜜臀| 成人av综合一区| 丝袜亚洲另类丝袜在线| 国产欧美一区二区精品性色| 欧美日韩一区视频| 成人午夜视频免费看| 日韩av在线发布| 国产精品看片你懂得| 日韩欧美一区二区不卡| 日本道精品一区二区三区| 狠狠色狠狠色综合系列| 午夜欧美在线一二页| 中文字幕二三区不卡| 日韩精品一区二区三区在线| 一本大道久久精品懂色aⅴ| 韩国av一区二区| 视频精品一区二区| 亚洲欧洲av在线| 国产视频一区不卡| 欧美videos中文字幕| 色婷婷av一区二区三区软件| 国产麻豆视频精品| 久久精品噜噜噜成人88aⅴ| 亚洲精品一卡二卡| 国产精品第四页| 国产亚洲精品bt天堂精选| 91精品国产aⅴ一区二区| 欧美性受xxxx黑人xyx性爽| av在线不卡观看免费观看| 国产精品1区2区3区在线观看| 蜜臀a∨国产成人精品| 婷婷丁香激情综合| 香蕉影视欧美成人| 亚洲国产中文字幕| 亚洲成人av一区二区| 亚洲一区二区三区四区在线观看| 专区另类欧美日韩| 成人欧美一区二区三区| 国产精品女上位| 国产精品久久久久久亚洲毛片 | 蜜臀久久久久久久| 亚洲bt欧美bt精品| 亚洲成人一区在线| 亚洲bt欧美bt精品777| 亚洲午夜日本在线观看| 夜夜操天天操亚洲| 亚洲高清免费在线| 亚洲成a人片综合在线| 亚洲高清免费观看高清完整版在线观看| 亚洲视频一区在线观看| 一区2区3区在线看| 亚洲123区在线观看| 五月激情综合色| 蜜桃传媒麻豆第一区在线观看| 日韩av一区二区三区四区| 蜜臀av一区二区三区| 激情综合亚洲精品| 成人午夜精品在线| 91麻豆国产精品久久| 在线看国产日韩| 欧美一区二区私人影院日本| 精品少妇一区二区三区在线播放 | 日韩一区二区三区在线观看| 欧美一级久久久| 久久久久久久综合狠狠综合| 国产精品女人毛片| 一区二区在线看| 日本欧美大码aⅴ在线播放| 久久国内精品自在自线400部| 国内精品视频一区二区三区八戒| 成人av资源网站| 欧美日韩的一区二区| 亚洲精品一区二区三区福利| 国产精品免费久久| 婷婷久久综合九色国产成人| 国产一区二区三区| 91高清视频在线| 欧美一级日韩免费不卡| 国产精品久久久久一区二区三区 | 一区二区免费看| 久久精品国产一区二区| 国产不卡视频在线播放| 日本久久精品电影| 亚洲精品一线二线三线无人区| 中文字幕成人在线观看| 亚洲线精品一区二区三区| 国产麻豆视频一区| 欧美年轻男男videosbes| 国产日韩精品一区二区浪潮av | 精品婷婷伊人一区三区三| 久久久噜噜噜久久中文字幕色伊伊| 中文字幕一区二区在线观看| 日本不卡视频在线观看| 99re热这里只有精品免费视频| 91精品国产综合久久精品性色| 中文字幕av一区二区三区| 秋霞成人午夜伦在线观看| 波多野结衣亚洲| 欧美成人一级视频| 亚洲成人在线网站| 99精品国产热久久91蜜凸| 久久综合av免费| 亚洲国产视频一区| 国产91高潮流白浆在线麻豆| 欧美一卡在线观看| 一区二区高清视频在线观看| 丁香婷婷综合网| 亚洲精品一区二区三区影院| 性久久久久久久久久久久| 91网站最新网址| 久久久91精品国产一区二区精品| 首页亚洲欧美制服丝腿| 99久久久精品免费观看国产蜜| 久久综合精品国产一区二区三区| 婷婷丁香久久五月婷婷| 日本高清免费不卡视频| 中文字幕中文乱码欧美一区二区 | 日韩精品一级中文字幕精品视频免费观看| 高清国产一区二区| 国产欧美日韩在线看| 国产美女视频91| 精品黑人一区二区三区久久| 久久激情五月婷婷| 欧美一区二区三区婷婷月色| 亚洲va国产天堂va久久en| 日本韩国欧美三级| 亚洲国产中文字幕在线视频综合| 色综合久久久久久久久久久| 亚洲免费高清视频在线| 成人激情黄色小说| 亚洲精品自拍动漫在线|