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

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

?? dbdriver.java

?? 這是一款應用程序與數據庫聯接
?? JAVA
字號:
/* ===========================================================
 * JDBMonitor : a flexiable JDBC Monitor for the Java(tm) platform
 * ===========================================================
 *
 * (C) Copyright 2006-2006, by yang zhongke
 *
 * Project Info:  http://www.cownew.com
 *
 * This library is free software; you can redistribute it and/or modify it 
 * under the terms of the GNU Lesser General Public License as published by 
 * the Free Software Foundation; either version 2.1 of the License, or 
 * (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful, but 
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 
 * License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
 * USA.  
 *
 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
 * in the United States and other countries.]
 *
 * ---------------
 * DBDriver.java
 * ---------------
 * (C) Copyright 2006-2006, by yang zhongke
 *
 * Original Author:  yang zhongke;
 *
 * Changes
 * -------
 *
 */
package com.cownew.JDBMonitor.jdbc;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.DriverPropertyInfo;
import java.sql.SQLException;
import java.util.List;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import com.cownew.JDBMonitor.common.CommonUtils;
import com.cownew.JDBMonitor.common.ConfigFileInfo;
import com.cownew.JDBMonitor.common.ConfigFileReader;
import com.cownew.JDBMonitor.common.DBListenerInfo;
import com.cownew.JDBMonitor.common.InstanceUtils;

/**
 * the JDBC driver of the DBMonitor
 * @author yang zhongke
 */
public class DBDriver implements java.sql.Driver
{    
    public synchronized Connection connect(String url, Properties info)
	throws SQLException {
    	if(!acceptsURL(url))
    	{
    		throw new SQLException("Illegal URL Format:"+url);
    	}
    	
    	Matcher match = getURLMatcher(url);
    	match.matches();
    	match.group();
    	String configFile = match.group(1);
    	String realUrl = match.group(2);  
    	
    	ConfigFileInfo configInfo = null;    	
    	
    	InputStream is = null;
    	try
    	{
    		//get the configFileInfo from configFile
    		if(ConfigFileReader.isRealFilePath(configFile))
    		{
    			is = new FileInputStream(configFile);
    		}
    		else
    		{
    	    	is = this.getClass().getResourceAsStream(configFile);
    		}
    		configInfo = ConfigFileReader.getConfigFileInfo(is);
    		
    		//register the necessary JDBCDriver
    		//generally, it's the real JdbcDriver of the database to be logged
    		registerRealJdbcDriver(configInfo);
    	} catch (FileNotFoundException e)
		{
			throw JdbcUtils.toSQLException(e);
		}
    	finally
    	{
    		InstanceUtils.closeInStream(is);
    	}
    	
    	//get the real database connection of the database to be logged
    	Connection cn = DriverManager.getConnection(realUrl, info);
    	
    	//if the monitor is not active,return the real database connection
    	if(!configInfo.isActive())
    	{
    		return cn;
    	}
    	
    	List lisList = configInfo.getListenerInfoList();
    	DBListenerInfo[] dbListenerInfos = new DBListenerInfo[lisList.size()];
    	for(int i=0,n=lisList.size();i<n;i++)
    	{
    		DBListenerInfo lisInfo = (DBListenerInfo) lisList.get(i);
    		dbListenerInfos[i] = lisInfo;
    	}    	
		return new DBConnection(cn,dbListenerInfos);    	
    }


    /**
     * get the regular expression matcher of the jdbcurl 
     * @param url
     * @return
     */
	private Matcher getURLMatcher(String url)
	{
		Pattern pattern = Pattern.compile("listenerconfig=(.+):url=(.+)"); 
    	Matcher match = pattern.matcher(url);
		return match;
	}   
    
    
    private synchronized void registerRealJdbcDriver(ConfigFileInfo configInfo)
			throws SQLException
	{
		List list = configInfo.getRealJdbcDriverList();
		for (int i = 0, n = list.size(); i < n; i++)
		{
			try
			{
				Class.forName(list.get(i).toString());
			} catch (ClassNotFoundException e)
			{
				throw JdbcUtils.toSQLException(e);
			}
		}

	}


	public boolean acceptsURL(String url) throws SQLException {
		Matcher m = getURLMatcher(url);
	    return m.matches();
    }
    
    public DriverPropertyInfo[] getPropertyInfo(String url, Properties info)
			throws SQLException
	{
		DriverPropertyInfo[] props = new DriverPropertyInfo[1];
		props[0] = new DriverPropertyInfo("author", "Yang Zhongke");
		return props;
	}
    
    public int getMajorVersion() {
	return 1;
    }
    
    public int getMinorVersion() {
	return 0;
    }
    
