﻿<?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>IT博客-fangblog</title><link>http://www.cnitblog.com/yunyushuiyun/</link><description>在交流中成长！</description><language>zh-cn</language><lastBuildDate>Wed, 29 Apr 2026 06:04:31 GMT</lastBuildDate><pubDate>Wed, 29 Apr 2026 06:04:31 GMT</pubDate><ttl>60</ttl><item><title>网页中随意移动的广告(1)</title><link>http://www.cnitblog.com/yunyushuiyun/archive/2007/10/19/35078.html</link><dc:creator>fang</dc:creator><author>fang</author><pubDate>Fri, 19 Oct 2007 04:54:00 GMT</pubDate><guid>http://www.cnitblog.com/yunyushuiyun/archive/2007/10/19/35078.html</guid><description><![CDATA[<p>(1)点击有链接 <br>第一种: <br>&lt;script&gt; <br>var imagepath="images/100x100.gif" //这里是浮动图片的地址 <br>var imagewidth=100 //这两行写图片的大小 <br>var imageheight=100 <br>var speed=3; <br>var imageclick="<a href="http://www.163.com/">http://www.163.com</a>" //这里写点击图片连接到的地址 <br>var hideafter=0 <br>var isie=0; <br>if(window.navigator.appName=="Microsoft Internet Explorer"&amp;&amp;window.navigator.appVersion.substring(window.navigator.appVersion.indexOf("MSIE")+5,window.navigator.appVersion.indexOf("MSIE")+8)&gt;=5.5) { <br>isie=1; <br>} <br>else { <br>isie=0; <br>} <br>if(isie){ <br>var preloadit=new Image() <br>preloadit.src=imagepath <br>} <br>function pop() { <br>if(isie) { <br>x=x+dx;y=y+dy; <br>oPopup.show(x, y, imagewidth, imageheight); <br>if(x+imagewidth+5&gt;screen.width) dx=-dx; <br>if(y+imageheight+5&gt;screen.height) dy=-dy; <br>if(x&lt;0) dx=-dx; <br>if(y&lt;0) dy=-dy; <br>startani=setTimeout("pop();",50); <br>} <br>} <br>function dismisspopup(){ <br>clearTimeout(startani) <br>oPopup.hide() <br>} <br>function dowhat(){ <br>if (imageclick=="dismiss") <br>dismisspopup() <br>else <br>window.open(imageclick); <br>} <br>if(isie) { <br>var x=0,y=0,dx=speed,dy=speed; <br>var oPopup = window.createPopup(); <br>var oPopupBody = oPopup.document.body; <br>oPopupBody.style.cursor="hand" <br>oPopupBody.innerHTML = '&lt;IMG SRC="'+preloadit.src+'"&gt;'; <br>oPopup.document.body. Function("clearTimeout(startani)") <br>oPopup.document.body. <br>oPopup.document.body. <br>pop(); <br>if (hideafter&gt;0) <br>setTimeout("dismisspopup()",hideafter*1000) <br>} <br>&lt;/script&gt; </p>
<p>第二种: <br>&lt;script&gt; <br>DriftBoxStr=(document.layers)?true:false; <br>if(DriftBoxStr){ <br>document.write('&lt;layer id=DriftBox width=100 height=100 ("DriftBox") ("DriftBox")&gt;&lt;a href="<a href="http://www.163.com/">http://www.163.com</a>" target=_blank&gt;&lt;img src="D:/abc/2006n.jpg" border=0 width="198" height="53" alt="" align=top&gt;X&lt;/a&gt;&lt;/layer&gt;'); <br>} <br>else{ <br>document.write('&lt;div id=DriftBox style="position:absolute; width:198px; height:53px; z-index:9; filter: Alpha(Opacity=90)" ("DriftBox") ("DriftBox")&gt;&lt;a href="<a href="http://www.163.com/">http://www.163.com</a>" target=_blank&gt;&lt;img src="D:/abc/2006n.jpg" border=0 width="100" height="100" alt="" align=top &gt;x&lt;/a&gt;&lt;/div&gt;'); <br>} <br>document.write('&lt;script language=javascript src=D:/abc/DriftBox.js&gt;&lt;/script&gt;'); <br>document.write('&lt;script src=http://www.163.com&gt;&lt;/script&gt;'); <br>function closeB(){ <br>document.getElementById('ad').style.visibility='hidden'; <br>} <br>&lt;/script&gt; <br>&lt;script&gt; <br>DriftBoxTF=navigator.javaEnabled()?true:false; <br>var DriftBoxMin=2; var DriftBoxMax=5; var DriftBoxRe=2; var DriftBoxTime; <br>function Chip(chipname,width,height) <br>{ <br>this.named=chipname; <br>this.vx=DriftBoxMin+DriftBoxMax*Math.random(); <br>this.vy=DriftBoxMin+DriftBoxMax*Math.random(); <br>this.w=width; this.h=height; <br>this.xx=0; <br>this.yy=0; <br>this.DriftBoxTime=null; <br>} <br>function movechip(chipname) <br>{ <br>if(DriftBoxTF) <br>{ <br>&nbsp; eval("chip="+chipname); <br>&nbsp; if(DriftBoxStr) <br>&nbsp; { <br>&nbsp;&nbsp; pageX=window.pageXOffset; <br>&nbsp;&nbsp; pageW=window.innerWidth; <br>&nbsp;&nbsp; pageY=window.pageYOffset; <br>&nbsp;&nbsp; pageH=window.innerHeight; <br>&nbsp; } <br>&nbsp; else <br>&nbsp; { <br>&nbsp;&nbsp; pageX=window.document.body.scrollLeft; <br>&nbsp;&nbsp; pageW=window.document.body.offsetWidth-8; <br>&nbsp;&nbsp; pageY=window.document.body.scrollTop; <br>&nbsp;&nbsp; pageH=window.document.body.offsetHeight; <br>&nbsp; } <br>&nbsp; chip.xx=chip.xx+chip.vx;chip.yy=chip.yy+chip.vy; <br>&nbsp; chip.vx+=DriftBoxRe*(Math.random()-0.5); <br>&nbsp; chip.vy+=DriftBoxRe*(Math.random()-0.5); <br>&nbsp; if(chip.vx&gt;(DriftBoxMax+DriftBoxMin)) chip.vx=(DriftBoxMax+DriftBoxMin)*2-chip.vx; <br>&nbsp; if(chip.vx&lt;(-DriftBoxMax-DriftBoxMin)) chip.vx=(-DriftBoxMax-DriftBoxMin)*2-chip.vx; <br>&nbsp; if(chip.vy&gt;(DriftBoxMax+DriftBoxMin)) chip.vy=(DriftBoxMax+DriftBoxMin)*2-chip.vy; <br>&nbsp; if(chip.vy&lt;(-DriftBoxMax-DriftBoxMin)) chip.vy=(-DriftBoxMax-DriftBoxMin)*2-chip.vy; <br>&nbsp; if(chip.xx&lt;=pageX) <br>&nbsp; { <br>&nbsp;&nbsp; chip.xx=pageX;chip.vx=DriftBoxMin+DriftBoxMax*Math.random(); <br>&nbsp;&nbsp; } <br>&nbsp; if(chip.xx&gt;=pageX+pageW-chip.w) <br>&nbsp; { <br>&nbsp;&nbsp; chip.xx=pageX+pageW-chip.w; <br>&nbsp;&nbsp; chip.vx=-DriftBoxMin-DriftBoxMax*Math.random(); <br>&nbsp;&nbsp; } <br>&nbsp; if(chip.yy&lt;=pageY){ <br>&nbsp;&nbsp; chip.yy=pageY; <br>&nbsp;&nbsp; chip.vy=DriftBoxMin+DriftBoxMax*Math.random(); <br>&nbsp;&nbsp; } <br>&nbsp; if(chip.yy&gt;=pageY+pageH-chip.h){ <br>&nbsp;&nbsp; chip.yy=pageY+pageH-chip.h; <br>&nbsp;&nbsp; chip.vy=-DriftBoxMin-DriftBoxMax*Math.random(); <br>&nbsp;&nbsp; } <br>&nbsp; if(DriftBoxStr) <br>&nbsp; { <br>&nbsp;&nbsp; eval('document.'+chip.named+'.top ='+chip.yy); <br>&nbsp;&nbsp; eval('document.'+chip.named+'.left='+chip.xx); <br>&nbsp;&nbsp; } <br>&nbsp; else <br>&nbsp; { <br>&nbsp;&nbsp; eval('document.all.'+chip.named+'.style.pixelLeft='+chip.xx); <br>&nbsp;&nbsp; eval('document.all.'+chip.named+'.style.pixelTop ='+chip.yy); <br>&nbsp;&nbsp; } <br>&nbsp; chip.DriftBoxTime=setTimeout("movechip('"+chip.named+"')",100); <br>} <br>} <br>function DriftBoxSM(chipname) <br>{ <br>if(DriftBoxTF) <br>{ <br>&nbsp; eval("chip="+chipname); <br>&nbsp; if(chip.DriftBoxTime!=null) <br>&nbsp; { <br>&nbsp;&nbsp; clearTimeout(chip.DriftBoxTime) <br>&nbsp; } <br>} <br>} <br>var DriftBox; <br>function DriftBox() <br>{ <br>DriftBox=new Chip("DriftBox",60,80); <br>if(DriftBoxTF) <br>{ movechip("DriftBox");&nbsp;&nbsp; } <br>}window.onload=DriftBox; </p>
<p>&lt;/script&gt;</p>
<img src ="http://www.cnitblog.com/yunyushuiyun/aggbug/35078.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/yunyushuiyun/" target="_blank">fang</a> 2007-10-19 12:54 <a href="http://www.cnitblog.com/yunyushuiyun/archive/2007/10/19/35078.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>存储过程，触发器，事务和锁</title><link>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/28/19670.html</link><dc:creator>fang</dc:creator><author>fang</author><pubDate>Tue, 28 Nov 2006 01:59:00 GMT</pubDate><guid>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/28/19670.html</guid><wfw:comment>http://www.cnitblog.com/yunyushuiyun/comments/19670.html</wfw:comment><comments>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/28/19670.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/yunyushuiyun/comments/commentRss/19670.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/yunyushuiyun/services/trackbacks/19670.html</trackback:ping><description><![CDATA[
		<p>存储过程：<br />        预先用SQL语句写好的，并用存储起来，如果需要的数据库提供与定义好的存储过程的功能相同时，只要调用execute()方法，即可执行。<br /><br />触发器：<br />        个人认为是一种特殊的存储过程,因为它是当运行到标签所在的位置时，才触发这个SQL语名的功能.<br /><br />事务:<br />       事务就是一个单元的工作，包括一系列的操作，这些操作要么全部成功，要么全部失败。<br />锁:<br />       锁就是保护指定的资源，不被其他事务操作。<br /><br /><br />事务和锁的特点 </p>
		<p style="TEXT-INDENT: 2em">事务的特点： </p>
		<p style="TEXT-INDENT: 2em">1. 事务是一个单元的工作，要么全做，要么全不做 </p>
		<p style="TEXT-INDENT: 2em">2. 事务保证操作的一致性和可恢复性 </p>
		<p style="TEXT-INDENT: 2em">3. 每一条Transact-SQL语句都可以是一个事务 </p>
		<p style="TEXT-INDENT: 2em">4. 实际使用的事务是用户定义的事务，它包括一系列操作或者语句 </p>
		<p style="TEXT-INDENT: 2em">5. 在多服务器环境中，使用用户定义的分布式事务，保证操作的一致性 </p>
		<p style="TEXT-INDENT: 2em">锁的特点： </p>
		<p style="TEXT-INDENT: 2em">1. 锁是保证并发控制的手段 </p>
		<p style="TEXT-INDENT: 2em">2. 可以锁定的资源包括行、页、簇、表和数据库 </p>
		<p style="TEXT-INDENT: 2em">3. 锁的类型主要包括共享锁和排它锁 </p>
		<p style="TEXT-INDENT: 2em">4. 特殊类型的锁包括意图锁、修改锁和模式锁 </p>
		<p style="TEXT-INDENT: 2em">5. 共享锁允许其他事务继续使用锁定的资源 </p>
		<p style="TEXT-INDENT: 2em">6. 排它锁只允许一个事务访问数据 </p>
		<p style="TEXT-INDENT: 2em">7. 系统本身可以处理死锁 </p>
		<p style="TEXT-INDENT: 2em">8. 用户可以根据实际情况定制锁的一些特征 </p>
