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

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

?? c3p0config.java

?? c3p0數據庫連接池實現源碼
?? JAVA
字號:
/* * Distributed as part of c3p0 v.0.9.1-pre6 * * Copyright (C) 2005 Machinery For Change, Inc. * * Author: Steve Waldman <swaldman@mchange.com> * * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 2.1, as  * published by the Free Software Foundation. * * This software 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 software; see the file LICENSE.  If not, write to the * Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. */package com.mchange.v2.c3p0.cfg;import java.beans.*;import java.util.*;import com.mchange.v2.c3p0.impl.*;import com.mchange.v2.beans.*;import com.mchange.v2.cfg.*;import com.mchange.v2.log.*;import java.io.IOException;import java.lang.reflect.Method;import com.mchange.v1.lang.BooleanUtils;//all internal maps should be HashMaps (the implementation presumes HashMaps)public final class C3P0Config{    public final static String CFG_FINDER_CLASSNAME_KEY = "com.mchange.v2.c3p0.cfg.finder";    public final static String DEFAULT_CONFIG_NAME = "default";    public final static C3P0Config MAIN;    final static MLogger logger = MLog.getLogger( C3P0Config.class );    static    {// 	Set knownProps = new HashSet();// 	knownProps.add("acquireIncrement");// 	knownProps.add("acquireRetryAttempts");// 	knownProps.add("acquireRetryDelay");// 	knownProps.add("autoCommitOnClose");// 	knownProps.add("automaticTestTable");// 	knownProps.add("breakAfterAcqireFailure");// 	knownProps.add("checkoutTimeout");// 	knownProps.add("connectionTesterClassName");// 	knownProps.add("factoryClassLocation");// 	knownProps.add("forceIgnoreUnresolvedTransactions");// 	knownProps.add("idleConnectionTestPeriod");// 	knownProps.add("initialPoolSize");// 	knownProps.add("maxIdleTime");// 	knownProps.add("maxPoolSize");	C3P0Config protoMain;	String cname = MultiPropertiesConfig.readVmConfig().getProperty( CFG_FINDER_CLASSNAME_KEY );	C3P0ConfigFinder cfgFinder = null;	try	    {		if (cname != null)		    cfgFinder = (C3P0ConfigFinder) Class.forName( cname ).newInstance();			    }	catch (Exception e)	    {		if ( logger.isLoggable(MLevel.WARNING) )		    logger.log( MLevel.WARNING, "Could not load specified C3P0ConfigFinder class'" + cname + "'.", e);	    }	if (cfgFinder == null)	    cfgFinder = new DefaultC3P0ConfigFinder();	try	    { protoMain = cfgFinder.findConfig(); }	catch (Exception e)	    { 				if ( logger.isLoggable(MLevel.WARNING) )		    logger.log( MLevel.WARNING, "An Exception occurred while loading C3P0Config.", e);		HashMap flatDefaults = C3P0ConfigUtils.extractHardcodedC3P0Defaults();		flatDefaults.putAll( C3P0ConfigUtils.extractC3P0PropertiesResources() );		protoMain = C3P0ConfigUtils.configFromFlatDefaults( flatDefaults );	    }	MAIN = protoMain;	warnOnUnknownProperties( MAIN );    }    private static void warnOnUnknownProperties( C3P0Config cfg )    {	warnOnUnknownProperties( cfg.defaultConfig );	for (Iterator ii = cfg.configNamesToNamedScopes.values().iterator(); ii.hasNext(); )	    warnOnUnknownProperties( (NamedScope) ii.next() );    }    private static void warnOnUnknownProperties( NamedScope scope )    {	warnOnUnknownProperties( scope.props );	for (Iterator ii = scope.userNamesToOverrides.values().iterator(); ii.hasNext(); )	    warnOnUnknownProperties( (Map) ii.next() );    }    private static void warnOnUnknownProperties( Map propMap )    {	for (Iterator ii = propMap.keySet().iterator(); ii.hasNext(); )	    {		String prop = (String) ii.next();		if (! C3P0Defaults.isKnownProperty( prop ) && logger.isLoggable( MLevel.WARNING ))		    logger.log( MLevel.WARNING, "Unknown c3p0-config property: " + prop);	    }    }    public static String getUnspecifiedUserProperty( String propKey, String configName )    {	  String out = null; 	  if (configName == null)	      out = (String) MAIN.defaultConfig.props.get( propKey );	  else	      {		  NamedScope named = (NamedScope) MAIN.configNamesToNamedScopes.get( configName );		  if (named != null)		      out = (String) named.props.get(propKey);		  else		      logger.warning("named-config with name '" + configName + "' does not exist. Using default-config for property '" + propKey + "'.");		  if (out == null)		      out = (String) MAIN.defaultConfig.props.get( propKey );	      }	  	  return out;    }    public static Map getUnspecifiedUserProperties(String configName)    {	Map out = new HashMap();	out.putAll( MAIN.defaultConfig.props );	if (configName != null)	    {		  NamedScope named = (NamedScope) MAIN.configNamesToNamedScopes.get( configName );		  if (named != null)		      out.putAll( named.props );		  else		      logger.warning("named-config with name '" + configName + "' does not exist. Using default-config.");	    }	return out;    }    public static Map getUserOverrides( String configName )    {	Map out = new HashMap();	NamedScope namedConfigScope = null;	if (configName != null)	    namedConfigScope = (NamedScope) MAIN.configNamesToNamedScopes.get( configName );	out.putAll( MAIN.defaultConfig.userNamesToOverrides );	if (namedConfigScope != null)	    out.putAll( namedConfigScope.userNamesToOverrides );	return (out.isEmpty() ? null : out );    }    public static String getUserOverridesAsString(String configName) throws IOException    {	Map userOverrides = getUserOverrides( configName );	if (userOverrides == null)	    return null;	else	    return C3P0ImplUtils.createUserOverridesAsString( userOverrides ).intern();    }    final static Class[] SUOAS_ARGS = new Class[] { String.class };    final static Collection SKIP_BIND_PROPS = Arrays.asList( new String[] {"loginTimeout", "properties"} );    public static void bindNamedConfigToBean(Object bean, String configName) throws IntrospectionException    {	Map defaultUserProps = C3P0Config.getUnspecifiedUserProperties( configName );	BeansUtils.overwriteAccessiblePropertiesFromMap( defaultUserProps, 							 bean, 							 false, 							 SKIP_BIND_PROPS,							 true,							 MLevel.FINEST,							 MLevel.WARNING,							 false);	try	    {		Method m = bean.getClass().getMethod( "setUserOverridesAsString", SUOAS_ARGS );		m.invoke( bean, new Object[] {getUserOverridesAsString( configName )} );	    }	catch (NoSuchMethodException e)	    {		e.printStackTrace();		/* ignore */ 	    }	catch (Exception e)	    {		if (logger.isLoggable( MLevel.WARNING ))		    logger.log( MLevel.WARNING, 				"An exception occurred while trying to bind user overrides " +				"for named config '" + configName + "'. Only default user configs " +				"will be used."				, e);	    }    }    /*     *  Note that on initialization of a DataSource, no config name is known.     *  We initialize local vars using the default config. The DataSources class     *  and/or constructors that accept a configName then overwrite the initial     *  values with namedConfig overrides if supplied.     */    public static String initializeUserOverridesAsString()    {	try	    { return getUserOverridesAsString( null ); }	catch (Exception e)	    {		if (logger.isLoggable( MLevel.WARNING ))		    logger.log( MLevel.WARNING, "Error initializing default user overrides. User overrides may be ignored.", e);		return null;	    }    }    public static String initializeStringPropertyVar(String propKey, String dflt)    {	String out = getUnspecifiedUserProperty( propKey, null );	if (out == null) out = dflt;	return out;    }    public static int initializeIntPropertyVar(String propKey, int dflt)    {	boolean set = false;	int out = -1;	String outStr = getUnspecifiedUserProperty( propKey, null );	if (outStr != null)	    {		try 		    { 			out = Integer.parseInt( outStr.trim() ); 			set = true;		    }		catch (NumberFormatException e)		    {			logger.info("'" + outStr + "' is not a legal value for property '" + propKey +				    "'. Using default value: " + dflt);		    }	    }	if (!set)	    out = dflt;	//System.err.println("initializing " + propKey + " to " + out);	return out;    }    public static boolean initializeBooleanPropertyVar(String propKey, boolean dflt)    {	boolean set = false;	boolean out = false;	String outStr = getUnspecifiedUserProperty( propKey, null );	if (outStr != null)	    {		try 		    { 			out = BooleanUtils.parseBoolean( outStr.trim() ); 			set = true;		    }		catch (IllegalArgumentException e)		    {			logger.info("'" + outStr + "' is not a legal value for property '" + propKey +				    "'. Using default value: " + dflt);		    }	    }	if (!set)	    out = dflt;	return out;    }    NamedScope defaultConfig;    HashMap configNamesToNamedScopes;    C3P0Config( NamedScope defaultConfig, HashMap configNamesToNamedScopes)    {	this.defaultConfig = defaultConfig;	this.configNamesToNamedScopes = configNamesToNamedScopes;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产老妇另类xxxxx| 91一区二区在线| 亚洲三级理论片| 欧美va日韩va| 欧美色图免费看| 成人av电影在线| 国内成人免费视频| 免费看欧美女人艹b| 一区二区三区蜜桃| 亚洲欧洲色图综合| 国产亚洲综合在线| 精品福利在线导航| 欧美猛男gaygay网站| 色综合久久中文字幕综合网| 国产精选一区二区三区| 日韩在线播放一区二区| 樱花草国产18久久久久| 国产精品麻豆一区二区| 国产亚洲精久久久久久| 精品三级在线看| 日韩一级欧美一级| 欧美一区二区三区系列电影| 欧美日韩综合色| 在线视频你懂得一区二区三区| 成人综合在线视频| 国产乱妇无码大片在线观看| 美腿丝袜亚洲一区| 美女高潮久久久| 蜜臀av性久久久久av蜜臀妖精| 亚洲18影院在线观看| 亚洲综合久久av| 亚洲国产精品嫩草影院| 亚洲小少妇裸体bbw| 亚洲一线二线三线视频| 一区二区三区在线免费| 亚洲一区二区视频| 亚洲国产日韩a在线播放性色| 亚洲激情综合网| 亚洲国产一区二区在线播放| 夜夜嗨av一区二区三区四季av| 亚洲美女视频一区| 一区二区三区四区在线播放 | 色欧美片视频在线观看 | 欧美性xxxxxx少妇| 欧美三级日韩在线| 欧美一区二区三区视频在线| 欧美精品在线观看一区二区| 制服丝袜亚洲色图| 精品久久人人做人人爰| 精品99一区二区| 日本一区二区三区四区在线视频| 国产精品丝袜在线| 一区二区三区四区五区视频在线观看 | 国产免费观看久久| 亚洲色图一区二区| 亚洲第一电影网| 久久se精品一区二区| 国产一区不卡在线| av综合在线播放| 欧美剧情片在线观看| 精品三级在线看| 中文字幕色av一区二区三区| 一级精品视频在线观看宜春院| 亚洲bt欧美bt精品| 国产精品一区在线观看你懂的| 成人av中文字幕| 欧美日韩久久久| 久久中文字幕电影| 亚洲精品一二三| 免费不卡在线观看| av高清久久久| 717成人午夜免费福利电影| 久久久午夜精品| 亚洲综合在线第一页| 韩国午夜理伦三级不卡影院| 成人美女视频在线观看| 欧美精品第1页| 国产精品久久久久久久久久免费看| 一区二区免费看| 国产乱码一区二区三区| 欧美色综合天天久久综合精品| 精品国精品国产尤物美女| 亚洲欧美日韩国产成人精品影院| 日韩va亚洲va欧美va久久| 不卡视频在线观看| 欧美一二三在线| 亚洲精品国产一区二区三区四区在线| 免费在线成人网| 在线日韩一区二区| 久久精品夜夜夜夜久久| 午夜欧美大尺度福利影院在线看| 国产一区二区三区免费看| 91国产免费观看| 国产片一区二区| 美脚の诱脚舐め脚责91 | 91精品国产综合久久小美女| 国产清纯白嫩初高生在线观看91| 天天色 色综合| 91欧美一区二区| 久久久噜噜噜久久中文字幕色伊伊| 一区二区免费在线| av毛片久久久久**hd| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 99麻豆久久久国产精品免费| 日韩一区二区中文字幕| 亚洲一区二区免费视频| av一区二区三区在线| 久久久美女艺术照精彩视频福利播放| 丝瓜av网站精品一区二区| 99国内精品久久| 国产精品嫩草影院av蜜臀| 精品在线播放免费| 欧美一区二区黄色| 亚洲第一狼人社区| 欧美色偷偷大香| 一区二区激情小说| 成人福利视频网站| 中文字幕高清不卡| 国产福利不卡视频| 久久综合一区二区| 国产一区二区三区在线观看免费视频 | 成人精品一区二区三区四区 | 国产一区91精品张津瑜| 欧美大片一区二区| 精品亚洲porn| 欧美va亚洲va国产综合| 久久精品国产亚洲一区二区三区| 3d成人动漫网站| 欧美a级一区二区| 欧美一卡二卡在线观看| 免费在线观看不卡| 精品日韩欧美在线| 国产精品资源在线观看| 久久影院午夜片一区| 久久 天天综合| 2024国产精品| 国产成人亚洲综合色影视| 捆绑调教一区二区三区| 美女视频一区在线观看| 欧美三级蜜桃2在线观看| 最新中文字幕一区二区三区| 丝袜亚洲精品中文字幕一区| 日本道精品一区二区三区| 日韩欧美一二三区| 国产真实乱对白精彩久久| 国产精品国产馆在线真实露脸| 欧美日韩一区成人| 国产精品一卡二| 亚洲一区二区三区激情| 久久综合九色综合欧美98| 91香蕉国产在线观看软件| 日本vs亚洲vs韩国一区三区二区| 国产精品人人做人人爽人人添| 欧美日韩卡一卡二| 成人18视频日本| 麻豆精品久久久| 亚洲三级在线看| 久久免费电影网| 欧美精品日韩精品| 99热这里都是精品| 精品一区二区三区久久| 亚洲精品国产一区二区三区四区在线| 欧美岛国在线观看| 欧美影院一区二区三区| 国产白丝精品91爽爽久久| 五月激情丁香一区二区三区| 国产精品免费视频网站| 日韩久久久久久| 欧美三级电影网| 99久久久免费精品国产一区二区| 美腿丝袜一区二区三区| 亚洲一区二区影院| 中文字幕在线观看不卡| 久久在线免费观看| 欧美一区日韩一区| 欧洲精品一区二区| 99久久综合狠狠综合久久| 精彩视频一区二区| 午夜精品久久久久久久久久| 中文字幕日韩精品一区| 日本一区二区视频在线观看| 欧美成人一区二区三区片免费 | 秋霞电影网一区二区| 亚洲猫色日本管| 国产精品美女久久久久久久久 | 欧美国产乱子伦| 精品美女一区二区三区| 欧美一区二区三区四区久久| 欧美视频一区在线观看| 91久久人澡人人添人人爽欧美| 成年人午夜久久久| 波多野结衣精品在线| 成人黄色免费短视频| 国产成人精品免费网站| 韩国av一区二区三区四区| 免费看欧美女人艹b| 日本不卡一二三区黄网| 免费在线观看视频一区| 日韩激情一二三区| 天天av天天翘天天综合网色鬼国产|