|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
C#是盗用了Java的源代码,仿照开发的,原因是Java是开源的啊,盗了也白盗,还有一点,开发C#语言的团队是就是开发Java语言的团队,是微软重金挖过去的啊
由于事情必要要利用到毗连池,以是拜读了互联网上浩瀚先辈的文章,学了很多履历,这里想做一个小结,加上本人的设法和在一同,但愿能给人人一些匡助。
目标:打消数据库频仍毗连带来的开支和瓶颈。
办理计划:不外多的限定用户的利用,既不克不及太多的请求用户按划定的办法失掉和利用数据库连只管坚持用户的习气
今朝的良多办法都是请求用户只能按划定办法利用毗连,不克不及利用间接封闭数据毗连的办法。办理举措就是利用代办署理类,来两头办理。能够参考http://www-900.ibm.com/developerWorks/cn/java/l-connpoolproxy/index.shtml
能保护毗连的一般形态
由于针对数据库毗连创立的资本,假如不克不及实时的开释,就会影响下一次数据毗连的利用。比方在sql2k中,一个毗连分歧创立多条Statement不然操纵时会无数据毗连占线的非常,以是必需在偿还毗连今后开释这些资本。
//判别是利用了createStatement语句
if(CREATESTATE.equals(method.getName()))
{
obj=method.invoke(conn,args);
statRef=(Statement)obj;//纪录语句
returnobj;
}//判别是不是挪用了close的办法,假如挪用close办法则把毗连置为无用形态
if(CLOSE.equals(method.getName()))
{
//设置不利用标记
setIsFree(false);
//反省是不是有后续事情,扫除该毗连无用资本
if(statRef!=null)
statRef.close();
if(prestatRef!=null)
prestatRef.close();
returnnull;
}准确回护类不被背例利用
一个思索就是不克不及让用户任意利用代办署理类,而只能本人利用,一个就是用外部公有类,一个就是利用只要指定类才干挪用的标记。我的完成就是接纳后者。
/**
*创立毗连的工场,只能让工场挪用
*@paramfactory要挪用工场,而且必定被准确初始化
*@paramparam毗连参数
*@return毗连
*/
staticpublic_ConnectiongetConnection(ConnectionFactoryfactory,ConnectionParamparam)
{
if(factory.isCreate())//判别是不是准确初始化的工场
{
_Connection_conn=new_Connection(param);
return_conn;
}
else
returnnull;
}
<p>
唉!都是钱闹的1.Swing和.net网页编程开发比较------从市场份额看.net网页编程开发主要占据大部分的中小型和中型的的桌面开发,原因是它封装了很多工具 |
|