<img src ="http://www.cnitblog.com/yunyushuiyun/aggbug/19670.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/yunyushuiyun/" target="_blank">fang</a> 2006-11-28 09:59 <a href="http://www.cnitblog.com/yunyushuiyun/archive/2006/11/28/19670.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>J2EE程序员的武功修为(转) </title><link>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/23/19547.html</link><dc:creator>fang</dc:creator><author>fang</author><pubDate>Thu, 23 Nov 2006 12:24:00 GMT</pubDate><guid>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/23/19547.html</guid><wfw:comment>http://www.cnitblog.com/yunyushuiyun/comments/19547.html</wfw:comment><comments>http://www.cnitblog.com/yunyushuiyun/archive/2006/11/23/19547.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/yunyushuiyun/comments/commentRss/19547.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/yunyushuiyun/services/trackbacks/19547.html</trackback:ping><description><![CDATA[自评的一个参考标准： 
<p>　　第一个层次：精通掌握Java语法、能调试基本的程序错误，精通掌握JSP+Java Bean写一些N年前ASP、PHP翻版的Java Web应用程序（如论坛、网站新闻发布系统、OA、网上商城等），精通JDBC使用、精通SQL语句、精通XML等。</p><p>　　第二个层次：掌握设计模式原理及应用，掌握基于OO的分析及设计方法,并能精通熟练使用几种Java专业设计及开发工具，精通掌握流行的J2EE框架如Hibernate、EJB、Webwork、Spring的原理及应用，精通J2EE中一两个组成部分(如Servlet、EJB等)的工作原理及细节。</p><p>　　第三个层次：少林的高僧有两种，禅僧及武僧。J2EE程序员的第三个层次也同样有禅、武两个分支，这里我们重点分析一下：</p><p>　　第一个分支属于走的禅僧线路。在练完第二个层次中的各种武功基础上，结合实际项目中的千奇百怪的用户需求，游刃有余的选择适合的技术方案为客户解决问题，并形成自己的一套解决方案。达到这一个层次的J2EE程序员已经不在乎使用任何工具、任何框架了，而是根据不同的对手，使用不同的武器或招式来应对。好比小李飞刀一样，只有达到了“手中无刀、心中有刀”的境界，才能达到“出手一刀，例不虚发”的效果。这一层次的武功属于一个熟练度问题，刀练得多了、遇到的对手多了，再加上前面的武功修为，就算做不到例不虚发，也可达到十发九中。</p><p>　　第二个分支属于走的武僧线路，在撑握熟悉第一二个层次中涉及到的内容后，进一步专研并撑握J2EE底层开发，J2EE规范制订、规范实现、Java虚拟机的工作原理、各种常见的J2EE服务器内核工作机制、内存管理、进程机制、源代码等。因为涉及的很多东西都比较抽象，代码也很多，练这一层的武功需要有很好的资质及耐性、并具还得有一定的环境及条件。好比神雕大侠杨过拿起“玄铁剑”，并练成“暗然销魂掌”的成长过程，需要前面的武功修为作基础，更需那只威力神武神雕的帮助指点及他处处为民、惩奸除恶的侠之心态。</p><img src ="http://www.cnitblog.com/yunyushuiyun/aggbug/19547.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/yunyushuiyun/" target="_blank">fang</a> 2006-11-23 20:24 <a href="http://www.cnitblog.com/yunyushuiyun/archive/2006/11/23/19547.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ant+cactus+tomcat5.5容器内单元测试简明手册</title><link>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18421.html</link><dc:creator>fang</dc:creator><author>fang</author><pubDate>Thu, 26 Oct 2006 02:58:00 GMT</pubDate><guid>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18421.html</guid><wfw:comment>http://www.cnitblog.com/yunyushuiyun/comments/18421.html</wfw:comment><comments>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18421.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/yunyushuiyun/comments/commentRss/18421.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/yunyushuiyun/services/trackbacks/18421.html</trackback:ping><description><![CDATA[
		<a href="http://www.matrix.org.cn/resource/article/2006-01-18/ant+cactus+tomcat5.5_44173.html">http://www.matrix.org.cn/resource/article/2006-01-18/ant+cactus+tomcat5.5_44173.html</a>
