﻿<?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-ice world-随笔分类-Others</title><link>http://www.blogjava.net/icewee/category/49013.html</link><description>There is nothing too difficult if you put your heart into it.</description><language>zh-cn</language><lastBuildDate>Tue, 01 Apr 2014 04:16:31 GMT</lastBuildDate><pubDate>Tue, 01 Apr 2014 04:16:31 GMT</pubDate><ttl>60</ttl><item><title>ORA-01438: value larger than specified precision allowed for this column &amp; Could not synchronize database state with session</title><link>http://www.blogjava.net/icewee/archive/2014/03/28/411644.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 28 Mar 2014 10:54:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2014/03/28/411644.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/411644.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2014/03/28/411644.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/411644.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/411644.html</trackback:ping><description><![CDATA[<div><span style="font-size: 12pt">有段日子没做记录了，这段日子一直在排雷（前人埋下的隐患代码，或者直接说bug），今天这个雷让我排了将近大半天，因为是正式上线的系统，只能看后台日志，不能调试，打印出的异常信息不完整，种种的条件不充分，导致问题很难定位。标题上的两个异常，第一个一看就明白是插入的数值大于数据库字段长度，第二个多是因为Number类型的字段导致，比如精度不足。</span><br /><br /><span style="font-size: 12pt">我们的这次问题原因是程序员在做除法运算时没有对除数进行非零判断，导致计算出来的数值非法，插入数据库失败，请看代码： 
<div style="font-size: 13px; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; border-bottom: #cccccc 1px solid; word-break: break-all; padding-bottom: 4px; padding-top: 4px; padding-left: 4px; border-left: #cccccc 1px solid; padding-right: 5px; width: 98%; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img onclick="this.style.display='none'; Codehighlighter1_39_183_Open_Text.style.display='none'; Codehighlighter1_39_183_Closed_Image.style.display='inline'; Codehighlighter1_39_183_Closed_Text.style.display='inline';" id="Codehighlighter1_39_183_Open_Image" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img onclick="this.style.display='none'; Codehighlighter1_39_183_Closed_Text.style.display='none'; Codehighlighter1_39_183_Open_Image.style.display='inline'; Codehighlighter1_39_183_Open_Text.style.display='inline';" id="Codehighlighter1_39_183_Closed_Image" style="display: none" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;main(String[]&nbsp;args)&nbsp;</span><span id="Codehighlighter1_39_183_Closed_Text" style="border-top: #808080 1px solid; border-right: #808080 1px solid; border-bottom: #808080 1px solid; border-left: #808080 1px solid; display: none; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_39_183_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;a&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">10</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;b&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;m&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;a</span><span style="color: #000000">/</span><span style="color: #000000">c;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">double</span><span style="color: #000000">&nbsp;n&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;b</span><span style="color: #000000">/</span><span style="color: #000000">c;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(m);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(n);<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div><br />经过计算后，m和n的值分别是多少？没在实际开发中遇到的可能不知道，或者你有个好习惯不会出现这样的bug，请看结果：<br />
<div style="font-size: 13px; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; border-bottom: #cccccc 1px solid; word-break: break-all; padding-bottom: 4px; padding-top: 4px; padding-left: 4px; border-left: #cccccc 1px solid; padding-right: 5px; width: 98%; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">Infinity<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />NaN</span></div><br />被除数非零，除数为零做除法的结果是字符串&#8220;Infinity&#8221;，翻译成中文就是&#8220;无限&#8221;，你的中学数学老师可能说过；<br />被除数为零，除数为零做触发的结果是字符串&#8220;NaN&#8221;，即不是有效的数字。<br /><br />就是这个&#8220;Infinity&#8221;花费了我一小天的时间才定位。下面详述问题定位的方法。<br /><br />异常1：ORA-01438: value larger than specified precision allowed for this column<br />了解点数据库的打眼一看就知道插入的数值超过了表字段长度，但你知道是哪个表哪个字段吗？我不知道，于是网上查阅了下，Oracle数据库服务器在Linux上。<br /><br />命令行登陆到数据库所在服务器，进入Oracle的安装目录，假设是/opt/oracle/<br />进入到如下目录：/opt/oracle/admin/实例名/udump<br />中间的数据库实例名根据实际情况修改，udump目录下会有一堆的.trc文件，这些文件记录了所有操作当前数据库出现异常的堆栈信息。为了定位问题，我将该目录下的所有.trc文件都删除了（当然，删除之前把udump目录整个备份了），再进行一次系统的业务操作，查看一下udump目录，发现立刻生成一个新 的.trc文件，打开查看（内容片段）：<br />
<div style="font-size: 13px; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; border-bottom: #cccccc 1px solid; word-break: break-all; padding-bottom: 4px; padding-top: 4px; padding-left: 4px; border-left: #cccccc 1px solid; padding-right: 5px; width: 98%; background-color: #eeeeee"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">Oracle&nbsp;Database&nbsp;10g&nbsp;Enterprise&nbsp;Edition&nbsp;Release&nbsp;</span><span style="color: #800000">10.2</span><span style="color: #000000">.</span><span style="color: #800000">0.4</span><span style="color: #000000">.</span><span style="color: #800000">0</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;64bit&nbsp;Production<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />With&nbsp;the&nbsp;Partitioning</span><span style="color: #000000">,</span><span style="color: #000000">&nbsp;Real&nbsp;Application&nbsp;Clusters</span><span style="color: #000000">,</span><span style="color: #000000">&nbsp;OLAP</span><span style="color: #000000">,</span><span style="color: #000000">&nbsp;Data&nbsp;Mining<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />and&nbsp;Real&nbsp;Application&nbsp;Testing&nbsp;options<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />ORACLE_HOME&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">u01</span><span style="color: #000000">/</span><span style="color: #000000">app</span><span style="color: #000000">/</span><span style="color: #000000">oracle</span><span style="color: #000000">/</span><span style="color: #000000">product</span><span style="color: #000000">/</span><span style="color: #800000">10.2</span><span style="color: #000000">/</span><span style="color: #000000">db_1<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">System</span><span style="color: #000000">&nbsp;name</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;AIX<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Node&nbsp;name</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;gsdj1<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Release</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Version</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">6</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Machine</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;00CFD4644C00<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Instance&nbsp;name</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;bjwd1<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">Redo</span><span style="color: #000000">&nbsp;thread&nbsp;mounted&nbsp;by&nbsp;this&nbsp;instance</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Oracle&nbsp;process&nbsp;number</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">132</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Unix&nbsp;process&nbsp;pid</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">48300280</span><span style="color: #000000">,</span><span style="color: #000000">&nbsp;image</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;oracle</span><span style="color: #800080">@gsdj1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">***</span><span style="color: #000000">&nbsp;SERVICE&nbsp;NAME</span><span style="color: #000000">:</span><span style="color: #000000">(bjwd)&nbsp;</span><span style="color: #800000">2014</span><span style="color: #000000">-</span><span style="color: #800000">03</span><span style="color: #000000">-</span><span style="color: #800000">28</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">16</span><span style="color: #000000">:</span><span style="color: #800000">48</span><span style="color: #000000">:</span><span style="color: #800000">05.683</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">***</span><span style="color: #000000">&nbsp;SESSION&nbsp;ID</span><span style="color: #000000">:</span><span style="color: #000000">(</span><span style="color: #800000">2969.43961</span><span style="color: #000000">)&nbsp;</span><span style="color: #800000">2014</span><span style="color: #000000">-</span><span style="color: #800000">03</span><span style="color: #000000">-</span><span style="color: #800000">28</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">16</span><span style="color: #000000">:</span><span style="color: #800000">48</span><span style="color: #000000">:</span><span style="color: #800000">05.683</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">***</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">2014</span><span style="color: #000000">-</span><span style="color: #800000">03</span><span style="color: #000000">-</span><span style="color: #800000">28</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">16</span><span style="color: #000000">:</span><span style="color: #800000">48</span><span style="color: #000000">:</span><span style="color: #800000">05.683</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />ksedmp</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;internal&nbsp;or&nbsp;fatal&nbsp;error<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />ORA</span><span style="color: #000000">-</span><span style="color: #800000">01438</span><span style="color: #000000">:</span><span style="color: #000000">&nbsp;value&nbsp;larger&nbsp;than&nbsp;specified&nbsp;precision&nbsp;allowed&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;this&nbsp;column<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />Current&nbsp;SQL&nbsp;statement&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;this&nbsp;session</span><span style="color: #000000">:</span><span style="color: #000000"><br style="background-color: yellow" /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: red; background-color: yellow">insert&nbsp;into&nbsp;CP_TEMP_STOCKTRAN&nbsp;(APPLY_ID</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;ALIEN</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;CER_TYPE</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;CER_NO</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;TRANS_AM</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;TRANS_AM_PR</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;TRANS_TYPE</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;TRANS_DATE</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;ENDORSOR</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;BLIC_TYPE</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;ALIEN_ID</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;ENDORSOR_ID</span><span style="color: red; background-color: yellow">,</span><span style="color: red; background-color: yellow">&nbsp;STOCKTRAN_ID)&nbsp;</span><span style="color: red; background-color: yellow">v</span><span style="color: #ffff00; background-color: yellow">alues</span><span style="color: red; background-color: yellow">&nbsp;(</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">1</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">2</span><span style="color: red; background-color: yellow">,</span><span style="color: #ffff00">&nbsp;</span><span style="color: #ffff00; background-color: yellow">:</span><span style="color: red; background-color: yellow">3</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">4</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">5</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">6</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">7</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">8</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">9</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">10</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">11</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">12</span><span style="color: red; background-color: yellow">,</span><span style="color: #000000">&nbsp;</span><span style="color: red; background-color: yellow">:</span><span style="color: red; background-color: yellow">13</span><span style="color: red; background-color: yellow">)</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />黄色背景红色字体的SQL就是罪魁祸首，这仅仅能定位发生问题的数据库表，字段还得自己排查。异常1让我定位到了这里，这时想起了异常2。<br /><br /><br />异常2：&nbsp;Could not synchronize database state with session<br />之前也搜索过这个异常，多数是由于Number类型的字段导致。冷静的思考一下，平常我们在做表设计时，会把文字类型的字段设置大一些，Number类型的精度也会根据实际业务进行设计，但往往Number类型的字段最容易出问题：<br />1、如果将非Number值插入该字段，比如字符串<br />2、如果插入的数值精度过多，如字段设计Number(10,2)，也就是最大支持8为整数和两位小数，要插入34.121313就会失败<br /><br />根据表名定位到hibernate的映射文件以及实体类，再从业务功能入口（一个action方法）搜索，终于定位到一个业务接口做了该实体类的保存代码，定位到了那个字段，定位到了做除法没有判断除数是否为0。<br /><br /><br /><br /><br /><br /><br /><br /></span><br /></div><img src ="http://www.blogjava.net/icewee/aggbug/411644.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2014-03-28 18:54 <a href="http://www.blogjava.net/icewee/archive/2014/03/28/411644.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Debian 网络设置以及非法关机后无法联网 connect: network is unreachable</title><link>http://www.blogjava.net/icewee/archive/2014/01/24/409301.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 24 Jan 2014 02:50:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2014/01/24/409301.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/409301.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2014/01/24/409301.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/409301.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/409301.html</trackback:ping><description><![CDATA[<span style="font-size: 12pt;">
 
