﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-天行健-文章分类-JAVA文章</title><link>http://www.blogjava.net/bnlovebn/category/12156.html</link><description>《周易》曰：&lt;br&gt;
天行健，君子以自强不息(乾卦)&lt;br&gt;
地势坤，君子以厚德载物(坤卦)
</description><language>zh-cn</language><lastBuildDate>Tue, 14 Jun 2011 06:18:08 GMT</lastBuildDate><pubDate>Tue, 14 Jun 2011 06:18:08 GMT</pubDate><ttl>60</ttl><item><title>项目中成功的运用proxool连接池</title><link>http://www.blogjava.net/bnlovebn/articles/352126.html</link><dc:creator>重归本垒（Bing）</dc:creator><author>重归本垒（Bing）</author><pubDate>Sun, 12 Jun 2011 05:56:00 GMT</pubDate><guid>http://www.blogjava.net/bnlovebn/articles/352126.html</guid><wfw:comment>http://www.blogjava.net/bnlovebn/comments/352126.html</wfw:comment><comments>http://www.blogjava.net/bnlovebn/articles/352126.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/bnlovebn/comments/commentRss/352126.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bnlovebn/services/trackbacks/352126.html</trackback:ping><description><![CDATA[最近做的一个项目中运用到了连接池技术，可能我们大家比较熟悉的开源连接池有dbcp,c3p0,proxool。对这三种连接池来说，从性能和出错率来说，proxool稍微比前两种好些。今天我主要简单的讲述一下，我在项目中成功的配置和源码。<br /><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 第一步：首先去</strong><a href="http://proxool.sourceforge.net/"><strong><font color="#333333">http://proxool.sourceforge.net/</font></strong></a><strong><a class="channel_keylink" href="http://download.chinaitlab.com/" target="_blank">下载</a>一个proxool.jar文件了，我用的是proxool-0.8.3.jar,现在最新版本是proxool-0.9.3.jar.除了他们的查看监控台的页面有变化，其他的变化不是太大。</strong><br /><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 第二步：就是写一个单独的proxool.xml文件放到WEB-INF文件夹下。我用的数据库是MySQL.</strong><br />&nbsp;&nbsp;&nbsp; peoxool.xml的配置文件如下：<br />&nbsp;&nbsp;
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;?</span><span style="color: #ff00ff">xml&nbsp;version="1.0"&nbsp;encoding="UTF-8"</span><span style="color: #0000ff">?&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">proxool-config</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">proxool</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">alias</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">db</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">alias</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">driver-url</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">jdbc:mysql://&#215;&#215;&#215;.&#215;&#215;&#215;.&#215;&#215;.&#215;&#215;&#215;:3303/mydb</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">driver-url</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">driver-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">com.mysql.jdbc.Driver</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">driver-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">driver-properties</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="user"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="root"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="password"</span><span style="color: #ff0000">&nbsp;value</span><span style="color: #0000ff">="*******"</span><span style="color: #ff0000">&nbsp;</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">10</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">driver-properties</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">11</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">house-keeping-sleep-time</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">90000</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">house-keeping-sleep-time</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">12</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">maximum-new-connections</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">20</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">maximum-new-connections</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">13</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">prototype-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">5</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">prototype-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">14</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">maximum-connection-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">1000</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">maximum-connection-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">15</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">minimum-connection-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">10</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">minimum-connection-count</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">16</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">proxool</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">17</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">proxool-config</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">18</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>&nbsp;&nbsp;&nbsp;&nbsp; 对以上配置简单的解释：<br />&nbsp;&nbsp;&nbsp; 1.&lt;alias&gt;&nbsp; ：为该连接池起一个别名，在其他文件中引用。引用是：(proxool.db);<br />&nbsp;&nbsp;&nbsp; 2. &lt;driver-class&gt;com.mysql.jdbc.Driver&lt;/driver-class&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;driver-properties&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="user" value="root" /&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="password" value="root" /&gt;<br />&nbsp;&nbsp;&nbsp; &lt;/driver-properties&gt;<br />&nbsp;&nbsp;&nbsp; 这些配置大家应该比较熟悉吧。配置数据库的驱动和连接。<br />&nbsp;&nbsp;&nbsp; 3.&lt;house-keeping-sleep-time&gt;&nbsp; ：proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁。<br />&nbsp;&nbsp;&nbsp; 4.&lt;maximum-new-connections&gt;： 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受。<br />&nbsp;&nbsp;&nbsp; 5.&lt;prototype-count&gt;：最少保持的空闲连接数。<br />&nbsp;&nbsp;&nbsp; 6.&lt;maximum-connection-count&gt;: 允许最大连接数,超过了这个连接，再有请求时，就排在队列中等候，最大的等待请求数由maximum-new-connections决定<br />&nbsp;&nbsp;&nbsp; 7.&lt;minimum-connection-count&gt;:最小连接数 
<p><strong>&nbsp;&nbsp;&nbsp; 第三步：加载并初始化proxool.xml文件。因为它是连接数据库的，其他很多模块都用到数据，所以你必须首先加载它，在web.xml中进行如下配置：如果你以前加载applicationContext.xml用的是：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">listener</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">listener-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;org.springframework.web.context.ContextLoaderListener<br /></span><span style="color: #008080">4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">listener-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">listener</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p></strong><br />&nbsp;&nbsp;&nbsp; 这时你必须换成如下配置：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">contextConfigLocation</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;org.springframework.web.context.ContextLoaderServlet<br /></span><span style="color: #008080">5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p><br />&nbsp;&nbsp;&nbsp; 要不然你就会遇见这样的错误：<br />&nbsp;&nbsp;&nbsp; Problem<br />&nbsp;&nbsp;&nbsp; org.logicalcobwebs.proxool.ProxoolException: Attempt to refer to a unregistered pool by its<br />&nbsp;&nbsp;&nbsp; alias 'db'<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 如果用过proxool与spring整合时，不少就遇到过这样的问题，其实这个问题很明显就是你的proxool.xml没有被先加载初始化，我们应该让它先加载，应该这样配置：<br />&nbsp;&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">ServletConfigurator</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.configuration.ServletConfigurator<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">init-param</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">param-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">xmlFile</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">param-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">param-value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">WEB-INF/proxool.xml</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">param-value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">init-param</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">10</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">1</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">load-on-startup</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">11</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">12</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p>&nbsp;&nbsp;&nbsp; 把&lt;load-on-startup&gt;的值设为1，值越小级别就越高，就先被加载初始化。一定要先于applicationContext.xml的加载。<br />&nbsp;这一步很关键，一定要注意，不然你就会遇到上面的问题。网上有很大人都遇见过这样的问题，只要你用了你才会体会到那样的错误。如果是第一次，你会很迷茫的，我第一次配置就出现了上面的问题，让我调试了好处时间才找出问题所在。希望你们不要再犯这样的错误。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 如果你想监控数据库连接池的连接情况，可以简单的配置一下就可以了，因为大部分功能源码中都已写好，我们用是只需简单的配置。<br />&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Admin</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;org.logicalcobwebs.proxool.admin.servlet.AdminServlet<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-mapping</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Admin</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">url-pattern</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">/admin</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">url-pattern</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">10</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-mapping</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">11</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p>&nbsp;&nbsp;&nbsp; 如果访问的话，可能有点问题，会报ISO-8859-1的问题。我们一般用的是utf-8,gbk2312.最好的解决办法就是重写源码中的AdminServlet<br />&nbsp;&nbsp;&nbsp; .java。我就是重写了这个源码。才解决了这个乱码问题。可能还有其他办法：只需简单的该一个方法就可以了。<br />&nbsp;&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img id="Codehighlighter1_107_634_Open_Image" onclick="this.style.display='none'; Codehighlighter1_107_634_Open_Text.style.display='none'; Codehighlighter1_107_634_Closed_Image.style.display='inline'; Codehighlighter1_107_634_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"><img id="Codehighlighter1_107_634_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_107_634_Closed_Text.style.display='none'; Codehighlighter1_107_634_Open_Image.style.display='inline'; Codehighlighter1_107_634_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #0000ff">private</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;printDefinitionEntry(ServletOutputStream&nbsp;out,&nbsp;String&nbsp;name,&nbsp;String&nbsp;value)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;IOException&nbsp;</span><span id="Codehighlighter1_107_634_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_107_634_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.println(</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&lt;tr&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&nbsp;width=\</span><span style="color: #000000">"</span><span style="color: #000000">200</span><span style="color: #000000">\</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;valign=\</span><span style="color: #000000">"</span><span style="color: #000000">top\</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;style=\</span><span style="color: #000000">""</span><span style="color: #000000">&nbsp;+&nbsp;STYLE_CAPTION&nbsp;+&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">\</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(name);<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.println(</span><span style="color: #000000">"</span><span style="color: #000000">&lt;/td&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img id="Codehighlighter1_324_475_Open_Image" onclick="this.style.display='none'; Codehighlighter1_324_475_Open_Text.style.display='none'; Codehighlighter1_324_475_Closed_Image.style.display='inline'; Codehighlighter1_324_475_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_324_475_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_324_475_Closed_Text.style.display='none'; Codehighlighter1_324_475_Open_Image.style.display='inline'; Codehighlighter1_324_475_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(value&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)&nbsp;</span><span id="Codehighlighter1_324_475_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_324_475_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&nbsp;style=\</span><span style="color: #000000">""</span><span style="color: #000000">&nbsp;+&nbsp;STYLE_DATA&nbsp;+&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">\</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;String(value.getBytes(</span><span style="color: #000000">"</span><span style="color: #000000">ISO-8859-1</span><span style="color: #000000">"</span><span style="color: #000000">),</span><span style="color: #000000">"</span><span style="color: #000000">utf-8</span><span style="color: #000000">"</span><span style="color: #000000">));<br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img id="Codehighlighter1_482_566_Open_Image" onclick="this.style.display='none'; Codehighlighter1_482_566_Open_Text.style.display='none'; Codehighlighter1_482_566_Closed_Image.style.display='inline'; Codehighlighter1_482_566_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"><img id="Codehighlighter1_482_566_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_482_566_Closed_Text.style.display='none'; Codehighlighter1_482_566_Open_Image.style.display='inline'; Codehighlighter1_482_566_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_482_566_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_482_566_Open_Text"><span style="color: #000000">{<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&nbsp;style=\</span><span style="color: #000000">""</span><span style="color: #000000">&nbsp;+&nbsp;STYLE_NO_DATA&nbsp;+&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">\</span><span style="color: #000000">"</span><span style="color: #000000">&gt;off</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">11</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">12</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.print(</span><span style="color: #000000">"</span><span style="color: #000000">&lt;/td&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">13</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.println(</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&lt;/tr&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">14</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /></span><span style="color: #008080">15</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p>&nbsp;&nbsp;&nbsp; 上面红色的部分就是我改的部分,然后把web.xml中的</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">2</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;com.jack.servlet.AdminServlet<br /></span><span style="color: #008080">3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">servlet-class</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p><br />&nbsp;&nbsp;&nbsp; 中&lt;servlet-class&gt;换成你改写的那个类。<br /><strong>&nbsp;&nbsp;&nbsp; 最后一步：整合spring和proxool。在applicationContext.xml文件中把原来数据源的配置成这样：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">bean&nbsp;</span><span style="color: #ff0000">id</span><span style="color: #0000ff">="dataSource"</span><span style="color: #ff0000"><br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #ff0000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;class</span><span style="color: #0000ff">="org.springframework.jdbc.datasource.DriverManagerDataSource"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="driverClassName"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">org.logicalcobwebs.proxool.ProxoolDriver</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">property&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">="url"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">proxool.db</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">value</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">property</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">bean</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /></span><span style="color: #008080">10</span><span style="color: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span></div>
<p></strong><br />&nbsp;&nbsp;&nbsp; 这个 &lt;property name="url"&gt;要配置成proxool.xml中的别名。其他地方不用该了。也可以与hibernate整合。与spring整合比较简单。我采用的就是上面的配置方式。<br />&nbsp;&nbsp;&nbsp; 这样就配置完了，很清晰，很简单。如果查看监控情况的话：<br />&nbsp;&nbsp;&nbsp; <a href="http://www.&#215;&#215;&#215;&#215;.com/admin"><font color="#333333">http://www.&#215;&#215;&#215;&#215;.com/admin</font></a>&nbsp; 就可以查看了，如果你是本地<a class="channel_keylink" href="http://softtest.chinaitlab.com/" target="_blank">测试</a>：改一下路径就可以了。<br />&nbsp;&nbsp;&nbsp; 上面所讲述的是一个成功的配置，并在项目中成功的运用了。希望对连接池有爱好的朋友有所帮助。<br /></p><img src ="http://www.blogjava.net/bnlovebn/aggbug/352126.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bnlovebn/" target="_blank">重归本垒（Bing）</a> 2011-06-12 13:56 <a href="http://www.blogjava.net/bnlovebn/articles/352126.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在继承中的成员变量好像不会向下转型的</title><link>http://www.blogjava.net/bnlovebn/articles/52647.html</link><dc:creator>重归本垒（Bing）</dc:creator><author>重归本垒（Bing）</author><pubDate>Wed, 14 Jun 2006 01:42:00 GMT</pubDate><guid>http://www.blogjava.net/bnlovebn/articles/52647.html</guid><wfw:comment>http://www.blogjava.net/bnlovebn/comments/52647.html</wfw:comment><comments>http://www.blogjava.net/bnlovebn/articles/52647.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/bnlovebn/comments/commentRss/52647.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bnlovebn/services/trackbacks/52647.html</trackback:ping><description><![CDATA[
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<span style="COLOR: #008080"> 1</span>
				<img id="Codehighlighter1_18_93_Open_Image" onclick="this.style.display='none'; Codehighlighter1_18_93_Open_Text.style.display='none'; Codehighlighter1_18_93_Closed_Image.style.display='inline'; Codehighlighter1_18_93_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
				<img id="Codehighlighter1_18_93_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_18_93_Closed_Text.style.display='none'; Codehighlighter1_18_93_Open_Image.style.display='inline'; Codehighlighter1_18_93_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />
				<span style="COLOR: #000000"></span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Component1</span>
				<span id="Codehighlighter1_18_93_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_18_93_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080"> 2</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_47_89_Open_Image" onclick="this.style.display='none'; Codehighlighter1_47_89_Open_Text.style.display='none'; Codehighlighter1_47_89_Closed_Image.style.display='inline'; Codehighlighter1_47_89_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_47_89_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_47_89_Closed_Text.style.display='none'; Codehighlighter1_47_89_Open_Image.style.display='inline'; Codehighlighter1_47_89_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> Component1(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i)</span>
						<span id="Codehighlighter1_47_89_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_47_89_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080"> 3</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Component1</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /></span>
								<span style="COLOR: #008080"> 4</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080"> 5</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080"> 6</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span>
				<span style="COLOR: #008080"> 7</span>
				<span style="COLOR: #000000">
						<img id="Codehighlighter1_116_191_Open_Image" onclick="this.style.display='none'; Codehighlighter1_116_191_Open_Text.style.display='none'; Codehighlighter1_116_191_Closed_Image.style.display='inline'; Codehighlighter1_116_191_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_116_191_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_116_191_Closed_Text.style.display='none'; Codehighlighter1_116_191_Open_Image.style.display='inline'; Codehighlighter1_116_191_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Component2</span>
				<span id="Codehighlighter1_116_191_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_116_191_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080"> 8</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_145_187_Open_Image" onclick="this.style.display='none'; Codehighlighter1_145_187_Open_Text.style.display='none'; Codehighlighter1_145_187_Closed_Image.style.display='inline'; Codehighlighter1_145_187_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_145_187_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_145_187_Closed_Text.style.display='none'; Codehighlighter1_145_187_Open_Image.style.display='inline'; Codehighlighter1_145_187_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> Component2(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i)</span>
						<span id="Codehighlighter1_145_187_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_145_187_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080"> 9</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Compunent2</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /></span>
								<span style="COLOR: #008080">10</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">11</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080">12</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span>
				<span style="COLOR: #008080">13</span>
				<span style="COLOR: #000000">
						<img id="Codehighlighter1_214_289_Open_Image" onclick="this.style.display='none'; Codehighlighter1_214_289_Open_Text.style.display='none'; Codehighlighter1_214_289_Closed_Image.style.display='inline'; Codehighlighter1_214_289_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_214_289_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_214_289_Closed_Text.style.display='none'; Codehighlighter1_214_289_Open_Image.style.display='inline'; Codehighlighter1_214_289_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Component3</span>
				<span id="Codehighlighter1_214_289_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_214_289_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080">14</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_243_285_Open_Image" onclick="this.style.display='none'; Codehighlighter1_243_285_Open_Text.style.display='none'; Codehighlighter1_243_285_Closed_Image.style.display='inline'; Codehighlighter1_243_285_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_243_285_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_243_285_Closed_Text.style.display='none'; Codehighlighter1_243_285_Open_Image.style.display='inline'; Codehighlighter1_243_285_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> Component3(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i)</span>
						<span id="Codehighlighter1_243_285_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_243_285_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080">15</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Compunent3</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /></span>
								<span style="COLOR: #008080">16</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">17</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080">18</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span>
				<span style="COLOR: #008080">19</span>
				<span style="COLOR: #000000">
						<img id="Codehighlighter1_306_646_Open_Image" onclick="this.style.display='none'; Codehighlighter1_306_646_Open_Text.style.display='none'; Codehighlighter1_306_646_Closed_Image.style.display='inline'; Codehighlighter1_306_646_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_306_646_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_306_646_Closed_Text.style.display='none'; Codehighlighter1_306_646_Open_Image.style.display='inline'; Codehighlighter1_306_646_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Root</span>
				<span id="Codehighlighter1_306_646_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_306_646_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080">20</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i;<br /></span>
						<span style="COLOR: #008080">21</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component1 com1</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component1(i);<br /></span>
						<span style="COLOR: #008080">22</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component2 com2</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component2(i);<br /></span>
						<span style="COLOR: #008080">23</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component3 com3</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component3(i);<br /></span>
						<span style="COLOR: #008080">24</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_461_545_Open_Image" onclick="this.style.display='none'; Codehighlighter1_461_545_Open_Text.style.display='none'; Codehighlighter1_461_545_Closed_Image.style.display='inline'; Codehighlighter1_461_545_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_461_545_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_461_545_Closed_Text.style.display='none'; Codehighlighter1_461_545_Open_Image.style.display='inline'; Codehighlighter1_461_545_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> Root(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i)</span>
						<span id="Codehighlighter1_461_545_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_461_545_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080">25</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
								<span style="COLOR: #0000ff">this</span>
								<span style="COLOR: #000000">.i</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">i;<br /></span>
								<span style="COLOR: #008080">26</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(com1); </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(2)</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">27</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Root</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /></span>
								<span style="COLOR: #008080">28</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">29</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_574_590_Open_Image" onclick="this.style.display='none'; Codehighlighter1_574_590_Open_Text.style.display='none'; Codehighlighter1_574_590_Closed_Image.style.display='inline'; Codehighlighter1_574_590_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_574_590_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_574_590_Closed_Text.style.display='none'; Codehighlighter1_574_590_Open_Image.style.display='inline'; Codehighlighter1_574_590_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> String toString()</span>
						<span id="Codehighlighter1_574_590_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_574_590_Open_Text">
								<span style="COLOR: #000000">{ </span>
								<span style="COLOR: #0000ff">return</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Root</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">;}</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">30</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_614_642_Open_Image" onclick="this.style.display='none'; Codehighlighter1_614_642_Open_Text.style.display='none'; Codehighlighter1_614_642_Closed_Image.style.display='inline'; Codehighlighter1_614_642_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_614_642_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_614_642_Closed_Text.style.display='none'; Codehighlighter1_614_642_Open_Image.style.display='inline'; Codehighlighter1_614_642_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">void</span>
						<span style="COLOR: #000000"> print()</span>
						<span id="Codehighlighter1_614_642_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_614_642_Open_Text">
								<span style="COLOR: #000000">{System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Root</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);}</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">31</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080">32</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /></span>
				<span style="COLOR: #008080">33</span>
				<span style="COLOR: #000000">
						<img id="Codehighlighter1_683_1308_Open_Image" onclick="this.style.display='none'; Codehighlighter1_683_1308_Open_Text.style.display='none'; Codehighlighter1_683_1308_Closed_Image.style.display='inline'; Codehighlighter1_683_1308_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_683_1308_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_683_1308_Closed_Text.style.display='none'; Codehighlighter1_683_1308_Open_Image.style.display='inline'; Codehighlighter1_683_1308_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span>
				<span style="COLOR: #0000ff">public</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">class</span>
				<span style="COLOR: #000000"> Stem </span>
				<span style="COLOR: #0000ff">extends</span>
				<span style="COLOR: #000000"> Root</span>
				<span id="Codehighlighter1_683_1308_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_683_1308_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080">34</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">private</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i;<br /></span>
						<span style="COLOR: #008080">35</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component1 com1</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component1(i);<br /></span>
						<span style="COLOR: #008080">36</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component2 com2</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component2(i);<br /></span>
						<span style="COLOR: #008080">37</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> Component3 com3</span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #0000ff">new</span>
						<span style="COLOR: #000000"> Component3(i);<br /></span>
						<span style="COLOR: #008080">38</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_838_935_Open_Image" onclick="this.style.display='none'; Codehighlighter1_838_935_Open_Text.style.display='none'; Codehighlighter1_838_935_Closed_Image.style.display='inline'; Codehighlighter1_838_935_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_838_935_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_838_935_Closed_Text.style.display='none'; Codehighlighter1_838_935_Open_Image.style.display='inline'; Codehighlighter1_838_935_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> Stem(</span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> i)</span>
						<span id="Codehighlighter1_838_935_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_838_935_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080">39</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
								<span style="COLOR: #0000ff">super</span>
								<span style="COLOR: #000000">(i);<br /></span>
								<span style="COLOR: #008080">40</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
								<span style="COLOR: #0000ff">this</span>
								<span style="COLOR: #000000">.i</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #000000">i;<br /></span>
								<span style="COLOR: #008080">41</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(com1); </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(1)</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">42</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Stem</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);<br /></span>
								<span style="COLOR: #008080">43</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">44</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_964_980_Open_Image" onclick="this.style.display='none'; Codehighlighter1_964_980_Open_Text.style.display='none'; Codehighlighter1_964_980_Closed_Image.style.display='inline'; Codehighlighter1_964_980_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_964_980_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_964_980_Closed_Text.style.display='none'; Codehighlighter1_964_980_Open_Image.style.display='inline'; Codehighlighter1_964_980_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> String toString()</span>
						<span id="Codehighlighter1_964_980_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_964_980_Open_Text">
								<span style="COLOR: #000000">{ </span>
								<span style="COLOR: #0000ff">return</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Stem</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">;}</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">45</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_1004_1032_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1004_1032_Open_Text.style.display='none'; Codehighlighter1_1004_1032_Closed_Image.style.display='inline'; Codehighlighter1_1004_1032_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_1004_1032_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1004_1032_Closed_Text.style.display='none'; Codehighlighter1_1004_1032_Open_Image.style.display='inline'; Codehighlighter1_1004_1032_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">void</span>
						<span style="COLOR: #000000"> print()</span>
						<span id="Codehighlighter1_1004_1032_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_1004_1032_Open_Text">
								<span style="COLOR: #000000">{System.out.println(</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">Stem</span>
								<span style="COLOR: #000000">"</span>
								<span style="COLOR: #000000">);}</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">46</span>
						<span style="COLOR: #000000">
								<img id="Codehighlighter1_1075_1304_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1075_1304_Open_Text.style.display='none'; Codehighlighter1_1075_1304_Closed_Image.style.display='inline'; Codehighlighter1_1075_1304_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" />
								<img id="Codehighlighter1_1075_1304_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1075_1304_Closed_Text.style.display='none'; Codehighlighter1_1075_1304_Open_Image.style.display='inline'; Codehighlighter1_1075_1304_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">public</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">static</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">void</span>
						<span style="COLOR: #000000"> main(String[] args)</span>
						<span id="Codehighlighter1_1075_1304_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
								<img src="http://www.blogjava.net/images/dot.gif" />
						</span>
						<span id="Codehighlighter1_1075_1304_Open_Text">
								<span style="COLOR: #000000">{<br /></span>
								<span style="COLOR: #008080">47</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">Stem st=new Stem(10); </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(1)</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">48</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> Root st</span>
								<span style="COLOR: #000000">=</span>
								<span style="COLOR: #0000ff">new</span>
								<span style="COLOR: #000000"> Stem(</span>
								<span style="COLOR: #000000">10</span>
								<span style="COLOR: #000000">); </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(2)</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">49</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> System.out.println(st.com1);</span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(1) 这里的com1是Stem中的Component1对象</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">50</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> </span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">(2) 这里的com1是Root中的Component1对象</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">51</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> <br /></span>
								<span style="COLOR: #008080">52</span>
								<span style="COLOR: #000000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> System.out.println(st);</span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">向下转型了</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">53</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> st.print();</span>
								<span style="COLOR: #008000">//</span>
								<span style="COLOR: #008000">向下转型了</span>
								<span style="COLOR: #008000">
										<br />
								</span>
								<span style="COLOR: #008080">54</span>
								<span style="COLOR: #008000">
										<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />
								</span>
								<span style="COLOR: #000000"> }</span>
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">55</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080">56</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>这里可以看出，就st对象的类型来取得相应类的成员变量！<br />好像只有在用到成员方法才会自动向下转型，而成员变量却不会！<img src ="http://www.blogjava.net/bnlovebn/aggbug/52647.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bnlovebn/" target="_blank">重归本垒（Bing）</a> 2006-06-14 09:42 <a href="http://www.blogjava.net/bnlovebn/articles/52647.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个JProgressBar的简单例子</title><link>http://www.blogjava.net/bnlovebn/articles/40276.html</link><dc:creator>重归本垒（Bing）</dc:creator><author>重归本垒（Bing）</author><pubDate>Mon, 10 Apr 2006 09:25:00 GMT</pubDate><guid>http://www.blogjava.net/bnlovebn/articles/40276.html</guid><wfw:comment>http://www.blogjava.net/bnlovebn/comments/40276.html</wfw:comment><comments>http://www.blogjava.net/bnlovebn/articles/40276.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/bnlovebn/comments/commentRss/40276.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/bnlovebn/services/trackbacks/40276.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1																import								 javax.swing.								*								;								 2																																		import								 java.awt.								*								;								 3										...&nbsp;&nbsp;<a href='http://www.blogjava.net/bnlovebn/articles/40276.html'>阅读全文</a><img src ="http://www.blogjava.net/bnlovebn/aggbug/40276.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/bnlovebn/" target="_blank">重归本垒（Bing）</a> 2006-04-10 17:25 <a href="http://www.blogjava.net/bnlovebn/articles/40276.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>