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

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

?? dbimpl2.java

?? springGather 在JAVA環境開發的電信運營支持系統
?? JAVA
字號:
package org.com.gather;

import java.util.*;
import java.sql.*;
import org.com.gather.exception.*;

//切換了類,原版本事DBImpl,考慮到功能上的限制
//開發了另一個版本,DBImpl2,直接利用框架來切換類

public class DBImpl2 implements DB{
	private Properties pro = null;
	private Log log = null;
	private BackUp back = null;

	private static String key = "key";
	private static DBImpl2 instance = null;

	
	//屬性由Spring注入
	private DBImpl2(Properties pro){
		this.pro = pro;
	}

	//私有的構造器,為了獲取實例,要提供一個靜態方法,
	//通過該方法獲取實例
	public static DBImpl2 getInstance(Properties pro){
		if(instance == null){
			synchronized(key){
				if(instance == null){
					instance = new DBImpl2(pro);
				}
			}
		}
		return instance;
	}

	//有可能多個線程會同時保存數據,也就是說這個方法
	//將會出現并發問題,為了防止多個線程同時對做入庫
	//操作,在這加一個同步鎖.
	public synchronized void storeToDB(Collection col)throws SQLException,ClassNotFoundException,DBException{

		log.writeInfo("應該入庫數量大下---"+col.size());

		if(!col.isEmpty()){
			long start = System.currentTimeMillis();
			Connection con = null;
	
			con = this.getConnection();

			log.writeDebug("成功獲取連接,程序繼續執行!");
			long end = System.currentTimeMillis();
			long time = (end - start)/1000;
			log.writeInfo("獲取連接時長為 --->"+time);
			
			//構建一塊緩存
			Collection coll = new ArrayList();
			
			//取出batchSize,每次入庫量大小
			String s_size = pro.getProperty("batchSize");
			int size = new Integer(s_size).intValue();
			
			int c_size = col.size();
		
			//對入庫集合進行遍歷
			Iterator iter = col.iterator();
			//為了測試,這里只插入一個字段
			String sql = "insert into dt values(?)";
			PreparedStatement pstmt = null;
			try{
				pstmt = con.prepareStatement(sql);
			}catch(SQLException e){
				e.printStackTrace();
				log.writeError("解析sql語句出異常!");
				back.storeForEmpty(col);
				log.writeInfo("成功把入庫數據備份!");
				System.exit(0);
			}

			while(iter.hasNext()){
				//把集合的數據存放到緩存,等到數量到了
				//batch-size指定的數量后再一次入庫;
				coll.add(iter.next());

				//如果集合數據存放到緩存,則可把集合的數據
				//刪除;
				iter.remove();
				
				if(coll.size() == size){
					try{
						con.setAutoCommit(false);

						Iterator it = coll.iterator();
						while(it.hasNext()){
							BIDR bidr = (BIDR)it.next();
							pstmt.setString(1,bidr.getLoginName());
							pstmt.addBatch();
						}
						pstmt.executeBatch();
						con.commit();
					}catch(SQLException e){
						log.writeError(e.getMessage());
						//把剩下沒入庫的數據,一并保存;
						col.addAll(coll);
						back.storeForEmpty(col);
						log.writeInfo("入庫過程重出異常,成功把數據備份到文件;");
						
						try{
							con.rollback();
							log.writeInfo("入庫異常,回滾!");
						}catch(SQLException ee){
							ee.printStackTrace();
							log.writeError("數據庫異常,數據回滾!");
							throw new DBException(ee);
						}
						throw new DBException(e);
					}
					//把緩存清空,重新載入數據;
					coll.clear();
				}
			}


		//把剩余的數據,繼續入庫;
			Iterator itr = coll.iterator();
			try{
				con.setAutoCommit(false);
		 
				while(itr.hasNext()){
					BIDR br = (BIDR)itr.next();
					pstmt.setString(1,br.getLoginName());
					pstmt.addBatch();
				}
				pstmt.executeBatch();
				con.commit();
			}catch(SQLException e){
				e.printStackTrace();
				back.storeForEmpty(coll);
				log.writeInfo("成功把剩余數據備份!");
				try{
					con.rollback();
				}catch(SQLException ee){
					ee.printStackTrace();
					log.writeError("入庫異常,剩余數據回滾!");
					throw new DBException(e);
				}
			}
			//清空緩存;
			coll.clear();
			//把剩余的集合數據清空; 
			col.clear();
			log.writeDebug("成功將數據插入數據庫!");
		}else{
			System.out.println("入庫數據量為零!");
		}
	}

