??xml version="1.0" encoding="utf-8" standalone="yes"?>99久久婷婷国产精品综合,日韩欧美综合在线视频,亚洲热apphttp://www.aygfsteel.com/tedeyang/archive/2009/03/27/262406.html山巅山巅Fri, 27 Mar 2009 05:41:00 GMThttp://www.aygfsteel.com/tedeyang/archive/2009/03/27/262406.htmlhttp://www.aygfsteel.com/tedeyang/comments/262406.htmlhttp://www.aygfsteel.com/tedeyang/archive/2009/03/27/262406.html#Feedback1http://www.aygfsteel.com/tedeyang/comments/commentRss/262406.htmlhttp://www.aygfsteel.com/tedeyang/services/trackbacks/262406.html英勇救h的温州林老板捐献见义勇ؓ(f)奖金的新?/a>Q甚臛_搜狐{媒体都有首链接,影响不可谓不大,我也对这位有仁有L(fng)林先生很敬佩Q但同时却又相当遗憾Q?br /> H以为林老板救h是对Q但捐金是无意间犯下的大错,而且是非常大错,׃|络的广泛传播,恶劣影响是救?00个h都抵消不?jin)?br /> Z么呢Q?br /> 新闻一入眼Q我׃由想起两个成语:(x)?font color="Red">子A(ch)赎奴Q子路援?/font>”,历史是和其相似啊Q?br />
以下是成语的出处Q?br /> (tng)  (tng) (tng)  (tng) 鲁国之法Q鲁Zؓ(f)臣于怾Q有能赎之者,取金于府。子贡赎鲁h于诸侯而让光。孔子曰Q?赐失之矣Q夫圣h之D事,可以U风易俗Q而教导可施于癑֧Q非独适已之行也。今鲁国富者寡而者多Q取光则无损于行,不取光Q则不复赎h矣?
  子\拯h者,其h拜之以牛Q子路受之。孔子喜曎ͼ(x)"鲁h必多拯h者矣?
----《子贡赎鲁h让金?/font>

 (tng)  (tng) (tng)  (tng)孔子之ؓ(f)圣,实有其越思h的深邃思想?br />  (tng)  (tng) (tng)  (tng)春秋鲁国有项非常先进的政{:(x)把流落在外ؓ(f)奴的鲁国回本国可以获得国家的奖金Q以此鼓p奴行为,q是常州的见义勇为奖是一个道理。孔子的一个弟? 子A(ch)是个大富豪,很有钱,他赎奴回d不接受政府的奖金Q嗯Q太有钱?jin),不在乎这点,行?f)高尚吧?拿到C来说是做好事不求回报,雷锋啊。可孔子却发? ?jin),要把子A(ch)逐出门墙?br />  (tng)  (tng) (tng)  (tng)他的理由在文中也说得很清楚,“政{的目的是引导百姓,而不是让你一个h爽,q世道是Ih多富人少Q拿奖金才是正当的行为,你开?jin)这个先例,提高(sh)(jin)道? 的门槛,以后没人敢再接受奖金了(jin)”,事实果然是和孔子的分析一_(d)鲁国的这仁政慢慢地没h响应Q逐渐荒废?jin)。林老板与子贡和其相|
 (tng)  (tng) (tng)  (tng)子\也是孔子的弟子,是大贤,他下水救人,别h送他一头牛Q一头牛的h(hun)值在农耕社?x)相当于C?0万h民币吧,他不矫情Q收下了(jin)Q孔子很高兴Q说Q“以后鲁国h救落水的一定会(x)来多?br />  (tng)  (tng) (tng)  (tng)孔子昄是懂得h性的Q利之所,义之所_(d)利与义的完美l合才是长远之道Q福利彩就是这cd范?br />
林老板不懂q个道理Q可我们的政府工作h员怎么也不懂这个道理?今hq(sh)如古人吗Q?/strong>
我徏议今后见义勇为奖的颁发要立一个原则,不鼓励受奖h捐赠或拒收奖金,工作人员应该向每个h解释政策的目的,制止盲目的善行,得行癑ֹ之政?/strong>