<img src ="http://www.cnitblog.com/yunyushuiyun/aggbug/18421.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/yunyushuiyun/" target="_blank">fang</a> 2006-10-26 10:58 <a href="http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18421.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA八种数据类型</title><link>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18419.html</link><dc:creator>fang</dc:creator><author>fang</author><pubDate>Thu, 26 Oct 2006 02:56:00 GMT</pubDate><guid>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18419.html</guid><wfw:comment>http://www.cnitblog.com/yunyushuiyun/comments/18419.html</wfw:comment><comments>http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18419.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/yunyushuiyun/comments/commentRss/18419.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/yunyushuiyun/services/trackbacks/18419.html</trackback:ping><description><![CDATA[
		<table cellspacing="0" cellpadding="0" width="100%" border="0">
				<tbody>
						<tr>
								<td>
										<p>
												<font face="Verdana">1      java中基本数据类型：<br />8种类型         字节      数据容器（类）            想存更大的数 <br />byte              1            Byte<br />char              2            Character<br />short             2            Short<br />int                 4            Integer                           BigInteger<br />float              4             Floa<br />long              8             Longt                              <br />double          8             Double                          BigDecimal<br />boolean        没有         Boolean                        </font>
										</p>
										<p>
												<font face="Verdana">2     java所有度对象存放于堆中<br />一    内存的四个区域<br />全局区：   静态变量<br />代码区：   常量<br />堆栈区：   基本数据类型，对象的引用。<br />堆区：       对象</font>
										</p>
										<p>
												<font face="Verdana">3    java的垃圾回收是堆区<br />因为堆栈区是自动回收的（任何编译静态变量是全局的不会被回收，<br />代码区要调用也不会被回收。）</font>
										</p>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.cnitblog.com/yunyushuiyun/aggbug/18419.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/yunyushuiyun/" target="_blank">fang</a> 2006-10-26 10:56 <a href="http://www.cnitblog.com/yunyushuiyun/archive/2006/10/26/18419.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>