<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>JAVA SSH AJAX JS CSS </title>
    <description>爪哇</description>
    <link>http://yidwo.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>ajax + java 实现类似网易邮箱邮件地址自动完成功能.(附源码)</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/150778" style="color:red;">http://yidwo.javaeye.com/blog/150778</a>&nbsp;
          发表时间: 2007年12月25日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          图片截图显示不正常的话可以转到: <br /><a href="http://hi.baidu.com/yidwo/blog/item/3e2b44d4f8b87505a08bb766.html" target="_blank">http://hi.baidu.com/yidwo/blog/item/3e2b44d4f8b87505a08bb766.html</a><br /><br />用java+ajax做的一个类似于google输入栏版提示的ajax小功能. <br /><br />稍改进了下.现在类似于163.126的邮件地址自动完成功能. <br /><br />结构描述: <br />1.前台页面: autoComplete.js autoComplete.jsp <br />2.配置: 把web.xml文件的内容配置到你web工程的web.xml文件. <br />3.后台程序及源码: 在com文件夹下. <br /><br />运行: 在tomcat中打开autoComplete.jsp,键入字符a , y ,g都可以弹出. <br />要想内容更丰富. <br />请您自己完善. <br />在IE和firefox 下测试通过.<br /><br />演示截图:<br /><br />IE:<br /><br /><br /><img src="http://hiphotos.baidu.com/yidwo/pic/item/bb3ccc4f0c3e5a27aec3ab5d.jpg" /><br /><br />Firefox:<br /><img src="http://hiphotos.baidu.com/yidwo/pic/item/a2495c1354b167916438db5e.jpg" /><br /><br /><br /><pre name="code" class="JS">


// JavaScript Document
  var xmlHttp;
  var completeDiv;
  var nameTable;
  var nameTableBody;
  var inputField;
  var divIframe;
   var isDivShow = false;  //2007-12-23
  var inTbodyLineNO = -1;  //2007-12-23
  
  function createXMLHttpRequest(){
      if(window.ActiveXObject){
	      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP")
	  }else if(window.XMLHttpRequest){
          xmlHttp = new XMLHttpRequest();
	  }
 }
 function initVars(){
     nameTableBody = document.getElementById("name_table_body");
	 nameTable = document.getElementById("name_table");
	 completeDiv = document.getElementById("popup");
	 inputField = document.getElementById("names");
	 divIframe = document.getElementById("diviframe");
 }
 
 /* post  html 页面 调用接口,此方法异步调用Servlet方法 AutoCompleteServlet */
 function findNames(e){  //alert("00000");
     initVars();
	 if(e.keyCode!=40 && e.keyCode!=38 && e.keyCode!=13 && e.keyCode!=27)
	 {
	     if(inputField.value.length > 0)
		 {  
	      	 createXMLHttpRequest();
			 var url = "/AutoCompleteServlet";
			 var postPara = "names="+inputField.value;
			 postPara = encodeURI(postPara);
			 postPara = encodeURI(postPara);
			 xmlHttp.open("post",url,true);  
             xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			 xmlHttp.send(postPara);
			 xmlHttp.onreadystatechange = callback;
	     }else
		 {
		     clearNames(); 
	     }
	 }
	 
 }
 
 /* setNames 方法处理返回回来的数据 */
 function callback(){           
     if(xmlHttp.readyState == 4){          // alert("status: "+xmlHttp.status+"   text: "+xmlHttp.statusText);
		 if(xmlHttp.status == 200){
			 setNames(xmlHttp.responseXML.getElementsByTagName("name"),xmlHttp.responseXML.getElementsByTagName("value"));
			
		 }else{
			 clearNames();	
			 alert("Exception-status: "+xmlHttp.status+"   text: "+xmlHttp.statusText); 
		 }
	 }	 
 }
 
  function setNames(the_names,the_values){
	 clearNames();	 
	 var size = the_names.length;      //alert(size);
	 setOffsets();
	 
	 var row,cell,txtNode;
	 for(var i=0;i&lt;size;i++){
		 isDivShow = true;
		 var nextNode = "\""+the_names[i].firstChild.data+"\" &lt;"+the_values[i].firstChild.data+">";
		 
		 row = document.createElement("tr");
		 cell = document.createElement("td");
		 
		 cell.onmouseout = function(){this.className='mouseOver';};
		 cell.onmouseover = function(){this.className='mouseOut';};
		 cell.setAttribute("bgcolor","#FFFAFA");
		 cell.setAttribute("border","0");
		 cell.onclick = function(){populateNames(this);};
		 
		 divIframe.style.display="";
		 txtNode = document.createTextNode(nextNode);
		 cell.appendChild(txtNode);
		 row.appendChild(cell);
		 nameTableBody.appendChild(row);
		 
		 if(inTbodyLineNO == -1)
	     {
			inTbodyLineNO = 0;
			nameTableBody.rows[inTbodyLineNO].cells[0].className = "mouseOut";
	     }
	 }
 } 
 
 // div 的显示位置设置
 function setOffsets(){
	var end = inputField.offsetWidth/2;
	var left = calculateOffsetLeft(inputField);
	var top = calculateOffsetTop(inputField) + inputField.offsetHeight;
	
	completeDiv.style.border = "black 1px solid";
	completeDiv.style.left = left + "px";
	completeDiv.style.top = top + "px";
	nameTable.style.width = end + "px";
	divIframe.style.border="none";
 }
 
 function calculateOffsetLeft(field){
	return calculateOffset(field,"offsetLeft"); 
 }
 
 function calculateOffsetTop(field){
	return calculateOffset(field,"offsetTop"); 
 }
 
 function calculateOffset(field,attr){
	 var offset = 0;
	 while(field){
		offset += field[attr]; 
		field = field.offsetParent;
	 }
	 return offset;
 }
 
 // 对用户输入框取值 用户选择时调用
 function populateNames(cell){
     var oldInputValue = inputField.value.substring(0,inputField.value.lastIndexOf(",")+1);
	 var newInputValue = cell.firstChild.nodeValue;
	 if(oldInputValue.indexOf(newInputValue) > -1)
	 {
		  inputField.value = oldInputValue;
	 }else
	 {
	      inputField.value = oldInputValue + newInputValue+",";
	 }
		 
     clearNames();
 }
 
 // 清空操作
 function clearNames(){
     var ind = nameTableBody.childNodes.length;
     for(var i = ind - 1; i >= 0; i--){
         nameTableBody.removeChild(nameTableBody.childNodes[i]);
     }
     divIframe.style.display="none";
     completeDiv.style.border = "none";
     inTbodyLineNO = -1;  //2007-12-23
	 isDivShow = false;  //2007-12-23
 } 
 
 function getKeyCode(oEvent)
 { 
    /* if(oEvent.keyCode!=40 && oEvent.keyCode!=38 && oEvent.keyCode!=13 && oEvent.keyCode!=27)
	 {
		 //window.setTimeout("findNames()",2000); 
		 findNames();
	 } */
    
	if(isDivShow)  // 如果自动完成的层显示出来了
	 {
		 if(oEvent.keyCode == 40)
	     {
	         MoveCursor(1);
	     }else if(oEvent.keyCode == 38)  // 
	     {
	         MoveCursor(-1);
	     }else if(oEvent.keyCode == 13)  // enter
	     {
	         selectValue();
//			 oEvent.keyCode=9;
	     }else if(oEvent.keyCode == 27)  // esc
	     {
	         clearNames();
	     }
	 }
	 
	 
	 
  }
 
   //2007-12-23
 function MoveCursor(nFlag)
 {
		var lineNum = nameTableBody.rows.length;   //alert(lineNum);
		nameTableBody.rows[inTbodyLineNO].cells[0].className = "mouseOver";
		inTbodyLineNO = (inTbodyLineNO + nFlag + lineNum) % lineNum;
		nameTableBody.rows[inTbodyLineNO].cells[0].className = "mouseOut";
		nameTableBody.rows[inTbodyLineNO].cells[0].scrollIntoView(true);
 }

  //2007-12-23
 function selectValue()
 {
	  if(inTbodyLineNO == -1)
	  {
		   return;  
	  }else
	  {
		  populateNames(nameTableBody.rows[inTbodyLineNO].cells[0]);
	  }
 }
 
 
 
 
 