	//這里每次都是拿到物理連接,可以考慮用連接池.
	public Connection getConnection()throws SQLException,ClassNotFoundException{
		Class.forName(pro.getProperty("driver"));
		Connection con = DriverManager.getConnection(pro.getProperty("url"),pro.getProperty("username"),pro.getProperty("password"));
		return con;
	}

	public void setLog(Log log){
		this.log = log;
	}

	public void setBackUpServer(BackUp back){
		this.back = back;
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线看日本不卡| 亚洲免费观看在线视频| 国产精品盗摄一区二区三区| 中文字幕一区av| 韩国精品一区二区| 欧美日韩在线观看一区二区 | 亚洲人成亚洲人成在线观看图片 | 日韩一区二区三区视频| 日韩伦理av电影| 精品一区二区av| 欧美日本一区二区三区四区| 1000精品久久久久久久久| 久久国产精品99久久久久久老狼| 色婷婷久久久久swag精品| 国产片一区二区| 美国毛片一区二区| 日韩一卡二卡三卡四卡| 午夜电影网一区| 欧美亚一区二区| 亚洲欧美激情小说另类| 成人app网站| 欧美videos大乳护士334| 日本最新不卡在线| 4438x亚洲最大成人网| 亚洲一区二区偷拍精品| 色8久久精品久久久久久蜜| 综合久久综合久久| 99视频精品在线| 综合激情网...| 91在线无精精品入口| 国产精品免费视频网站| 成人永久aaa| 亚洲色图色小说| 在线观看中文字幕不卡| 夜夜操天天操亚洲| 欧美日本在线视频| 久久精品国产一区二区三| 欧美成va人片在线观看| 国产在线精品一区二区不卡了| 日韩欧美国产小视频| 国产一区中文字幕| 国产精品三级久久久久三级| www.综合网.com| 亚洲男人天堂av网| 制服丝袜亚洲播放| 捆绑变态av一区二区三区| 亚洲精品一区二区三区蜜桃下载| 精品一区二区在线视频| 久久人人爽人人爽| www.日韩av| 亚洲国产精品一区二区www| 欧美日韩国产123区| 精品在线视频一区| 亚洲色图视频网| 欧美日韩mp4| 国产成人欧美日韩在线电影| 中文字幕五月欧美| 欧美日韩国产一二三| 日本在线不卡视频一二三区| 日韩精品一区二区三区视频播放| 国产成人av一区| 一区二区三区在线观看欧美| 日韩一区二区免费视频| 成人18精品视频| 午夜精品在线视频一区| 久久久久久久久久久久久久久99| 97久久超碰国产精品| 天堂一区二区在线| 亚洲国产精品99久久久久久久久| 欧美色图在线观看| 国产精品一区二区久激情瑜伽| 亚洲视频电影在线| 日韩欧美国产电影| 91无套直看片红桃| 国产美女在线精品| 亚洲成a人片综合在线| 国产精品网曝门| 日韩午夜电影在线观看| 99久久精品国产一区| 久久草av在线| 一区二区国产视频| 欧美国产丝袜视频| 欧美一区二区三区四区久久 | 欧美一区在线视频| a在线播放不卡| 国产麻豆成人传媒免费观看| 亚洲国产精品久久不卡毛片| 国产精品污污网站在线观看| 精品免费日韩av| 欧美美女喷水视频| 色婷婷久久久久swag精品| 国产美女精品人人做人人爽| 日韩av网站免费在线| 亚洲一二三四久久| 亚洲精品视频免费看| 国产欧美日韩亚州综合 | 国产一二三精品| 秋霞av亚洲一区二区三| 亚洲一区二区三区视频在线播放| 国产精品久久综合| 国产香蕉久久精品综合网| 日韩免费观看高清完整版| 欧美日韩视频一区二区| 色av成人天堂桃色av| 91啪九色porn原创视频在线观看| 丁香六月久久综合狠狠色| 国产麻豆精品95视频| 激情成人综合网| 麻豆91免费观看| 蜜臀av在线播放一区二区三区 | 亚洲精品视频自拍| 亚洲色欲色欲www在线观看| 亚洲欧美综合在线精品| 国产精品麻豆久久久| 国产精品女人毛片| 中文字幕中文字幕一区二区| 国产精品区一区二区三区| 中文字幕不卡一区| 中文字幕一区二区三区乱码在线| 国产精品国产三级国产有无不卡| 国产精品美女久久久久久2018| 国产欧美一区二区三区沐欲| 中文字幕日本不卡| 中文字幕日韩精品一区| 亚洲欧美韩国综合色| 一区二区三区在线观看国产| 亚洲综合图片区| 日韩成人免费电影| 国内精品伊人久久久久av一坑| 国内精品在线播放| 国产成人在线观看| 91老师片黄在线观看| 欧美中文字幕一区二区三区 | 欧美亚洲综合网| 91精品国产综合久久精品性色| 欧美喷潮久久久xxxxx| 欧美一区二区三区免费视频| 久久综合九色综合97_久久久| 国产欧美一区二区在线| 亚洲色图欧美激情| 日日夜夜免费精品视频| 国产露脸91国语对白| 91小视频在线观看| 日韩欧美一区二区视频| 国产视频一区在线播放| 一区二区在线观看视频在线观看| 五月婷婷激情综合| 国产一区三区三区| 91福利国产精品| 欧美r级在线观看| 亚洲少妇最新在线视频| 日韩电影一区二区三区四区| 国产一区二区三区四区五区美女 | 久久综合给合久久狠狠狠97色69| 国产日韩精品一区| 亚洲综合视频网| 国产乱对白刺激视频不卡| 欧美婷婷六月丁香综合色| 欧美变态tickling挠脚心| 中文字幕亚洲一区二区va在线| 日本成人超碰在线观看| 91麻豆视频网站| 精品福利av导航| 亚洲国产精品久久久久秋霞影院| 国产成人在线视频网站| 717成人午夜免费福利电影| 国产精品久久久久桃色tv| 秋霞午夜鲁丝一区二区老狼| 色婷婷国产精品| 国产日韩欧美高清| 蜜桃精品视频在线| 在线观看一区二区视频| 国产精品盗摄一区二区三区| 久久99国产精品麻豆| 欧美喷水一区二区| 一区二区三区国产豹纹内裤在线| 国产米奇在线777精品观看| 制服丝袜亚洲网站| 天天综合色天天综合色h| 91影视在线播放| 国产精品午夜免费| 国产福利一区二区三区在线视频| 欧美顶级少妇做爰| 亚洲精品国产视频| 国产成人午夜高潮毛片| 国产亚洲婷婷免费| 久久69国产一区二区蜜臀| 7777精品伊人久久久大香线蕉超级流畅| 亚洲伦理在线精品| 99精品视频一区二区| 国产日韩欧美一区二区三区乱码| 激情小说亚洲一区| 欧美一区二区成人| 男女激情视频一区| 日韩视频中午一区| 久久er精品视频| 欧美tickling挠脚心丨vk| 久久国产夜色精品鲁鲁99| 精品剧情v国产在线观看在线| 精油按摩中文字幕久久|