山巅 2009-03-27 13:41 发表评论
]]>
女h是不能和她讲道理?/title><link>http://www.aygfsteel.com/tedeyang/archive/2009/01/16/251574.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Fri, 16 Jan 2009 06:33:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2009/01/16/251574.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/251574.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2009/01/16/251574.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/251574.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/251574.html</trackback:ping><description><![CDATA[女h?x)对你莫名其妙发?q?掉泪,真的不能和她们讲道理.<br />不能?讲你越?本来是见事,你要和她真不认?她就?x)慢慢粉面含?渐渐泪流成河,最后哭着赶你?<br />说不通的,只有哄着.<br /><img src ="http://www.aygfsteel.com/tedeyang/aggbug/251574.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2009-01-16 14:33 <a href="http://www.aygfsteel.com/tedeyang/archive/2009/01/16/251574.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>inner class与重载问?/title><link>http://www.aygfsteel.com/tedeyang/archive/2008/08/21/223489.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Thu, 21 Aug 2008 06:22:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2008/08/21/223489.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/223489.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2008/08/21/223489.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/223489.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/223489.html</trackback:ping><description><![CDATA[ <p>今天貌似发现?jin)一个java的bug.<br />q是一个内部匿名类调用外部cL法的问题.<br />我在外部cM有个notifyAll(Object me)Ҏ(gu),在内部匿名类里却无法调用它,~译报错?br />试把notifyAll改名为tellAllQ——恩Q蛮好,可以调用?br />试写成 OuterClassName.this.notifyAll(me)——恩Q也可以调用?br />看v来如果在外部cM重蝲Object的方法,java无法区分?br /></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"> <img id="Codehighlighter1_0_10_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_10_Open_Text.style.display='none'; Codehighlighter1_0_10_Closed_Image.style.display='inline'; Codehighlighter1_0_10_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /> <img id="Codehighlighter1_0_10_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_0_10_Closed_Text.style.display='none'; Codehighlighter1_0_10_Open_Image.style.display='inline'; Codehighlighter1_0_10_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /> <span id="Codehighlighter1_0_10_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">/** (tng)*/</span> <span id="Codehighlighter1_0_10_Open_Text"> <span style="COLOR: #008000">/**</span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /> (tng)</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /> </span> <span style="COLOR: #0000ff">package</span> <span style="COLOR: #000000"> (tng)cn.roob.webdown.statistic;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)java.util.concurrent.Executors;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)java.util.concurrent.ScheduledExecutorService;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)java.util.concurrent.TimeUnit;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)org.apache.log4j.Logger;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)cn.roob.webdown.persist.StatisticDAO;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)cn.roob.webdown.persist.TaskCountRecord;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span> <span style="COLOR: #0000ff">import</span> <span style="COLOR: #000000"> (tng)cn.roob.webdown.util.Config;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_343_461_Open_Image" onclick="this.style.display='none'; Codehighlighter1_343_461_Open_Text.style.display='none'; Codehighlighter1_343_461_Closed_Image.style.display='inline'; Codehighlighter1_343_461_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_343_461_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_343_461_Closed_Text.style.display='none'; Codehighlighter1_343_461_Open_Image.style.display='inline'; Codehighlighter1_343_461_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span> <span id="Codehighlighter1_343_461_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">/** (tng)*/</span> <span id="Codehighlighter1_343_461_Open_Text"> <span style="COLOR: #008000">/**</span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)d状态定时统计线E?只记录发生了(jin)变动的统计结?<br><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)以单例模式运?通过观察者模式发送统计结?lt;br><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)典型的观察者有客户端通讯和统计曲U图<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)</span> <span style="COLOR: #808080">@author</span> <span style="COLOR: #008000"> (tng)tedeyang<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng)* (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /> (tng)</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_520_1969_Open_Image" onclick="this.style.display='none'; Codehighlighter1_520_1969_Open_Text.style.display='none'; Codehighlighter1_520_1969_Closed_Image.style.display='inline'; Codehighlighter1_520_1969_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /> <img id="Codehighlighter1_520_1969_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_520_1969_Closed_Text.style.display='none'; Codehighlighter1_520_1969_Open_Image.style.display='inline'; Codehighlighter1_520_1969_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /> </span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000"> (tng)TaskStatistic (tng)</span> <span style="COLOR: #0000ff">extends</span> <span style="COLOR: #000000"> (tng)CommonStatisticSource (tng)</span> <span id="Codehighlighter1_520_1969_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_520_1969_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">int</span> <span style="COLOR: #000000"> (tng)statisticRate (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)Config.getApplicationConfig().statisticRate();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)TaskStatistic (tng)thread (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">null</span> <span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000"> (tng)Logger (tng)log (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)Logger.getLogger(TaskStatistic.</span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000">);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">final</span> <span style="COLOR: #000000"> (tng)ScheduledExecutorService (tng)schedule (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)Executors.newSingleThreadScheduledExecutor();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">boolean</span> <span style="COLOR: #000000"> (tng)started (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">false</span> <span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_875_878_Open_Image" onclick="this.style.display='none'; Codehighlighter1_875_878_Open_Text.style.display='none'; Codehighlighter1_875_878_Closed_Image.style.display='inline'; Codehighlighter1_875_878_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_875_878_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_875_878_Closed_Text.style.display='none'; Codehighlighter1_875_878_Open_Image.style.display='inline'; Codehighlighter1_875_878_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> (tng)TaskStatistic() (tng)</span> <span id="Codehighlighter1_875_878_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_875_878_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img id="Codehighlighter1_937_1018_Open_Image" onclick="this.style.display='none'; Codehighlighter1_937_1018_Open_Text.style.display='none'; Codehighlighter1_937_1018_Closed_Image.style.display='inline'; Codehighlighter1_937_1018_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_937_1018_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_937_1018_Closed_Text.style.display='none'; Codehighlighter1_937_1018_Open_Image.style.display='inline'; Codehighlighter1_937_1018_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000"> (tng)TaskStatistic (tng)getSingleScheduledThread() (tng)</span> <span id="Codehighlighter1_937_1018_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_937_1018_Open_Text"> <span style="COLOR: #000000">{<br /><img id="Codehighlighter1_961_998_Open_Image" onclick="this.style.display='none'; Codehighlighter1_961_998_Open_Text.style.display='none'; Codehighlighter1_961_998_Closed_Image.style.display='inline'; Codehighlighter1_961_998_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_961_998_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_961_998_Closed_Text.style.display='none'; Codehighlighter1_961_998_Open_Image.style.display='inline'; Codehighlighter1_961_998_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (tng)(thread (tng)</span> <span style="COLOR: #000000">==</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">null</span> <span style="COLOR: #000000">) (tng)</span> <span id="Codehighlighter1_961_998_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_961_998_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)thread (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000"> (tng)TaskStatistic();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000"> (tng)thread;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img id="Codehighlighter1_1022_1081_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1022_1081_Open_Text.style.display='none'; Codehighlighter1_1022_1081_Closed_Image.style.display='inline'; Codehighlighter1_1022_1081_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1022_1081_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1022_1081_Closed_Text.style.display='none'; Codehighlighter1_1022_1081_Open_Image.style.display='inline'; Codehighlighter1_1022_1081_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span id="Codehighlighter1_1022_1081_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">/** (tng)*/</span> <span id="Codehighlighter1_1022_1081_Open_Text"> <span style="COLOR: #008000">/**</span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)* (tng)在垃圾收集前停止U程<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)* (tng)</span> <span style="COLOR: #808080">@see</span> <span style="COLOR: #008000"> (tng)java.lang.Object#finalize()<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_1127_1165_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1127_1165_Open_Text.style.display='none'; Codehighlighter1_1127_1165_Closed_Image.style.display='inline'; Codehighlighter1_1127_1165_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1127_1165_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1127_1165_Closed_Text.style.display='none'; Codehighlighter1_1127_1165_Open_Image.style.display='inline'; Codehighlighter1_1127_1165_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">protected</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> (tng)finalize() (tng)</span> <span style="COLOR: #0000ff">throws</span> <span style="COLOR: #000000"> (tng)Throwable (tng)</span> <span id="Codehighlighter1_1127_1165_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1127_1165_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">this</span> <span style="COLOR: #000000">.stop();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">super</span> <span style="COLOR: #000000">.finalize();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img id="Codehighlighter1_1169_1223_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1169_1223_Open_Text.style.display='none'; Codehighlighter1_1169_1223_Closed_Image.style.display='inline'; Codehighlighter1_1169_1223_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1169_1223_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1169_1223_Closed_Text.style.display='none'; Codehighlighter1_1169_1223_Open_Image.style.display='inline'; Codehighlighter1_1169_1223_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span id="Codehighlighter1_1169_1223_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">/** (tng)*/</span> <span id="Codehighlighter1_1169_1223_Open_Text"> <span style="COLOR: #008000">/**</span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)* (tng)启动,以固定的延迟频率l计数据库中d的状?如果状态发生变化则通知监听?q记?<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_1246_1830_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1246_1830_Open_Text.style.display='none'; Codehighlighter1_1246_1830_Closed_Image.style.display='inline'; Codehighlighter1_1246_1830_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1246_1830_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1246_1830_Closed_Text.style.display='none'; Codehighlighter1_1246_1830_Open_Image.style.display='inline'; Codehighlighter1_1246_1830_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> (tng)start() (tng)</span> <span id="Codehighlighter1_1246_1830_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1246_1830_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (tng)(started)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">return</span> <span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (tng)(log.isInfoEnabled())<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)log.info(</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">启动dl计U程</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)started (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">true</span> <span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">final</span> <span style="COLOR: #000000"> (tng)StatisticDAO (tng)dao (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000"> (tng)StatisticDAO();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)schedule.scheduleWithFixedDelay(<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)<br /><img id="Codehighlighter1_1451_1760_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1451_1760_Open_Text.style.display='none'; Codehighlighter1_1451_1760_Closed_Image.style.display='inline'; Codehighlighter1_1451_1760_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1451_1760_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1451_1760_Closed_Text.style.display='none'; Codehighlighter1_1451_1760_Open_Image.style.display='inline'; Codehighlighter1_1451_1760_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000"> (tng)Runnable() (tng)</span> <span id="Codehighlighter1_1451_1760_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1451_1760_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)TaskCountRecord (tng)lastRecord (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">null</span> <span style="COLOR: #000000">;<br /><img id="Codehighlighter1_1516_1754_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1516_1754_Open_Text.style.display='none'; Codehighlighter1_1516_1754_Closed_Image.style.display='inline'; Codehighlighter1_1516_1754_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1516_1754_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1516_1754_Closed_Text.style.display='none'; Codehighlighter1_1516_1754_Open_Image.style.display='inline'; Codehighlighter1_1516_1754_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> (tng)run() (tng)</span> <span id="Codehighlighter1_1516_1754_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1516_1754_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)TaskCountRecord (tng)totalCount (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)dao.countTaskStatus();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> (tng)d数没有变化则不更?/span> <span style="COLOR: #008000"> <br /> <img id="Codehighlighter1_1639_1746_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1639_1746_Open_Text.style.display='none'; Codehighlighter1_1639_1746_Closed_Image.style.display='inline'; Codehighlighter1_1639_1746_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1639_1746_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1639_1746_Closed_Text.style.display='none'; Codehighlighter1_1639_1746_Open_Image.style.display='inline'; Codehighlighter1_1639_1746_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> </span> <span style="COLOR: #000000"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (tng)(</span> <span style="COLOR: #000000">!</span> <span style="COLOR: #000000">totalCount.equals(lastRecord)) (tng)</span> <span id="Codehighlighter1_1639_1746_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1639_1746_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)lastRecord (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)totalCount;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)<font color="#ff0099">tellAllObservers(totalCount);</font><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)dao.save(totalCount); (tng)<br /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)<font color="#ff3300"><strong>notifyAll(totalCount);//该方法在父类?br /></strong></font><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000">,<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)statisticRate, (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)statisticRate, (tng)<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)TimeUnit.SECONDS<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng));<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img id="Codehighlighter1_1834_1848_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1834_1848_Open_Text.style.display='none'; Codehighlighter1_1834_1848_Closed_Image.style.display='inline'; Codehighlighter1_1834_1848_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1834_1848_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1834_1848_Closed_Text.style.display='none'; Codehighlighter1_1834_1848_Open_Image.style.display='inline'; Codehighlighter1_1834_1848_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span id="Codehighlighter1_1834_1848_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">/** (tng)*/</span> <span id="Codehighlighter1_1834_1848_Open_Text"> <span style="COLOR: #008000">/**</span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)* (tng)l束<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #008000">*/</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_1870_1967_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1870_1967_Open_Text.style.display='none'; Codehighlighter1_1870_1967_Closed_Image.style.display='inline'; Codehighlighter1_1870_1967_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1870_1967_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1870_1967_Closed_Text.style.display='none'; Codehighlighter1_1870_1967_Open_Image.style.display='inline'; Codehighlighter1_1870_1967_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /> (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> (tng)stop() (tng)</span> <span id="Codehighlighter1_1870_1967_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.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1870_1967_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)schedule.shutdown();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)started (tng)</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000"> (tng)</span> <span style="COLOR: #0000ff">false</span> <span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)</span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (tng)(log.isInfoEnabled())<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)log.info(</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">停止dl计U程</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> (tng) (tng) (tng) (tng)}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /> </span> </div> <img src ="http://www.aygfsteel.com/tedeyang/aggbug/223489.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2008-08-21 14:22 <a href="http://www.aygfsteel.com/tedeyang/archive/2008/08/21/223489.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>陆春龙得?/title><link>http://www.aygfsteel.com/tedeyang/archive/2008/08/19/223111.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Tue, 19 Aug 2008 13:14:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2008/08/19/223111.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/223111.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2008/08/19/223111.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/223111.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/223111.html</trackback:ping><description><![CDATA[今天?008q??9?在电(sh)视机前我亲眼看到陆春龙得到奥q会(x)y床金牌,与其他金牌得M同的?陆春龙是L距离最q的奥运英雄.<br />呵呵,想不?q?9岁的子,他老爸和我老爸居然是认识的.<br />陆春龙的父亲陆徏q?以前做包工头,承徏q江阴西x(chng)镇的一个厂?因此和我爸认?<br />是富裕之?<br />?真是想不到啊.<img src ="http://www.aygfsteel.com/tedeyang/aggbug/223111.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2008-08-19 21:14 <a href="http://www.aygfsteel.com/tedeyang/archive/2008/08/19/223111.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tomcat崩溃事ghttp://www.aygfsteel.com/tedeyang/archive/2008/06/04/205740.html山巅山巅Wed, 04 Jun 2008 03:05:00 GMThttp://www.aygfsteel.com/tedeyang/archive/2008/06/04/205740.htmlhttp://www.aygfsteel.com/tedeyang/comments/205740.htmlhttp://www.aygfsteel.com/tedeyang/archive/2008/06/04/205740.html#Feedback3http://www.aygfsteel.com/tedeyang/comments/commentRss/205740.htmlhttp://www.aygfsteel.com/tedeyang/services/trackbacks/205740.html我将事gq程和分析过E记录如下:(x)