网络配置：</span><br /><span style="font-size: 12pt;">临时（重</span><span style="font-size: 12pt;">启</span><span style="font-size: 12pt;">丢失）</span><br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">ifconfig eth0 </span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">1</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">xxx netmask </span><span style="color: rgb(128, 0, 0); font-size: 12pt;">255.255</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">xxx</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">0</span></div><br /><br /><span style="font-size: 12pt;">永久（重启有效）</span><br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">vi </span><span style="color: rgb(0, 0, 0); font-size: 12pt;">/</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">etc</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">/</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">network</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">/</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">interfaces</span></div><br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 128, 0); font-size: 12pt;">#</span><span style="color: rgb(0, 128, 0); font-size: 12pt;">&nbsp;This&nbsp;file&nbsp;describes&nbsp;the&nbsp;network&nbsp;interfaces&nbsp;available&nbsp;on&nbsp;your&nbsp;system<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 128, 0); font-size: 12pt;">#&nbsp;and&nbsp;how&nbsp;to&nbsp;activate&nbsp;them.&nbsp;For&nbsp;more&nbsp;information,&nbsp;see&nbsp;interfaces(5).<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 128, 0); font-size: 12pt;">#&nbsp;The&nbsp;loopback&nbsp;network&nbsp;interface</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">auto&nbsp;lo<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">iface&nbsp;lo&nbsp;inet&nbsp;loopback<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 128, 0); font-size: 12pt;">#</span><span style="color: rgb(0, 128, 0); font-size: 12pt;">&nbsp;The&nbsp;primary&nbsp;network&nbsp;interface</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">allow</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">-</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">hotplug&nbsp;eth0<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">iface&nbsp;eth0&nbsp;inet&nbsp;static<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;address&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">.xxx</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;netmask&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">255.255</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.xxx</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">.0</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;network&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;broadcast&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">.255</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gateway&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">.1</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0); font-size: 12pt;">#</span><span style="color: rgb(0, 128, 0); font-size: 12pt;">&nbsp;dns-*&nbsp;options&nbsp;are&nbsp;implemented&nbsp;by&nbsp;the&nbsp;resolvconf&nbsp;package,&nbsp;if&nbsp;installed</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0); font-size: 12pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dns</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">-</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">nameservers&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">202.106</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">196.115</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span></div><p><br /><span style="font-size: 12pt;">由于非法关机导致重启后无法联网</span><br /></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">ifconfig&nbsp;eth0&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">1</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">xxx&nbsp;netmask&nbsp;</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">255.255</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">xxx</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span></div><span style="color: rgb(0, 0, 0);"><br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">route add default gw </span><span style="color: rgb(128, 0, 0); font-size: 12pt;">192.168</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">.</span><span style="color: rgb(128, 0, 0); font-size: 12pt;">1.1</span></div></span><br /><span style="font-size: 12pt;">重启后配置丢失，所以必须在重启之前执行：<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">apt</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">-</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">get update</span></div><br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 12pt; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0); font-size: 12pt;">apt</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">-</span><span style="color: rgb(0, 0, 0); font-size: 12pt;">get install</span><span style="color: rgb(0, 0, 0);"> ifupdown</span></div><br />不能联网是因为非法关机导致ifup脚本丢失<br /></span><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/icewee/aggbug/409301.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2014-01-24 10:50 <a href="http://www.blogjava.net/icewee/archive/2014/01/24/409301.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SVN(Subversion)自动同步备份配置</title><link>http://www.blogjava.net/icewee/archive/2014/01/23/409261.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Thu, 23 Jan 2014 03:08:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2014/01/23/409261.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/409261.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2014/01/23/409261.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/409261.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/409261.html</trackback:ping><description><![CDATA[
 
源机器：192.168.1.1<br />备份机器：192.168.1.2<br /><br />前提条件：<br />1、两台机器的网络是连通的<br />2、两台机器必须同时安装了SVN服务器<br /><br />假设：<br />源机器上需要同步的库名为autoSync，访问地址为：svn://192.168.1.1/autoSync，对其具备读写权限的账户：sync/sync<br /><br />备份机器配置：<br />1、创建与源机器库名相同的空库<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);"> 假设备份机器的SVN根目录建立在 /home/backup/svn/repository下</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">svnadmin create </span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">home</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">backup</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">svn</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">repository</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span></div><br />2、配置备份机器上的autoSync<br />分别修改conf下的svnserve.conf、passwd、authz，根据实际情况配置，假设创建了用户sync/sync，对库autoSync具备读写权限，配置方法略，配置完成后启动SVN服务<br /><br />3、创建并修改pre-revprop-change文件<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">cd </span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">home</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">backup</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">svn</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">repository</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">hooks<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />cp pre</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">revprop</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">change</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">tmpl pre</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">revprop</span><span style="color: rgb(0, 0, 0);">-</span><span>change<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span>vi pre</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">revprop</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">chan</span><span>ge</span></div><br /><span>将文件末尾</span><span>的&#8220;exit</span><span> </span><span>1&#8221;</span><span>修</span>改为&#8220;exit 0&#8221;即可，保存退出<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">REPOS</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">$1</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />REV</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">$2</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />USER</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">$3</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />PROPNAME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">$4</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />ACTION</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">$5</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />if </span><span style="color: rgb(128, 0, 0); font-weight: bold;">[</span><span style="color: rgb(128, 0, 0);"> "$ACTION" = "M" -a "$PROPNAME" = "svn:log" </span><span style="color: rgb(128, 0, 0); font-weight: bold;">]</span><span style="color: rgb(0, 128, 0);">;</span><span style="color: rgb(0, 128, 0);"> then exit 0; fi</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />echo </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Changing revision properties other than svn:log is prohibited</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"> &gt;&amp;</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />exit </span><span style="color: red;">0</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />增加可执行权限<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">chmod</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(128, 0, 0);">755</span><span style="color: rgb(0, 0, 0);"> pre</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">revprop</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">change</span></div><br />4、初始化<br />命令：<br />svnsync init --username 用户名 --password 密码 备份机器库URL 源机器库URL<br /><br />说明：<br />用户名和密码是对源机器SVN库具备读写权限的SVN用户<br /><br />示例：<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">svnsync init </span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">username sync </span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">password sync svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.2</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.1</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span></div><br />5、首次同步<br />首次同步即为一次全备份过程，在此期间请停止客户端段源机器哦一切操作（提交代码等）<br />命令：<br />svnsync sync 备份机器库URL<br />示例：<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">svnsync sync svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.2</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span></div><br />源机器配置<br />6、增量自动同步配置<br />创建并修改post-commit文件<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);"> 假设源机器的SVN根目录建立在 /home/svn/repository下</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">cd </span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">home</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">svn</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">repository</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">hooks<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />cp post</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">commit</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(0, 0, 0);">tmpl post</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">commit<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />vi post</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">commit</span></div><br />在文件末尾追加：svnsync sync --non-interactive 备份机器库URL --username 用户名 --password 密码<br /><br />说明：<br />用户名和密码是对备份机器SVN库具备读写权限的SVN用户<br /><br />示例：<br /><span style="color: rgb(0, 0, 0);"><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">svnsync sync </span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">non</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">interactive svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.2</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync </span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">username sync </span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">password sync</span></div></span><br />7、术语<br />配置完成，今后客户端再向SVN（192.168.1.1）提交文件时，会自动触发源机器（192.168.1.1）向备份机器（192.168.1.2）提交更新<br /><br />8、版本库UUID一致性<br />首先查看源机器库的UUID，假设得到的是：fcdcbee9-6be3-4575-8d4a-681ec15ad8e0<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">svnlook uuid svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.1</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync</span></div><br />更新备份机器库的UUID为源机器库的UUID<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">svnadmin setuuid svn</span><span style="color: rgb(0, 0, 0);">://</span><span style="color: rgb(128, 0, 0);">192.168</span><span style="color: rgb(0, 0, 0);">.</span><span style="color: rgb(128, 0, 0);">1.2</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">autoSync fcdcbee9</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">6be3</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(128, 0, 0);">4575</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">8d4a</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">681ec15ad8e0</span></div><br /><br /><br /><br /><img src ="http://www.blogjava.net/icewee/aggbug/409261.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2014-01-23 11:08 <a href="http://www.blogjava.net/icewee/archive/2014/01/23/409261.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Debian Subversion(SVN)的安装</title><link>http://www.blogjava.net/icewee/archive/2014/01/17/409059.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 17 Jan 2014 07:48:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2014/01/17/409059.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/409059.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2014/01/17/409059.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/409059.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/409059.html</trackback:ping><description><![CDATA[<span style="font-size: 12pt;">
</span><span style="font-size: 12pt;">
</span><span style="font-size: 12pt;">
 