</pre><br /><span style="font-size: medium">代码内有详细的注释.在这里就不详述.</span>
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/150778#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 25 Dec 2007 18:12:44 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/150778</link>
        <guid>http://yidwo.javaeye.com/blog/150778</guid>
      </item>
      <item>
        <title>JS延迟加载 setTimeout方法释疑</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/150712" style="color:red;">http://yidwo.javaeye.com/blog/150712</a>&nbsp;
          发表时间: 2007年12月25日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          setTimeout的标准语法是: setTimeout(表达式,时间(毫秒)) 两个参数.<br /><br />在这里着重记下第一个参数是一个 function时的调用,假设是一个函数.<br /><br />1.函数无参:<br />function alertV(){ alert("000"); }<br /><br />当第一个参数不加引号("" 或 '')时,延迟一秒:<br />setTimeout(alertV,1000);<br /><br />当第一个参数加上又引号时,延迟一秒:<br />setTimeout("alertV()",1000);<br /><br /><br />2. 函数有参:<br /><br />function alertV(event){ alert("keyCode="+event.keyCode); }<br /><br />此时应设置成:<br />setTimeout(function(){alertV(event);},1000); 不然会提示参数未定义.<br /><br />要是哪位还有好的可行方法,谢谢共享.
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/150712#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 25 Dec 2007 15:17:08 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/150712</link>
        <guid>http://yidwo.javaeye.com/blog/150712</guid>
      </item>
      <item>
        <title>java.io</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/145309" style="color:red;">http://yidwo.javaeye.com/blog/145309</a>&nbsp;
          发表时间: 2007年12月01日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <span style="font-size: 18pt"><span style="color: red"><strong>1. java.io.EOFException</strong></span></span><br /> <br /><span style="color: blue">1.1</span><br />Tomcat在启动时出现如下异常问题：<br /><br />严重: IOException while loading persisted sessions: java.io.EOFException<br />严重: Exception loading sessions from persistent storage<br /><br />是因为保存在硬盘上的session数据读取失败，问题似乎不大，但是如果不处理一下，每次启动都会出现这个问题，处理方法如下：<br /><br />将work下面的文件清空，主要是*.ser文件，或者只是删除掉session.ser亦可。
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/145309#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 01 Dec 2007 16:55:22 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/145309</link>
        <guid>http://yidwo.javaeye.com/blog/145309</guid>
      </item>
      <item>
        <title>tomcat </title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/136183" style="color:red;">http://yidwo.javaeye.com/blog/136183</a>&nbsp;
          发表时间: 2007年10月28日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          在jdk1.5 tomcat 5.0 中测试通过.<br />在Tomcat的根目录下打开common文件夹找到server.xml,打开在host标签的对应位置加上如下:<br />&lt;Host name="yidwo" debug="0" appBase="E:\workspace\"<br />       unpackWARs="true" autoDeploy="true"<br />       xmlValidation="false" xmlNamespaceAware="false"><br />	   &lt;Logger className="org.apache.catalina.logger.FileLogger"<br />                 directory="logs"  prefix="localhost_log." suffix=".txt"<br />            timestamp="true"/><br />		&lt;Context path="" docBase="yidwo/web/" debug="0" reloadable="true" /><br />      &lt;/Host><br /><br />然后在系统盘下打开windows/system32/drivers/etc/host文件:<br />加上: 127.0.0.1    yidwo<br /><br />重新启动后在浏览器中输入 http://yidwo:8080 就行..
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/136183#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 28 Oct 2007 21:53:15 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/136183</link>
        <guid>http://yidwo.javaeye.com/blog/136183</guid>
      </item>
      <item>
        <title>resin3的host配置优化</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/136181" style="color:red;">http://yidwo.javaeye.com/blog/136181</a>&nbsp;
          发表时间: 2007年10月28日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          配置resin.conf中的host部分。<br />定义日志目录，格式化输出，web发布目录，错误码定义等等。<br />在resin2.x中可以定义 &lt;classpath id=’WEB-INF/classes’ source=’src’ compile=’true’/><br />来自动编译源码，但是在resin3.x中没有这个用法，只能放到WEB-INF/classes目录下。<br />具体如下：<br />&lt;host id=”www.2hei.net“><br />  &lt;stdout-log path=’/root/soft/resin/log/stdout.log’ rollover-period=’1W’/><br />  &lt;stderr-log path=’/root/soft/resin/log/stdout.log’ rollover-period=’1W’/><br />  &lt;access-log path=’/root/soft/2hei/logs/access.log’><br />  &lt;format>%h`%l`%u`%{%Y-%m-%d %H:%M:%S}t`%r`%s`%b`%{Referer}i`%{User-Agent}i`%{X-Up-Calling-Line-ID}i&lt;/format><br />      &lt;rollover-period>1D&lt;/rollover-period><br />      &lt;archive-format>%Y-%m-%d.access.test.log&lt;/archive-format><br />    &lt;/access-log><br /><br />    &lt;root-directory>/root/soft/2hei&lt;/root-directory><br />      &lt;web-app id=”/” root-directory=”httpdocs”/><br />      &lt;!–<br />      &lt;classpath id=’WEB-INF/classes’ source=’src’ compile=’true’/><br />      –><br />    &lt;session-config><br />    &lt;!– 2 hour timeout –><br />     &lt;session-timeout>120&lt;/session-timeout><br />     &lt;session-max>4096&lt;/session-max><br />     &lt;enable-url-rewriting>true&lt;/enable-url-rewriting><br />    &lt;/session-config><br />    &lt;error-page><br />     &lt;error-code>404&lt;/error-code><br />     &lt;location>/file_not_found.jsp&lt;/location><br />    &lt;/error-page><br /><br />    &lt;/host>
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/136181#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 28 Oct 2007 21:43:24 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/136181</link>
        <guid>http://yidwo.javaeye.com/blog/136181</guid>
      </item>
      <item>
        <title>Spring下配置proxool</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/73061" style="color:red;">http://yidwo.javaeye.com/blog/73061</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />
<p>发现网上讲hibernate + proxool的比较多。说spring的比较少。而且说得也不是太详细。<br />
在spring下配置proxool 网上搜了一下，感觉有好几种配置,我就说一下我用的这种,配置成功了的这种,3个步骤:</p>
<p>1:在web.xml中配置两个servlet,一个是加载proxool配置文件的，一个是proxool的资源监控程序.<br />
<span style="COLOR: red">&lt;servlet&gt;<br />
&nbsp;&nbsp;&lt;servlet-name&gt;proxoolServletConfigurator&lt;/servlet-name&gt;<br />
&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.configuration.ServletConfigurator&lt;/servlet-class&gt;<br />
&nbsp;&nbsp;&lt;init-param&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/classes/proxool-conf.xml&lt;/param-value&gt;<br />
&nbsp;&nbsp;&lt;/init-param&gt;<br />
&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;<br />
&nbsp;&lt;/servlet&gt;<br />
&lt;servlet&gt;<br />
&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;<br />
&nbsp;&lt;/servlet&gt;<br />
&nbsp;&lt;servlet-mapping&gt;<br />
&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
&nbsp;&nbsp;&lt;url-pattern&gt;/AdminP&lt;/url-pattern&gt;<br />
&nbsp;&lt;/servlet-mapping&gt;</span></p>
<p><span><font color="#ff0000" style="COLOR: #000000">2:由于proxool只能管理它自己建立的连接,需要创建一个配置文件proxool-conf.xml,内容如下:<br />
<span style="COLOR: #ff0000">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; <br />
&lt;!-- the proxool configuration can be embedded within your own application's. <br />
Anything outside the &quot;proxool&quot; tag is ignored. --&gt; <br />
&lt;something-else-entirely&gt; <br />
&lt;proxool&gt; <br />
&lt;alias&gt;spring_pro_pool&lt;/alias&gt; <br />
&lt;!--proxool只能管理由自己产生的连接--&gt; <br />
&lt;driver-url&gt;jdbc:oracle:thin:@192.168.0.186:1521:ora90&lt;/driver-url&gt; <br />
&lt;driver-class&gt;oracle.jdbc.driver.OracleDriver&lt;/driver-class&gt; <br />
&lt;driver-properties&gt; <br />
&lt;property name=&quot;user&quot; value=&quot;admin&quot;/&gt; <br />
&lt;property name=&quot;password&quot; value=&quot;admin&quot;/&gt; <br />
&lt;/driver-properties&gt; <br />
&lt;!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁--&gt; <br />
&lt;house-keeping-sleep-time&gt;90000&lt;/house-keeping-sleep-time&gt; <br />
&lt;!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受--&gt; <br />
&lt;maximum-new-connections&gt;20&lt;/maximum-new-connections&gt; <br />
&lt;!-- 最少保持的空闲连接数--&gt; <br />
&lt;prototype-count&gt;3&lt;/prototype-count&gt; <br />
&lt;!-- 允许最大连接数,超过了这个连接，再有请求时，就排在队列中等候，最大的等待请求数由maximum-new-connections决定--&gt; <br />
&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt; <br />
&lt;!-- 最小连接数--&gt; <br />
&lt;minimum-connection-count&gt;3&lt;/minimum-connection-count&gt; <br />
&lt;house-keeping-test-sql&gt;select CURRENT_DATE from dual&lt;/house-keeping-test-sql&gt;<br />
&lt;/proxool&gt; <br />
&lt;/something-else-entirely&gt;</span></font></span></p>
<p><span><font color="#ff0000" style="COLOR: #000000"><span>3:最后一步,需要在spring的applicationContext.xml中引用刚才创建的配置文件,在其dataSource的地方加入:<br />
<span style="COLOR: #ff0000">&lt;bean id=&quot;dataSource&quot; class=&quot;org.springframework.jdbc.datasource.DriverManagerDataSource&quot; destroy-method=&quot;close&quot; singleton=&quot;true&quot;&gt;<br />
&nbsp;&nbsp;&lt;property name=&quot;driverClassName&quot;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;org.logicalcobwebs.proxool.ProxoolDriver&lt;/value&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name=&quot;url&quot;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;proxool.spring_pro_pool&lt;/value&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
&nbsp;&lt;/bean&gt;<br />
<span style="COLOR: #000000">在创建sessionFactory时只需要在hibernateProperties中加入下面三个属性配置就行了。<br />
<span style="COLOR: #ff0000">&lt;property name=&quot;hibernateProperties&quot;&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;props&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.dialect&quot;&gt;org.hibernate.dialect.Oracle9Dialect&lt;/prop&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.cglib.use_reflection_optimizer&quot;&gt;true&lt;/prop&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.show_sql&quot;&gt;false&lt;/prop&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;/props&gt;<br />
&nbsp;&nbsp;&lt;/property&gt;<br />
</span></span></span></span></font></span><span><font color="#ff0000" style="COLOR: #000000"><span><span style="COLOR: #000000"><span>倒此已经配置完了，需要注意的几个地方就是proxool在web.xml中的加载顺序必须在spring之前.两个配置文件中的alias必须一直,否则就出错了.</span></span></span></font></span></p>
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/73061#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 16:36:53 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/73061</link>
        <guid>http://yidwo.javaeye.com/blog/73061</guid>
      </item>
      <item>
        <title>连接池proxool配置(转)</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/73056" style="color:red;">http://yidwo.javaeye.com/blog/73056</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <table cellspacing="1" border="0" width="100%" cellpadding="4">
    <tbody>
        <tr>
            <td bgcolor="#ffffff"><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;01&nbsp;</strong>为何需要&nbsp;connection&nbsp;pooling&nbsp;<br />
            <br />
            </font>当我们进入了&nbsp;Java&nbsp;的开发世界,&nbsp;pool&nbsp;也是一门学问,&nbsp;如何让&nbsp;connection&nbsp;先建立好与&nbsp;DB&nbsp;的连结,&nbsp;后来的人可以使用已经存在于&nbsp;pool&nbsp;的&nbsp;connection,&nbsp;减少连结的时间,&nbsp;这么优秀的功能,&nbsp;在许多&nbsp;application&nbsp;server&nbsp;都已经实现好了,&nbsp;你只要简单地按照说明文件配置,&nbsp;包括最大连结数量,&nbsp;初始连结数量,&nbsp;最大等待数量等等的参数,&nbsp;当然,&nbsp;Tomcat&nbsp;也有内建&nbsp;commons-dbcp&nbsp;相关的&nbsp;connection&nbsp;pooling&nbsp;机制,&nbsp;请查阅&nbsp;</font><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-howto.html"><font size="2">Tomcat&nbsp;JNDI&nbsp;Datasource&nbsp;设定</font></a><font size="2">!!&nbsp;<br />
            <br />
            <br />
            而&nbsp;proxool&nbsp;是一个强大的&nbsp;connection&nbsp;pooling&nbsp;项目,&nbsp;兼容于&nbsp;jdk&nbsp;1.3&nbsp;以及&nbsp;1.4.&nbsp;也已经实现了&nbsp;监控,&nbsp;纪录等等的功能,&nbsp;对于一个有限制&nbsp;connection&nbsp;数量,&nbsp;及注重&nbsp;performation&nbsp;的项目来说,&nbsp;是一套非常完整的解决方案.&nbsp;<br />
            <br />
            下载区,&nbsp;目前版本&nbsp;0.7.2<br />
            <br />
            </font><a href="http://sourceforge.net/projects/proxool/"><font size="2" color="#800080">http://sourceforge.net/projects/proxool/</font></a><font size="2">&nbsp;<br />
            <br />
            <br />
            </font><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;02&nbsp;</strong>设置&nbsp;AdminServlet&nbsp;<br />
            <br />
            </font>首先,&nbsp;你要把下载&nbsp;proxool&nbsp;的&nbsp;lib&nbsp;下面所有的&nbsp;jar&nbsp;文件,&nbsp;放到&nbsp;WEB-INF/lib&nbsp;下面,&nbsp;<br />
            <br />
            另外,&nbsp;把你的&nbsp;jdbc&nbsp;driver&nbsp;也放到相同的&nbsp;lib,&nbsp;<br />
            <br />
            接著就是配置&nbsp;/WEB-INF/web.xml&nbsp;</font>
            <pre><code>
<font size="2"><font color="#0000ff"><strong>web.xml</strong></font>

&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
&lt;!DOCTYPE&nbsp;web-app&nbsp;
PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;&nbsp;
&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
&lt;web-app&gt;
&lt;display-name&gt;proxool&lt;/display-name&gt;
&lt;servlet&gt;
&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;
&lt;/servlet&gt;

&lt;servlet-mapping&gt;
&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
&lt;/servlet-mapping&gt;&nbsp;

&lt;/web-app&gt;
</font></code></pre>
            <br />
            <br />
            <br />
            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;03&nbsp;</strong>通过&nbsp;ProxoolDriver&nbsp;取得&nbsp;connection&nbsp;<br />
            <br />
            </font>建立一个&nbsp;jsp&nbsp;or&nbsp;DAO&nbsp;Bean,&nbsp;通过&nbsp;org.logicalcobwebs.proxool.ProxoolDriver&nbsp;建立&nbsp;Connection<br />
            <br />
            <br />
            </font>
            <pre><code>
<font size="2"><font color="#0000ff"><strong>test.jsp</strong></font>

&lt;%@page&nbsp;import=&quot;java.sql.*&quot;%&gt;
&lt;%
Connection&nbsp;connection&nbsp;=&nbsp;null;
try&nbsp;{
Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);

connection&nbsp;=&nbsp;DriverManager.getConnection(
&quot;proxool.test:org.gjt.mm.mysql.Driver:jdbc:mysql://localhost:3306/test&quot;,
&quot;root&quot;,
&quot;password&quot;
);
}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
&nbsp;out.println(e)
}
out.println(&quot;OK&quot;);
%&gt;
</font></code></pre>
            <br />
            <br />
            <br />
            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;04&nbsp;</strong>检视&nbsp;pooling&nbsp;现在状态&nbsp;<br />
            <br />
            </font>执行&nbsp;http://localhost:8080/proxool-test/admin&nbsp;(&nbsp;proxool-test&nbsp;是你的应用名称&nbsp;)&nbsp;如果没有任何&nbsp;pool&nbsp;状态的时候,&nbsp;你只会看到&nbsp;Pools&nbsp;这几个字,&nbsp;所以你先执行&nbsp;http://localhost:8080/proxool-test/test.jsp&nbsp;建立一个&nbsp;connection,&nbsp;就可以监控&nbsp;connection&nbsp;pooling&nbsp;的状态了.&nbsp;<br />
            <br />
            </font>
            <table border="0">
                <tbody>
                    <tr>
                        <td><font size="2"><strong>Pools</strong>&nbsp;</font>
                        <table cellspacing="4" border="0" bgcolor="#eeeeee" width="550" cellpadding="1" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid">
                            <tbody>
                                <tr style="BACKGROUND: white">
                                    <td width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">&gt;</font></td>
                                    <td><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more"><font size="2">test</font></a><font size="2">&nbsp;-&gt;&nbsp;jdbc:mysql://www:3306/test</font></td>
                                </tr>
                            </tbody>
                        </table>
                        <br />
                        <font size="2"><strong>Defintition</strong>&nbsp;for&nbsp;test&nbsp;</font>
                        <table cellspacing="4" border="0" bgcolor="#eeeeee" width="550" cellpadding="1" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid">
                            <tbody>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">URL</font></td>
                                    <td style="BACKGROUND: white"><font size="2">jdbc:mysql://localhost:3306/test</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Driver</font></td>
                                    <td style="BACKGROUND: white"><font size="2">org.gjt.mm.mysql.Driver</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connections</font></td>
                                    <td style="BACKGROUND: white"><font size="2">0&nbsp;(min),&nbsp;15&nbsp;(max)</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Prototyping</font></td>
                                    <td style="COLOR: #666666"><font size="2">off</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connection&nbsp;Lifetime</font></td>
                                    <td style="BACKGROUND: white"><font size="2">11:00:00</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Maximum&nbsp;active&nbsp;time</font></td>
                                    <td style="BACKGROUND: white"><font size="2">07:05:00</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">House&nbsp;keeping&nbsp;sleep&nbsp;time</font></td>
                                    <td style="BACKGROUND: white"><font size="2">30s</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">House&nbsp;keeping&nbsp;test&nbsp;SQL</font></td>
                                    <td style="COLOR: #666666"><font size="2">off</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Fatal&nbsp;SQL&nbsp;exceptions</font></td>
                                    <td style="COLOR: #666666"><font size="2">off</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Statistics</font></td>
                                    <td style="COLOR: #666666"><font size="2">off</font></td>
                                </tr>
                            </tbody>
                        </table>
                        <br />
                        <font size="2"><strong>Snapshot</strong>&nbsp;at&nbsp;21:12:53&nbsp;</font>
                        <table cellspacing="4" border="0" bgcolor="#eeeeee" width="550" cellpadding="1" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid">
                            <tbody>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Start&nbsp;date</font></td>
                                    <td style="BACKGROUND: white"><font size="2">01-??-2003&nbsp;21:12:30</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connections</font></td>
                                    <td style="BACKGROUND: white"><font size="2">1&nbsp;(active),&nbsp;0&nbsp;(available),&nbsp;15&nbsp;(max)<br />
                                    </font>
                                    <table cellspacing="0" border="0" width="100%" cellpadding="0" style="FONT-SIZE: 50%; MARGIN: 8px">
                                        <tbody>
                                            <tr>
                                                <td bgcolor="#ff9999" width="6%"><font size="2">&nbsp;</font></td>
                                                <td bgcolor="#cccccc" width="93%"><font size="2">&nbsp;</font></td>
                                            </tr>
                                        </tbody>
                                    </table>
                                    </td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Served</font></td>
                                    <td style="BACKGROUND: white"><font size="2">1</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Refused</font></td>
                                    <td style="BACKGROUND: white"><font size="2">0</font></td>
                                </tr>
                                <tr>
                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Details</font></td>
                                    <td style="COLOR: #666666">
                                    <table border="0" cellpadding="2">
                                        <tbody>
                                            <tr>
                                                <td style="FONT-SIZE: 90%"><font size="2">#</font></td>
                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">born</font></td>
                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">last<br />
                                                start</font></td>
                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">lap<br />
                                                (ms)</font></td>
                                                <td width="90%" style="FONT-SIZE: 90%"><font size="2">&nbsp;thread</font></td>
                                            </tr>
                                            <tr>
                                                <td bgcolor="#ffcccc" style="BORDER-RIGHT: transparent 1px solid; BORDER-TOP: transparent 1px solid; BORDER-LEFT: transparent 1px solid; BORDER-BOTTOM: transparent 1px solid"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more&amp;id=1"><font size="2">1</font></a></td>
                                                <td><font size="2">&nbsp;21:12:31</font></td>
                                                <td><font size="2">&nbsp;21:12:31</font></td>
                                                <td align="right"><font size="2"><font color="#ff0000">22432</font>&nbsp;&nbsp;</font></td>
                                                <td><font size="2">&nbsp;Thread-15</font></td>
                                            </tr>
                                        </tbody>
                                    </table>
                                    </td>
                                </tr>
                                <tr>
                                    <td align="right" colspan="2"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=less"><font size="2">less&nbsp;information</font></a></td>
                                </tr>
                            </tbody>
                        </table>
                        <br />
                        <div style="WIDTH: 550px; COLOR: #333333; TEXT-ALIGN: right"><font size="2">Proxool&nbsp;0.7.2&nbsp;(29-Apr-2003&nbsp;00:33)</font></div>
                        </td>
                    </tr>
                </tbody>
            </table>
            <br />
            <br />
            <br />
            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;05&nbsp;</strong>使用&nbsp;properties&nbsp;或者&nbsp;xml&nbsp;来设置&nbsp;DB&nbsp;URL&nbsp;及&nbsp;Driver&nbsp;<br />
            <br />
            </font>可以采用&nbsp;xml&nbsp;配置文件,&nbsp;在程序中使用&nbsp;JAXPConfigurator.configure(&quot;proxool.xml&quot;,&nbsp;false);&nbsp;配置文件设置如下&nbsp;</font>
            <pre><code>
<font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.xml</strong></font>
&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;ISO-8859-1&quot;?&gt;
&lt;!--&nbsp;the&nbsp;proxool&nbsp;configuration&nbsp;can&nbsp;be&nbsp;embedded&nbsp;within&nbsp;your&nbsp;own&nbsp;application's.
Anything&nbsp;outside&nbsp;the&nbsp;&quot;proxool&quot;&nbsp;tag&nbsp;is&nbsp;ignored.&nbsp;--&gt;
&lt;something-else-entirely&gt;
&nbsp;&nbsp;&lt;proxool&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;alias&gt;xml-test&lt;/alias&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-url&gt;jdbc:mysql://localhost:3306/test&lt;/driver-url&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-class&gt;org.gjt.mm.mysql.Driver&lt;/driver-class&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-properties&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;user&quot;&nbsp;value=&quot;root&quot;/&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;password&quot;&nbsp;value=&quot;password&quot;/&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/driver-properties&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;house-keeping-test-sql&gt;select&nbsp;CURRENT_DATE&lt;/house-keeping-test-sql&gt;
&nbsp;&nbsp;&lt;/proxool&gt;
&lt;/something-else-entirely&gt;
</font></code></pre>
            <br />
            <br />
            <br />
            <br />
            <br />
            <br />
            <font size="2">也可以采用&nbsp;properties,&nbsp;在程序&nbsp;PropertyConfigurator.configure(&quot;proxool.properties&quot;);&nbsp;文件设置&nbsp;</font>
            <pre><code>
<font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.properties</strong></font>
jdbc-0.proxool.alias=property-test
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test
jdbc-0.proxool.driver-class=org.gjt.mm.mysql.Driver
jdbc-0.user=root
jdbc-0.password=password
jdbc-0.proxool.maximum-connection-count=10
jdbc-0.proxool.house-keeping-test-sql=select&nbsp;CURRENT_DATE
</font></code></pre>
            <br />
            <br />
            <br />
            <br />
            <br />
            <br />
            <font size="2">如果在&nbsp;Web&nbsp;使用,&nbsp;在&nbsp;web.xml&nbsp;也可以设置&nbsp;ServletConfigurator&nbsp;Servlet&nbsp;来注册&nbsp;</font>
            <pre><code>
<font size="2">&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
&lt;!DOCTYPE&nbsp;web-app&nbsp;
PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;
&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
&lt;web-app&gt;
&nbsp;&lt;display-name&gt;proxool&lt;/display-name&gt;

&nbsp;&lt;servlet&gt;
&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;ServletConfigurator&lt;/servlet-name&gt;
&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.configuration.ServletConfigurator
&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&lt;init-param&gt;
&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;
&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/proxool.xml&lt;/param-value&gt;
&nbsp;&nbsp;&nbsp;&lt;/init-param&gt;

&nbsp;&nbsp;&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;

&nbsp;&lt;/servlet&gt;&nbsp;

&nbsp;&lt;servlet&gt;
&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.admin.servlet.AdminServlet
&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
&nbsp;&lt;/servlet&gt;

&nbsp;&lt;servlet-mapping&gt;
&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
&nbsp;&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
&nbsp;&lt;/servlet-mapping&gt;&nbsp;

&lt;/web-app&gt;

</font></code></pre>
            <font size="2">在程序中,&nbsp;只需要利用到别名就可以呼叫&nbsp;connection&nbsp;pool&nbsp;里面的&nbsp;connection&nbsp;来使用了&nbsp;</font>
            <pre><code>
<font size="2">&lt;%@page&nbsp;import=&quot;java.sql.*;&quot;%&gt;
&lt;%
Connection&nbsp;connection&nbsp;=&nbsp;null;
try&nbsp;{
&nbsp;Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);
&nbsp;connection&nbsp;=&nbsp;DriverManager.getConnection(&quot;proxool.xml-test&quot;);

}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
&nbsp;out.println(e);
}

out.println(&quot;ok&quot;);
%&gt;
</font></code></pre>
            </td>
        </tr>
    </tbody>
</table>
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/73056#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 16:05:08 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/73056</link>
        <guid>http://yidwo.javaeye.com/blog/73056</guid>
      </item>
      <item>
        <title>Spring下配置proxool</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/116302" style="color:red;">http://yidwo.javaeye.com/blog/116302</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />



网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
发表时间: 2007-04-21 16:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> 

 

   
<br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br />


原文链接：<a href="
    
   
    http://yidwo.javaeye.com/blog/73061
    
" style="color:red;">
    
   
    http://yidwo.javaeye.com/blog/73061
    
</a><br /><br />
 
    
    <table width="100%"><tr><td><p><br />
<br /><p>发现网上讲hibernate + proxool的比较多。说spring的比较少。而且说得也不是太详细。<br />
<br />在spring下配置proxool 网上搜了一下，感觉有好几种配置,我就说一下我用的这种,配置成功了的这种,3个步骤:</p>
<br /><p>1:在web.xml中配置两个servlet,一个是加载proxool配置文件的，一个是proxool的资源监控程序.<br />
<br /><span style="COLOR: red">&lt;servlet&gt;<br />
<br />&nbsp;&nbsp;&lt;servlet-name&gt;proxoolServletConfigurator&lt;/servlet-name&gt;<br />
<br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.configuration.ServletConfigurator&lt;/servlet-class&gt;<br />
<br />&nbsp;&nbsp;&lt;init-param&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/classes/proxool-conf.xml&lt;/param-value&gt;<br />
<br />&nbsp;&nbsp;&lt;/init-param&gt;<br />
<br />&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;<br />
<br />&nbsp;&lt;/servlet&gt;<br />
<br />&lt;servlet&gt;<br />
<br />&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
<br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;<br />
<br />&nbsp;&lt;/servlet&gt;<br />
<br />&nbsp;&lt;servlet-mapping&gt;<br />
<br />&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
<br />&nbsp;&nbsp;&lt;url-pattern&gt;/AdminP&lt;/url-pattern&gt;<br />
<br />&nbsp;&lt;/servlet-mapping&gt;</span></p>
<br /><p><span><font color="#ff0000" style="COLOR: #000000">2:由于proxool只能管理它自己建立的连接,需要创建一个配置文件proxool-conf.xml,内容如下:<br />
<br /><span style="COLOR: #ff0000">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; <br />
<br />&lt;!-- the proxool configuration can be embedded within your own application's. <br />
<br />Anything outside the &quot;proxool&quot; tag is ignored. --&gt; <br />
<br />&lt;something-else-entirely&gt; <br />
<br />&lt;proxool&gt; <br />
<br />&lt;alias&gt;spring_pro_pool&lt;/alias&gt; <br />
<br />&lt;!--proxool只能管理由自己产生的连接--&gt; <br />
<br />&lt;driver-url&gt;jdbc:oracle:thin:@192.168.0.186:1521:ora90&lt;/driver-url&gt; <br />
<br />&lt;driver-class&gt;oracle.jdbc.driver.OracleDriver&lt;/driver-class&gt; <br />
<br />&lt;driver-properties&gt; <br />
<br />&lt;property name=&quot;user&quot; value=&quot;admin&quot;/&gt; <br />
<br />&lt;property name=&quot;password&quot; value=&quot;admin&quot;/&gt; <br />
<br />&lt;/driver-properties&gt; <br />
<br />&lt;!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁--&gt; <br />
<br />&lt;house-keeping-sleep-time&gt;90000&lt;/house-keeping-sleep-time&gt; <br />
<br />&lt;!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受--&gt; <br />
<br />&lt;maximum-new-connections&gt;20&lt;/maximum-new-connections&gt; <br />
<br />&lt;!-- 最少保持的空闲连接数--&gt; <br />
<br />&lt;prototype-count&gt;3&lt;/prototype-count&gt; <br />
<br />&lt;!-- 允许最大连接数,超过了这个连接，再有请求时，就排在队列中等候，最大的等待请求数由maximum-new-connections决定--&gt; <br />
<br />&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt; <br />
<br />&lt;!-- 最小连接数--&gt; <br />
<br />&lt;minimum-connection-count&gt;3&lt;/minimum-connection-count&gt; <br />
<br />&lt;house-keeping-test-sql&gt;select CURRENT_DATE from dual&lt;/house-keeping-test-sql&gt;<br />
<br />&lt;/proxool&gt; <br />
<br />&lt;/something-else-entirely&gt;</span></font></span></p>
<br /><p><span><font color="#ff0000" style="COLOR: #000000"><span>3:最后一步,需要在spring的applicationContext.xml中引用刚才创建的配置文件,在其dataSource的地方加入:<br />
<br /><span style="COLOR: #ff0000">&lt;bean id=&quot;dataSource&quot; class=&quot;org.springframework.jdbc.datasource.DriverManagerDataSource&quot; destroy-method=&quot;close&quot; singleton=&quot;true&quot;&gt;<br />
<br />&nbsp;&nbsp;&lt;property name=&quot;driverClassName&quot;&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;org.logicalcobwebs.proxool.ProxoolDriver&lt;/value&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name=&quot;url&quot;&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;proxool.spring_pro_pool&lt;/value&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
<br />&nbsp;&lt;/bean&gt;<br />
<br /><span style="COLOR: #000000">在创建sessionFactory时只需要在hibernateProperties中加入下面三个属性配置就行了。<br />
<br /><span style="COLOR: #ff0000">&lt;property name=&quot;hibernateProperties&quot;&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&lt;props&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.dialect&quot;&gt;org.hibernate.dialect.Oracle9Dialect&lt;/prop&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.cglib.use_reflection_optimizer&quot;&gt;true&lt;/prop&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.show_sql&quot;&gt;false&lt;/prop&gt;<br />
<br />&nbsp;&nbsp;&nbsp;&lt;/props&gt;<br />
<br />&nbsp;&nbsp;&lt;/property&gt;<br />
<br /></span></span></span></span></font></span><span><font color="#ff0000" style="COLOR: #000000"><span><span style="COLOR: #000000"><span>倒此已经配置完了，需要注意的几个地方就是proxool在web.xml中的加载顺序必须在spring之前.两个配置文件中的alias必须一直,否则就出错了.</span></span></span></font></span></p></p></td></tr></table>
    <br />
    
    
        <br /><br />
    <span style="color:red;"><a href="
    
   
    http://yidwo.javaeye.com/blog/73061
    
" style="color:red;">《 Spring下配置proxool 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span>


    <br /><br />
    
    
     
    <br /><br /><br /><br />

         
                           
            <span style="color:#E28822;">JavaEye推荐</span><br />
            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
            
            
            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
                           
        
    
    <br /><br />
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/116302#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 08:36:00 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/116302</link>
        <guid>http://yidwo.javaeye.com/blog/116302</guid>
      </item>
      <item>
        <title>连接池proxool配置(转)</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/116303" style="color:red;">http://yidwo.javaeye.com/blog/116303</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />



网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
发表时间: 2007-04-21 16:05  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> 

 

   
<br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br />


原文链接：<a href="
    
   
    http://yidwo.javaeye.com/blog/73056
    
" style="color:red;">
    
   
    http://yidwo.javaeye.com/blog/73056
    
</a><br /><br />
 
    
    <table width="100%"><tr><td><p><table cellspacing="1" border="0" width="100%" cellpadding="4">
<br />    <tbody>
<br />        <tr>
<br />            <td bgcolor="#ffffff"><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;01&nbsp;</strong>为何需要&nbsp;connection&nbsp;pooling&nbsp;<br />
<br />            <br />
<br />            </font>当我们进入了&nbsp;Java&nbsp;的开发世界,&nbsp;pool&nbsp;也是一门学问,&nbsp;如何让&nbsp;connection&nbsp;先建立好与&nbsp;DB&nbsp;的连结,&nbsp;后来的人可以使用已经存在于&nbsp;pool&nbsp;的&nbsp;connection,&nbsp;减少连结的时间,&nbsp;这么优秀的功能,&nbsp;在许多&nbsp;application&nbsp;server&nbsp;都已经实现好了,&nbsp;你只要简单地按照说明文件配置,&nbsp;包括最大连结数量,&nbsp;初始连结数量,&nbsp;最大等待数量等等的参数,&nbsp;当然,&nbsp;Tomcat&nbsp;也有内建&nbsp;commons-dbcp&nbsp;相关的&nbsp;connection&nbsp;pooling&nbsp;机制,&nbsp;请查阅&nbsp;</font><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-howto.html"><font size="2">Tomcat&nbsp;JNDI&nbsp;Datasource&nbsp;设定</font></a><font size="2">!!&nbsp;<br />
<br />            <br />
<br />            <br />
<br />            而&nbsp;proxool&nbsp;是一个强大的&nbsp;connection&nbsp;pooling&nbsp;项目,&nbsp;兼容于&nbsp;jdk&nbsp;1.3&nbsp;以及&nbsp;1.4.&nbsp;也已经实现了&nbsp;监控,&nbsp;纪录等等的功能,&nbsp;对于一个有限制&nbsp;connection&nbsp;数量,&nbsp;及注重&nbsp;performation&nbsp;的项目来说,&nbsp;是一套非常完整的解决方案.&nbsp;<br />
<br />            <br />
<br />            下载区,&nbsp;目前版本&nbsp;0.7.2<br />
<br />            <br />
<br />            </font><a href="http://sourceforge.net/projects/proxool/"><font size="2" color="#800080">http://sourceforge.net/projects/proxool/</font></a><font size="2">&nbsp;<br />
<br />            <br />
<br />            <br />
<br />            </font><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;02&nbsp;</strong>设置&nbsp;AdminServlet&nbsp;<br />
<br />            <br />
<br />            </font>首先,&nbsp;你要把下载&nbsp;proxool&nbsp;的&nbsp;lib&nbsp;下面所有的&nbsp;jar&nbsp;文件,&nbsp;放到&nbsp;WEB-INF/lib&nbsp;下面,&nbsp;<br />
<br />            <br />
<br />            另外,&nbsp;把你的&nbsp;jdbc&nbsp;driver&nbsp;也放到相同的&nbsp;lib,&nbsp;<br />
<br />            <br />
<br />            接著就是配置&nbsp;/WEB-INF/web.xml&nbsp;</font>
<br />            <pre><code>
<br /></code></pre><font size="2"><font color="#0000ff"><strong>web.xml</strong></font></font></td></tr></tbody></table></p>

<p>&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
<br />&lt;!DOCTYPE&nbsp;web-app&nbsp;
<br />PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;&nbsp;
<br />&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
<br />&lt;web-app&gt;
<br />&lt;display-name&gt;proxool&lt;/display-name&gt;
<br />&lt;servlet&gt;
<br />&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;
<br />&lt;/servlet&gt;</p>

<p>&lt;servlet-mapping&gt;
<br />&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br />&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
<br />&lt;/servlet-mapping&gt;&nbsp;</p>

<p>&lt;/web-app&gt;
<br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;03&nbsp;</strong>通过&nbsp;ProxoolDriver&nbsp;取得&nbsp;connection&nbsp;<br />
<br />            <br />
<br />            </font>建立一个&nbsp;jsp&nbsp;or&nbsp;DAO&nbsp;Bean,&nbsp;通过&nbsp;org.logicalcobwebs.proxool.ProxoolDriver&nbsp;建立&nbsp;Connection<br />
<br />            <br />
<br />            <br />
<br />            </font>
<br />            <pre><code>
<br /></code></pre><font size="2"><font color="#0000ff"><strong>test.jsp</strong></font></font></p>

<p>&lt;%@page&nbsp;import=&quot;java.sql.*&quot;%&gt;
<br />&lt;%
<br />Connection&nbsp;connection&nbsp;=&nbsp;null;
<br />try&nbsp;{
<br />Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);</p>

<p>connection&nbsp;=&nbsp;DriverManager.getConnection(
<br />&quot;proxool.test:org.gjt.mm.mysql.Driver:jdbc:mysql://localhost:3306/test&quot;,
<br />&quot;root&quot;,
<br />&quot;password&quot;
<br />);
<br />}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
<br />&nbsp;out.println(e)
<br />}
<br />out.println(&quot;OK&quot;);
<br />%&gt;
<br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;04&nbsp;</strong>检视&nbsp;pooling&nbsp;现在状态&nbsp;<br />
<br />            <br />
<br />            </font>执行&nbsp;http://localhost:8080/proxool-test/admin&nbsp;(&nbsp;proxool-test&nbsp;是你的应用名称&nbsp;)&nbsp;如果没有任何&nbsp;pool&nbsp;状态的时候,&nbsp;你只会看到&nbsp;Pools&nbsp;这几个字,&nbsp;所以你先执行&nbsp;http://localhost:8080/proxool-test/test.jsp&nbsp;建立一个&nbsp;connection,&nbsp;就可以监控&nbsp;connection&nbsp;pooling&nbsp;的状态了.&nbsp;<br />
<br />            <br />
<br />            </font>
<br />            <table border="0">
<br />                <tbody>
<br />                    <tr>
<br />                        <td><font size="2"><strong>Pools</strong>&nbsp;</font>
<br />                        <table cellspacing="4" border="0" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" width="550" cellpadding="1" bgcolor="#eeeeee">
<br />                            <tbody>
<br />                                <tr style="BACKGROUND: white">
<br />                                    <td style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">&gt;</font></td>
<br />                                    <td><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more"><font size="2">test</font></a><font size="2">&nbsp;-&gt;&nbsp;jdbc:mysql://www:3306/test</font></td>
<br />                                </tr>
<br />                            </tbody>
<br />                        </table>
<br />                        <br />
<br />                        <font size="2"><strong>Defintition</strong>&nbsp;for&nbsp;test&nbsp;</font>
<br />                        <table cellspacing="4" border="0" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" width="550" cellpadding="1" bgcolor="#eeeeee">
<br />                            <tbody>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">URL</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">jdbc:mysql://localhost:3306/test</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Driver</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">org.gjt.mm.mysql.Driver</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Connections</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">0&nbsp;(min),&nbsp;15&nbsp;(max)</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Prototyping</font></td>
<br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Connection&nbsp;Lifetime</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">11:00:00</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Maximum&nbsp;active&nbsp;time</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">07:05:00</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">House&nbsp;keeping&nbsp;sleep&nbsp;time</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">30s</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">House&nbsp;keeping&nbsp;test&nbsp;SQL</font></td>
<br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Fatal&nbsp;SQL&nbsp;exceptions</font></td>
<br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Statistics</font></td>
<br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br />                                </tr>
<br />                            </tbody>
<br />                        </table>
<br />                        <br />
<br />                        <font size="2"><strong>Snapshot</strong>&nbsp;at&nbsp;21:12:53&nbsp;</font>
<br />                        <table cellspacing="4" border="0" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" width="550" cellpadding="1" bgcolor="#eeeeee">
<br />                            <tbody>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Start&nbsp;date</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">01-??-2003&nbsp;21:12:30</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Connections</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">1&nbsp;(active),&nbsp;0&nbsp;(available),&nbsp;15&nbsp;(max)<br />
<br />                                    </font>
<br />                                    <table cellspacing="0" border="0" style="FONT-SIZE: 50%; MARGIN: 8px" width="100%" cellpadding="0">
<br />                                        <tbody>
<br />                                            <tr>
<br />                                                <td width="6%" bgcolor="#ff9999"><font size="2">&nbsp;</font></td>
<br />                                                <td width="93%" bgcolor="#cccccc"><font size="2">&nbsp;</font></td>
<br />                                            </tr>
<br />                                        </tbody>
<br />                                    </table>
<br />                                    </td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Served</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">1</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Refused</font></td>
<br />                                    <td style="BACKGROUND: white"><font size="2">0</font></td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td valign="top" style="COLOR: #333333; TEXT-ALIGN: right" width="200"><font size="2">Details</font></td>
<br />                                    <td style="COLOR: #666666">
<br />                                    <table border="0" cellpadding="2">
<br />                                        <tbody>
<br />                                            <tr>
<br />                                                <td style="FONT-SIZE: 90%"><font size="2">#</font></td>
<br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">born</font></td>
<br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">last<br />
<br />                                                start</font></td>
<br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">lap<br />
<br />                                                (ms)</font></td>
<br />                                                <td style="FONT-SIZE: 90%" width="90%"><font size="2">&nbsp;thread</font></td>
<br />                                            </tr>
<br />                                            <tr>
<br />                                                <td style="BORDER-RIGHT: transparent 1px solid; BORDER-TOP: transparent 1px solid; BORDER-LEFT: transparent 1px solid; BORDER-BOTTOM: transparent 1px solid" bgcolor="#ffcccc"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more&amp;id=1"><font size="2">1</font></a></td>
<br />                                                <td><font size="2">&nbsp;21:12:31</font></td>
<br />                                                <td><font size="2">&nbsp;21:12:31</font></td>
<br />                                                <td align="right"><font size="2"><font color="#ff0000">22432</font>&nbsp;&nbsp;</font></td>
<br />                                                <td><font size="2">&nbsp;Thread-15</font></td>
<br />                                            </tr>
<br />                                        </tbody>
<br />                                    </table>
<br />                                    </td>
<br />                                </tr>
<br />                                <tr>
<br />                                    <td align="right" colspan="2"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=less"><font size="2">less&nbsp;information</font></a></td>
<br />                                </tr>
<br />                            </tbody>
<br />                        </table>
<br />                        <br />
<br />                        <div style="WIDTH: 550px; COLOR: #333333; TEXT-ALIGN: right"><font size="2">Proxool&nbsp;0.7.2&nbsp;(29-Apr-2003&nbsp;00:33)</font></div>
<br />                        </td>
<br />                    </tr>
<br />                </tbody>
<br />            </table>
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;05&nbsp;</strong>使用&nbsp;properties&nbsp;或者&nbsp;xml&nbsp;来设置&nbsp;DB&nbsp;URL&nbsp;及&nbsp;Driver&nbsp;<br />
<br />            <br />
<br />            </font>可以采用&nbsp;xml&nbsp;配置文件,&nbsp;在程序中使用&nbsp;JAXPConfigurator.configure(&quot;proxool.xml&quot;,&nbsp;false);&nbsp;配置文件设置如下&nbsp;</font>
<br />            <pre><code>
<br /><font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.xml</strong></font>
<br />&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;ISO-8859-1&quot;?&gt;
<br />&lt;!--&nbsp;the&nbsp;proxool&nbsp;configuration&nbsp;can&nbsp;be&nbsp;embedded&nbsp;within&nbsp;your&nbsp;own&nbsp;application's.
<br />Anything&nbsp;outside&nbsp;the&nbsp;&quot;proxool&quot;&nbsp;tag&nbsp;is&nbsp;ignored.&nbsp;--&gt;
<br />&lt;something-else-entirely&gt;
<br />&nbsp;&nbsp;&lt;proxool&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;alias&gt;xml-test&lt;/alias&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-url&gt;jdbc:mysql://localhost:3306/test&lt;/driver-url&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-class&gt;org.gjt.mm.mysql.Driver&lt;/driver-class&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-properties&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;user&quot;&nbsp;value=&quot;root&quot;/&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;password&quot;&nbsp;value=&quot;password&quot;/&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/driver-properties&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt;
<br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;house-keeping-test-sql&gt;select&nbsp;CURRENT_DATE&lt;/house-keeping-test-sql&gt;
<br />&nbsp;&nbsp;&lt;/proxool&gt;
<br />&lt;/something-else-entirely&gt;
<br /></font></code></pre>
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <font size="2">也可以采用&nbsp;properties,&nbsp;在程序&nbsp;PropertyConfigurator.configure(&quot;proxool.properties&quot;);&nbsp;文件设置&nbsp;</font>
<br />            <pre><code>
<br /><font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.properties</strong></font>
<br />jdbc-0.proxool.alias=property-test
<br />jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test
<br />jdbc-0.proxool.driver-class=org.gjt.mm.mysql.Driver
<br />jdbc-0.user=root
<br />jdbc-0.password=password
<br />jdbc-0.proxool.maximum-connection-count=10
<br />jdbc-0.proxool.house-keeping-test-sql=select&nbsp;CURRENT_DATE
<br /></font></code></pre>
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <br />
<br />            <font size="2">如果在&nbsp;Web&nbsp;使用,&nbsp;在&nbsp;web.xml&nbsp;也可以设置&nbsp;ServletConfigurator&nbsp;Servlet&nbsp;来注册&nbsp;</font>
<br />            <pre><code>
<br /></code></pre><font size="2">&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
<br />&lt;!DOCTYPE&nbsp;web-app&nbsp;
<br />PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;
<br />&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
<br />&lt;web-app&gt;
<br />&nbsp;&lt;display-name&gt;proxool&lt;/display-name&gt;</font></p>

<p>&nbsp;&lt;servlet&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;ServletConfigurator&lt;/servlet-name&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
<br />&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.configuration.ServletConfigurator
<br />&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
<br />&nbsp;&nbsp;
<br />&nbsp;&nbsp;&nbsp;&lt;init-param&gt;
<br />&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;
<br />&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/proxool.xml&lt;/param-value&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;/init-param&gt;</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;</p>

<p>&nbsp;&lt;/servlet&gt;&nbsp;</p>

<p>&nbsp;&lt;servlet&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
<br />&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.admin.servlet.AdminServlet
<br />&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
<br />&nbsp;&lt;/servlet&gt;</p>

<p>&nbsp;&lt;servlet-mapping&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br />&nbsp;&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
<br />&nbsp;&lt;/servlet-mapping&gt;&nbsp;</p>

<p>&lt;/web-app&gt;</p>

<p>
<br />            <font size="2">在程序中,&nbsp;只需要利用到别名就可以呼叫&nbsp;connection&nbsp;pool&nbsp;里面的&nbsp;connection&nbsp;来使用了&nbsp;</font>
<br />            <pre><code>
<br /></code></pre><font size="2">&lt;%@page&nbsp;import=&quot;java.sql.*;&quot;%&gt;
<br />&lt;%
<br />Connection&nbsp;connection&nbsp;=&nbsp;null;
<br />try&nbsp;{
<br />&nbsp;Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);
<br />&nbsp;connection&nbsp;=&nbsp;DriverManager.getConnection(&quot;proxool.xml-test&quot;);</font></p>

<p>}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
<br />&nbsp;out.println(e);
<br />}</p>

<p>out.println(&quot;ok&quot;);
<br />%&gt;
<br />
<br />            </p></td>
<br />        </tr>
<br />    
<br /></table>
    <br />
    
    
        <br /><br />
    <span style="color:red;"><a href="
    
   
    http://yidwo.javaeye.com/blog/73056
    
" style="color:red;">《 连接池proxool配置(转) 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span>


    <br /><br />
    
    
     
    <br /><br /><br /><br />

         
                           
            <span style="color:#E28822;">JavaEye推荐</span><br />
            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
            
            
            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
                           
        
    
    <br /><br />
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/116303#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 08:05:00 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/116303</link>
        <guid>http://yidwo.javaeye.com/blog/116303</guid>
      </item>
      <item>
        <title>Spring下配置proxool</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/116735" style="color:red;">http://yidwo.javaeye.com/blog/116735</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />



网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
发表时间: 2007-04-21 08:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> 

 

   
<br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br />


原文链接：<a href="
    
   
    http://yidwo.javaeye.com/blog/116302
    
" style="color:red;">
    
   
    http://yidwo.javaeye.com/blog/116302
    
</a><br /><br />
 
    
    <table width="100%"><tr><td><p><br /></p>

<p>网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
<br />发表时间: 2007-04-21 16:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> </p>

<p> </p>

<p>   
<br /><br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br /></p>

<p>原文链接：<a href="
&lt;br /&gt;    
&lt;br /&gt;   
&lt;br /&gt;    http://yidwo.javaeye.com/blog/73061
&lt;br /&gt;    
&lt;br /&gt;" style="color:red;">
<br />    
<br />   
<br />    http://yidwo.javaeye.com/blog/73061
<br />    
<br /></a><br /><br />
<br /> 
<br />    
<br />    <table width="100%"><tr><td><p><br />
<br /><br /><p>发现网上讲hibernate + proxool的比较多。说spring的比较少。而且说得也不是太详细。<br />
<br /><br />在spring下配置proxool 网上搜了一下，感觉有好几种配置,我就说一下我用的这种,配置成功了的这种,3个步骤:</p>
<br /><br /><p>1:在web.xml中配置两个servlet,一个是加载proxool配置文件的，一个是proxool的资源监控程序.<br />
<br /><br /><span style="COLOR: red">&lt;servlet&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;proxoolServletConfigurator&lt;/servlet-name&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.configuration.ServletConfigurator&lt;/servlet-class&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;init-param&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/classes/proxool-conf.xml&lt;/param-value&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;/init-param&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;<br />
<br /><br />&nbsp;&lt;/servlet&gt;<br />
<br /><br />&lt;servlet&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;<br />
<br /><br />&nbsp;&lt;/servlet&gt;<br />
<br /><br />&nbsp;&lt;servlet-mapping&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;AdminP&lt;/servlet-name&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;url-pattern&gt;/AdminP&lt;/url-pattern&gt;<br />
<br /><br />&nbsp;&lt;/servlet-mapping&gt;</span></p>
<br /><br /><p><span><font color="#ff0000" style="COLOR: #000000">2:由于proxool只能管理它自己建立的连接,需要创建一个配置文件proxool-conf.xml,内容如下:<br />
<br /><br /><span style="COLOR: #ff0000">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; <br />
<br /><br />&lt;!-- the proxool configuration can be embedded within your own application's. <br />
<br /><br />Anything outside the &quot;proxool&quot; tag is ignored. --&gt; <br />
<br /><br />&lt;something-else-entirely&gt; <br />
<br /><br />&lt;proxool&gt; <br />
<br /><br />&lt;alias&gt;spring_pro_pool&lt;/alias&gt; <br />
<br /><br />&lt;!--proxool只能管理由自己产生的连接--&gt; <br />
<br /><br />&lt;driver-url&gt;jdbc:oracle:thin:@192.168.0.186:1521:ora90&lt;/driver-url&gt; <br />
<br /><br />&lt;driver-class&gt;oracle.jdbc.driver.OracleDriver&lt;/driver-class&gt; <br />
<br /><br />&lt;driver-properties&gt; <br />
<br /><br />&lt;property name=&quot;user&quot; value=&quot;admin&quot;/&gt; <br />
<br /><br />&lt;property name=&quot;password&quot; value=&quot;admin&quot;/&gt; <br />
<br /><br />&lt;/driver-properties&gt; <br />
<br /><br />&lt;!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁--&gt; <br />
<br /><br />&lt;house-keeping-sleep-time&gt;90000&lt;/house-keeping-sleep-time&gt; <br />
<br /><br />&lt;!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受--&gt; <br />
<br /><br />&lt;maximum-new-connections&gt;20&lt;/maximum-new-connections&gt; <br />
<br /><br />&lt;!-- 最少保持的空闲连接数--&gt; <br />
<br /><br />&lt;prototype-count&gt;3&lt;/prototype-count&gt; <br />
<br /><br />&lt;!-- 允许最大连接数,超过了这个连接，再有请求时，就排在队列中等候，最大的等待请求数由maximum-new-connections决定--&gt; <br />
<br /><br />&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt; <br />
<br /><br />&lt;!-- 最小连接数--&gt; <br />
<br /><br />&lt;minimum-connection-count&gt;3&lt;/minimum-connection-count&gt; <br />
<br /><br />&lt;house-keeping-test-sql&gt;select CURRENT_DATE from dual&lt;/house-keeping-test-sql&gt;<br />
<br /><br />&lt;/proxool&gt; <br />
<br /><br />&lt;/something-else-entirely&gt;</span></font></span></p>
<br /><br /><p><span><font color="#ff0000" style="COLOR: #000000"><span>3:最后一步,需要在spring的applicationContext.xml中引用刚才创建的配置文件,在其dataSource的地方加入:<br />
<br /><br /><span style="COLOR: #ff0000">&lt;bean id=&quot;dataSource&quot; class=&quot;org.springframework.jdbc.datasource.DriverManagerDataSource&quot; destroy-method=&quot;close&quot; singleton=&quot;true&quot;&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;property name=&quot;driverClassName&quot;&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;org.logicalcobwebs.proxool.ProxoolDriver&lt;/value&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name=&quot;url&quot;&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;value&gt;proxool.spring_pro_pool&lt;/value&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/property&gt;<br />
<br /><br />&nbsp;&lt;/bean&gt;<br />
<br /><br /><span style="COLOR: #000000">在创建sessionFactory时只需要在hibernateProperties中加入下面三个属性配置就行了。<br />
<br /><br /><span style="COLOR: #ff0000">&lt;property name=&quot;hibernateProperties&quot;&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&lt;props&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.dialect&quot;&gt;org.hibernate.dialect.Oracle9Dialect&lt;/prop&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.cglib.use_reflection_optimizer&quot;&gt;true&lt;/prop&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;prop key=&quot;hibernate.show_sql&quot;&gt;false&lt;/prop&gt;<br />
<br /><br />&nbsp;&nbsp;&nbsp;&lt;/props&gt;<br />
<br /><br />&nbsp;&nbsp;&lt;/property&gt;<br />
<br /><br /></span></span></span></span></font></span><span><font color="#ff0000" style="COLOR: #000000"><span><span style="COLOR: #000000"><span>倒此已经配置完了，需要注意的几个地方就是proxool在web.xml中的加载顺序必须在spring之前.两个配置文件中的alias必须一直,否则就出错了.</span></span></span></font></span></p></p></td></tr></table>
<br />    <br />
<br />    
<br />    
<br />        <br /><br />
<br />    <span style="color:red;"><a href="
&lt;br /&gt;    
&lt;br /&gt;   
&lt;br /&gt;    http://yidwo.javaeye.com/blog/73061
&lt;br /&gt;    
&lt;br /&gt;" style="color:red;">《 Spring下配置proxool 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span></p>

<p>    <br /><br />
<br />    
<br />    
<br />     
<br />    <br /><br /><br /><br /></p>

<p>         
<br />                           
<br />            <span style="color:#E28822;">JavaEye推荐</span><br />
<br />            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
<br />            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
<br />            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
<br />            
<br />            
<br />            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
<br />                           
<br />        
<br />    
<br />    <br /><br /></p></td></tr></table>
    <br />
    
    
        <br /><br />
    <span style="color:red;"><a href="
    
   
    http://yidwo.javaeye.com/blog/116302
    
" style="color:red;">《 Spring下配置proxool 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span>


    <br /><br />
    
    
     
    <br /><br /><br /><br />

         
                           
            <span style="color:#E28822;">JavaEye推荐</span><br />
            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
            
            
            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
                           
        
    
    <br /><br />
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/116735#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 00:36:00 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/116735</link>
        <guid>http://yidwo.javaeye.com/blog/116735</guid>
      </item>
      <item>
        <title>连接池proxool配置(转)</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/116736" style="color:red;">http://yidwo.javaeye.com/blog/116736</a>&nbsp;
          发表时间: 2007年04月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />



网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
发表时间: 2007-04-21 08:05  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> 

 

   
<br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br />


原文链接：<a href="
    
   
    http://yidwo.javaeye.com/blog/116303
    
" style="color:red;">
    
   
    http://yidwo.javaeye.com/blog/116303
    
</a><br /><br />
 
    
    <table width="100%"><tr><td><p><br /></p>

<p>网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
<br />发表时间: 2007-04-21 16:05  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> </p>

<p> </p>

<p>   
<br /><br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br /></p>

<p>原文链接：<a href="
&lt;br /&gt;    
&lt;br /&gt;   
&lt;br /&gt;    http://yidwo.javaeye.com/blog/73056
&lt;br /&gt;    
&lt;br /&gt;" style="color:red;">
<br />    
<br />   
<br />    http://yidwo.javaeye.com/blog/73056
<br />    
<br /></a><br /><br />
<br /> 
<br />    
<br />    <table width="100%"><tr><td><p><table cellspacing="1" border="0" width="100%" cellpadding="4">
<br /><br />    <tbody>
<br /><br />        <tr>
<br /><br />            <td bgcolor="#ffffff"><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;01&nbsp;</strong>为何需要&nbsp;connection&nbsp;pooling&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>当我们进入了&nbsp;Java&nbsp;的开发世界,&nbsp;pool&nbsp;也是一门学问,&nbsp;如何让&nbsp;connection&nbsp;先建立好与&nbsp;DB&nbsp;的连结,&nbsp;后来的人可以使用已经存在于&nbsp;pool&nbsp;的&nbsp;connection,&nbsp;减少连结的时间,&nbsp;这么优秀的功能,&nbsp;在许多&nbsp;application&nbsp;server&nbsp;都已经实现好了,&nbsp;你只要简单地按照说明文件配置,&nbsp;包括最大连结数量,&nbsp;初始连结数量,&nbsp;最大等待数量等等的参数,&nbsp;当然,&nbsp;Tomcat&nbsp;也有内建&nbsp;commons-dbcp&nbsp;相关的&nbsp;connection&nbsp;pooling&nbsp;机制,&nbsp;请查阅&nbsp;</font><a href="http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-howto.html"><font size="2">Tomcat&nbsp;JNDI&nbsp;Datasource&nbsp;设定</font></a><font size="2">!!&nbsp;<br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            而&nbsp;proxool&nbsp;是一个强大的&nbsp;connection&nbsp;pooling&nbsp;项目,&nbsp;兼容于&nbsp;jdk&nbsp;1.3&nbsp;以及&nbsp;1.4.&nbsp;也已经实现了&nbsp;监控,&nbsp;纪录等等的功能,&nbsp;对于一个有限制&nbsp;connection&nbsp;数量,&nbsp;及注重&nbsp;performation&nbsp;的项目来说,&nbsp;是一套非常完整的解决方案.&nbsp;<br />
<br /><br />            <br />
<br /><br />            下载区,&nbsp;目前版本&nbsp;0.7.2<br />
<br /><br />            <br />
<br /><br />            </font><a href="http://sourceforge.net/projects/proxool/"><font size="2" color="#800080">http://sourceforge.net/projects/proxool/</font></a><font size="2">&nbsp;<br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            </font><font size="2"><font color="#ff0000"><strong>SECTION&nbsp;02&nbsp;</strong>设置&nbsp;AdminServlet&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>首先,&nbsp;你要把下载&nbsp;proxool&nbsp;的&nbsp;lib&nbsp;下面所有的&nbsp;jar&nbsp;文件,&nbsp;放到&nbsp;WEB-INF/lib&nbsp;下面,&nbsp;<br />
<br /><br />            <br />
<br /><br />            另外,&nbsp;把你的&nbsp;jdbc&nbsp;driver&nbsp;也放到相同的&nbsp;lib,&nbsp;<br />
<br /><br />            <br />
<br /><br />            接著就是配置&nbsp;/WEB-INF/web.xml&nbsp;</font>
<br /><br />            <pre><code>
<br /><br /></code></pre><font size="2"><font color="#0000ff"><strong>web.xml</strong></font></font></td></tr></tbody></table></p></td></tr></table></p>

<p><p>&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
<br /><br />&lt;!DOCTYPE&nbsp;web-app&nbsp;
<br /><br />PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;&nbsp;
<br /><br />&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
<br /><br />&lt;web-app&gt;
<br /><br />&lt;display-name&gt;proxool&lt;/display-name&gt;
<br /><br />&lt;servlet&gt;
<br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br /><br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.admin.servlet.AdminServlet&lt;/servlet-class&gt;
<br /><br />&lt;/servlet&gt;</p></p>

<p><p>&lt;servlet-mapping&gt;
<br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br /><br />&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
<br /><br />&lt;/servlet-mapping&gt;&nbsp;</p></p>

<p><p>&lt;/web-app&gt;
<br /><br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;03&nbsp;</strong>通过&nbsp;ProxoolDriver&nbsp;取得&nbsp;connection&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>建立一个&nbsp;jsp&nbsp;or&nbsp;DAO&nbsp;Bean,&nbsp;通过&nbsp;org.logicalcobwebs.proxool.ProxoolDriver&nbsp;建立&nbsp;Connection<br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            </font>
<br /><br />            <pre><code>
<br /><br /></code></pre><font size="2"><font color="#0000ff"><strong>test.jsp</strong></font></font></p></p>

<p><p>&lt;%@page&nbsp;import=&quot;java.sql.*&quot;%&gt;
<br /><br />&lt;%
<br /><br />Connection&nbsp;connection&nbsp;=&nbsp;null;
<br /><br />try&nbsp;{
<br /><br />Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);</p></p>

<p><p>connection&nbsp;=&nbsp;DriverManager.getConnection(
<br /><br />&quot;proxool.test:org.gjt.mm.mysql.Driver:jdbc:mysql://localhost:3306/test&quot;,
<br /><br />&quot;root&quot;,
<br /><br />&quot;password&quot;
<br /><br />);
<br /><br />}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
<br /><br />&nbsp;out.println(e)
<br /><br />}
<br /><br />out.println(&quot;OK&quot;);
<br /><br />%&gt;
<br /><br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;04&nbsp;</strong>检视&nbsp;pooling&nbsp;现在状态&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>执行&nbsp;http://localhost:8080/proxool-test/admin&nbsp;(&nbsp;proxool-test&nbsp;是你的应用名称&nbsp;)&nbsp;如果没有任何&nbsp;pool&nbsp;状态的时候,&nbsp;你只会看到&nbsp;Pools&nbsp;这几个字,&nbsp;所以你先执行&nbsp;http://localhost:8080/proxool-test/test.jsp&nbsp;建立一个&nbsp;connection,&nbsp;就可以监控&nbsp;connection&nbsp;pooling&nbsp;的状态了.&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>
<br /><br />            <table border="0">
<br /><br />                <tbody>
<br /><br />                    <tr>
<br /><br />                        <td><font size="2"><strong>Pools</strong>&nbsp;</font>
<br /><br />                        <table cellspacing="4" border="0" width="550" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" cellpadding="1" bgcolor="#eeeeee">
<br /><br />                            <tbody>
<br /><br />                                <tr style="BACKGROUND: white">
<br /><br />                                    <td width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">&gt;</font></td>
<br /><br />                                    <td><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more"><font size="2">test</font></a><font size="2">&nbsp;-&gt;&nbsp;jdbc:mysql://www:3306/test</font></td>
<br /><br />                                </tr>
<br /><br />                            </tbody>
<br /><br />                        </table>
<br /><br />                        <br />
<br /><br />                        <font size="2"><strong>Defintition</strong>&nbsp;for&nbsp;test&nbsp;</font>
<br /><br />                        <table cellspacing="4" border="0" width="550" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" cellpadding="1" bgcolor="#eeeeee">
<br /><br />                            <tbody>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">URL</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">jdbc:mysql://localhost:3306/test</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Driver</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">org.gjt.mm.mysql.Driver</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connections</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">0&nbsp;(min),&nbsp;15&nbsp;(max)</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Prototyping</font></td>
<br /><br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connection&nbsp;Lifetime</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">11:00:00</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Maximum&nbsp;active&nbsp;time</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">07:05:00</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">House&nbsp;keeping&nbsp;sleep&nbsp;time</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">30s</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">House&nbsp;keeping&nbsp;test&nbsp;SQL</font></td>
<br /><br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Fatal&nbsp;SQL&nbsp;exceptions</font></td>
<br /><br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Statistics</font></td>
<br /><br />                                    <td style="COLOR: #666666"><font size="2">off</font></td>
<br /><br />                                </tr>
<br /><br />                            </tbody>
<br /><br />                        </table>
<br /><br />                        <br />
<br /><br />                        <font size="2"><strong>Snapshot</strong>&nbsp;at&nbsp;21:12:53&nbsp;</font>
<br /><br />                        <table cellspacing="4" border="0" width="550" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" cellpadding="1" bgcolor="#eeeeee">
<br /><br />                            <tbody>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Start&nbsp;date</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">01-??-2003&nbsp;21:12:30</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Connections</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">1&nbsp;(active),&nbsp;0&nbsp;(available),&nbsp;15&nbsp;(max)<br />
<br /><br />                                    </font>
<br /><br />                                    <table cellspacing="0" border="0" width="100%" style="FONT-SIZE: 50%; MARGIN: 8px" cellpadding="0">
<br /><br />                                        <tbody>
<br /><br />                                            <tr>
<br /><br />                                                <td width="6%" bgcolor="#ff9999"><font size="2">&nbsp;</font></td>
<br /><br />                                                <td width="93%" bgcolor="#cccccc"><font size="2">&nbsp;</font></td>
<br /><br />                                            </tr>
<br /><br />                                        </tbody>
<br /><br />                                    </table>
<br /><br />                                    </td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Served</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">1</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Refused</font></td>
<br /><br />                                    <td style="BACKGROUND: white"><font size="2">0</font></td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td valign="top" width="200" style="COLOR: #333333; TEXT-ALIGN: right"><font size="2">Details</font></td>
<br /><br />                                    <td style="COLOR: #666666">
<br /><br />                                    <table border="0" cellpadding="2">
<br /><br />                                        <tbody>
<br /><br />                                            <tr>
<br /><br />                                                <td style="FONT-SIZE: 90%"><font size="2">#</font></td>
<br /><br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">born</font></td>
<br /><br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">last<br />
<br /><br />                                                start</font></td>
<br /><br />                                                <td align="center" style="FONT-SIZE: 90%"><font size="2">lap<br />
<br /><br />                                                (ms)</font></td>
<br /><br />                                                <td width="90%" style="FONT-SIZE: 90%"><font size="2">&nbsp;thread</font></td>
<br /><br />                                            </tr>
<br /><br />                                            <tr>
<br /><br />                                                <td style="BORDER-RIGHT: transparent 1px solid; BORDER-TOP: transparent 1px solid; BORDER-LEFT: transparent 1px solid; BORDER-BOTTOM: transparent 1px solid" bgcolor="#ffcccc"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=more&amp;id=1"><font size="2">1</font></a></td>
<br /><br />                                                <td><font size="2">&nbsp;21:12:31</font></td>
<br /><br />                                                <td><font size="2">&nbsp;21:12:31</font></td>
<br /><br />                                                <td align="right"><font size="2"><font color="#ff0000">22432</font>&nbsp;&nbsp;</font></td>
<br /><br />                                                <td><font size="2">&nbsp;Thread-15</font></td>
<br /><br />                                            </tr>
<br /><br />                                        </tbody>
<br /><br />                                    </table>
<br /><br />                                    </td>
<br /><br />                                </tr>
<br /><br />                                <tr>
<br /><br />                                    <td align="right" colspan="2"><a href="http://www.sentom.net/proxool/admin?alias=test&amp;level=less"><font size="2">less&nbsp;information</font></a></td>
<br /><br />                                </tr>
<br /><br />                            </tbody>
<br /><br />                        </table>
<br /><br />                        <br />
<br /><br />                        <div style="WIDTH: 550px; COLOR: #333333; TEXT-ALIGN: right"><font size="2">Proxool&nbsp;0.7.2&nbsp;(29-Apr-2003&nbsp;00:33)</font></div>
<br /><br />                        </td>
<br /><br />                    </tr>
<br /><br />                </tbody>
<br /><br />            </table>
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <font size="2"><font color="#ff0000"><strong>SECTION&nbsp;05&nbsp;</strong>使用&nbsp;properties&nbsp;或者&nbsp;xml&nbsp;来设置&nbsp;DB&nbsp;URL&nbsp;及&nbsp;Driver&nbsp;<br />
<br /><br />            <br />
<br /><br />            </font>可以采用&nbsp;xml&nbsp;配置文件,&nbsp;在程序中使用&nbsp;JAXPConfigurator.configure(&quot;proxool.xml&quot;,&nbsp;false);&nbsp;配置文件设置如下&nbsp;</font>
<br /><br />            <pre><code>
<br /><br /><font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.xml</strong></font>
<br /><br />&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;ISO-8859-1&quot;?&gt;
<br /><br />&lt;!--&nbsp;the&nbsp;proxool&nbsp;configuration&nbsp;can&nbsp;be&nbsp;embedded&nbsp;within&nbsp;your&nbsp;own&nbsp;application's.
<br /><br />Anything&nbsp;outside&nbsp;the&nbsp;&quot;proxool&quot;&nbsp;tag&nbsp;is&nbsp;ignored.&nbsp;--&gt;
<br /><br />&lt;something-else-entirely&gt;
<br /><br />&nbsp;&nbsp;&lt;proxool&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;alias&gt;xml-test&lt;/alias&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-url&gt;jdbc:mysql://localhost:3306/test&lt;/driver-url&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-class&gt;org.gjt.mm.mysql.Driver&lt;/driver-class&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;driver-properties&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;user&quot;&nbsp;value=&quot;root&quot;/&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;property&nbsp;name=&quot;password&quot;&nbsp;value=&quot;password&quot;/&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;/driver-properties&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;maximum-connection-count&gt;10&lt;/maximum-connection-count&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&lt;house-keeping-test-sql&gt;select&nbsp;CURRENT_DATE&lt;/house-keeping-test-sql&gt;
<br /><br />&nbsp;&nbsp;&lt;/proxool&gt;
<br /><br />&lt;/something-else-entirely&gt;
<br /><br /></font></code></pre>
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <font size="2">也可以采用&nbsp;properties,&nbsp;在程序&nbsp;PropertyConfigurator.configure(&quot;proxool.properties&quot;);&nbsp;文件设置&nbsp;</font>
<br /><br />            <pre><code>
<br /><br /><font size="2"><font color="#0000ff"><strong>WEB-INF/proxool.properties</strong></font>
<br /><br />jdbc-0.proxool.alias=property-test
<br /><br />jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test
<br /><br />jdbc-0.proxool.driver-class=org.gjt.mm.mysql.Driver
<br /><br />jdbc-0.user=root
<br /><br />jdbc-0.password=password
<br /><br />jdbc-0.proxool.maximum-connection-count=10
<br /><br />jdbc-0.proxool.house-keeping-test-sql=select&nbsp;CURRENT_DATE
<br /><br /></font></code></pre>
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <br />
<br /><br />            <font size="2">如果在&nbsp;Web&nbsp;使用,&nbsp;在&nbsp;web.xml&nbsp;也可以设置&nbsp;ServletConfigurator&nbsp;Servlet&nbsp;来注册&nbsp;</font>
<br /><br />            <pre><code>
<br /><br /></code></pre><font size="2">&lt;?xml&nbsp;version=&quot;1.0&quot;&nbsp;encoding=&quot;UTF-8&quot;?&gt;
<br /><br />&lt;!DOCTYPE&nbsp;web-app&nbsp;
<br /><br />PUBLIC&nbsp;&quot;-//Sun&nbsp;Microsystems,&nbsp;Inc.//DTD&nbsp;Web&nbsp;Application&nbsp;2.3//EN&quot;
<br /><br />&quot;/WEB-INF/dtds/web-app_2_3.dtd&quot;&gt;
<br /><br />&lt;web-app&gt;
<br /><br />&nbsp;&lt;display-name&gt;proxool&lt;/display-name&gt;</font></p></p>

<p><p>&nbsp;&lt;servlet&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;ServletConfigurator&lt;/servlet-name&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
<br /><br />&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.configuration.ServletConfigurator
<br /><br />&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
<br /><br />&nbsp;&nbsp;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;init-param&gt;
<br /><br />&nbsp;&nbsp;&lt;param-name&gt;xmlFile&lt;/param-name&gt;
<br /><br />&nbsp;&nbsp;&lt;param-value&gt;WEB-INF/proxool.xml&lt;/param-value&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;/init-param&gt;</p></p>

<p><p>&nbsp;&nbsp;&nbsp;&nbsp;&lt;load-on-startup&gt;1&lt;/load-on-startup&gt;</p></p>

<p><p>&nbsp;&lt;/servlet&gt;&nbsp;</p></p>

<p><p>&nbsp;&lt;servlet&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;servlet-class&gt;
<br /><br />&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.admin.servlet.AdminServlet
<br /><br />&nbsp;&nbsp;&nbsp;&lt;/servlet-class&gt;
<br /><br />&nbsp;&lt;/servlet&gt;</p></p>

<p><p>&nbsp;&lt;servlet-mapping&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;servlet-name&gt;Admin&lt;/servlet-name&gt;
<br /><br />&nbsp;&nbsp;&nbsp;&lt;url-pattern&gt;/admin&lt;/url-pattern&gt;
<br /><br />&nbsp;&lt;/servlet-mapping&gt;&nbsp;</p></p>

<p><p>&lt;/web-app&gt;</p></p>

<p><p>
<br /><br />            <font size="2">在程序中,&nbsp;只需要利用到别名就可以呼叫&nbsp;connection&nbsp;pool&nbsp;里面的&nbsp;connection&nbsp;来使用了&nbsp;</font>
<br /><br />            <pre><code>
<br /><br /></code></pre><font size="2">&lt;%@page&nbsp;import=&quot;java.sql.*;&quot;%&gt;
<br /><br />&lt;%
<br /><br />Connection&nbsp;connection&nbsp;=&nbsp;null;
<br /><br />try&nbsp;{
<br /><br />&nbsp;Class.forName(&quot;org.logicalcobwebs.proxool.ProxoolDriver&quot;);
<br /><br />&nbsp;connection&nbsp;=&nbsp;DriverManager.getConnection(&quot;proxool.xml-test&quot;);</font></p></p>

<p><p>}&nbsp;catch&nbsp;(Exception&nbsp;e)&nbsp;{
<br /><br />&nbsp;out.println(e);
<br /><br />}</p></p>

<p><p>out.println(&quot;ok&quot;);
<br /><br />%&gt;
<br /><br />
<br /><br />            </p></p></td>
<br /><br />        </tr>
<br /><br />    
<br /><br /></table>
<br />    <br />
<br />    
<br />    
<br />        <br /><br />
<br />    <span style="color:red;"><a href="
&lt;br /&gt;    
&lt;br /&gt;   
&lt;br /&gt;    http://yidwo.javaeye.com/blog/73056
&lt;br /&gt;    
&lt;br /&gt;" style="color:red;">《 连接池proxool配置(转) 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span>

<p>    <br /><br />
<br />    
<br />    
<br />     
<br />    <br /><br /><br /><br /></p>

<p>         
<br />                           
<br />            <span style="color:#E28822;">JavaEye推荐</span><br />
<br />            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
<br />            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
<br />            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
<br />            
<br />            
<br />            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
<br />                           
<br />        
<br />            
<br />            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
<br />                           
<br />        
<br />    
<br />    <br /><br /></p>
    <br />
    
    
        <br /><br />
    <span style="color:red;"><a href="
    
   
    http://yidwo.javaeye.com/blog/116303
    
" style="color:red;">《 连接池proxool配置(转) 》 的评论也很精彩，欢迎您也添加评论。查看详细 &gt;&gt;</a></span>


    <br /><br />
    
    
     
    <br /><br /><br /><br />

         
                           
            <span style="color:#E28822;">JavaEye推荐</span><br />
            <a href="http://www.javaeye.com/topic/113150" target="_blank">上海乐福狗信息技术有限公司:诚聘技术经理和开发工程师</a><br />
            <a href="http://ad.cn.doubleclick.net/clk;119879986;18083637;h?http://www.ibm.com/developerworks/cn/downloads/?S_TACT=105AGX52&amp;S_CMP=dta-jeye" target="_blank">免费下载IBM社区版软件--它基于开放的标准，支持广泛的开发类型，让您的开发高效自主！</a><br />
            <a href="http://www.soa2007.org/soainaction/?referer=javaeye&amp;utm_campaign=soainaction&amp;utm_source=javaeye&amp;utm_medium=hplks" target="_blank">京沪穗蓉四地免费注册，SOA技术高手汇聚交锋.</a><br />
            
            
            <a href="http://www.JavaEye.com/topic/101933">上海：优秀公司德比：高薪诚聘 资深Java工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92740"> 广州：优易公司：诚聘Java工程师，开发经理  </a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/92797">上海：尤恩斯国际集团：诚聘开发工程师</a><br />
                           
        
            
            <a href="http://www.JavaEye.com/topic/69984">北京：优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA</a><br />
                           
        
    
    <br /><br />
          <br/>
          <span style="color:red;">
            <a href="http://yidwo.javaeye.com/blog/116736#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 21 Apr 2007 00:05:00 +0800</pubDate>
        <link>http://yidwo.javaeye.com/blog/116736</link>
        <guid>http://yidwo.javaeye.com/blog/116736</guid>
      </item>
      <item>
        <title>Spring下配置proxool</title>
        <author>yidwo</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yidwo.javaeye.com">yidwo</a>&nbsp;
          链接：<a href="http://yidwo.javaeye.com/blog/116958" style="color:red;">http://yidwo.javaeye.com/blog/116958</a>&nbsp;
          发表时间: 2007年04月20日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <br />



网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
发表时间: 2007-04-21 00:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> 

 

   
<br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br />


原文链接：<a href="
    
   
    http://yidwo.javaeye.com/blog/116735
    
" style="color:red;">
    
   
    http://yidwo.javaeye.com/blog/116735
    
</a><br /><br />
 
    
    <table width="100%"><tr><td><p><br /></p>

<p>网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
<br />发表时间: 2007-04-21 08:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> </p>

<p> </p>

<p>   
<br /><br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br /></p>

<p>原文链接：<a href="
&lt;br /&gt;    
&lt;br /&gt;   
&lt;br /&gt;    http://yidwo.javaeye.com/blog/116302
&lt;br /&gt;    
&lt;br /&gt;" style="color:red;">
<br />    
<br />   
<br />    http://yidwo.javaeye.com/blog/116302
<br />    
<br /></a><br /><br />
<br /> 
<br />    
<br />    <table width="100%"><tr><td><p><br /></p></td></tr></table></p>

<p><p>网站：<a href="http://www.JavaEye.com">JavaEye</a>  作者：<a href="http://yidwo.JavaEye.com/">yidwo</a> 
<br /><br />发表时间: 2007-04-21 16:36  此文章来自于 <a href="http://www.JavaEye.com">http://www.JavaEye.com</a> </p></p>

<p><p> </p></p>

<p><p>   
<br /><br /><br />声明：本文系JavaEye网站原创文章，未经JavaEye网站或者作者本人书面许可，任何其他网站严禁擅自发表本文，否则必将追究法律责任！<br /></p></p>

<p><p>原文链接：<a href="
&lt;br /&gt;&lt;br /&gt;    
&lt;br /&gt;&lt;br /&gt;   
&lt;br /&gt;&lt;br /&gt;    http://yidwo.javaeye.com/blog/73061
&lt;br /&gt;&lt;br /&gt;    
&lt;br /&gt;&lt;br /&gt;" style="color:red;">
<br /><br />    
<br /><br />   
<br /><br />    http://yidwo.javaeye.com/blog/73061
<br /><br />    
<br /><br /></a><br /><br />
<br /><br /> 
<br /><br />    
<br /><br />    <table width="100%"><tr><td><p><br />
<br /><br /><br /><p>发现网上讲hibernate + proxool的比较多。说spring的比较少。而且说得也不是太详细。<br />
<br /><br /><br />在spring下配置proxool 网上搜了一下，感觉有好几种配置,我就说一下我用的这种,配置成功了的这种,3个步骤:</p>
<br /><br /><br /><p>1:在web.xml中配置两个servlet,一个是加载proxool配置文件的，一个是proxool的资源监控程序.<br />
<br /><br /><br /><span style="COLOR: red">&lt;servlet&gt;<br />
<br /><br /><br />&nbsp;&nbsp;&lt;servlet-name&gt;proxoolServletConfigurator&lt;/servlet-name&gt;<br />
<br /><br /><br />&nbsp;&nbsp;&lt;servlet-class&gt;org.logicalcobwebs.proxool.configuration.ServletConfigurator&lt;/servlet-class&gt;<br />
<br /><br /><br />&nbsp;&n