服务器:(x)win 2000 sp4Qapache 2 + tomcat 5.0 采用mod_jkU联。内?GQ硬盘剩余空间充ICPU基本I闲?br />主要应用QJ2EE 1.4QJDBCQ连接另一台mysql服务器)(j)
崩溃旉Q?2008-6-3 18Q?7Q?0

一.各种日志l合如下Q?/font>

 (tng) (tng) 1.37?5U,操作pȝ事g中诺杀毒Y件报内存q低警报
 (tng) (tng) 2.37?5U,web应用抛出JDBCq接异常Q?
2008-06-03 (tng)18:37:45 (tng)cn.*.db.DBManager.getConnection(DBManager.java:157) (tng)ERROR (tng)swim.db.DBManager (tng) (tng) (tng)com.mysql.jdbc.CommunicationsException: (tng)Communications (tng)link (tng)failure (tng)due (tng)to (tng)underlying (tng)exception:
** (tng)BEGIN (tng)NESTED (tng)EXCEPTION (tng)**
java.net.SocketException
MESSAGE: (tng)java.net.SocketException: (tng)No (tng)buffer (tng)
space (tng)available (tng)(maximum (tng)connections (tng)reached?): (tng)JVM_Bind

 (tng) (tng) 3.37?0U,tomcat抛出session无法save异常Q?