本文记录的安装步骤是基于基本安装后的Debian，启动后漆黑一片，只有命令行，采用在线安装方式，因此配置中国的镜像软件源能提高软件的下载速度，首先配置软件源。</span><br /><br /><span style="color: red; font-size: 12pt;">备份源文件</span><br /><span style="font-size: 12pt;"># </span><span style='color: rgb(51, 51, 51); font-family: "Tahoma","sans-serif"; font-size: 12pt; mso-fareast-font-family: 宋体; mso-font-kerning: 0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;' lang="EN-US">cp /etc/apt/sources.list /etc/apt/sources.list.bak<br /></span><br /><span style="font-size: 12pt;">编辑源文件</span><br /><span style="font-size: 12pt;"># </span><span style='color: rgb(51, 51, 51); font-family: "Tahoma","sans-serif"; font-size: 12pt;'>nano /etc/apt/sources.list<br /></span><br /><span style="font-size: 12pt;">注释掉本地光盘源这一行，注释后如：</span><br /><span style="font-size: 12pt;"># deb cdrom:[Debian GNU/Linux 6.0.7 _Squeeze_ - Official amd64 NETINST Binary-1 20130223-18:50]/ squeeze main</span><br /><br /><span style="font-size: 12pt;">取消下面两行官方源前面的注释</span><br /><span style="font-size: 12pt;">deb </span><a href="http://security.debian.org/"><span style="font-size: 12pt;">http://security.debian.org/</span></a><span style="font-size: 12pt;"> squeeze/updates main</span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://security.debian.org/"><span style="font-size: 12pt;">http://security.debian.org/</span></a><span style="font-size: 12pt;"> squeeze/updates main</span><br /><br /><span style="font-size: 12pt;">追加163的镜像源地址</span><br /><span style="font-size: 12pt;">deb </span><a href="http://mirrors.163.com/debian/"><span style="font-size: 12pt;">http://mirrors.163.com/debian/</span></a><span style="font-size: 12pt;"> squeeze main non-free contrib </span><br /><span style="font-size: 12pt;">deb </span><a href="http://mirrors.163.com/debian/"><span style="font-size: 12pt;">http://mirrors.163.com/debian/</span></a><span style="font-size: 12pt;"> squeeze-proposed-updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb </span><a href="http://mirrors.163.com/debian-security/"><span style="font-size: 12pt;">http://mirrors.163.com/debian-security/</span></a><span style="font-size: 12pt;"> squeeze/updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://mirrors.163.com/debian/"><span style="font-size: 12pt;">http://mirrors.163.com/debian/</span></a><span style="font-size: 12pt;"> squeeze main non-free contrib </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://mirrors.163.com/debian/"><span style="font-size: 12pt;">http://mirrors.163.com/debian/</span></a><span style="font-size: 12pt;"> squeeze-proposed-updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://mirrors.163.com/debian-security/"><span style="font-size: 12pt;">http://mirrors.163.com/debian-security/</span></a><span style="font-size: 12pt;"> squeeze/updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb </span><a href="http://ftp.sjtu.edu.cn/debian/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian/</span></a><span style="font-size: 12pt;"> squeeze main non-free contrib </span><br /><span style="font-size: 12pt;">deb </span><a href="http://ftp.sjtu.edu.cn/debian/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian/</span></a><span style="font-size: 12pt;"> squeeze-proposed-updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb </span><a href="http://ftp.sjtu.edu.cn/debian-security/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian-security/</span></a><span style="font-size: 12pt;"> squeeze/updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://ftp.sjtu.edu.cn/debian/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian/</span></a><span style="font-size: 12pt;"> squeeze main non-free contrib </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://ftp.sjtu.edu.cn/debian/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian/</span></a><span style="font-size: 12pt;"> squeeze-proposed-updates main contrib non-free </span><br /><span style="font-size: 12pt;">deb-src </span><a href="http://ftp.sjtu.edu.cn/debian-security/"><span style="font-size: 12pt;">http://ftp.sjtu.edu.cn/debian-security/</span></a><span style="font-size: 12pt;"> squeeze/updates main contrib non-free</span><br /><br /><span style="font-size: 12pt;">保存修改</span><br /><span style="font-size: 12pt;"># ctrl + o 回车</span><br /><span style="font-size: 12pt;">退出</span><br /><span style="font-size: 12pt;"># ctrl + x</span><br /><br /><span style="font-size: 12pt;">更新源</span><br /><span style="font-size: 12pt;"># apt-get update</span><br /><br /><span style="font-size: 12pt;">更新系统</span><br /><span style="font-size: 12pt;"># apt-get upgrade</span><br /><br /><span style="font-size: 12pt;"><strong>安装SVN服务器</strong></span><br /><span style="font-size: 12pt;"># apt-get install subversion subversion-tools</span><br /><br /><span style="font-size: 12pt;">安装完成后可以运行命令查看SVN服务器版本信息</span><br /><span style="font-size: 12pt;"># svnserve --version</span><br /><br /><span style="font-size: 12pt;"><strong>配置SVN</strong></span><br /><span style="font-size: 12pt;">首先创建版本库的根目录，如位置：/home/svn/repository，所有项目都将在该目录下创建相应子文件夹</span><br /><span style="font-size: 12pt;"># mkdir &#8211;p /home/svn/repository</span><br /><br /><span style="font-size: 12pt;">创建项目版本库test（仅为演示）</span><br /><span style="font-size: 12pt;"># svnadmin create /home/svn/repository/test</span><p><br /><span style="font-size: 12pt;">修改SVN配置文件</span><br /><span style="font-size: 12pt;">nano /home/svn/repository/test/conf/svnserve.conf</span></p><p><span style="font-size: 12pt;">以下为文件内容：</span><br /><span style="font-size: 12pt;">### This file controls the configuration of the svnserve daemon, if you</span><br /><span style="font-size: 12pt;">### use it to allow access to this repository.&nbsp; (If you only allow</span><br /><span style="font-size: 12pt;">### access through http: and/or file: URLs, then this file is</span><br /><span style="font-size: 12pt;">### irrelevant.)</span></p><p><span style="font-size: 12pt;">### Visit </span><a href="http://subversion.tigris.org/"><span style="font-size: 12pt;">http://subversion.tigris.org/</span></a><span style="font-size: 12pt;"> for more information.</span></p><p><span style="font-size: 12pt;">[general]</span><br /><span style="font-size: 12pt;">### These options control access to the repository for unauthenticated</span><br /><span style="font-size: 12pt;">### and authenticated users.&nbsp; Valid values are "write", "read",</span><br /><span style="font-size: 12pt;">### and "none".&nbsp; The sample settings below are the defaults</span><br /><span style="font-size: 12pt;"># 未授权配置为禁止访问none，已授权配置为可以读写write</span><br /><span style="color: red; font-size: 12pt;">anon-access = none</span><br /><span style="color: red; font-size: 12pt;">auth-access = write</span><br /><span style="font-size: 12pt;">### The password-db option controls the location of the password</span><br /><span style="font-size: 12pt;">### database file.&nbsp; Unless you specify a path starting with a /,</span><br /><span style="font-size: 12pt;">### the file's location is relative to the directory containing</span><br /><span style="font-size: 12pt;">### this configuration file.</span><br /><span style="font-size: 12pt;">### If SASL is enabled (see below), this file will NOT be used.</span><br /><span style="font-size: 12pt;">### Uncomment the line below to use the default password file.</span><br /><span style="font-size: 12pt;"># 用户数据库文件，配置授权用户，当前使用的文件是和svnserve.conf在相同目录下的passwd文件，也可以指定其他绝对路径文件，如：/home/svn/passwd</span><br /><span style="color: red; font-size: 12pt;">password-db = passwd</span><br /><span style="font-size: 12pt;">### The authz-db option controls the location of the authorization</span><br /><span style="font-size: 12pt;">### rules for path-based access control.&nbsp; Unless you specify a path</span><br /><span style="font-size: 12pt;">### starting with a /, the file's location is relative to the the</span><br /><span style="font-size: 12pt;">### directory containing this file.&nbsp; If you don't specify an</span><br /><span style="font-size: 12pt;">### authz-db, no path-based access control is done.</span><br /><span style="font-size: 12pt;">### Uncomment the line below to use the default authorization file.</span><br /><span style="font-size: 12pt;"># 授权文件，配置如同用户配置</span><br /><span style="color: red; font-size: 12pt;">authz-db = authz</span><br /><span style="font-size: 12pt;">### This option specifies the authentication realm of the repository.</span><br /><span style="font-size: 12pt;">### If two repositories have the same authentication realm, they should</span><br /><span style="font-size: 12pt;">### have the same password database, and vice versa.&nbsp; The default realm</span><br /><span style="font-size: 12pt;">### is repository's uuid.</span><br /><span style="font-size: 12pt;"># realm = My First Repository</span></p><p><span style="font-size: 12pt;">[sasl]</span><br /><span style="font-size: 12pt;">### This option specifies whether you want to use the Cyrus SASL</span><br /><span style="font-size: 12pt;">### library for authentication. Default is false.</span><br /><span style="font-size: 12pt;">### This section will be ignored if svnserve is not built with Cyrus</span><br /><span style="font-size: 12pt;">### SASL support; to check, run 'svnserve --version' and look for a line</span><br /><span style="font-size: 12pt;">### reading 'Cyrus SASL authentication is available.'</span><br /><span style="font-size: 12pt;"># use-sasl = true</span><br /><span style="font-size: 12pt;">### These options specify the desired strength of the security layer</span><br /><span style="font-size: 12pt;">### that you want SASL to provide. 0 means no encryption, 1 means</span><br /><span style="font-size: 12pt;">### integrity-checking only, values larger than 1 are correlated</span><br /><span style="font-size: 12pt;">### to the effective key length for encryption (e.g. 128 means 128-bit</span><br /><span style="font-size: 12pt;">### encryption). The values below are the defaults.</span><br /><span style="font-size: 12pt;"># min-encryption = 0</span><br /><span style="font-size: 12pt;"># max-encryption = 256</span></p><p><br /><span style="font-size: 12pt;">保存</span><br /><span style="font-size: 12pt;"># ctrl + o 回车</span></p><p><span style="font-size: 12pt;">退出</span><br /><span style="font-size: 12pt;"># ctrl + x</span><br /></p><p><span style="font-size: 12pt;">配置用户</span><br /><span style="font-size: 12pt;"># nano passwd</span></p><p><span style="font-size: 12pt;">以下为文件内容：</span><br /><span style="font-size: 12pt;">### This file is an example password file for svnserve.</span><br /><span style="font-size: 12pt;">### Its format is similar to that of svnserve.conf. As shown in the</span><br /><span style="font-size: 12pt;">### example below it contains one section labelled [users].</span><br /><span style="font-size: 12pt;">### The name and password for each user follow, one account per line.</span></p><p><span style="font-size: 12pt;">[users]</span><br /><span style="font-size: 12pt;"># harry = harryssecret</span><br /><span style="font-size: 12pt;"># sally = sallyssecret</span><br /><span style="font-size: 12pt;">IceWee = IceWee</span></p><p><span style="font-size: 12pt;">增加用户IceWee，密码也为IceWee，=号两侧需要有空格，保存(ctrl + o 回车)退出(ctrl + x)</span><br /></p><p><span style="font-size: 12pt;">配置访问权限</span><br /><span style="font-size: 12pt;"># nano authz</span></p><p><span style="font-size: 12pt;">以下为文件内容：</span><br /><span style="font-size: 12pt;">### This file is an example authorization file for svnserve.</span><br /><span style="font-size: 12pt;">### Its format is identical to that of mod_authz_svn authorization</span><br /><span style="font-size: 12pt;">### files.</span><br /><span style="font-size: 12pt;">### As shown below each section defines authorizations for the path and</span><br /><span style="font-size: 12pt;">### (optional) repository specified by the section name.</span><br /><span style="font-size: 12pt;">### The authorizations follow. An authorization line can refer to:</span><br /><span style="font-size: 12pt;">###&nbsp; - a single user,</span><br /><span style="font-size: 12pt;">###&nbsp; - a group of users defined in a special [groups] section,</span><br /><span style="font-size: 12pt;">###&nbsp; - an alias defined in a special [aliases] section,</span><br /><span style="font-size: 12pt;">###&nbsp; - all authenticated users, using the '$authenticated' token,</span><br /><span style="font-size: 12pt;">###&nbsp; - only anonymous users, using the '$anonymous' token,</span><br /><span style="font-size: 12pt;">###&nbsp; - anyone, using the '*' wildcard.</span><br /><span style="font-size: 12pt;">###</span><br /><span style="font-size: 12pt;">### A match can be inverted by prefixing the rule with '~'. Rules can</span><br /><span style="font-size: 12pt;">### grant read ('r') access, read-write ('rw') access, or no access</span><br /><span style="font-size: 12pt;">### ('').</span></p><p><span style="font-size: 12pt;">[aliases]</span><br /><span style="font-size: 12pt;"># joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average</span></p><p><span style="font-size: 12pt;">[groups]</span><br /><span style="font-size: 12pt;"># harry_and_sally = harry,sally</span><br /><span style="font-size: 12pt;"># harry_sally_and_joe = harry,sally,&amp;joe</span><br /><span style="color: red; font-size: 12pt;">developers = IceWee</span></p><p><span style="font-size: 12pt;"># [/foo/bar]</span><br /><span style="font-size: 12pt;"># harry = rw</span><br /><span style="font-size: 12pt;"># &amp;joe = r</span><br /><span style="font-size: 12pt;"># * =</span></p><p><span style="font-size: 12pt;"># [repository:/baz/fuz]</span><br /><span style="font-size: 12pt;"># @harry</span><span style="font-size: 12pt;">_a</span><span style="font-size: 12pt;">nd_sally = rw</span><br /><span style="font-size: 12pt;"># * = r</span></p><p><span style="color: red; font-size: 12pt;">[/]</span><br /><span style="color: red; font-size: 12pt;">* = r</span><br /><span style="color: red; font-size: 12pt;">IceWee&nbsp;= rw<br /></span><span style="color: red; font-size: 12pt;">@developers = rw</span></p><p><span style="color: red; font-size: 12pt;">[/tags]</span><br /><span style="color: red; font-size: 12pt;">IceWee&nbsp;= rw</span></p><p><span style="font-size: 12pt;">默认所有用户可读取根，IceWee可以读写根。可以分别对子目录进行授权，如上的tags目录，IceWee具有读写权限，以及IceWee所在的组developers也具备读写权限。</span><br /><br /><span style="font-size: 12pt;">启动SVN服务器</span><br /><span style="font-size: 12pt;"># svnserve -d -r /home/svn/repository</span><br /><span style="font-size: 12pt;">-d含义为后台运行（daemon），-r指定的根目录，如访问test应该使用这样的地址 </span><a href="svn"><span style="font-size: 12pt;">svn</span></a><span style="font-size: 12pt;">://hostname:port/test</span><br /><br /><span style="font-size: 12pt;">停止SVN服务</span><br /><span style="font-size: 12pt;"># killall svnserve</span><br /><br /><span style="font-size: 12pt;">备份还原命令，与oracle的备份有些类似</span><br /><span style="font-size: 12pt;">导出</span><br /><span style="font-size: 12pt;"># svnadmin dump /home/svn/repository/test &gt; /home/bak/test.dump</span><br /><br /><span style="font-size: 12pt;">导入</span><br /><span style="font-size: 12pt;"># svn</span><span style="font-size: 12pt;">admin load /home/svn/repository/demo &lt; /home/bak/demo.dump</span><br /><span style="font-size: 12pt;">导入前提：</span><br /><span style="font-size: 12pt;">必须先创建要导入版本库目录，如上的demo，则需要做以下操作</span><br /><span style="font-size: 12pt;"># svnadmin create /home/svn/respository/demo</span><br /><span style="font-size: 12pt;">修改svnserve.conf、passwd、authz等文件，前面已介绍</span><br /></p><p><br />&nbsp;</p><br /><br /><br /><br /> 
 