    public boolean jdbcCompliant() {
	return true;
    }   
   
    
    static
	{
		try
		{
			DriverManager.registerDriver(new DBDriver());
		} catch (Exception e)
		{
			throw CommonUtils.toRuntimeException(e);
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷精品大在线视频| 久久精品夜色噜噜亚洲a∨| 精品国产乱码久久久久久影片| 中文字幕不卡在线| 免费在线观看精品| 欧美亚洲国产bt| 国产精品国产三级国产aⅴ原创| 亚洲成人你懂的| 色偷偷成人一区二区三区91| 国产精品沙发午睡系列990531| 韩国视频一区二区| 欧美一卡二卡在线观看| 亚洲一区二区高清| 97久久精品人人做人人爽50路| 亚洲精品一区二区精华| 免费观看一级欧美片| 欧美美女网站色| 亚洲成人动漫一区| 欧美天天综合网| 亚洲色图.com| 91视频com| 亚洲免费伊人电影| 91浏览器在线视频| 亚洲欧美自拍偷拍| 99精品视频在线免费观看| 中文字幕高清一区| www..com久久爱| 亚洲天天做日日做天天谢日日欢 | 精品一区二区日韩| 欧美一级一级性生活免费录像| 日韩中文字幕一区二区三区| 欧美亚洲自拍偷拍| 亚洲超碰97人人做人人爱| 欧美无乱码久久久免费午夜一区| 亚洲色图20p| 欧美日韩免费不卡视频一区二区三区| 亚洲永久免费视频| 欧美精品 日韩| 久久99国内精品| 国产免费成人在线视频| k8久久久一区二区三区| 亚洲精品精品亚洲| 欧美日本精品一区二区三区| 天天色天天爱天天射综合| 日韩欧美国产一区二区三区 | 91免费国产视频网站| 亚洲激情第一区| 在线观看91av| 国产一区二区免费在线| 国产精品久久久久久久久快鸭| 91首页免费视频| 日韩电影免费在线看| 国产性做久久久久久| www.一区二区| 亚洲成av人在线观看| 精品久久一二三区| 99久久精品一区二区| 亚洲444eee在线观看| 久久精品亚洲麻豆av一区二区| 色婷婷综合视频在线观看| 日本亚洲欧美天堂免费| 久久久久久久久久久黄色| 91日韩在线专区| 精品中文字幕一区二区小辣椒 | www.综合网.com| 首页国产丝袜综合| 中文字幕精品在线不卡| 欧美日韩国产一区| 成人av影院在线| 免费精品视频在线| 亚洲精品国产a| www成人在线观看| 欧美日韩国产bt| 成人sese在线| 精品在线免费视频| 亚洲一区二区三区四区的| 久久综合九色综合欧美就去吻| 色婷婷亚洲综合| 国产99久久久久| 秋霞av亚洲一区二区三| 亚洲三级电影全部在线观看高清| 日韩欧美激情四射| 在线观看91精品国产入口| 国产成人免费视| 免费人成精品欧美精品| 一区二区三区毛片| 国产精品福利影院| 久久综合九色综合欧美98| 在线成人小视频| 日本韩国精品在线| 成人综合在线网站| 国产在线精品不卡| 日韩精品乱码免费| 亚洲图片欧美色图| 亚洲色欲色欲www| 中文欧美字幕免费| 久久久99精品免费观看不卡| 欧美一区二区日韩一区二区| 欧美色欧美亚洲另类二区| 99精品桃花视频在线观看| 国产精品一品二品| 极品少妇xxxx精品少妇| 男人操女人的视频在线观看欧美| 亚洲高清免费观看 | 欧美高清一级片在线| 在线区一区二视频| 99re这里只有精品6| 99热国产精品| 97超碰欧美中文字幕| 99久久国产综合精品女不卡| 成人毛片视频在线观看| 成人涩涩免费视频| 白白色亚洲国产精品| 波多野结衣在线一区| av电影在线观看一区| 91影院在线免费观看| 91亚洲精品久久久蜜桃| 91久久线看在观草草青青| 一本久久精品一区二区| 欧美中文字幕一区二区三区亚洲| 色婷婷亚洲一区二区三区| 欧美日韩一区二区三区在线看| 777午夜精品免费视频| 欧美一区二区三区在线观看视频| 欧美成人精品二区三区99精品| 日韩女优视频免费观看| 亚洲精品在线电影| 亚洲国产高清在线| 一区二区三区国产豹纹内裤在线 | 国产女人aaa级久久久级| 中文字幕在线不卡| 亚洲午夜激情网站| 日韩中文字幕一区二区三区| 韩国一区二区三区| 99久久综合国产精品| 在线成人高清不卡| 欧美精品一区二区三区蜜桃视频| 国产情人综合久久777777| 国产精品美女一区二区| 一区二区高清在线| 久久精品国产99国产精品| 国产精品一区二区x88av| 色综合久久中文综合久久97 | 91成人在线精品| 欧美一级日韩免费不卡| 26uuu精品一区二区三区四区在线| 中文字幕av不卡| 亚洲一区二区免费视频| 国产又黄又大久久| 色天天综合久久久久综合片| 精品日韩在线观看| 亚洲久本草在线中文字幕| 久久99蜜桃精品| 99热这里都是精品| 精品久久五月天| 亚洲chinese男男1069| 豆国产96在线|亚洲| 制服丝袜日韩国产| 中文字幕欧美日韩一区| 日韩不卡一二三区| 99精品视频免费在线观看| 精品国产污网站| 亚洲在线免费播放| www.av亚洲| 国产亚洲va综合人人澡精品| 日韩精品一级中文字幕精品视频免费观看 | 久久99九九99精品| 色女孩综合影院| 欧美激情综合在线| 蜜臀va亚洲va欧美va天堂 | 日产精品久久久久久久性色| www.亚洲精品| 久久综合九色综合97_久久久| 夜夜嗨av一区二区三区中文字幕 | 久久精品夜色噜噜亚洲a∨| 天堂影院一区二区| 91视视频在线观看入口直接观看www | 亚洲午夜电影在线| 91在线观看美女| 国产视频视频一区| 狠狠色丁香婷婷综合| 日韩欧美另类在线| 日韩成人一区二区三区在线观看| 91国在线观看| 玉米视频成人免费看| eeuss鲁片一区二区三区在线看| 欧美大片免费久久精品三p| 日韩国产高清影视| 欧美日韩美少妇| 亚洲国产精品久久久久婷婷884 | 在线亚洲精品福利网址导航| 欧美国产一区视频在线观看| 国内精品第一页| 亚洲精品一区二区精华| 国产九色sp调教91| 欧美激情一区二区三区全黄| 国产盗摄女厕一区二区三区| 久久精品欧美一区二区三区不卡 | 国产激情视频一区二区在线观看 | 欧美成人精品3d动漫h|