2008-06-03 (tng)18:37:50 (tng)ERROR- (tng)I(yng)OException (tng)while (tng)saving (tng)persisted (tng)sessions: (tng)java.io.FileNotFoundException: (tng)\izzs\SESSIONS.ser (tng)(pȝ资源不Q无法完成请求的服务?
java.io.FileNotFoundException: (tng)\izzs\SESSIONS.ser (tng)(pȝ资源不Q无法完成请求的服务?
 (tng) (tng) (tng) (tng)at (tng)java.io.FileOutputStream.open(Native (tng)Method)
 (tng) (tng) (tng) (tng)at (tng)java.io.FileOutputStream.
<init>(FileOutputStream.java:179)
 (tng) (tng) (tng) (tng)at (tng)java.io.FileOutputStream.
<init>(FileOutputStream.java:70)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:
511)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.session.StandardManager.unload(StandardManager.java:
485)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.session.StandardManager.stop(StandardManager.java:
687)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.StandardContext.stop(StandardContext.java:
4496)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.StandardContext.reload(StandardContext.java:
3037)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:
4658)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:
1619)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:
1628)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:
1628)
 (tng) (tng) (tng) (tng)at (tng)org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:
1608)
 (tng) (tng) (tng) (tng)at (tng)java.lang.Thread.run(Thread.java:
534)