<img src ="http://www.blogjava.net/icewee/aggbug/409059.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2014-01-17 15:48 <a href="http://www.blogjava.net/icewee/archive/2014/01/17/409059.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux VNC服务安装与配置</title><link>http://www.blogjava.net/icewee/archive/2013/02/22/395594.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 22 Feb 2013 09:46:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2013/02/22/395594.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/395594.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2013/02/22/395594.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/395594.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/395594.html</trackback:ping><description><![CDATA[
<p><span style="font-size: 18pt;"><strong>一、Redhat上VNC Server配置</strong></span><br /><font size="3">本文以当前Linux系统未安装VNC服务器为基本，如果已安装请跳过第1节！<br /></font></p><p><span style="font-size: 12pt;"></span><font size="3"><span style="font-size: 14pt;"><strong>前提：</strong></span><br /></font><span style="font-size: 12pt;">1.连接到互联网，将使用yum在线安装VNC服务器</span><br /><span style="font-size: 12pt;">2.&nbsp;确认 SSH 在运行</span><br /><span style="font-size: 12pt;"><br /></span><span style="font-size: 14pt;"><strong>1.安装 TigerVNC Server</strong></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;yum&nbsp;search&nbsp;tigervnc-server</span></div><p><br /><span style="font-size: 12pt;">返回大概如下内容：</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">tigervnc-server.x86_64&nbsp;:&nbsp;A&nbsp;TigerVNC&nbsp;Server<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />tigervnc-server-applet.noarch&nbsp;:&nbsp;Java&nbsp;TigerVNC&nbsp;Viewer&nbsp;applet&nbsp;for&nbsp;TigerVNC&nbsp;Server<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />tigervnc-server-module.x86._</span><span style="color: rgb(0, 0, 0);">64</span><span style="color: rgb(0, 0, 0);">&nbsp;:&nbsp;TigerVNC&nbsp;Mode&nbsp;to&nbsp;Xorg<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />...</span></div><p><br /><span style="font-size: 12pt;">第一行即是我们要安装的VNS服务器，第二行是客户端，执行</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;yum&nbsp;install&nbsp;tigervnc-server.x86_64</span></div><p><br /><span style="font-size: 12pt;">回车后会有一次安装确认，输入y后回车即可安装，安装完毕后返回到命令行输入光标，执行</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vncserver</span></div><p><br /><span style="font-size: 12pt;">会提示输入验证密码，至少6位，该密码是客户端连接时用到的。</span></p><p><span style="font-size: 12pt;"><br /></span><span style="font-size: 14pt;"><strong>2.</strong></span><span style="font-size: 14pt;"><strong>配置图形界面</strong></span><span style="font-size: 12pt;"><span style="font-size: 12pt;"><span style="font-size: 12pt;"><span style="font-size: 12pt;"><br /></span><span style="font-size: 12pt;">修改配置文件，激活图形界面，执行命令：</span></span></span></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vi&nbsp;/root/.vnc/xstartup</span></div><p><span style="font-size: 12pt;"><br />注释掉这行</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">#twm&nbsp;&amp;&nbsp;//&nbsp;注释该行</span></div><p><span style="font-size: 12pt;"><br />末尾增加一行</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">gnome-session&nbsp;&amp;&nbsp;//&nbsp;增加该行</span></div><p><span style="font-size: 12pt;"><br />保存退出</span></p><p><span style="font-size: 12pt;"><br /></span><span style="font-size: 14pt;"><strong>3.启动VNC服务<br /></strong></span>执行命令</p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;/etc/init.d/vncserver&nbsp;start</span></div><p><span style="font-size: 12pt;">或</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;service&nbsp;vncserver&nbsp;start</span></div><p><br /><span style="font-size: 12pt;">启动后提示：</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">Starting&nbsp;VNC&nbsp;server:&nbsp;no&nbsp;displays&nbsp;configured&nbsp;</span><span style="color: rgb(128, 0, 0); font-weight: bold;">[</span><span style="color: rgb(128, 0, 0);">FAILED</span><span style="color: rgb(128, 0, 0); font-weight: bold;">]</span></div><p><br /><span style="font-size: 12pt;">解决方法：</span><br /><span style="font-size: 12pt;">执行命令<span style="font-size: 12pt;"></span></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vim&nbsp;/etc/sysconfig/vncservers</span></div><p><span style="font-size: 12pt;"><br />修改最后两行如：</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">VNCSERVERS</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">1:root</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />VNCSERVERARGS</span><span style="color: rgb(128, 0, 0); font-weight: bold;">[</span><span style="color: rgb(128, 0, 0);">1</span><span style="color: rgb(128, 0, 0); font-weight: bold;">]</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">-geometry&nbsp;1024x768</span><span style="color: rgb(0, 0, 0);">"</span></div><p><span style="font-size: 12pt;"><br />说明：</span><br /><span style="font-size: 12pt;">第一行为服务配置，当前只配置了一个VNC服务，使用用户root启动，如果还需要使用其他用户登陆，可以修改VNCSERVERS的值如：&#8220;1:root 2:tiger&#8221;（tiger为系统另一存在用户）。第二行可以注释，是配置窗口分辨率的，需要去掉后面的-localhost</span></p><p><span style="font-size: 12pt;"><br /></span><span style="font-size: 12pt;"><em><strong>VNC Server随系统自动启动</strong></em></span><span style="font-size: 12pt;"><br /></span><span style="font-size: 12pt;">执行命令<span style="font-size: 12pt;"></span></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;sudo&nbsp;chkconfig&nbsp;--level&nbsp;345&nbsp;vncserver&nbsp;on</span></div><p><span style="font-size: 14pt;"><strong><br />4.停止VNC服务</strong></span><br /><span style="font-size: 12pt;">执行命令</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;/etc/init.d/vncserver&nbsp;stop</span></div><p><span style="font-size: 12pt;">或</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;service&nbsp;vncserver&nbsp;stop</span></div><p><br /><span style="font-size: 18pt;"><strong>二、Windows借助VNC Viewer访问Linux</strong></span><br /><span style="font-size: 12pt;">首先安装RealVNC，从互联网下载获得</span><br /><span style="font-size: 12pt;">开始 -&nbsp;Run VNC Viewer，输入IP地址，后面的:1代表使用root用户登陆，在RH上配置的1:root，如果想使用其他用户登陆则调整冒号后的数字即可，密码就是先前配置的。</span><span style="font-size: 12pt;"><br /></span><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/vnc/vnc.png" width="342" height="135" />&nbsp;</p><p><span style="font-size: 12pt;"><br /><strong>解决连接不上问题的方法</strong></span><br /><span style="font-size: 12pt;">执行命令，查看VNC监听的端口是什么，在防火墙中开放端口即可</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;netstat&nbsp;-ntupl|grep&nbsp;vnc</span></div><p><span style="font-size: 12pt;"><br />返回列表如：</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">.&nbsp;tcp&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0.0.0.0</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(0, 0, 0);">5901</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0.0.0.0</span><span style="color: rgb(0, 0, 0);">:*&nbsp;LISTEN&nbsp;</span><span style="color: rgb(0, 0, 0);">4411</span><span style="color: rgb(0, 0, 0);">/Xvnc&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">.&nbsp;tcp&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0.0.0.0</span><span style="color: rgb(0, 0, 0);">:</span><span style="color: rgb(0, 0, 0);">6001</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0.0.0.0</span><span style="color: rgb(0, 0, 0);">:*&nbsp;LISTEN&nbsp;</span><span style="color: rgb(0, 0, 0);">4411</span><span style="color: rgb(0, 0, 0);">/Xvnc&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: rgb(0, 0, 0);">3</span><span style="color: rgb(0, 0, 0);">.&nbsp;tcp&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">&nbsp;:::</span><span style="color: rgb(0, 0, 0);">6001</span><span style="color: rgb(0, 0, 0);">&nbsp;:::*&nbsp;LISTEN&nbsp;</span><span style="color: rgb(0, 0, 0);">4411</span><span style="color: rgb(0, 0, 0);">/Xvnc</span></div><p><span style="font-size: 12pt;"><br />修改防火墙配置文件，开放5901端口即可</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vi&nbsp;/etc/sysconfig/iptables</span></div><p><span style="font-size: 12pt;"><br />可以复制22端口一行，黏贴修改即可，重新启动防火墙服务</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;service&nbsp;iptables&nbsp;restart</span></div><p><br />&nbsp;</p><p><br />&nbsp;</p> 
<img src ="http://www.blogjava.net/icewee/aggbug/395594.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2013-02-22 17:46 <a href="http://www.blogjava.net/icewee/archive/2013/02/22/395594.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux 64bit下JBoss7安装手册</title><link>http://www.blogjava.net/icewee/archive/2013/02/22/395589.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 22 Feb 2013 09:12:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2013/02/22/395589.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/395589.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2013/02/22/395589.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/395589.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/395589.html</trackback:ping><description><![CDATA[
<p><span style="font-size: 18pt;"><strong>基本信息</strong></span><br /><span style="font-size: 12pt;">操作系统：CentOS Release 6.3 (Final)</span><br /><span style="font-size: 12pt;">内核版本：Kernel Linux 2.6.32-279.el6.x86_64</span><br /><span style="font-size: 12pt;">JDK版本：Oracle &#174;Java SE Development Kit 7u15 (1.7.0_15-b03)</span><br /><span style="font-size: 12pt;">JBoss版本：JBoss Application Server 7.1.1</span><br /><span style="font-size: 12pt;">安装包： jdk-7u15-linux-x64.rpm、jboss-as-7.1.1.Final.zip<br /></span><br /><span style="font-size: 18pt;"><strong>安装准备</strong></span><br /><span style="color: rgb(51, 102, 255); font-size: 14pt;"><em><strong>上传安装文件</strong></em></span><br /><span style="font-size: 12pt;">将JDK和JBoss安装文件(先解压成目录)上传到服务器，目录随意，如：/home/下 <br /></span><br /><span style="font-size: 18pt;"><strong>开始安装</strong></span><br /><span style="color: rgb(51, 102, 255); font-size: 14pt;"><em><strong>JDK安装</strong></em></span><br /><span style="font-size: 12pt;">使用root登陆系统，打开命令行窗口，先为安装文件授权</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;chmod&nbsp;755&nbsp;jdk-7u15-linux-x64.rpm</span></div><p><span style="font-size: 12pt;"><br />执行安装</span></p><span style="font-size: 12pt;"><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);"> rpm -ivh jdk-7u15-linux-x64.rpm</span></div><p><br />自动安装到目录 /usr/java 下</p></span><p>&nbsp;</p><p><span style="color: rgb(51, 102, 255); font-size: 14pt;"><em><strong>JDK配置</strong></em></span><br /><span style="font-size: 12pt;">Root登陆执行</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vi&nbsp;/etc/profile</span></div><p><span style="font-size: 12pt;"><br />增加下面内容</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">JAVA_HOME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">/usr/java/jdk1</span><span style="color: rgb(0, 0, 0);">.7</span><span style="color: rgb(0, 0, 0);">.0_</span><span style="color: rgb(0, 0, 0);">15</span><span style="color: rgb(0, 0, 0);"><br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />CLASSPATH</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />PATH</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">$JAVA_HOME/bin:$PATH</span></div><p><span style="font-size: 12pt;"><br />保存退出，执行如下命令立即生效以上环境配置</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;source&nbsp;/etc/profile</span></div><p><span style="font-size: 12pt;"><br />JDK版本检测，执行：</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;java&nbsp;&#8211;&nbsp;version</span></div><p><span style="font-size: 12pt;">返回JDK版本信息<br /></span></p><p><span style="color: rgb(51, 102, 255); font-size: 14pt;"><strong><em>JBoss安装</em></strong></span><br /><span style="font-size: 12pt;">JBoss为绿色版本，不需要安装，解压即可使用，和Tomcat一样，下面将JBoss目录移动到一个相对规范的位置，Root登陆执行</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;mv&nbsp;/home/jboss-as-7.1.1.Final&nbsp;/usr/jboss-as-7.1.1.Final</span></div><p><span style="font-size: 12pt;"><br />OK，安装完毕，配置一下环境变量，执行</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vi&nbsp;/etc/profile</span></div><p><span style="font-size: 12pt;"><br />增加下面内容</span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">JBOSS_HOME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">/usr/jboss-as-</span><span style="color: rgb(0, 0, 0);">7.1.1</span><span style="color: rgb(0, 0, 0);">.Final</span></div><p><span style="font-size: 12pt;"><strong><br />启动服务</strong></span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);"> /usr/jboss-as-7.1.1.Final/bin/standalone.sh</span></div><p><span style="font-size: 12pt;">访问，在浏览器地址栏中输入：</span><a href="http://127.0.0.1:8080"><span style="font-size: 12pt;">http://127.0.0.1:8080</span></a><span style="font-size: 12pt;">，出现欢迎界面，证明启动成功！<br /></span><br /><span style="font-size: 12pt;"><strong>停止服务</strong></span><br /><span style="font-size: 12pt;">可以在启动终端窗口按键 CTRL + C，即可完全停止JBoss服务<br /></span></p><p><span style="font-size: 12pt;"><strong>局域网访问</strong></span><br /><a href="http://xxx.xx.xx.xxx:8080"><span style="font-size: 12pt;">http://xxx.xx.xx.xxx:8080</span></a><span style="font-size: 12pt;">是不能访问的，如果想让局域网内的其他机器访问必须要修改JBoss配置，方法如下：</span><br /><span style="font-size: 12pt;">编辑jboss-as-7.1.1.Final\standalone\configuration\standalone.xml，找到</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">&lt;interface&nbsp;name</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">public</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&gt;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&lt;inet-address&nbsp;value</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">${jboss.bind.address:127.0.0.1}</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/&gt;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&lt;/interface&gt;</span></div><p><span style="font-size: 12pt;"><br />将</span><span style="color: rgb(0, 128, 0); font-size: 12pt;"><strong>127.0.0.1</strong></span><span style="font-size: 12pt;">修改为JBoss所在机器的IP地址即可，但是依旧无法访问，是因为Linux防火墙没有开放8080端口，执行：</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);">&nbsp;vi&nbsp;/etc/sysconfig/iptables</span></div><p><span style="font-size: 12pt;"><br />发现有一行</span><br /><span style="font-size: 12pt;">-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT</span><br /><span style="font-size: 12pt;">复制它把22改成8080追加该行后面保存退出！<br /></span></p><p><span style="font-size: 12pt;"><strong>创建管理员用户</strong></span><span style="font-size: 12pt;"></span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 128, 0);">#</span><span style="color: rgb(0, 128, 0);"> ./add-user.sh</span></div><p><span style="font-size: 12pt;">&nbsp;</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">What&nbsp;type&nbsp;of&nbsp;user&nbsp;do&nbsp;you&nbsp;wish&nbsp;to&nbsp;add?<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;a)&nbsp;Management&nbsp;User&nbsp;(mgmt-users.properties)<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;b)&nbsp;Application&nbsp;User&nbsp;(application-users.properties)<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />(a):</span></div><p><span style="font-size: 12pt;">回车</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">Enter&nbsp;the&nbsp;details&nbsp;of&nbsp;the&nbsp;new&nbsp;user&nbsp;to&nbsp;add.<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />Realm&nbsp;(ManagementRealm)&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//回车，默认<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />Username&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;管理员用户名，如：admin<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />Password&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;管理员密码，如：jboss<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />Re-enter&nbsp;Password&nbsp;:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;重复密码</span></div><p><span style="font-size: 12pt;"><strong><br />管理员控制台访问</strong></span><br /><a href="http://127.0.0.1:9990/console"><span style="font-size: 12pt;">http://127.0.0.1:9990/console</span></a><br /><span style="font-size: 12pt;">如果也想在其他局域网机器上访问管理员控制台，防火墙需要开放端口</span><span style="color: rgb(51, 51, 153); font-size: 12pt;"><strong>9990</strong></span><span style="font-size: 12pt;">，修改standalone.xml</span></p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: rgb(0, 0, 0);">&lt;interface&nbsp;name</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">management</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&gt;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&lt;inet-address&nbsp;value</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">${jboss.bind.address.management:127.0.0.1}</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/&gt;<br /><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&lt;/interface&gt;</span></div><p><br /><span style="font-size: 12pt;">同样将127.0.0.1修改为JBoss所在机器的IP地址</span><br /></p> 
  
