﻿<?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-kelefa-随笔分类-开源应用</title><link>http://www.blogjava.net/kelefa/category/12607.html</link><description>大千世界中，唯一缺乏的就是人类的注意力。</description><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 12:04:42 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 12:04:42 GMT</pubDate><ttl>60</ttl><item><title>网络设备主动告警系统之snmp告警的实现</title><link>http://www.blogjava.net/kelefa/archive/2006/12/27/90225.html</link><dc:creator>杨杰荣</dc:creator><author>杨杰荣</author><pubDate>Wed, 27 Dec 2006 01:50:00 GMT</pubDate><guid>http://www.blogjava.net/kelefa/archive/2006/12/27/90225.html</guid><wfw:comment>http://www.blogjava.net/kelefa/comments/90225.html</wfw:comment><comments>http://www.blogjava.net/kelefa/archive/2006/12/27/90225.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kelefa/comments/commentRss/90225.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelefa/services/trackbacks/90225.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 一般主动告警系统的告警信息采集主要有5种方法:   1. 在告警服务器ping各种设备, 判断设备是否存活和掉包率 2. 接收设备发过来的系统日志(syslog), 并通过相应的规则库(正则表达式)匹配判断是否需要告警 3. 接收设备发过来的snmp Trap信息, 进行判断告警 4. 提取网管系统的告警信息 5. 通过snmp协议, 取回相应oid的值, 进行判断告警  什么是snmp:  Si...&nbsp;&nbsp;<a href='http://www.blogjava.net/kelefa/archive/2006/12/27/90225.html'>阅读全文</a><img src ="http://www.blogjava.net/kelefa/aggbug/90225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelefa/" target="_blank">杨杰荣</a> 2006-12-27 09:50 <a href="http://www.blogjava.net/kelefa/archive/2006/12/27/90225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在java程序里telnet到远端设备执行命令</title><link>http://www.blogjava.net/kelefa/archive/2006/06/30/56056.html</link><dc:creator>杨杰荣</dc:creator><author>杨杰荣</author><pubDate>Fri, 30 Jun 2006 15:52:00 GMT</pubDate><guid>http://www.blogjava.net/kelefa/archive/2006/06/30/56056.html</guid><wfw:comment>http://www.blogjava.net/kelefa/comments/56056.html</wfw:comment><comments>http://www.blogjava.net/kelefa/archive/2006/06/30/56056.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kelefa/comments/commentRss/56056.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelefa/services/trackbacks/56056.html</trackback:ping><description><![CDATA[        kelefa是某公司的一个程序员，传说他是一流的程序员，开发了一个系统非常稳定，从来没有出现过问题，当然这世界上没有完美的人，也没有完美的软件，这个系统也有bug，而且他已经发现了，但是一直没有找到很好的办法解决，还好这个bug很少有机会能发作，关键是一发生这种情况时严重影响系统的运行，停止服务后再重新启动是目前最好的方法。<br /><br />        为了保住“高手”的称号，他又搞了一个监控该系统的小程序，能及时发现系统是否工作正常，如果发现异常情况立刻发送email给自己，email又跟自己的手机短信绑定，使他能迅速的发现情况并跑到电脑前：<br /><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 src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #008000">//</span><span style="COLOR: #008000">telnet进来后</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">[root@kelefa root]$ su </span><span style="COLOR: #000000">-</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />[root@kelefa root]$ password <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />[root@kelefa root]# cd </span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">usr</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">local</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">resin</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">3.0</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">14</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">bin<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />[root@kelefa bin]# .<span style="COLOR: #000000">/</span><span style="COLOR: #000000">httpd.sh  stop</span><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />[root@kelefa bin]# .</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">httpd.sh  start</span></div><br />一切又正常了，1分钟内搞定，一流程序员再次得到验证，可是email有时会发送失败，sp的短信也不是绝对的正常，而且每个月还给n元大洋给sp，万一收到告警短信旁边没有电脑也无能为力。<br /><br />        终于发现更好的方法：在监控程序里直接telnet到设备上进行操作，动手前当然要看看有什么开源的可以利用，它就是Jakarta的Commons Net，这个包支持ftp，telnet，pop3，smtp，nntp等协议。<br /><br />        首先实现一个telnet的基类，它有个connectAndDocommad()的方法，实现链接到指定的设备上，并启动一个线程执行一个模板方法（某设计模式）：<br /><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"><p><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"><br /><span style="COLOR: #008000">   //</span> 登陆<br />   log.debug( "login................" );<br />   if ( false == login() )<br />   {<br />    String msg = new Date().toString() + " telnet登陆不成功，ip：" + remoteip;<br />    log.warn( msg );<br />    SyslogUtil.send( msg );<br />    return;<br />   }</span></p><p><span style="COLOR: #000000">   log.debug( "doCommand................" );<br />   // 抽象方法<br />   doCommand();</span></p><p><span style="COLOR: #000000">   // 退出<br />   log.debug( "exit................" );<br />   exit();</span></p></div><br />        其次类RestartTask继承该抽象类，实现doCommand()抽象方法，往输出流发送操作命令，实现重启：<br /><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"><p><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #008000"><font style="BACKGROUND-COLOR: #eeeeee" color="#000000">@Override protected void doCommand()<br /> {<br />  log.debug( "resin restart................" );<br />  try<br />  {<br />     writeLine("su -");     <br />     writeLine("password"); <br />     writeLine("cd /usr/local/resin-3.0.14/bin");<br />     writeLine("./httpd.sh  stop");<br />     writeLine("./httpd.sh  start");<br /><br />     readResult();<br /></font></span><span style="COLOR: #008000"><font style="BACKGROUND-COLOR: #eeeeee" color="#000000">  }<br />  catch ( IOException e )<br />  {<br />   log.warn( e.getMessage() );<br />  }<br /> }</font></span></p></div><br />以上为伪代码，需要实现一些子方法， 如有雷同，纯属虚构！<img src ="http://www.blogjava.net/kelefa/aggbug/56056.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelefa/" target="_blank">杨杰荣</a> 2006-06-30 23:52 <a href="http://www.blogjava.net/kelefa/archive/2006/06/30/56056.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OSCache工具类</title><link>http://www.blogjava.net/kelefa/archive/2006/06/29/OSCache.html</link><dc:creator>杨杰荣</dc:creator><author>杨杰荣</author><pubDate>Thu, 29 Jun 2006 01:32:00 GMT</pubDate><guid>http://www.blogjava.net/kelefa/archive/2006/06/29/OSCache.html</guid><wfw:comment>http://www.blogjava.net/kelefa/comments/55678.html</wfw:comment><comments>http://www.blogjava.net/kelefa/archive/2006/06/29/OSCache.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kelefa/comments/commentRss/55678.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kelefa/services/trackbacks/55678.html</trackback:ping><description><![CDATA[
		<p>OSCache是<a class="wikipage" href="http://www.opensymphony.com/oscache/"><font color="#3653a5">OpenSymphony</font></a>组织提供的一个J2EE架构中Web应用层的缓存技术实现方案，可以使用内存、硬盘空间、同时使用内存和硬盘作为缓存区灵活的缓存系统:OSCache支持多种缓存级别，使用相当灵活简单，在jsp中刷新缓存只要两行代码：<br /><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 src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #000000">&lt;%</span>
				<span style="COLOR: #000000">@ taglib uri</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">oscache</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000"> prefix</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">cache</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">%&gt;</span>
				<span style="COLOR: #000000">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #000000">&lt;</span>
				<span style="COLOR: #000000">cache:flush group</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">device_types</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000"> scope</span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">application</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #000000">/&gt;</span>
		</div>
		<br />但是有时需要在java代码中刷新缓存，以下这个OSCacheUtil类可以工作，但是只能在webwork环境内调用：<br /><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 src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> javax.servlet.jsp.PageContext;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.log4j.Logger;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.opensymphony.oscache.base.Cache;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.opensymphony.oscache.web.ServletCacheAdministrator;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.opensymphony.webwork.ServletActionContext;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_233_369_Open_Image" onclick="this.style.display='none'; Codehighlighter1_233_369_Open_Text.style.display='none'; Codehighlighter1_233_369_Closed_Image.style.display='inline'; Codehighlighter1_233_369_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_233_369_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_233_369_Closed_Text.style.display='none'; Codehighlighter1_233_369_Open_Image.style.display='inline'; Codehighlighter1_233_369_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_233_369_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">/** */</span><span id="Codehighlighter1_233_369_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * osCache缓存工具类.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * 只能在webwork环境内调用<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> *<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * &lt;p&gt;Copyright: Copyright (c) 2005&lt;/p&gt;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * &lt;p&gt;Company: &lt;/p&gt;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * </span><span style="COLOR: #808080">@author</span><span style="COLOR: #008000"> 杨杰荣<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * </span><span style="COLOR: #808080">@version</span><span style="COLOR: #008000"> 1.0<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /> </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.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"> OSCacheUtil<br /><img id="Codehighlighter1_396_2559_Open_Image" onclick="this.style.display='none'; Codehighlighter1_396_2559_Open_Text.style.display='none'; Codehighlighter1_396_2559_Closed_Image.style.display='inline'; Codehighlighter1_396_2559_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_396_2559_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_396_2559_Closed_Text.style.display='none'; Codehighlighter1_396_2559_Open_Image.style.display='inline'; Codehighlighter1_396_2559_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_396_2559_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_396_2559_Open_Text"><span style="COLOR: #000000">{<br /><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">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">final</span><span style="COLOR: #000000"> Logger log </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> Logger.getLogger( OSCacheUtil.</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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">final</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> ALL_SCOPE </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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">final</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> SESSION_SCOPE </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> PageContext.SESSION_SCOPE;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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">final</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> APPLICATION_SCOPE </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> PageContext.APPLICATION_SCOPE;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><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">static</span><span style="COLOR: #000000"> ServletCacheAdministrator admin </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />  </span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000"> OSCacheUtil()<br /><img id="Codehighlighter1_746_750_Open_Image" onclick="this.style.display='none'; Codehighlighter1_746_750_Open_Text.style.display='none'; Codehighlighter1_746_750_Closed_Image.style.display='inline'; Codehighlighter1_746_750_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_746_750_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_746_750_Closed_Text.style.display='none'; Codehighlighter1_746_750_Open_Image.style.display='inline'; Codehighlighter1_746_750_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_746_750_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_746_750_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />  }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_755_871_Open_Image" onclick="this.style.display='none'; Codehighlighter1_755_871_Open_Text.style.display='none'; Codehighlighter1_755_871_Closed_Image.style.display='inline'; Codehighlighter1_755_871_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_755_871_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_755_871_Closed_Text.style.display='none'; Codehighlighter1_755_871_Open_Image.style.display='inline'; Codehighlighter1_755_871_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_755_871_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">/** */</span><span id="Codehighlighter1_755_871_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * 刷新osCache组<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> group Cache组名<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> cacheScope Cache范围，只能是SESSION_SCOPE或APPLICATION_SCOPE<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />   </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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"> flushGroup( String group, </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> cacheScope )<br /><img id="Codehighlighter1_939_1335_Open_Image" onclick="this.style.display='none'; Codehighlighter1_939_1335_Open_Text.style.display='none'; Codehighlighter1_939_1335_Closed_Image.style.display='inline'; Codehighlighter1_939_1335_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_939_1335_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_939_1335_Closed_Text.style.display='none'; Codehighlighter1_939_1335_Open_Image.style.display='inline'; Codehighlighter1_939_1335_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_939_1335_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_939_1335_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    initCacheAdmin();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> ( cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> SESSION_SCOPE </span><span style="COLOR: #000000">||</span><span style="COLOR: #000000"> cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> APPLICATION_SCOPE )<br /><img id="Codehighlighter1_1042_1202_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1042_1202_Open_Text.style.display='none'; Codehighlighter1_1042_1202_Closed_Image.style.display='inline'; Codehighlighter1_1042_1202_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1042_1202_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1042_1202_Closed_Text.style.display='none'; Codehighlighter1_1042_1202_Open_Image.style.display='inline'; Codehighlighter1_1042_1202_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_1042_1202_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_1042_1202_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      Cache cache </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> admin.getCache( ServletActionContext.getRequest(),<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                    cacheScope );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      cache.flushGroup( group );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_1217_1331_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1217_1331_Open_Text.style.display='none'; Codehighlighter1_1217_1331_Closed_Image.style.display='inline'; Codehighlighter1_1217_1331_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1217_1331_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1217_1331_Closed_Text.style.display='none'; Codehighlighter1_1217_1331_Open_Image.style.display='inline'; Codehighlighter1_1217_1331_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_1217_1331_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_1217_1331_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      log.warn( </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">A cache group was specified for flushing, but the scope wasn't supplied or was invalid</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />  }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_1340_1460_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1340_1460_Open_Text.style.display='none'; Codehighlighter1_1340_1460_Closed_Image.style.display='inline'; Codehighlighter1_1340_1460_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1340_1460_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1340_1460_Closed_Text.style.display='none'; Codehighlighter1_1340_1460_Open_Image.style.display='inline'; Codehighlighter1_1340_1460_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_1340_1460_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">/** */</span><span id="Codehighlighter1_1340_1460_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * 刷新osCache中的某个key'<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> key String<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> cacheScope Cache范围，只能是SESSION_SCOPE或APPLICATION_SCOPE<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />   </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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"> flushKey( String key, </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> cacheScope )<br /><img id="Codehighlighter1_1524_2006_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1524_2006_Open_Text.style.display='none'; Codehighlighter1_1524_2006_Closed_Image.style.display='inline'; Codehighlighter1_1524_2006_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1524_2006_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1524_2006_Closed_Text.style.display='none'; Codehighlighter1_1524_2006_Open_Image.style.display='inline'; Codehighlighter1_1524_2006_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_1524_2006_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_1524_2006_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    initCacheAdmin();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> ( cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> SESSION_SCOPE </span><span style="COLOR: #000000">||</span><span style="COLOR: #000000"> cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> APPLICATION_SCOPE )<br /><img id="Codehighlighter1_1627_1875_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1627_1875_Open_Text.style.display='none'; Codehighlighter1_1627_1875_Closed_Image.style.display='inline'; Codehighlighter1_1627_1875_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1627_1875_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1627_1875_Closed_Text.style.display='none'; Codehighlighter1_1627_1875_Open_Image.style.display='inline'; Codehighlighter1_1627_1875_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_1627_1875_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_1627_1875_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      String actualKey </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> admin.generateEntryKey(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          key, ServletActionContext.getRequest(), cacheScope, </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000"> );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      Cache cache </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> admin.getCache( ServletActionContext.getRequest(), cacheScope );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      cache.flushEntry( actualKey );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_1890_2002_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1890_2002_Open_Text.style.display='none'; Codehighlighter1_1890_2002_Closed_Image.style.display='inline'; Codehighlighter1_1890_2002_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1890_2002_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1890_2002_Closed_Text.style.display='none'; Codehighlighter1_1890_2002_Open_Image.style.display='inline'; Codehighlighter1_1890_2002_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_1890_2002_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_1890_2002_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      log.warn( </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">A cache key was specified for flushing, but the scope wasn't supplied or was invalid</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />  }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_2011_2113_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2011_2113_Open_Text.style.display='none'; Codehighlighter1_2011_2113_Closed_Image.style.display='inline'; Codehighlighter1_2011_2113_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2011_2113_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2011_2113_Closed_Text.style.display='none'; Codehighlighter1_2011_2113_Open_Image.style.display='inline'; Codehighlighter1_2011_2113_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_2011_2113_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">/** */</span><span id="Codehighlighter1_2011_2113_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * 刷新所有的osCache<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />   * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> cacheScope Cache范围，可以是SESSION_SCOPE，APPLICATION_SCOPE，ALL_SCOPE<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />   </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.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"> flushAll( </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> cacheScope )<br /><img id="Codehighlighter1_2165_2363_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2165_2363_Open_Text.style.display='none'; Codehighlighter1_2165_2363_Closed_Image.style.display='inline'; Codehighlighter1_2165_2363_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2165_2363_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2165_2363_Closed_Text.style.display='none'; Codehighlighter1_2165_2363_Open_Image.style.display='inline'; Codehighlighter1_2165_2363_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_2165_2363_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_2165_2363_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    initCacheAdmin();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> ( cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> SESSION_SCOPE </span><span style="COLOR: #000000">||</span><span style="COLOR: #000000"> cacheScope </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> APPLICATION_SCOPE )<br /><img id="Codehighlighter1_2268_2314_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2268_2314_Open_Text.style.display='none'; Codehighlighter1_2268_2314_Closed_Image.style.display='inline'; Codehighlighter1_2268_2314_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2268_2314_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2268_2314_Closed_Text.style.display='none'; Codehighlighter1_2268_2314_Open_Image.style.display='inline'; Codehighlighter1_2268_2314_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_2268_2314_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_2268_2314_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      admin.setFlushTime( cacheScope );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_2329_2359_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2329_2359_Open_Text.style.display='none'; Codehighlighter1_2329_2359_Closed_Image.style.display='inline'; Codehighlighter1_2329_2359_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2329_2359_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2329_2359_Closed_Text.style.display='none'; Codehighlighter1_2329_2359_Open_Image.style.display='inline'; Codehighlighter1_2329_2359_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_2329_2359_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_2329_2359_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      admin.flushAll();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />  }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><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">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> initCacheAdmin()<br /><img id="Codehighlighter1_2408_2557_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2408_2557_Open_Text.style.display='none'; Codehighlighter1_2408_2557_Closed_Image.style.display='inline'; Codehighlighter1_2408_2557_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2408_2557_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2408_2557_Closed_Text.style.display='none'; Codehighlighter1_2408_2557_Open_Image.style.display='inline'; Codehighlighter1_2408_2557_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />  </span><span id="Codehighlighter1_2408_2557_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_2408_2557_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> ( admin </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000"> )<br /><img id="Codehighlighter1_2439_2553_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2439_2553_Open_Text.style.display='none'; Codehighlighter1_2439_2553_Closed_Image.style.display='inline'; Codehighlighter1_2439_2553_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_2439_2553_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2439_2553_Closed_Text.style.display='none'; Codehighlighter1_2439_2553_Open_Image.style.display='inline'; Codehighlighter1_2439_2553_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_2439_2553_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_2439_2553_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      admin </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> ServletCacheAdministrator.getInstance( ServletActionContext.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          getServletContext() );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />  }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><img src ="http://www.blogjava.net/kelefa/aggbug/55678.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kelefa/" target="_blank">杨杰荣</a> 2006-06-29 09:32 <a href="http://www.blogjava.net/kelefa/archive/2006/06/29/OSCache.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>