?单分?/h3>崩溃原因Q内存(sh)_致资源不I引vTomcat的session崩溃?br /> (tng) q台服务器上q行着很多应用Q是什么原因引起内存(sh)无法定?br />初步判断|魁R可能是apacheQ该q程q_占用500MB内存Q经怼(x)飚到1G以上?br />
Apache2的配|文件中Q?b>KeepAlive=OnQMaxKeepAliveRequests=100QKeepAliveTimeout=15Q分析aceess.log文g可以发现每个面触发的request数量?0个以下,点击率较低,可能使连接过多?br />我徏议将keepAlive设ؓ(f)offQ增加CPU负蝲Q降低内存消耗?br />

?效果

 (tng)有待观察......

参考资料:(x)
http://www.withend.com/post/78.html

?l局
旉一天,晚上?ji)点再次崩溃Q黑暗事仉演?br />q一ơ,我才得知原来该apacheq配|有其他域名Q于是调?gu)域名下的access.log。项目经理去?jin)机房,在蘪轰地风扇C打电(sh)话给我,让我分析分析?br />仔细看访问日志,发现原来有N多Connect 443q接Q?43是什么?是SSL端口QHTTPSQ,Connect命o(h)则显然是代理功能Q?br />而且q些connect的IP来自全球各地Q加拿大、美国、澳zӀ新西兰、北京、上英国、哪都有?br />看来q台服务器是被h当代理服务器用了(jin)?br />怪不得半夜会(x)LQh家西半球那时正大白天撒欢儿呢?br />
问题出在apache的配|上Q由于应用众多,q且q台服务器还是其他几台web服务器的对外出口Q因此apache中配|了(jin)反向代理Q不q不心(j)把正向代理(mod_proxy模块?a id="ProxyRequests" name="ProxyRequests">ProxyRequests指o(h)Q也打开?jin)?br />看看apache2.0的官Ҏ(gu)档中mod_proxy部分Q里面明明白白写着Q?br />
警告
在?zhn)没有?gu)务器采取安全措施之前Q请不要用ProxyRequests启用(zhn)的代理。一个开攄代理服务器不仅对(zhn)的|络有威胁,Ҏ(gu)个因特网来说也同样如此?br />
真的是很有威胁!大量代理h急剧消耗内存,最l造成LQ?br />
解决办法是把正向代理关掉:(x)ProxyRequests Off