<img src ="http://www.blogjava.net/icewee/aggbug/395589.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2013-02-22 17:12 <a href="http://www.blogjava.net/icewee/archive/2013/02/22/395589.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CXF+Spring+Tomcat简明示例</title><link>http://www.blogjava.net/icewee/archive/2012/07/06/382399.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Fri, 06 Jul 2012 09:29:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2012/07/06/382399.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/382399.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2012/07/06/382399.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/382399.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/382399.html</trackback:ping><description><![CDATA[
 
多系统（异构系统）进行交互时，一种良好的方式便是调用Web Service，本示例基于Apache组织的CXF，为了方便起见特将服务端和客户端写在同一个工程下，实际项目中是不可能的，但是客户端却依赖于服务端的Web Service接口，那么可以通过导出jar的方式。<br /><br />环境：<br />MyEclipse10<br />JDK6<br />Tomcat7<br />CXF2.5<br />Spring3<br /><br />示例项目结构图：<br /><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/cxf/2012-07-06_164811.png" width="340" height="602" /><br /><br />如上图所示，全部依赖的第三方库都在lib中，下面贴出全部代码。<br />IHelloService.java<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);"> bing.server;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);"> javax.jws.WebService;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_52_145_Open_Image" onclick="this.style.display='none'; Codehighlighter1_52_145_Open_Text.style.display='none'; Codehighlighter1_52_145_Closed_Image.style.display='inline'; Codehighlighter1_52_145_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_52_145_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_52_145_Closed_Text.style.display='none'; Codehighlighter1_52_145_Open_Image.style.display='inline'; Codehighlighter1_52_145_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_52_145_Closed_Text">/** */</span><span id="Codehighlighter1_52_145_Open_Text"><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * WebService接口<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;/p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@author</span><span style="color: rgb(0, 128, 0);"> IceWee<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * @date 2012-7-6<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@version</span><span style="color: rgb(0, 128, 0);"> 1.0<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /> </span><span style="color: rgb(0, 128, 0);">*/</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />@WebService<br /><img id="Codehighlighter1_190_237_Open_Image" onclick="this.style.display='none'; Codehighlighter1_190_237_Open_Text.style.display='none'; Codehighlighter1_190_237_Closed_Image.style.display='inline'; Codehighlighter1_190_237_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_190_237_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_190_237_Closed_Text.style.display='none'; Codehighlighter1_190_237_Open_Image.style.display='inline'; Codehighlighter1_190_237_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">interface</span><span style="color: rgb(0, 0, 0);"> IHelloService </span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_190_237_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_190_237_Open_Text"><span style="color: rgb(0, 0, 0);">{<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> String sayHello(String username);<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />HelloServiceImpl.java<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);"> bing.server;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);"> javax.jws.WebService;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_52_146_Open_Image" onclick="this.style.display='none'; Codehighlighter1_52_146_Open_Text.style.display='none'; Codehighlighter1_52_146_Closed_Image.style.display='inline'; Codehighlighter1_52_146_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_52_146_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_52_146_Closed_Text.style.display='none'; Codehighlighter1_52_146_Open_Image.style.display='inline'; Codehighlighter1_52_146_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_52_146_Closed_Text">/** */</span><span id="Codehighlighter1_52_146_Open_Text"><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * WebService实现类<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;/p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@author</span><span style="color: rgb(0, 128, 0);"> IceWee<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * @date 2012-7-6<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@version</span><span style="color: rgb(0, 128, 0);"> 1.0<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /> </span><span style="color: rgb(0, 128, 0);">*/</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />@WebService(endpointInterface </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">bing.server.IHelloService</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">, serviceName </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">HelloService</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)<br /><img id="Codehighlighter1_294_386_Open_Image" onclick="this.style.display='none'; Codehighlighter1_294_386_Open_Text.style.display='none'; Codehighlighter1_294_386_Closed_Image.style.display='inline'; Codehighlighter1_294_386_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_294_386_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_294_386_Closed_Text.style.display='none'; Codehighlighter1_294_386_Open_Image.style.display='inline'; Codehighlighter1_294_386_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);"> HelloServiceImpl </span><span style="color: rgb(0, 0, 255);">implements</span><span style="color: rgb(0, 0, 0);"> IHelloService </span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_294_386_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_294_386_Open_Text"><span style="color: rgb(0, 0, 0);">{<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp; @Override<br /><img id="Codehighlighter1_349_383_Open_Image" onclick="this.style.display='none'; Codehighlighter1_349_383_Open_Text.style.display='none'; Codehighlighter1_349_383_Closed_Image.style.display='inline'; Codehighlighter1_349_383_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_349_383_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_349_383_Closed_Text.style.display='none'; Codehighlighter1_349_383_Open_Image.style.display='inline'; Codehighlighter1_349_383_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> String sayHello(String username) </span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_349_383_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_349_383_Open_Text"><span style="color: rgb(0, 0, 0);">{<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">hello, </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">+</span><span style="color: rgb(0, 0, 0);"> username;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp; }</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />HelloServiceClient.java<br /><span id="Codehighlighter1_294_386_Open_Text"><span style="color: rgb(0, 0, 0);"><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);"> bing.client;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);"> org.springframework.context.ApplicationContext;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);"> org.springframework.context.support.ClassPathXmlApplicationContext;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);"> bing.server.IHelloService;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_188_286_Open_Image" onclick="this.style.display='none'; Codehighlighter1_188_286_Open_Text.style.display='none'; Codehighlighter1_188_286_Closed_Image.style.display='inline'; Codehighlighter1_188_286_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_188_286_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_188_286_Closed_Text.style.display='none'; Codehighlighter1_188_286_Open_Image.style.display='inline'; Codehighlighter1_188_286_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_188_286_Closed_Text">/** */</span><span id="Codehighlighter1_188_286_Open_Text"><span style="color: rgb(0, 128, 0);">/**</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * WebService调用方-客户端<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * &lt;/p&gt;<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@author</span><span style="color: rgb(0, 128, 0);"> IceWee<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * @date 2012-7-6<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /> * </span><span style="color: rgb(128, 128, 128);">@version</span><span style="color: rgb(0, 128, 0);"> 1.0<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /> </span><span style="color: rgb(0, 128, 0);">*/</span></span><span style="color: rgb(0, 0, 0);"><br /><img id="Codehighlighter1_320_627_Open_Image" onclick="this.style.display='none'; Codehighlighter1_320_627_Open_Text.style.display='none'; Codehighlighter1_320_627_Closed_Image.style.display='inline'; Codehighlighter1_320_627_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_320_627_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_320_627_Closed_Text.style.display='none'; Codehighlighter1_320_627_Open_Image.style.display='inline'; Codehighlighter1_320_627_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);"> HelloServiceClient </span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_320_627_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_320_627_Open_Text"><span style="color: rgb(0, 0, 0);">{<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img id="Codehighlighter1_363_624_Open_Image" onclick="this.style.display='none'; Codehighlighter1_363_624_Open_Text.style.display='none'; Codehighlighter1_363_624_Closed_Image.style.display='inline'; Codehighlighter1_363_624_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_363_624_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_363_624_Closed_Text.style.display='none'; Codehighlighter1_363_624_Open_Image.style.display='inline'; Codehighlighter1_363_624_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);"> main(String[] args) </span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_363_624_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_363_624_Open_Text"><span style="color: rgb(0, 0, 0);">{<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ApplicationContext context </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);"> ClassPathXmlApplicationContext(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">applicationContext-client.xml</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IHelloService helloService </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> (IHelloService) context.getBean(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">client</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String response </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> helloService.sayHello(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Peter</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(response);<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp; }</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div></span></span><br />applicationContext-server.xml<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">&lt;?</span><span style="color: rgb(255, 0, 255);">xml version="1.0" encoding="UTF-8"</span><span style="color: rgb(0, 0, 255);">?&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">beans </span><span style="color: rgb(255, 0, 0);">xmlns</span><span style="color: rgb(0, 0, 255);">="http://www.springframework.org/schema/beans"</span><span style="color: rgb(255, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns:xsi</span><span style="color: rgb(0, 0, 255);">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: rgb(255, 0, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns:jaxws</span><span style="color: rgb(0, 0, 255);">="http://cxf.apache.org/jaxws"</span><span style="color: rgb(255, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xsi:schemaLocation</span><span style="color: rgb(0, 0, 255);">="http://www.springframework.org/schema/beans<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://www.springframework.org/schema/beans/spring-beans.xsd<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 0);">&lt;!--</span><span style="color: rgb(0, 128, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ***注意*** <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 手动添加的内容：<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns:jaxws="http://cxf.apache.org/jaxws"<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 0);">--&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf-extension-soap.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf-servlet.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">jaxws:endpoint </span><span style="color: rgb(255, 0, 0);">id</span><span style="color: rgb(0, 0, 255);">="helloService"</span><span style="color: rgb(255, 0, 0);"> implementor</span><span style="color: rgb(0, 0, 255);">="bing.server.HelloServiceImpl"</span><span style="color: rgb(255, 0, 0);"> address</span><span style="color: rgb(0, 0, 255);">="/helloService"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">beans</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />applicationContext-client.xml<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">&lt;?</span><span style="color: rgb(255, 0, 255);">xml version="1.0" encoding="UTF-8"</span><span style="color: rgb(0, 0, 255);">?&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">beans </span><span style="color: rgb(255, 0, 0);">xmlns</span><span style="color: rgb(0, 0, 255);">="http://www.springframework.org/schema/beans"</span><span style="color: rgb(255, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns:xsi</span><span style="color: rgb(0, 0, 255);">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: rgb(255, 0, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns:jaxws</span><span style="color: rgb(0, 0, 255);">="http://cxf.apache.org/jaxws"</span><span style="color: rgb(255, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xsi:schemaLocation</span><span style="color: rgb(0, 0, 255);">="http://www.springframework.org/schema/beans<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://www.springframework.org/schema/beans/spring-beans.xsd<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 0);">&lt;!--</span><span style="color: rgb(0, 128, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ***注意*** <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 手动添加的内容：<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns:jaxws="http://cxf.apache.org/jaxws"<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"<br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 128, 0);">--&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf-extension-soap.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">import </span><span style="color: rgb(255, 0, 0);">resource</span><span style="color: rgb(0, 0, 255);">="classpath:META-INF/cxf/cxf-servlet.xml"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">bean </span><span style="color: rgb(255, 0, 0);">id</span><span style="color: rgb(0, 0, 255);">="client"</span><span style="color: rgb(255, 0, 0);"> class</span><span style="color: rgb(0, 0, 255);">="bing.server.IHelloService"</span><span style="color: rgb(255, 0, 0);"> factory-bean</span><span style="color: rgb(0, 0, 255);">="clientFactory"</span><span style="color: rgb(255, 0, 0);"> factory-method</span><span style="color: rgb(0, 0, 255);">="create"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">bean </span><span style="color: rgb(255, 0, 0);">id</span><span style="color: rgb(0, 0, 255);">="clientFactory"</span><span style="color: rgb(255, 0, 0);"> class</span><span style="color: rgb(0, 0, 255);">="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">property </span><span style="color: rgb(255, 0, 0);">name</span><span style="color: rgb(0, 0, 255);">="serviceClass"</span><span style="color: rgb(255, 0, 0);"> value</span><span style="color: rgb(0, 0, 255);">="bing.server.IHelloService"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">property </span><span style="color: rgb(255, 0, 0);">name</span><span style="color: rgb(0, 0, 255);">="address"</span><span style="color: rgb(255, 0, 0);"> value</span><span style="color: rgb(0, 0, 255);">="http://localhost:8080/CXFDemo/ws/helloService"</span><span style="color: rgb(255, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">/&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">bean</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">beans</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />web.xml<br /><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">&lt;?</span><span style="color: rgb(255, 0, 255);">xml version="1.0" encoding="UTF-8"</span><span style="color: rgb(0, 0, 255);">?&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">web-app </span><span style="color: rgb(255, 0, 0);">version</span><span style="color: rgb(0, 0, 255);">="3.0"</span><span style="color: rgb(255, 0, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns</span><span style="color: rgb(0, 0, 255);">="http://java.sun.com/xml/ns/javaee"</span><span style="color: rgb(255, 0, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xmlns:xsi</span><span style="color: rgb(0, 0, 255);">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: rgb(255, 0, 0);"> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; xsi:schemaLocation</span><span style="color: rgb(0, 0, 255);">="http://java.sun.com/xml/ns/javaee <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">display-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">CXFDemo</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">display-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">context-param</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">param-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">contextConfigLocation</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">param-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">param-value</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">classpath:applicationContext-server.xml</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">param-value</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">context-param</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /> <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">listener</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">listener-class</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">org.springframework.web.context.ContextLoaderListener</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">listener-class</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">listener</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; <br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">servlet</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">servlet-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">CXFServlet</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">servlet-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">display-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">CXFServlet</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">display-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">servlet-class</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">org.apache.cxf.transport.servlet.CXFServlet</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">servlet-class</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">load-on-startup</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">load-on-startup</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">servlet</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">servlet-mapping</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">servlet-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">CXFServlet</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">servlet-name</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">url-pattern</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">/ws/*</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">url-pattern</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">servlet-mapping</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">welcome-file-list</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">welcome-file</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">index.jsp</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">welcome-file</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" />&nbsp; </span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">welcome-file-list</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">web-app</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif"  alt="" /></span></div><br />所有项目都已配置完成，可以发布到Tomcat了，在浏览器中输入：<a href="http://localhost:8080/CXFDemo/ws">http://localhost:8080/CXFDemo/ws</a>，返回如图：<br /><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/cxf/2012-07-06_170337.png" width="735" height="427" /><br /><br />从上图中可以看到我们对外发布的WebService接口，点击蓝色超链接，返回如图：<br /><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/cxf/2012-07-06_170411.png" /><br />到此，证明我们的Web Service已经发布成功，可以进行调用测试了。运行HelloServiceClient，返回如图：<br /><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/cxf/2012-07-06_170754.png" /><br /><br />全文完！<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><img src ="http://www.blogjava.net/icewee/aggbug/382399.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2012-07-06 17:29 <a href="http://www.blogjava.net/icewee/archive/2012/07/06/382399.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>几款JQuery实现的右键菜单插件</title><link>http://www.blogjava.net/icewee/archive/2011/05/01/353195.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sun, 01 May 2011 08:49:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/05/01/353195.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353195.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/05/01/353195.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353195.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353195.html</trackback:ping><description><![CDATA[<span style="font-family: Tahoma; font-size: 12pt;">
</span><p><span style="font-family: Tahoma; font-size: 12pt;">在网页中使用自定义右键菜单，实现上皆为使用javascript禁用浏览器默认的右键菜单，然后在网页中响应鼠标右键事件，弹出自定义的菜单。</span></p>
<p><span style="font-family: Tahoma; font-size: 12pt;">类似右键菜单的组件网上很多。一般而言，改变浏览器的默认菜单应当慎用，这会使多数用户感到不习惯。但是在企业Web应用中，用户的使用环境更加可控，在这种应用中使用自定义右键菜单会更加适合。</span></p>
<p><span style="font-family: Tahoma; font-size: 12pt;">以下列举几款比较成熟的jQuery右键菜单插件，我们将逐一介绍，请读者自行比较，并根据自己的需求选择。</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px;"><a class="cnblogs_code" onclick="window.open('http://team.verytao.net/%e5%87%a0%e6%ac%bejquery%e5%8f%b3%e9%94%ae%e8%8f%9c%e5%8d%95%e6%8f%92%e4%bb%b6%e4%bb%8b%e7%bb%8d/','几款JQuery右键菜单插件介绍','scrollbars=yes,resizable=yes,width=1024,height=768,left=0,top=0');return false;" href="http://team.verytao.net/%e5%87%a0%e6%ac%bejquery%e5%8f%b3%e9%94%ae%e8%8f%9c%e5%8d%95%e6%8f%92%e4%bb%b6%e4%bb%8b%e7%bb%8d/" target="_blank"><span style="font-family: Tahoma; font-size: 12pt;">原</span>文直通车</a><br /></span></p>
 
<img src ="http://www.blogjava.net/icewee/aggbug/353195.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-05-01 16:49 <a href="http://www.blogjava.net/icewee/archive/2011/05/01/353195.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C#操作word总结</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353222.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:38:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353222.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353222.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353222.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353222.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353222.html</trackback:ping><description><![CDATA[
<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">最近有个小项目中自己负责word报表的生成，开发语言是C#，我是做JAVA的，临时用一下而已。发现微软的在线MSDN是个好东西，很强大，基本需要的东西都在里面可以找到，比如word的创建、打开、关闭等等一系列的操作DEMO代码。</span>
<div id="blog_text" class="cnt">
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">我主要是将现有的模板填入数据保存文档即可。主题是TABLE填值，检索TABLE主要是通过下标，如：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">WordDoc.Tables[6]</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">其中WordDoc的类型是Word.Document，就是当前操作的word文档，上面的代码是获取当前文档中的第六个表格，这里要注意一下，
我们惯性会认为是第七个表格，但这就是微软的不同，没有采用数组索引的方式，如果当初数组也这么设计，下标从1开始，我们学习的时候不知道省多少事。</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">开发过程中遇到了一个小难题就是合并单元格（纵向），没有设计横向的合并，现将合并的代码贴出来备用：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;">
</p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img id="Codehighlighter1_0_245_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_245_Open_Text.style.display='none'; Codehighlighter1_0_245_Closed_Image.style.display='inline'; Codehighlighter1_0_245_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_0_245_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_245_Closed_Text.style.display='none'; Codehighlighter1_0_245_Open_Image.style.display='inline'; Codehighlighter1_0_245_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_0_245_Closed_Text">/**/</span><span id="Codehighlighter1_0_245_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;纵向单元格合并&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;说明：如合并了第一行第一列和第二行第一列两个单元格，则单元格cell(2,&nbsp;1)已经不存在，继续操作会有异常，&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;只有通过cell(1,&nbsp;1)来获取合并后的单元格&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;/</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="table"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="startRowIndex"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="columnIndex"&gt;&lt;/param&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;verticalCellMerge(Word.Table&nbsp;table,&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;startRowIndex,&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;columnIndex)<br /><img id="Codehighlighter1_338_1479_Open_Image" onclick="this.style.display='none'; Codehighlighter1_338_1479_Open_Text.style.display='none'; Codehighlighter1_338_1479_Closed_Image.style.display='inline'; Codehighlighter1_338_1479_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_338_1479_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_338_1479_Closed_Text.style.display='none'; Codehighlighter1_338_1479_Open_Image.style.display='inline'; Codehighlighter1_338_1479_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_338_1479_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_338_1479_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;previousText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Cell(startRowIndex</span><span style="color: rgb(0, 0, 0);">++</span><span style="color: rgb(0, 0, 0);">,&nbsp;columnIndex).Range.Text;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;保存对比文字&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;previousRowIndex&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;startRowIndex&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;因刚已经+1了，所以再减回去&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">for</span><span style="color: rgb(0, 0, 0);">&nbsp;(</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;i&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;startRowIndex;&nbsp;i&nbsp;</span><span style="color: rgb(0, 0, 0);">&lt;=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Rows.Count;&nbsp;</span><span style="color: rgb(0, 0, 0);">++</span><span style="color: rgb(0, 0, 0);">i)&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;遍历所有行的columnIndex列，发现相同的合并，从起始行的下一行开始对比&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img id="Codehighlighter1_610_1477_Open_Image" onclick="this.style.display='none'; Codehighlighter1_610_1477_Open_Text.style.display='none'; Codehighlighter1_610_1477_Closed_Image.style.display='inline'; Codehighlighter1_610_1477_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_610_1477_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_610_1477_Closed_Text.style.display='none'; Codehighlighter1_610_1477_Open_Image.style.display='inline'; Codehighlighter1_610_1477_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_610_1477_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_610_1477_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Cell(i,&nbsp;columnIndex).Range.Text;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);">&nbsp;(previousText.Equals(currentText))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img id="Codehighlighter1_740_1301_Open_Image" onclick="this.style.display='none'; Codehighlighter1_740_1301_Open_Text.style.display='none'; Codehighlighter1_740_1301_Closed_Image.style.display='inline'; Codehighlighter1_740_1301_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_740_1301_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_740_1301_Closed_Text.style.display='none'; Codehighlighter1_740_1301_Open_Image.style.display='inline'; Codehighlighter1_740_1301_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_740_1301_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_740_1301_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(previousRowIndex,&nbsp;columnIndex).Merge(table.Cell(i,&nbsp;columnIndex));&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;合并先前单元格和当前单元格&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(previousRowIndex,&nbsp;columnIndex).Range.Text&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;因为合并后并没有将单元格内容去除，需要手动修改&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(previousRowIndex,&nbsp;columnIndex).Select();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WordApp.Selection.ParagraphFormat.Alignment&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;WdParagraphAlignment.wdAlignParagraphCenter;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;水平居中显示&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(previousRowIndex,&nbsp;columnIndex).VerticalAlignment&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;垂直居中&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">else</span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img id="Codehighlighter1_1328_1470_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1328_1470_Open_Text.style.display='none'; Codehighlighter1_1328_1470_Closed_Image.style.display='inline'; Codehighlighter1_1328_1470_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_1328_1470_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1328_1470_Closed_Text.style.display='none'; Codehighlighter1_1328_1470_Open_Image.style.display='inline'; Codehighlighter1_1328_1470_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_1328_1470_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1328_1470_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;previousText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;将对比文字替换为当前的内容&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;previousRowIndex&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;i;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;检索到不同的内容，将当前行下标置为先前行下标，用于合并&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img id="Codehighlighter1_1482_1748_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1482_1748_Open_Text.style.display='none'; Codehighlighter1_1482_1748_Closed_Image.style.display='inline'; Codehighlighter1_1482_1748_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_1482_1748_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1482_1748_Closed_Text.style.display='none'; Codehighlighter1_1482_1748_Open_Image.style.display='inline'; Codehighlighter1_1482_1748_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_1482_1748_Closed_Text">/**/</span><span id="Codehighlighter1_1482_1748_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;横向单元格合并<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;注意：在合并单元格后必须将纵列数减去1<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;如第一行第一列和第一行第二列合并后，原第一行第三列将变成第一行第二列，这就是在合并后i不加1的原因<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="WordApp"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="table"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="startColumnIndex"&gt;&lt;/param&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="rowIndex"&gt;&lt;/param&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;horizontalCellMerge(Word.Application&nbsp;WordApp,&nbsp;Word.Table&nbsp;table,&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;startColumnIndex,&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;rowIndex)<br /><img id="Codehighlighter1_1869_3065_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1869_3065_Open_Text.style.display='none'; Codehighlighter1_1869_3065_Closed_Image.style.display='inline'; Codehighlighter1_1869_3065_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_1869_3065_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1869_3065_Closed_Text.style.display='none'; Codehighlighter1_1869_3065_Open_Image.style.display='inline'; Codehighlighter1_1869_3065_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_1869_3065_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1869_3065_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;previousText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Cell(rowIndex,&nbsp;startColumnIndex).Range.Text;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;保存对比文字&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;previousColumnIndex&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;startColumnIndex</span><span style="color: rgb(0, 0, 0);">++</span><span style="color: rgb(0, 0, 0);">;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;保存先前对比列下标&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;colCount&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Columns.Count;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">for</span><span style="color: rgb(0, 0, 0);">&nbsp;(</span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">&nbsp;i&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;startColumnIndex;&nbsp;i&nbsp;</span><span style="color: rgb(0, 0, 0);">&lt;=</span><span style="color: rgb(0, 0, 0);">&nbsp;colCount;)&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;遍历所有行的columnIndex列，发现相同的合并，从起始行的下一行开始对比&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img id="Codehighlighter1_2170_3063_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2170_3063_Open_Text.style.display='none'; Codehighlighter1_2170_3063_Closed_Image.style.display='inline'; Codehighlighter1_2170_3063_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_2170_3063_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_2170_3063_Closed_Text.style.display='none'; Codehighlighter1_2170_3063_Open_Image.style.display='inline'; Codehighlighter1_2170_3063_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_2170_3063_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_2170_3063_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;table.Cell(rowIndex,&nbsp;i).Range.Text;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);">&nbsp;(previousText.Equals(currentText))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img id="Codehighlighter1_2297_2882_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2297_2882_Open_Text.style.display='none'; Codehighlighter1_2297_2882_Closed_Image.style.display='inline'; Codehighlighter1_2297_2882_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_2297_2882_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_2297_2882_Closed_Text.style.display='none'; Codehighlighter1_2297_2882_Open_Image.style.display='inline'; Codehighlighter1_2297_2882_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_2297_2882_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_2297_2882_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(rowIndex,&nbsp;previousColumnIndex).Merge(table.Cell(rowIndex,&nbsp;i));&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;合并先前单元格和当前单元格&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(rowIndex,&nbsp;previousColumnIndex).Range.Text&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;因为合并后并没有将单元格内容去除，需要手动修改&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(rowIndex,&nbsp;previousColumnIndex).Select();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WordApp.Selection.ParagraphFormat.Alignment&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;WdParagraphAlignment.wdAlignParagraphCenter;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;水平居中显示&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.Cell(rowIndex,&nbsp;previousColumnIndex).VerticalAlignment&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;垂直居中&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">--</span><span style="color: rgb(0, 0, 0);">colCount;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">else</span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img id="Codehighlighter1_2909_3056_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2909_3056_Open_Text.style.display='none'; Codehighlighter1_2909_3056_Closed_Image.style.display='inline'; Codehighlighter1_2909_3056_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_2909_3056_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_2909_3056_Closed_Text.style.display='none'; Codehighlighter1_2909_3056_Open_Image.style.display='inline'; Codehighlighter1_2909_3056_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_2909_3056_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_2909_3056_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;previousText&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;currentText;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;将对比文字替换为当前的内容&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;previousColumnIndex&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;i</span><span style="color: rgb(0, 0, 0);">++</span><span style="color: rgb(0, 0, 0);">;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;检索到不同的内容，将当前行下标置为先前行下标，用于合并&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" /></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span></div><p></span><span style="font-family: tahoma,arial,helvetica,sans-serif;">方法注释已经很详细就不再赘述。</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;">最后遇到的问题是无格式的段落检索，因为在生成报告的时候需要在某些段落后填写测试的结论，这下又把我难住了，最终终于发现了bookmark这个东东，起始我对word并不熟悉，都不知道它有书签的功能。顺便就爱你个检索书签的方法贴出来：</p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img id="Codehighlighter1_0_82_Open_Image" onclick="this.style.display='none'; Codehighlighter1_0_82_Open_Text.style.display='none'; Codehighlighter1_0_82_Closed_Image.style.display='inline'; Codehighlighter1_0_82_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_0_82_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_0_82_Closed_Text.style.display='none'; Codehighlighter1_0_82_Open_Image.style.display='inline'; Codehighlighter1_0_82_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_0_82_Closed_Text">/**/</span><span id="Codehighlighter1_0_82_Open_Text"><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;在整个文档中根据书签名检索书签对象<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;/summary&gt;</span><span style="color: rgb(0, 128, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" /></span><span style="color: rgb(128, 128, 128);">///</span><span style="color: rgb(0, 128, 0);">&nbsp;</span><span style="color: rgb(128, 128, 128);">&lt;param&nbsp;name="name"&gt;&lt;/param&gt;</span><span style="color: rgb(128, 128, 128);"></span></span><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 255);">private</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;Word.Bookmark&nbsp;getBookmarkByName(</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">&nbsp;name)&nbsp;&nbsp;<br /><img id="Codehighlighter1_145_323_Open_Image" onclick="this.style.display='none'; Codehighlighter1_145_323_Open_Text.style.display='none'; Codehighlighter1_145_323_Closed_Image.style.display='inline'; Codehighlighter1_145_323_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none;" id="Codehighlighter1_145_323_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_145_323_Closed_Text.style.display='none'; Codehighlighter1_145_323_Open_Image.style.display='inline'; Codehighlighter1_145_323_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_145_323_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_145_323_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">foreach</span><span style="color: rgb(0, 0, 0);">&nbsp;(Word.Bookmark&nbsp;bm&nbsp;</span><span style="color: rgb(0, 0, 255);">in</span><span style="color: rgb(0, 0, 0);">&nbsp;WordDoc.Bookmarks)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img id="Codehighlighter1_209_289_Open_Image" onclick="this.style.display='none'; Codehighlighter1_209_289_Open_Text.style.display='none'; Codehighlighter1_209_289_Closed_Image.style.display='inline'; Codehighlighter1_209_289_Closed_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none;" id="Codehighlighter1_209_289_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_209_289_Closed_Text.style.display='none'; Codehighlighter1_209_289_Open_Image.style.display='inline'; Codehighlighter1_209_289_Open_Text.style.display='inline';" align="top" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border: 1px solid rgb(128, 128, 128); display: none; background-color: rgb(255, 255, 255);" id="Codehighlighter1_209_289_Closed_Text"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_209_289_Open_Text"><span style="color: rgb(0, 0, 0);">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);">&nbsp;(bm.Name.Equals(name))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;bm;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />｝</span></div><p><br />例：</p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 0, 0);">Word.Bookmark&nbsp;bm&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;getBookmarkByName(bookmarkName);&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />bm.Range.Text&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">你好</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;将检索到书签的内容替换为&#8220;你好&#8221;</span></div><p></span><span style="font-family: tahoma,arial,helvetica,sans-serif;">这就是这次用C#做word报表的全部问题，貌似都是小问题。</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;">最后需要看具体的word操作demo代码请访问MSDN，贴个网址：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;"><a href="http://msdn.microsoft.com/zh-cn/library/78whx7s6%28VS.80%29.aspx">http://msdn.microsoft.com/zh-cn/library/78whx7s6(VS.80).aspx</a></span></p>
</div> 
<img src ="http://www.blogjava.net/icewee/aggbug/353222.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:38 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353222.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Adobe Photoshop CS4打开图片错位，出现横竖的条纹、拉丝</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353224.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:29:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353224.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353224.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353224.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353224.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353224.html</trackback:ping><description><![CDATA[
<span style="font-size: 12pt;">
</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">我的电脑上安装的Adobe Photoshop CS4绿色版，压缩文件刚80多M，比安装版小了10倍，最近打开图片发现变成如下样子了。
</span>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;"><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/ps/1.jpg" width="856" height="536" /></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">缩小可能会变成这样</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;"><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/ps/2.png" width="401" height="251" /></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;"><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/ps/3.png" width="440" height="276" /></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;"><br />以前用的好好的，最近也没用它，怎么变成这个样子了，最后终于在网络上找到解决方法，害的我下了一个800多M的安装版，安装完成后发现还是一样，早看到解决方法就好了！<br /></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">原文引用：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;">
</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;"><strong>1、打开Photoshop CS4，呵呵，废话哈！ </strong></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif;"><strong><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/ps/4.png" width="790" height="478" /></strong></span></p>
<p align="left"><span style="font-family: tahoma,arial,helvetica,sans-serif;"><strong><br /></strong></span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;"><strong>2、找到Preferences -&gt; Performance -&gt; 去掉Enable OpenGL Drawing选中。</strong></span></p>
<p><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
看来作者是用的英文版，中文版如下：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">编辑-&gt;首选项-&gt;性能，弹出窗口如下：</span></p>
<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
看到右侧的复选框了吗？启用Op</span><span style="font-family: tahoma,arial,helvetica,sans-serif;">enGL绘图(D)，只要把勾去掉就好了。</span> 