山巅 2008-06-04 11:05 发表评论
]]>
我无法把握我的心(j)http://www.aygfsteel.com/tedeyang/archive/2008/05/06/198820.html山巅山巅Tue, 06 May 2008 14:49:00 GMThttp://www.aygfsteel.com/tedeyang/archive/2008/05/06/198820.htmlhttp://www.aygfsteel.com/tedeyang/comments/198820.htmlhttp://www.aygfsteel.com/tedeyang/archive/2008/05/06/198820.html#Feedback0http://www.aygfsteel.com/tedeyang/comments/commentRss/198820.htmlhttp://www.aygfsteel.com/tedeyang/services/trackbacks/198820.html有篇文章写了(jin)一个好E序员的选材标准Q首当其冲的是“激情”?br />看到此处Q我不由脑袋一昏,恍惚?j)动?br />“我们需要互联网疯子加入到我们的队伍里来Q他睡觉想着互联|、吃饭想着互联|、走路想着互联|?br />q样的激情,曑և何时我也拥有啊,不是对互联网Q而是对编E?br />那是充实、激动、兴奋、灵感组成的感情?br />曑և何时Q直到年前,我还全n?j)地z溢着q样的激情,~程是我的灵我能因此而快乐?br />Z么!现在的我Q坐在电(sh)脑前Q看的是新闻Q想的是其他无关紧要的事Q几天不写一行代码?
是我太忙?jin)吗Q还是我懈怠了(jin)Q?br />也许是环境改变(sh)(jin)Q事情变杂了(jin)Q心(j)境改变(sh)(jin)、、?br />~程不再Q似乎青春不再!
该死的CMMIQ该ȝ理工作Q该ȝN课!该死的爱情!该死的日常琐事!该死的感冒病毒!
我要l结实实诅咒一切让我远d׃码的元凶Q?br />也许唯一需要诅咒只是我自己|!
我还是需要热q序的单纯?br />




山巅 2008-05-06 22:49 发表评论
]]>
spring的ContextLoaderListener与DispatcherServlet在WebApplicationContext上的l微区别http://www.aygfsteel.com/tedeyang/archive/2008/04/09/191628.html山巅山巅Wed, 09 Apr 2008 01:29:00 GMThttp://www.aygfsteel.com/tedeyang/archive/2008/04/09/191628.htmlhttp://www.aygfsteel.com/tedeyang/comments/191628.htmlhttp://www.aygfsteel.com/tedeyang/archive/2008/04/09/191628.html#Feedback2http://www.aygfsteel.com/tedeyang/comments/commentRss/191628.htmlhttp://www.aygfsteel.com/tedeyang/services/trackbacks/191628.html我们知道spring在web.xml中可以有三种方式来配|其xml路径Q?br />org.springframework.web.servlet.DispatcherServlet
org.springframework.web.context.ContextLoaderListener
org.springframework.web.context.ContextLoaderServlet
当用第一U方式配|时Qspring载入的WebApplicationContext是隶属于此Servlet的(所以spring可以配置多个分别拥有各自环境的DispatcherServletQ,因此其他servlet无法获取到该Context。这一现象在buffalo配置时曾l出玎ͼ无法扑ֈ服务beanQ。分析了(jin)buffalo和spring的源码后Q将xml在ContextLoaderListener配置才得以解冟?/p>

山巅 2008-04-09 09:29 发表评论
]]>
从“the chinese victory”到“谁在掠夺国民胦(ch)富ƈ出卖民族利益?/title><link>http://www.aygfsteel.com/tedeyang/archive/2008/04/08/191576.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Tue, 08 Apr 2008 14:51:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2008/04/08/191576.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/191576.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2008/04/08/191576.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/191576.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/191576.html</trackback:ping><description><![CDATA[ <p>今天看到两篇长文?br />卡斯特罗在古巴发表的两章Q?a >http://www.cubanews.ain.cu/2008/0331reflexionfidel.htm</a> (tng)?jin)东亚和中国的历Ԍq言?qing)西藏最q的?d)ؕ。文章分两章Qpart I和IIQ末ֆ到“中国的胜利”、“我不信任达赖”。感谢在遥远的古巴有q样睿智的领ghQ(我看的是英文译Q原文是西班牙语Q关键字Qthe chinese victoryQ?br /><br />另外Q今?font face="Verdana">中央民族大学教授张宏良写?jin)《谁在掠夺国民胦(ch)富ƈ出卖民族利益》一文(<a >http://future.chinaiiss.org/content/2008-4-8/8114838.shtml</a>Q?br /><br /><em> (tng) (tng) (tng) (tng) 在《拉萨暴乱:(x)越1840q的最大买单》中我们指出Q台?22公投、拉萨暴乱、抵制北京奥q会(x){一pd手段Q目的是控制中国金融Q让中国方信用危Z单。现在第一单已l下来了(jin)Q中国银监会(x)刚刚发布?strong>《银行控股股东监办法(征求意见E)(j)》中Q取消了(jin)对外资控股中国银行的比例限制Q此前规定,外资单独控股中国银行不能过20%Q联合控股中国银行不能超q?5%Q,中国成为有史以来国有银行Q凭外资控股的唯一国家Q成Z界一体化q程中国民q和金融控制权的W一个国?/strong>。该军_成Z国现代史上具有重大历史分期意义的里程式文gQ是中国由此开始q和金融d权的历史性标志。西方国家终于在满中国人奥q梦想之前,率先满?jin)控股中国银行进而控制中国经的历史梦想。面对天安门q场人民英雄U念上的血色碑文,我们不禁泪如雨下Q中国输?jin)?840q以来一代接一代h的流血牺牲、一代又一代h的艰苦奋斗,l究q是没有跛_西方列强的魔掌,当初夹着ַ逃跑?jin)的帝国MQ现在夹着皮包又回来了(jin)Qƈ且比当初逃跑前回来的更加风光Q成Z(jin)可以控股中国金融和中国经的总老板?/em></font></p> <p> <font face="Verdana"> <em>  从去q?月美国国?x)通过册要求中国银行对美国企业完全开放,到现在中国银监会(x)发文取消限制Q期间仅?个月旉Q诏彻落实美国决议的效率之高Q恐怕超q了(jin)历史上Q何一个国家。当时美国国?x)通过?jin)关?个国家的册Q一个是伊拉克分ȝ册Q一个是中国开N融市(jng)场的册Q目前,关于伊拉克决议的落实q没个媄(jing)子,关于中国的决议就变成?jin)现实。两个决议实施的不同l果Q证明了(jin)国21世纪外交政策的{变是卓有成效的:(x)用“美国鹦鹉”代替E航导弹,更加有利于实现美国的国家利益。此前美国国务卿赖斯曾声明Q?1世纪国对外政策的重点,要从以军事打d情报渗透ؓ(f)主,转向以培d方国家的学术政治_英Q美国鹦鹉)(j)ZQ以此来实现国的国家利益。打开中国金融?jng)场Q就?1世纪国鹦鹉外交最富成q卓越胜利?/em> </font> </p> <p>此言不虚Q看q《货币战?sh)》一书的读者都应该知道Q控刉行就是控刉融,控制金融是控制国家。我无法惛_居然有这L(fng)卖国行ؓ(f)?1世纪初赤裸裸地冒出来Q前日看Cu敦华人游行反藏独Q今天看到统治集团卖国,实在是心(j)中苦P<br /><br />再想刎ͼ(x)<br /> (tng) (tng) (tng) (tng) (tng) (tng) 人民币升|Z么美联储dƣ喜若狂Qؓ(f)什么国内反而面临严重的通货膨胀Qؓ(f)什么股?jng)?x)H然猛涨又猛然崩溃?国内贬D国际升|人民币在此挤压中产生的巨额差值都d?jin)?br />全国财政收入?000q到2007q增长了(jin)5倍(?万亿?万亿Q,我们的收入增长了(jin)多少Q我们的日常消费支出增加?jin)多?br /><br /> (tng) (tng) (tng) (tng) (tng) (tng) 我目前所居住的江苏常州市(jng)Q因为工作关pdE务比较?jin)解Q地E局E收每年的硬指标是增?0%Q因此税率经常调_(d)名目J多Q企业负担已l极为沉重!据我所知,如果完全不能避税L(fng)漏税Q?0%以上的企业会(x)很快倒闭Q因为它们的利润率远q小于税率的15%~30%Q而外企反而能享受国民待遇减免甚臛_免税ƾ!<br /> (tng) (tng) (tng) (tng) (tng) (tng)我个h而言Q去q上~的个h所得税已经占我q收入的10%Q中国是世界排名W三的重E国Ӟq不是遥q的排名Q是在工资单上每天上演的p强食Q?br /><br />中国q有希望吗?<br />我一直拒买日货,q劝说周围h抵制日货Q但街道上奔涌而过的丰田R每每我无奈感伤?br />q就是我的祖国!<br />勤劳腐|、正义肮脏、希望绝望!上流C会(x)卖国Q底层百姓爱国,一切又回到癑ֹ之前?br /><br />2008q_(d)我确信中?1世纪历史的{折点已经呈现。何M从,唯拭目以待!<br /><br /></p> <img src ="http://www.aygfsteel.com/tedeyang/aggbug/191576.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2008-04-08 22:51 <a href="http://www.aygfsteel.com/tedeyang/archive/2008/04/08/191576.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>bug记录Qmysql生成id后获取出?/title><link>http://www.aygfsteel.com/tedeyang/archive/2008/04/07/191323.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Mon, 07 Apr 2008 09:48:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2008/04/07/191323.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/191323.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2008/04/07/191323.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/191323.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/191323.html</trackback:ping><description><![CDATA[今天同事l我看一D代码,是我前年写的?br />他发C(jin)一个bug?br />代码的作用是用jdbc向mysql中插入一条主键自增的数据Q然后用mysql的select last_insert_id()语法获取生成的主键倹{?br /><strong>问题出在两次sql执行用的不是同一个数据库q接Q而从数据源里获取?jin)两?/strong>?br />我们都知道,<strong>mysql的last_insert_id()函数是针对connection?/strong>Q所以这是个严重bug?br />之前两年负蝲,所以数据源大概每次都返回同一个connectionQ于是bug被遮盖住?jin)。最q服务器压力增加Q两ơ连接就可能不是同一个了(jin)?br />因此last_insert_id()得到的主键值出错!<br /><br />那时候我怎么?x)获取两ơ连接来执行一个方法里的两句sqlQ包括我在内所有h都莫名其妙。错误比较明显,q项目已l交接给他们?jin),不过ZҎ(gu)的信任,q是屁颠屁颠来问我:(x)获取两个q接是不是还有其他特D考虑Q我苦思冥想了(jin)一?x),{曰Q忘?sh)(jin)?img height="20" src="http://www.aygfsteel.com/Emoticons/hitwall.gif" width="25" border="0" /><br /><br />没想到我曄养过的臭虫还到处潜伏着Q等着我出丑呢?img src ="http://www.aygfsteel.com/tedeyang/aggbug/191323.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2008-04-07 17:48 <a href="http://www.aygfsteel.com/tedeyang/archive/2008/04/07/191323.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>d本机动态ip到远E网?/title><link>http://www.aygfsteel.com/tedeyang/archive/2007/12/10/166584.html</link><dc:creator>山巅</dc:creator><author>山巅</author><pubDate>Mon, 10 Dec 2007 02:38:00 GMT</pubDate><guid>http://www.aygfsteel.com/tedeyang/archive/2007/12/10/166584.html</guid><wfw:comment>http://www.aygfsteel.com/tedeyang/comments/166584.html</wfw:comment><comments>http://www.aygfsteel.com/tedeyang/archive/2007/12/10/166584.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tedeyang/comments/commentRss/166584.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tedeyang/services/trackbacks/166584.html</trackback:ping><description><![CDATA[     摘要: 如何通过自己的ADSL使家里的?sh)脑成?f)服务器呢Q像q壌L(fng)应用可以帮助你动态解析ipQ不q这个程序太庞大?jin),?gu)没有必要。下面介l我的做法:(x)条gQ?上网方式QADSL  (tng) 台式机:(x)linux (tng) 中|页Q在某虚拟主机申请一个免费空_(d)需要支持动态脚本(php、jsp{)(j)Ҏ(gu)Q?tng) (tng)在本机q行一个JavaE序Q定时读取本机的外网IPQ自动向中|页用GET方式提交该数据。中l网保存I(y)P记录在内...  <a href='http://www.aygfsteel.com/tedeyang/archive/2007/12/10/166584.html'>阅读全文</a><img src ="http://www.aygfsteel.com/tedeyang/aggbug/166584.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tedeyang/" target="_blank">山巅</a> 2007-12-10 10:38 <a href="http://www.aygfsteel.com/tedeyang/archive/2007/12/10/166584.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">׸</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Դ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">÷ӿ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ػ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͭ</a>| <a href="http://" target="_blank">«Ϫ</a>| <a href="http://" target="_blank">˫Ѽɽ</a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank">֦</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̫</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">«</a>| <a href="http://" target="_blank">ײ</a>| <a href="http://" target="_blank">̶</a>| <a href="http://" target="_blank">Ƕ</a>| <a href="http://" target="_blank">з</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ɽ</a>| <a href="http://" target="_blank">ǿ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>