<img src ="http://www.blogjava.net/icewee/aggbug/353224.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:29 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353224.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>独立显卡没有信号输出</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353225.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:24:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353225.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353225.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353225.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353225.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353225.html</trackback:ping><description><![CDATA[
<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">前不久在显示器公司工作的哥们送了两块讯景的显卡，用上了独立显卡就是比集成显卡爽，玩极品飞车可以把画面调节得更加细腻，而且不卡，钱花到还是有好处的啊，不过俺是借了哥们的光了。</span>
<div id="blog_text" class="cnt">
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">今晚下班回家开机，发现显示器指示灯亮着，主机启动了，但是没有信号输出，我第一反应是显卡坏了，因为朋友给我的显卡都是有问题经过维修后的，并不
是新卡。当前插在电脑上的是8500GT，于是我有把7300GT翻了出来换上，开机，依旧无信号输出，晕了。。。再将显示器插到集成插槽里，可以显示。
7300并没有坏啊！？怎么回事？一顿神搜，什么在BIOS里设置，根本就不是，默认插上独显后集显就不工作的。于是关机，拔电源，拆机，内存拔掉，显卡
拔掉，找块纸分别擦擦内存条的金手指和显卡的金手指。插上内存，插上显卡，开机，&#8220;嘟嘟嘟。。。嘟嘟嘟&#8221;报警了。。。。继续拆，继续拔，最后发现是因为内
存条没有插紧导致开机报警，内存条那个热啊，烫手都，最后安装完毕后，开机，perfect！一切恢复到从前的</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">样子了。</span></p>
</div> 
<img src ="http://www.blogjava.net/icewee/aggbug/353225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:24 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【分享】在线生成ajax等待GIF图片的网站</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353226.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:22:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353226.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353226.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353226.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353226.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353226.html</trackback:ping><description><![CDATA[
<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">网站或者系统开发常免不了使用ajax，但由于网络或其他原因难免造成操作等待，一个好看的等待图片绝对提高档次，偶然撞到的这个网站，我正打算在网上搜点类似的图片呢！没想到可以生产了，真是不错！</span>
<div id="blog_text" class="cnt">
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">地址：<a href="http://ajaxload.info/"><span style="font-size: 12pt;">http://ajaxload.info/</span></a></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">可以自定义前景和背景色，以及是否背景透明</span></p>
</div> 
<img src ="http://www.blogjava.net/icewee/aggbug/353226.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:22 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353226.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>连接到localhost提示：位于XDB的服务器localhost要求用户名和密码</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353228.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:17:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353228.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353228.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353228.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353228.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353228.html</trackback:ping><description><![CDATA[
<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">连接到localhost 提示：位于 XDB 的服务器 localhost 要求用户名和密码</span><br />
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
机器上装了Tomcat6.0.18和Oracle10g，单独启动Tomcat6.0，输入<a href="http://localhost:8080/"><span style="font-size: 12pt;">http://localhost:8080</span></a></span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">可以到Tomcat欢迎页。而启动Oracle的有关必须服务后，再输入<a href="http://localhost:8080/"><span style="font-size: 12pt;">http://localhost:8080</span></a></span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">就弹出一对话框如图：</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px;"><br /><img border="0" alt="" src="http://www.blogjava.net/images/blogjava_net/icewee/images/1.gif" width="326" height="331" /></span><br /></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">产生原因：8080端口被其他服务占用</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
解决方案：</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
1、更改Tomcat的端口，这个比较简单。其方法如下：</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
(1)、在Tomcat安装根目录下的字文件夹conf中找到文件server.xml </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
(2)、将其用记事本程序打开，找到这段文字： </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
&nbsp;&nbsp;&nbsp;&nbsp;</p><div style="padding: 4px 5px 4px 4px; border: 1px solid rgb(204, 204, 204); width: 98%; font-size: 13px; word-break: break-all; background-color: rgb(238, 238, 238);"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: rgb(0, 128, 0);">&lt;!--</span><span style="color: rgb(0, 128, 0);">&nbsp;Define&nbsp;a&nbsp;non-SSL&nbsp;HTTP/1.1&nbsp;Connector&nbsp;on&nbsp;port&nbsp;8080&nbsp;</span><span style="color: rgb(0, 128, 0);">--&gt;</span><span style="color: rgb(0, 0, 0);"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">Connector&nbsp;</span><span style="color: rgb(255, 0, 0);">port</span><span style="color: rgb(0, 0, 255);">="8080"</span><span style="color: rgb(255, 0, 0);">&nbsp;maxHttpHeaderSize</span><span style="color: rgb(0, 0, 255);">="8192"</span><span style="color: rgb(255, 0, 0);"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxThreads</span><span style="color: rgb(0, 0, 255);">="150"</span><span style="color: rgb(255, 0, 0);">&nbsp;minSpareThreads</span><span style="color: rgb(0, 0, 255);">="25"</span><span style="color: rgb(255, 0, 0);">&nbsp;maxSpareThreads</span><span style="color: rgb(0, 0, 255);">="75"</span><span style="color: rgb(255, 0, 0);">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enableLookups</span><span style="color: rgb(0, 0, 255);">="false"</span><span style="color: rgb(255, 0, 0);">&nbsp;redirectPort</span><span style="color: rgb(0, 0, 255);">="8443"</span><span style="color: rgb(255, 0, 0);">&nbsp;acceptCount</span><span style="color: rgb(0, 0, 255);">="100"</span><span style="color: rgb(255, 0, 0);">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;connectionTimeout</span><span style="color: rgb(0, 0, 255);">="20000"</span><span style="color: rgb(255, 0, 0);">&nbsp;disableUploadTimeout</span><span style="color: rgb(0, 0, 255);">="true"</span><span style="color: rgb(255, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">/&gt;</span></div><p>&nbsp;</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">将以上代码中的Connector port="8080"中的8080更改为8088即可，重新启动Tomcat，使用<a href="http://localhost:8088/"><span style="font-size: 12pt;">http://localhost:8088</span></a></span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">登录，发现问题已解决。</span></p>
<p><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
2、 禁用Oracle服务。在&#8220;计算机管理&#8221;中的&#8220;服务&#8221;中找到OracleServiceORCL，停止掉就OK了。但是这并不是一种好的解决方法，因为很多时候我们是同时需要用到Tomcat和Oracle两种服务的。</span></p>
<p><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt;">
文章出处：<a href="http://www.diybl.com/course/3_program/java/javashl/2008913/142707.html"><span style="font-size: 12pt;">http://www.diybl.com/course/3_program/java/javashl/2008913/142707.html</span></a></span></p> 
 
 
<img src ="http://www.blogjava.net/icewee/aggbug/353228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:17 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>实现tomcat做服务器在windows\linux下开机自动运行</title><link>http://www.blogjava.net/icewee/archive/2011/04/16/353229.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Sat, 16 Apr 2011 05:14:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/16/353229.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353229.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/16/353229.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353229.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353229.html</trackback:ping><description><![CDATA[<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">Tomcat做服务器在windows下开机自动运行 </span>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">免安装版本的tomcat,要建立环境变量 </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">要有JAVA_HOME变量就是你是JDK安装目录 </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">要有JRE_HOME变量 就是你的JRE安装目录</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">新建变量:CATALINA_HOME=你的TOMCAT的目录</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">在PATH变量最后加上: ;%CATALINA_HOME%\bin</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">运行 CMD </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">在 CMD 下运行 service.bat install </span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">然后运行 service.msc 找到Apache Tomcat..... 修改它的运行级别就行了</span></p>
<p><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">linux:设置tomcat开机自动启动</span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">linux:设置tomcat开机自动启动</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">&nbsp;&nbsp;&nbsp; 分公司的一台服务器，重新启动后，老是忘记启动tomcat, 开发的同事要求设置为开机自动启动，感觉很简单，但还是花了点时间修改才完成。</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">　参考了网上的几个帖子，但都不是很适合要求，还是要自己修改一下，大概如下<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px"></span></p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">：<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;pwd</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">/</span><span style="color: #000000">etc</span><span style="color: #000000">/</span><span style="color: #000000">init</span><span style="color: #000000">.</span><span style="color: #000000">d<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;cat&nbsp;tomcatd&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#!/bin/sh<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#&nbsp;chkconfig:&nbsp;345&nbsp;99&nbsp;10<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#&nbsp;description:&nbsp;Auto-starts&nbsp;tomcat<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#&nbsp;/etc/init.d/tomcatd<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#&nbsp;Tomcat&nbsp;auto-start<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />#&nbsp;Source&nbsp;function&nbsp;library.</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">.</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">etc</span><span style="color: #000000">/</span><span style="color: #000000">init</span><span style="color: #000000">.</span><span style="color: #000000">d</span><span style="color: #000000">/</span><span style="color: #000000">functions<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;source&nbsp;networking&nbsp;configuration.</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">.</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">etc</span><span style="color: #000000">/</span><span style="color: #000000">sysconfig</span><span style="color: #000000">/</span><span style="color: #000000">network<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />RETVAL</span><span style="color: #000000">=</span><span style="color: #800000">0</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;CATALINA_HOME="/usr/apps/apache/tomcat/jakarta-tomcat-4.0.4"</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">export&nbsp;JAVA_HOME</span><span style="color: #000000">=/</span><span style="color: #000000">tomcat</span><span style="color: #000000">/</span><span style="color: #000000">java</span><span style="color: #000000">/</span><span style="color: #000000">jdk1</span><span style="color: #000000">.</span><span style="color: #800000">5</span><span style="color: #000000">.</span><span style="color: #000000">0_09<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />export&nbsp;CATALINA_HOME</span><span style="color: #000000">=/</span><span style="color: #000000">tomcat</span><span style="color: #000000">/</span><span style="color: #000000">tomcat</span><span style="color: #000000">/</span><span style="color: #000000">apache</span><span style="color: #000000">-</span><span style="color: #000000">tomcat</span><span style="color: #000000">-</span><span style="color: #800000">5.5</span><span style="color: #000000">.</span><span style="color: #800000">20</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />export&nbsp;CATALINA_BASE</span><span style="color: #000000">=/</span><span style="color: #000000">tomcat</span><span style="color: #000000">/</span><span style="color: #000000">tomcat</span><span style="color: #000000">/</span><span style="color: #000000">apache</span><span style="color: #000000">-</span><span style="color: #000000">tomcat</span><span style="color: #000000">-</span><span style="color: #800000">5.5</span><span style="color: #000000">.</span><span style="color: #800000">20</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />TOMCATUSER</span><span style="color: #000000">=</span><span style="color: #000000">tomcat<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />start()<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;[&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">f&nbsp;</span><span style="color: #800080">$CATALINA_HOME</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #000000">startup</span><span style="color: #000000">.</span><span style="color: #000000">sh&nbsp;];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;then<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">Starting&nbsp;Tomcat</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #000000">su&nbsp;</span><span style="color: #800080">$TOMCATUSER</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">c&nbsp;</span><span style="color: #800080">$CATALINA_HOME</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #000000">startup</span><span style="color: #000000">.</span><span style="color: #000000">sh<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RETVAL</span><span style="color: #000000">=</span><span style="color: #000000">$</span><span style="color: #000000">?</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">&nbsp;OK</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">$RETVAL</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />}<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />stop()<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />{<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;[&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">f&nbsp;</span><span style="color: #800080">$CATALINA_HOME</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #0000ff">shutdown</span><span style="color: #000000">.</span><span style="color: #000000">sh&nbsp;];<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;then<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">Stopping&nbsp;Tomcat</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #000000">su&nbsp;</span><span style="color: #800080">$TOMCATUSER</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">c&nbsp;</span><span style="color: #800080">$CATALINA_HOME</span><span style="color: #000000">/</span><span style="color: #000000">bin</span><span style="color: #000000">/</span><span style="color: #0000ff">shutdown</span><span style="color: #000000">.</span><span style="color: #000000">sh<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RETVAL</span><span style="color: #000000">=</span><span style="color: #000000">$</span><span style="color: #000000">?</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">sleep</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ps&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">fwwu&nbsp;tomcat&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">grep</span><span style="color: #000000">&nbsp;apache</span><span style="color: #000000">-</span><span style="color: #000000">tomcat</span><span style="color: #000000">|</span><span style="color: #0000ff">grep</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">v&nbsp;</span><span style="color: #0000ff">grep</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">grep</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">v&nbsp;PID&nbsp;</span><span style="color: #000000">|</span><span style="color: #000000">&nbsp;awk&nbsp;</span><span style="color: #000000; font-weight: bold">'</span><span style="color: #000000; font-weight: bold">{print&nbsp;$2}</span><span style="color: #000000; font-weight: bold">'</span><span style="color: #000000">|</span><span style="color: #000000">xargs&nbsp;</span><span style="color: #0000ff">kill</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">-</span><span style="color: #800000">9</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">&nbsp;OK</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;[&nbsp;$RETVAL&nbsp;-eq&nbsp;0&nbsp;]&nbsp;&amp;&amp;&nbsp;rm&nbsp;-f&nbsp;/var/lock/<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">$RETVAL</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />}<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />case&nbsp;</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">$1</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000">&nbsp;in<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />start)&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;start<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />stop)&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;stop<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />restart)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">Restaring&nbsp;Tomcat</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$</span><span style="color: #800000">0</span><span style="color: #000000">&nbsp;stop<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">sleep</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$</span><span style="color: #800000">0</span><span style="color: #000000">&nbsp;start<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">*</span><span style="color: #000000">)<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000; font-weight: bold">Usage:&nbsp;$0&nbsp;{start|stop|restart}</span><span style="color: #000000; font-weight: bold">"</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">exit</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />esac<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">exit</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">$RETVAL</span><span style="color: #000000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;chmod&nbsp;u+x&nbsp;tomcatd&nbsp;</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;chkconfig&nbsp;--add&nbsp;tomcatd&nbsp;</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;chkconfig&nbsp;--list&nbsp;tomcatd</span><span style="color: #008000"><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #000000">tomcatd&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">0</span><span style="color: #000000">:</span><span style="color: #000000">off&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">1</span><span style="color: #000000">:</span><span style="color: #000000">off&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">2</span><span style="color: #000000">:</span><span style="color: #000000">off&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">3</span><span style="color: #000000">:</span><span style="color: #000000">on&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">4</span><span style="color: #000000">:</span><span style="color: #000000">on&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">5</span><span style="color: #000000">:</span><span style="color: #000000">on&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800000">6</span><span style="color: #000000">:</span><span style="color: #000000">off<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;service&nbsp;tomcatd&nbsp;stop<br /><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span></div>
<p><br /></span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">删除：<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px"></span></p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">[root</span><span style="color: #800080">@appsit</span><span style="color: #000000">&nbsp;init</span><span style="color: #000000">.</span><span style="color: #000000">d]</span><span style="color: #008000">#</span><span style="color: #008000">&nbsp;chkconfig&nbsp;--del&nbsp;tomcatd</span></div>
<p></span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">写得也还不完善，比如tomcat 用户用个变量代替，用　RETVAL=$？来返回最后命令的退出状态，...</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">这些留待以后完善</span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">也可参考这篇：</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px"><a href="http://nio.infor96.com/archives/86">http://nio.infor96.com/archives/86</a><br /></span></p>
<p><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">本文来自CSDN博客，转载请标明出处：</span><span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 14px"><a href="http://blog.csdn.net/defonds/archive/2009/04/23/4102133.aspx">http://blog.csdn.net/defonds/archive/2009/04/23/4102133.aspx</a></span></p><img src ="http://www.blogjava.net/icewee/aggbug/353229.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-16 13:14 <a href="http://www.blogjava.net/icewee/archive/2011/04/16/353229.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>『nForce主板』巧妙去掉“安全删除硬盘”图标！</title><link>http://www.blogjava.net/icewee/archive/2011/04/13/353252.html</link><dc:creator>IceWee</dc:creator><author>IceWee</author><pubDate>Wed, 13 Apr 2011 08:31:00 GMT</pubDate><guid>http://www.blogjava.net/icewee/archive/2011/04/13/353252.html</guid><wfw:comment>http://www.blogjava.net/icewee/comments/353252.html</wfw:comment><comments>http://www.blogjava.net/icewee/archive/2011/04/13/353252.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/icewee/comments/commentRss/353252.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/icewee/services/trackbacks/353252.html</trackback:ping><description><![CDATA[<span style="font-family: tahoma,arial,helvetica,sans-serif; font-size: 12pt">如果您的电脑使用的是nforce芯片组的主板和串口硬盘。在系统中安装好所有的硬件驱动程序后，发现在任务栏右下角始终会显示一个&#8220;安全删除硬件&#8221;的图标。这是nforce芯片组在安装了IDE-SW主板驱动以后，系统会把SATA硬盘识别为可移动设备，每次开机后都会显示这个图标。</span><br />
<p id="blog_text" class="cnt"><span style="font-family: tahoma,arial,helvetica,sans-serif"><span style="font-size: 14px" size="2">&nbsp;</span><span style="font-size: 14px" size="2"><span style="color: #0000ff; font-size: 12pt">清除方法：</span></span></span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; color: #0000ff; font-size: 14px"><span style="font-size: 12pt" size="2">&nbsp;&nbsp;&nbsp;&nbsp; 打开注册表定位到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvata]用右键点击&#8220;nvata&#8221;，选择&#8220;新建/DWORD值&#8221;选项，此时会在右侧窗口中添加一个&#8220;新值il&#8221;项，将它重命名为&#8220;DisableRemovable&#8221;,再双击它打开&#8220;编辑DWORD值&#8221;对话框，将&#8220;数值数据&#8221;更改为&#8220;1&#8221;，点击&#8220;确定&#8221;按钮即可。</span></span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; color: #0000ff; font-size: 14px"><span style="font-size: 12pt" size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 如果在注册表中找不到&#8220;nvata&#8221;建值，可定位到[HKEY_LOCAL_MACHINE\SYSTEM\</span></span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif; color: #0000ff; font-size: 14px"><span style="font-size: 12pt" size="2">CurrentControlSet\Services\nvatabus]在点击&#8220;nvatabus&#8221;创建和设置&#8220;DisableRemovable&#8221;键值即可。</span></span><br /><span style="font-family: tahoma,arial,helvetica,sans-serif"><span style="font-size: 14px" size="2">&nbsp;&nbsp;</span><span style="font-size: 12pt" size="2">&nbsp;&nbsp;&nbsp; 重启电脑后，系统就不会将SATA硬盘识别为可移动设备了，那个&#8220;安全删除硬件&#8221;图标也就消失了，而且不会影响其它可移动设备的正常使用，在插入U盘或移动硬盘等设备后，系统仍然会出现&#8220;安全删除硬件&#8221;的图标。</span></span></p>
<p><br mce_bogus="1" /></p><img src ="http://www.blogjava.net/icewee/aggbug/353252.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/icewee/" target="_blank">IceWee</a> 2011-04-13 16:31 <a href="http://www.blogjava.net/icewee/archive/2011/04/13/353252.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>