﻿<?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-Stellar.He</title><link>http://www.blogjava.net/Stellar/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 20:44:58 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 20:44:58 GMT</pubDate><ttl>60</ttl><item><title>解决高亮度显示内容问题（onFocus)</title><link>http://www.blogjava.net/Stellar/archive/2006/12/19/88804.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 19 Dec 2006 07:12:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/12/19/88804.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/88804.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/12/19/88804.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/88804.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/88804.html</trackback:ping><description><![CDATA[
		<h4 class="TextColor1" id="subjcns!D625B4D27598B369!116" style="MARGIN-BOTTOM: 0px">解决高亮度显示内容问题（onFocus)</h4>
		<div id="msgcns!D625B4D27598B369!116">
				<div>&lt;script language="JScript"&gt;<br />function MyFocus(obj)<br />{<br /> obj.value += '';<br /> var rng = obj.createTextRange();<br />    rng.moveStart("character", obj.value.length);     <br />    rng.collapse(true);         <br />    rng.select();  <br />}<br />&lt;/script&gt;<br />&lt;input&gt;<br />&lt;input name=test value="abcdfdf" onfocus="MyFocus(this)"&gt;<br /></div>
		</div>
<img src ="http://www.blogjava.net/Stellar/aggbug/88804.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-12-19 15:12 <a href="http://www.blogjava.net/Stellar/archive/2006/12/19/88804.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在线编辑office文件 保存到服务器设置</title><link>http://www.blogjava.net/Stellar/archive/2006/12/19/88802.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 19 Dec 2006 07:06:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/12/19/88802.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/88802.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/12/19/88802.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/88802.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/88802.html</trackback:ping><description><![CDATA[
		<h4 class="TextColor1" id="subjcns!D625B4D27598B369!110" style="MARGIN-BOTTOM: 0px"> </h4>
		<div id="msgcns!D625B4D27598B369!110">
				<div>Javascript调用：</div>
				<div> </div>
				<div>function openFile() {</div>
				<div>   var openDocObj = new ActiveXObject("SharePoint.OpenDocuments.1");</div>
				<div>   openDocObj.EditDocument("<a href="http://server:port/webdav/test.doc"><font color="#0066a7">http://server:port/webdav/test.doc</font></a>");</div>
				<div>}</div>
				<div> </div>
				<div>1)在web上编集,创建office文档的前题<span><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">1</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">　</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">Tomcat</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: black"></span></p><p><span style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体">步骤</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: black">A,B</span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">A </span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">在</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">web.xml</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">文档中加入如下等代码</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana"><br />&lt;mime-mapping&gt; <br />&lt;extension&gt;xls&lt;/extension&gt; <br />&lt;mime-type&gt;application/vnd.ms-excel&lt;/mime-type&gt; <br />&lt;/mime-mapping&gt; <br />&lt;mime-mapping&gt; <br />&lt;extension&gt;doc&lt;/extension&gt;<br />&lt;mime-type&gt;application/msword&lt;/mime-type&gt; <br />&lt;/mime-mapping&gt;</span></p><p><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">说明：但</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">excel</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">却不是从</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">IE</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">里打开的，这和</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">IE</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">的设置有关．</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana"></span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana"></span> </p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">B.</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">在</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">D:\Tomcat42\webapps\webdav\WEB-INF\web.xml</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">将注释放开</span><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana"></span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">&lt;init-param&gt;</span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">&lt;param-name&gt;readonly&lt;/param-name&gt;</span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">&lt;param-value&gt;false&lt;/param-value&gt;</span></p><p><span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana">&lt;/init-param&gt;</span></p><p><span style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体">说明：所要修改的文件必须放在</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: black">webdav</span><span style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体">这个目录下面．并具要有修改的权限</span><span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: black">.</span></p><p><span style="FONT-SIZE: 9pt; COLOR: black; FONT-FAMILY: 宋体">这存在数据安全的问题．</span></p></span></div>
		</div>
<img src ="http://www.blogjava.net/Stellar/aggbug/88802.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-12-19 15:06 <a href="http://www.blogjava.net/Stellar/archive/2006/12/19/88802.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>人生致命的8个问题</title><link>http://www.blogjava.net/Stellar/archive/2006/12/19/88801.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 19 Dec 2006 07:02:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/12/19/88801.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/88801.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/12/19/88801.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/88801.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/88801.html</trackback:ping><description><![CDATA[
		<h4 class="TextColor1" id="subjcns!AC532F52B5A38A0C!195" style="MARGIN-BOTTOM: 0px"> </h4>
		<div id="msgcns!AC532F52B5A38A0C!195">
				<div>问题一， 如果你家附近有一家餐厅，东西又贵又难吃，桌上还爬着蟑螂，你会因为它很近 很方便，就一而再、再而三地光临吗？ 回答：你一定会说，这是什么烂问题，谁那么笨，花钱买罪受？可同样的情况换个场合，自己或许就做类似的蠢事。不少男女都曾经抱怨过他们的情人或配偶品性不端，三心二意，不负责任。明知 <br />在一起没 什么好的结果，怨恨已经比爱还多，但却“不知道为什么”还是要和他搅和下去，分不了 手。说穿了，只是为了不甘，为了习惯，这不也和光临餐厅一样？ <br /><br />　　——做人，为什么要过于执著？！ <br /><br />　　问题二， 如果你不小心丢掉100块钱，只知道它好像丢在某个你走过的地方，你会花200块 钱的车费去把那100块找回来吗？ 回答：一个超级愚蠢的问题。 <br /><br />　　可是，相似的事情却在人生中不断发生。做错了一件事，明知自己有问题，却*也不肯认 错，反而花加倍的时间来找藉口，让别人对自己的印象大打折扣。被人骂了一句话，却花了无数时间难过，道理相同。为一件事情发火，不惜损人不利已，不惜血本，不惜时间， 只为报复，不也一样无聊？ 失去一个人的感情，明知一切已无法挽回，却还是那么伤心，而且一伤心就是好几年，还要借酒浇愁，形销骨立。其实这样一点用也没有，只是损失更多。 <br /><br />　　——做人，干吗为难自己？！ <br /><br />　　问题三， 你会因为打开报纸发现每天都有车祸，就不敢出门吗？ 回答：这是个什么烂问题？当然不会，那叫因噎废食。 <br /><br />　　然而，有不少人却曾说：现在的离婚率那么高，让我都不敢谈恋爱了。说得还挺理所当然 。也有不少女人看到有关的诸多报道，就对自己的另一半忧心忡忡，这不也是类似的反应？所谓乐观，就是得相信：虽然道路多艰险，我还是那个会平安过马路的人，只要我小心 一点，不必害怕过马路。 <br /><br />　　——做人，先要相信自己。 <br /><br />　　问题四， 你相信每个人随便都可以成功立业吗？ 回答：当然不会相信。 <br /><br />　　但据观察，有人总是在听完成功人士绞尽脑汁的建议，比如说，多读书，多练习之后，问 了另一个问题？那不是很难？ 我们都想在3分钟内学好英文，在5分钟内解决所有难题，难道成功是那么容易的吗？改变当然是难的。成功只因不怕困难，所以才能出类拔萃。 有一次坐在出租车上，听见司机看到自己前后都是高档车，兀自感叹：“唉，为什么别人 那么有钱，我的钱这么难赚？” 我心血来潮，问他：“你认为世上有什么钱是好赚的？”他答不出来，过了半晌才说：好 像都是别人的钱比较好赚。 其实任何一个成功者都是艰辛取得。我们实在不该抱怨命运。 <br /><br />　　——做人，依靠自己！ <br /><br />　　问题五， 你认为完全没有打过篮球的人，可以当很好的篮球教练吗？ 回答：当然不可能，外行不可能领导内行。 <br /><br />　　可是，有许多人，对某个行业完全不了解，只听到那个行业好**，就马上开起业来了。 我看过对穿着没有任何口味、或根本不在乎穿着的人，梦想却是开间服装店；不知道电脑怎么开机的人，却想在网上**，结果道听途说，却不反省自己是否专业能力不足，只抱 怨时不我与。 <br /><br />　　——做人，量力而行。 <br /><br />　　问题六， 相似但不相同的问题：你是否认为，篮球教练不上篮球场，闭着眼睛也可以主导 一场完美的胜利？ 回答：有病啊，当然是不可能的。 <br /><br />　　可是却有不少朋友，自己没有时间打理，却拼命投资去开咖啡馆，开餐厅，开自己根本不 懂的公司，火烧屁股一样急着把辛苦积攒的积蓄花掉，去当一个稀里糊涂的投资人。亏的总是比赚的多，却觉得自己是因为运气不好，而不是想法出了问题。 <br /><br />　　——做人，记得反省自己。 <br /><br />　　问题七，] 你宁可永远后悔，也不愿意试一试自己能否转败为胜？ 解答：恐怕没有人会说：“对，我就是这样的孬种”吧。 <br /><br />　　然而，我们却常常在不该打退堂鼓时拼命打退堂鼓，为了恐惧失败而不敢尝试成功。 以关颖珊赢得2000年世界花样滑冰冠军时的精彩表现为例：她一心想赢得第一名，然而在最后一场比赛前，她的总积分只排名第三位，在最后的自选曲项目上，她选择了突破，而 不是少出错。在4分钟的长曲中，结合了最高难度的三周跳，并且还大胆地连跳了两次。她也可能会败得很难看，但是她毕竟成功了。 她说：“因为我不想等到失败，才后悔自己还有潜力没发挥。” 一个中国伟人曾说；胜利的希望和有利情况的恢复，往往产生于再坚持一下的努力之中。 <br /><br />　　——做人，何妨放手一搏。 <br /><br />　　问题八， 你的时间无限，长生不老，所以最想做的事，应该无限延期？ 回答：不，傻瓜才会这样认为。 <br /><br />　　然而我们却常说，等我老了，要去环游世界；等我退休，就要去做想做的事情；等孩子长 大了，我就可以…… 我们都以为自己有无限的时间与精力。其实我们可以一步一步实现理想，不必在等待中徒耗生命。如果现在就能一步一步努力接近，我们就不会活了半生，却出现自己最不想看到 的结局。 <br /><br />　　——做人，要活在当下。</div>
		</div>
<img src ="http://www.blogjava.net/Stellar/aggbug/88801.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-12-19 15:02 <a href="http://www.blogjava.net/Stellar/archive/2006/12/19/88801.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle和sqlserver互訪</title><link>http://www.blogjava.net/Stellar/archive/2006/12/19/88705.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 19 Dec 2006 02:41:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/12/19/88705.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/88705.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/12/19/88705.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/88705.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/88705.html</trackback:ping><description><![CDATA[
		<h2 class="diaryTitle">oracle和sqlserver互訪</h2>                                       
<p></p><p><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: Tahoma; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">by HuiYi_Love from ITPUB</span></p><p><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: Tahoma; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"><font face="Verdana">oracle和sqlserver互訪!</font></span></p><p><font face="verdana, arial, helvetica" size="2"><span class="javascript" id="text4083655" style="FONT-SIZE: 12px">前几天由於工作的原因查找了oracle中查找sqlserver數据的資料,現測試成功,整理一下貼出!<br /><br />要求:從Oracle中能取SqlServer的數据<br />環境:<br />OracleDb: Linux + Oracle9i Enterprise Edition Release 9.0.1.1.1 - Production IP:192.168.1.52(TOPPROD)<br />MSQLDB: Windows2000 + SqlServer2000 IP:192.168.1.50(ERPSQL),測試用戶:sa/pass 測試數据表:EK.ACPTA<br />网關: WindowsXp + Oracle9i Enterprise Edition Release 9.0.1.1.1 - Production IP:192.168.1.221(S0504027),因為暫在測試階段,所以网關裝在我用的机器,网關可以裝在MSQLDB上<br /><br /><b>1.通過ODBC通用方式聯接</b><br /></span></font></p><blockquote><pre><font size="2"><font face="verdana,arial,helvetica">代码:</font><hr /></font><code><font color="#000000"><font color="#0000bb"><br /></font><font color="#ff8000">// A. 安裝HS部件
<br />//     默認情況下HS部件是安裝的,查詢視圖 SYS.HS_BASE_CAPS 可得出有沒有安裝此部件!
<br />// B. 配置ODBC
<br />//     在"系統DNS"中配置"ODBC FOR SQLSERVER",例如:[ERPSQL]
<br />// C. 配置TNSNAMES.ORA,路徑:ORACLE_HOME\NETWORK\ADMIN,這一步應該在ORACLEDB(192.168.1.52)上配置!
<br /></font><font color="#0000bb">Lnk2sql </font><font color="#007700">=                  </font><font color="#ff8000"># tnsName
<br />  </font><font color="#007700">(</font><font color="#0000bb">DESCRIPTION </font><font color="#007700">= 
<br />    (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">= 
<br />        (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">TCP</font><font color="#007700">)(</font><font color="#0000bb">HOST </font><font color="#007700">= </font><font color="#0000bb">192.168.1.221</font><font color="#007700">)(</font><font color="#0000bb">PORT </font><font color="#007700">= </font><font color="#0000bb">1521</font><font color="#007700">))     </font><font color="#ff8000"># 网關IP
<br />     </font><font color="#007700">)
<br />    (</font><font color="#0000bb">CONNECT_DATA </font><font color="#007700">= 
<br />        (</font><font color="#0000bb">SID </font><font color="#007700">= </font><font color="#0000bb">hs4sql</font><font color="#007700">)    </font><font color="#ff8000">#SID,要和監听器裡的SID一致!
<br />    </font><font color="#007700">) 
<br />    (</font><font color="#0000bb">HS</font><font color="#007700">=</font><font color="#0000bb">OK</font><font color="#007700">)
<br /></font><font color="#ff8000">// D. 配置listener.ora,路徑:ORACLE_HOME\NETWORK\ADMIN
<br /></font><font color="#0000bb">LISTENER </font><font color="#007700">=
<br />  (</font><font color="#0000bb">DESCRIPTION_LIST </font><font color="#007700">=
<br />    (</font><font color="#0000bb">DESCRIPTION </font><font color="#007700">=
<br />      (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">=
<br />        (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">IPC</font><font color="#007700">)(</font><font color="#0000bb">KEY </font><font color="#007700">= </font><font color="#0000bb">EXTPROC0</font><font color="#007700">))
<br />      )
<br />      (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">=
<br />        (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">TCP</font><font color="#007700">)(</font><font color="#0000bb">HOST </font><font color="#007700">= </font><font color="#0000bb">192.168.1.221</font><font color="#007700">)(</font><font color="#0000bb">PORT </font><font color="#007700">= </font><font color="#0000bb">1521</font><font color="#007700">))
<br />      )
<br />    )
<br />  )
<br /><br /></font><font color="#0000bb">SID_LIST_LISTENER </font><font color="#007700">=
<br />  (</font><font color="#0000bb">SID_LIST </font><font color="#007700">=
<br />    (</font><font color="#0000bb">SID_DESC </font><font color="#007700">=         </font><font color="#ff8000"># 這一段為加入的
<br />        </font><font color="#007700">(</font><font color="#0000bb">SID_NAME </font><font color="#007700">= </font><font color="#0000bb">hs4sql</font><font color="#007700">)
<br />        (</font><font color="#0000bb">ORACLE_HOME </font><font color="#007700">= </font><font color="#0000bb">D</font><font color="#007700">:</font><font color="#0000bb">oracleora9i</font><font color="#007700">)
<br />        (</font><font color="#0000bb">PROGRAM </font><font color="#007700">= </font><font color="#0000bb">hsodbc</font><font color="#007700">)   </font><font color="#ff8000"># 要使用的HS服務程序.
<br />    </font><font color="#007700">) 
<br />  )
<br /></font><font color="#ff8000">// E. 重啟監听器服務
<br />// F. 編輯ORACLE_HOME\HS\ADMIN內init.ora，這裡是iniths4sql.ora,因為上面的SID=hs4sql
<br /></font><font color="#0000bb">HS_FDS_CONNECT_INFO </font><font color="#007700">= </font><font color="#0000bb">ERPSQL     </font><font color="#ff8000"># B中設置的ODBC名稱
<br /></font><font color="#0000bb">HS_FDS_TRACE_LEVEL </font><font color="#007700">= </font><font color="#0000bb">0
<br /></font><font color="#ff8000">// G. 創建DB LINK,以及測試
<br /></font><font color="#0000bb">SQL</font><font color="#007700">&gt;  </font><font color="#0000bb">create database link ora2sql connect to </font><font color="#dd0000">"sa" </font><font color="#0000bb">identified by </font><font color="#dd0000">"pass" </font><font color="#0000bb">using </font><font color="#dd0000">'Lnk2sql'</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">Database link created
<br /><br />SQL</font><font color="#007700">&gt; </font><font color="#0000bb">select ta001</font><font color="#007700">,</font><font color="#0000bb">ta002 from acpta</font><font color="#007700">@</font><font color="#0000bb">ora2sql where rownum</font><font color="#007700">&lt;</font><font color="#0000bb">5</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">TA001 TA002
<br /></font><font color="#007700">----- -----------
<br /></font><font color="#0000bb">S710  20020306001
<br />S710  20020315001
<br />S710  20020325001
<br />S710  20020326001
<br /></font><font color="#007700">------------<br /></font></font></code><hr /></pre></blockquote><p><font face="verdana, arial, helvetica"><br /><br /><font size="2"><b>2.通過"透明网關"方式聯接</b><br /></font></font></p><blockquote><pre><font size="2"><font face="verdana,arial,helvetica">代码:</font><hr /></font><code><font color="#000000"><font color="#0000bb"><br /></font><font color="#ff8000">// A. 安裝透明网關,在安裝時選擇自定義安裝,安裝TRANSPARENT GATEWAY FOR SQLSERVER 組件,安裝成功後會產生oracle_homeora90\tg4msql目錄!
<br />// B. 配置TNSNAMES.ORA,路徑:ORACLE_HOME\NETWORK\ADMIN,這一步應該在ORACLEDB(192.168.1.52)上配置!
<br /></font><font color="#0000bb">TG4MSQL </font><font color="#007700">=           </font><font color="#ff8000"># tnsName
<br />    </font><font color="#007700">(</font><font color="#0000bb">DESCRIPTION </font><font color="#007700">=
<br />      (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">=
<br />         (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">TCP</font><font color="#007700">)(</font><font color="#0000bb">HOST </font><font color="#007700">= </font><font color="#0000bb">192.168.1.221</font><font color="#007700">)(</font><font color="#0000bb">PORT </font><font color="#007700">= </font><font color="#0000bb">1521</font><font color="#007700">))     </font><font color="#ff8000"># 网關IP
<br />      </font><font color="#007700">)
<br />      (</font><font color="#0000bb">CONNECT_DATA </font><font color="#007700">=
<br />        (</font><font color="#0000bb">SID </font><font color="#007700">= </font><font color="#0000bb">tg4msql </font><font color="#007700">)  </font><font color="#ff8000">#SID,要和監听器裡的SID一致!
<br />      </font><font color="#007700">)
<br />    (</font><font color="#0000bb">HS</font><font color="#007700">=</font><font color="#0000bb">OK</font><font color="#007700">) 
<br />    )
<br /></font><font color="#ff8000">// C. 配置listener.ora,路徑:ORACLE_HOME\NETWORK\ADMIN
<br /></font><font color="#0000bb">LISTENER </font><font color="#007700">=
<br />  (</font><font color="#0000bb">DESCRIPTION_LIST </font><font color="#007700">=
<br />    (</font><font color="#0000bb">DESCRIPTION </font><font color="#007700">=
<br />      (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">=
<br />        (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">IPC</font><font color="#007700">)(</font><font color="#0000bb">KEY </font><font color="#007700">= </font><font color="#0000bb">EXTPROC0</font><font color="#007700">))
<br />      )
<br />      (</font><font color="#0000bb">ADDRESS_LIST </font><font color="#007700">=
<br />        (</font><font color="#0000bb">ADDRESS </font><font color="#007700">= (</font><font color="#0000bb">PROTOCOL </font><font color="#007700">= </font><font color="#0000bb">TCP</font><font color="#007700">)(</font><font color="#0000bb">HOST </font><font color="#007700">= </font><font color="#0000bb">192.168.1.221</font><font color="#007700">)(</font><font color="#0000bb">PORT </font><font color="#007700">= </font><font color="#0000bb">1521</font><font color="#007700">))
<br />      )
<br />    )
<br />  )
<br /><br /></font><font color="#0000bb">SID_LIST_LISTENER </font><font color="#007700">=
<br />  (</font><font color="#0000bb">SID_LIST </font><font color="#007700">=
<br />    (</font><font color="#0000bb">SID_DESC </font><font color="#007700">=
<br />      (</font><font color="#0000bb">GLOBAL_DBNAME </font><font color="#007700">= </font><font color="#0000bb">tg4msql</font><font color="#007700">)
<br />      (</font><font color="#0000bb">SID_NAME </font><font color="#007700">= </font><font color="#0000bb">tg4msql</font><font color="#007700">)
<br />      (</font><font color="#0000bb">ORACLE_HOME </font><font color="#007700">= </font><font color="#0000bb">D</font><font color="#007700">:</font><font color="#0000bb">oracleora9i</font><font color="#007700">)
<br />      (</font><font color="#0000bb">PROGRAM</font><font color="#007700">= </font><font color="#0000bb">tg4msql</font><font color="#007700">)
<br />    )
<br />  )
<br /></font><font color="#ff8000">// D. 重啟監听器服務
<br />// E. 編輯ORACLE_HOME\TG4MSQL\ADMIN內init.ora，這裡是inittg4msql.ora,因為上面的SID=tg4msql
<br />#HS_FDS_CONNECT_INFO="SERVER=ERPSQL;DATABASE=EK",好多人說用這行可以,我用這行的時候出現了不能打開鏈接的錯誤,改下面一行就沒問題了!
<br /></font><font color="#0000bb">HS_FDS_CONNECT_INFO</font><font color="#007700">=</font><font color="#0000bb">ERPSQL</font><font color="#007700">.</font><font color="#0000bb">EK
<br />HS_FDS_TRACE_LEVEL</font><font color="#007700">=</font><font color="#0000bb">OFF
<br />HS_FDS_RECOVERY_ACCOUNT</font><font color="#007700">=</font><font color="#0000bb">RECOVER
<br />HS_FDS_RECOVERY_PWD</font><font color="#007700">=</font><font color="#0000bb">RECOVER
<br /></font><font color="#ff8000">// F. 創建DB LINK,以及測試
<br /></font><font color="#0000bb">SQL</font><font color="#007700">&gt;  </font><font color="#0000bb">create database link msql2 connect to </font><font color="#dd0000">"sa" </font><font color="#0000bb">identified by </font><font color="#dd0000">"pass" </font><font color="#0000bb">using </font><font color="#dd0000">'TG4MSQL'</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">Database link created
<br /><br />SQL</font><font color="#007700">&gt; </font><font color="#0000bb">select ta001</font><font color="#007700">,</font><font color="#0000bb">ta002 from acpta</font><font color="#007700">@</font><font color="#0000bb">msql2 where rownum</font><font color="#007700">&lt;</font><font color="#0000bb">5</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">TA001 TA002
<br /></font><font color="#007700">----- -----------
<br /></font><font color="#0000bb">S710  20020306001
<br />S710  20020315001
<br />S710  20020325001
<br />S710  20020326001
<br /></font><font color="#007700">--------<br /></font></font></code><hr /></pre></blockquote><p><font face="verdana, arial, helvetica" size="2"><br /></font></p><blockquote><pre><font size="2"><font face="verdana,arial,helvetica">代码:</font><hr /></font><code><font color="#000000"><font color="#0000bb"><br /></font><font color="#007700">-- </font><font color="#0000bb">不知什么原因</font><font color="#007700">,</font><font color="#0000bb">感覺</font><font color="#dd0000">"通用方式"</font><font color="#0000bb">比</font><font color="#dd0000">"透明网關速度快一點"
<br /></font><font color="#0000bb">SQL</font><font color="#007700">&gt; </font><font color="#0000bb">set timing on
<br />SQL</font><font color="#007700">&gt; </font><font color="#0000bb">select ta001</font><font color="#007700">,</font><font color="#0000bb">ta002 from acpta</font><font color="#007700">@</font><font color="#0000bb">ora2sql where rownum</font><font color="#007700">&lt;</font><font color="#0000bb">10</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">TA001 TA002
<br /></font><font color="#007700">----- -----------
<br /></font><font color="#0000bb">S710  20020306001
<br />S710  20020315001
<br />S710  20020325001
<br />S710  20020326001
<br />S710  20020328001
<br />S710  20020329001
<br />S710  20020419001
<br />S710  20020422001
<br />S710  20020425001
<br /><br />9 rows selected
<br /><br />Executed in 0.047 seconds
<br /><br />SQL</font><font color="#007700">&gt; </font><font color="#0000bb">select ta001</font><font color="#007700">,</font><font color="#0000bb">ta002 from acpta</font><font color="#007700">@</font><font color="#0000bb">msql2 where rownum</font><font color="#007700">&lt;</font><font color="#0000bb">10</font><font color="#007700">;
<br /><br /></font><font color="#0000bb">TA001 TA002
<br /></font><font color="#007700">----- -----------
<br /></font><font color="#0000bb">S710  20020306001
<br />S710  20020315001
<br />S710  20020325001
<br />S710  20020326001
<br />S710  20020328001
<br />S710  20020329001
<br />S710  20020419001
<br />S710  20020422001
<br />S710  20020425001
<br /><br />9 rows selected
<br /><br />Executed in 52.281 seconds
<br /></font><font color="#007700">--------<br /></font></font></code><hr /></pre></blockquote><p><font face="verdana, arial, helvetica"><br /><br /><font size="2"><b>3.SQLSERVER訪問ORACLE</b><br />環境:windowsxp + sqlserver2000 + Oracle9i Enterprise Edition Release 9.0.1.1.1 - Production IP:192.168.1.221<br /></font></font></p><blockquote><pre><font size="2"><font face="verdana,arial,helvetica">代码:</font><hr /></font><code><font color="#000000"><font color="#0000bb"><br /></font><font color="#ff8000">// A. 添加ODBC,OdbcName=DB,OracleSid=DB
<br />// B. 執行
<br /></font><font color="#0000bb">sp_addlinkedserver </font><font color="#dd0000">'LIORA'</font><font color="#007700">, </font><font color="#dd0000">'Oracle'</font><font color="#007700">, </font><font color="#dd0000">'MSDAORA'</font><font color="#007700">, </font><font color="#dd0000">'DB'
<br /></font><font color="#0000bb">GO
<br />EXEC sp_addlinkedsrvlogin  </font><font color="#007700">@</font><font color="#0000bb">rmtsrvname</font><font color="#007700">=</font><font color="#dd0000">'LIORA'</font><font color="#007700">,@</font><font color="#0000bb">useself</font><font color="#007700">=</font><font color="#dd0000">'false'</font><font color="#007700">,@</font><font color="#0000bb">locallogin</font><font color="#007700">=</font><font color="#dd0000">'sa'</font><font color="#007700">,@</font><font color="#0000bb">rmtuser</font><font color="#007700">=</font><font color="#dd0000">'SYSTEM'</font><font color="#007700">,@</font><font color="#0000bb">rmtpassword</font><font color="#007700">=</font><font color="#dd0000">'MANAGER'
<br /><br /></font><font color="#0000bb">select top 10 topic</font><font color="#007700">,</font><font color="#0000bb">info from LIORA</font><font color="#007700">..</font><font color="#0000bb">SYSTEM</font><font color="#007700">.</font><font color="#0000bb">HELP
<br />topic                                              info                                                                             
<br /></font><font color="#007700">-------------------------------------------------- -------------------------------------------------------------------------------- 
<br />@                                                  </font><font color="#0000bb">NULL
<br /></font><font color="#007700">@                                                   @ (</font><font color="#dd0000">"at" </font><font color="#0000bb">sign</font><font color="#007700">)
<br />@                                                   -------------
<br />@                                                  </font><font color="#0000bb">NULL
<br /></font><font color="#007700">@                                                   </font><font color="#0000bb">Runs the SQL</font><font color="#007700">*</font><font color="#0000bb">Plus statements in the specified command file</font><font color="#007700">. </font><font color="#0000bb">The command
<br /></font><font color="#007700">@                                                   </font><font color="#0000bb">file can be called from the local file system </font><font color="#007700">or </font><font color="#0000bb">from a web server</font><font color="#007700">.
<br />@                                                  </font><font color="#0000bb">NULL
<br /></font><font color="#007700">@                                                   @ {</font><font color="#0000bb">uri</font><font color="#007700">|</font><font color="#0000bb">file_name</font><font color="#007700">[.</font><font color="#0000bb">ext</font><font color="#007700">]} [</font><font color="#0000bb">arg</font><font color="#007700">...]
<br />@                                                  </font><font color="#0000bb">NULL
<br /></font><font color="#007700">@                                                   </font><font color="#0000bb">where uri supports HTTP</font><font color="#007700">, </font><font color="#0000bb">FTP </font><font color="#007700">and </font><font color="#0000bb">gopher protocols in the form</font><font color="#007700">:
<br /><br />(</font><font color="#0000bb">影響 10 個資料列</font><font color="#007700">)<br /></font></font></code></pre></blockquote><p></p><p></p><table cellspacing="0" cellpadding="0" width="100%" bgcolor="#ffffff" border="0"><tbody><tr><td width="10"><img height="1" alt="" src="http://www.itpub.net/images/space.gif" width="10" /></td><td width="100%"><!-- spacer --></td></tr></tbody></table><br /><br />原文引用 ：<br />你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=5059542 <img src ="http://www.blogjava.net/Stellar/aggbug/88705.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-12-19 10:41 <a href="http://www.blogjava.net/Stellar/archive/2006/12/19/88705.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>身份证号转换15位与18位</title><link>http://www.blogjava.net/Stellar/archive/2006/12/13/87505.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Wed, 13 Dec 2006 08:03:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/12/13/87505.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/87505.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/12/13/87505.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/87505.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/87505.html</trackback:ping><description><![CDATA[
		<p>  //开始 15位到18位的身份证号转换<br />   //身份证号码由十七位数字本体码和一位校验码组成，排列顺序从左至右依次为：<br />   //六位数地址码、八位数字的出生日期码、三位数字的顺序码和一位数字的校验码<br />    public String change18ID(String ID15){<br />         String ID18="";<br />         if(ID15.length()==18){<br />           ID18=ID15.toUpperCase();<br />         }</p>
		<p>         if(ID15.length()==15){<br />            int[] w={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1};<br />            char[] A={'1','0','X','9','8','7','6','5','4','3','2'};<br />            String ID17=ID15.substring(0,6)+"19"+ID15.substring(6,15);<br />            int[] ID17Array;<br />            ID17Array=new int[17];<br />            for(int i=0;i&lt;17;i++){<br />                ID17Array[i]=Integer.parseInt(ID17.substring(i,i+1));<br />            }<br />            int s=0;<br />            for(int i=0;i&lt;17;i++){<br />                 s=s+ID17Array[i]*w[i];<br />            }<br />            s=s%11;<br />            ID18=ID17+A[s];<br />          }<br />          return ID18.trim();<br />      }<br /> //结束 15位到18位的身份证号转换<br /> public String change15ID(String ID18){<br />     String ID15="";<br />     if(ID18.length()==15) ID15=ID18;<br />     if(ID18.length()==18){<br />         ID15=ID18.substring(0,6)+ID18.substring(8,17);<br />     }<br />     return ID15.trim();<br /> }<br />  </p>
<img src ="http://www.blogjava.net/Stellar/aggbug/87505.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-12-13 16:03 <a href="http://www.blogjava.net/Stellar/archive/2006/12/13/87505.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>javascript屏蔽F5刷新键</title><link>http://www.blogjava.net/Stellar/archive/2006/08/08/62303.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 08 Aug 2006 02:33:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/08/08/62303.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/62303.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/08/08/62303.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/62303.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/62303.html</trackback:ping><description><![CDATA[
		<p>&lt;script language="Javascript"&gt;<br />function KeyDown(){<br /> //alert(event.keyCode);<br />  if ((event.keyCode==116)|| //屏蔽 F5 刷新键<br />(event.ctrlKey &amp;&amp; event.keyCode==82)){ //Ctrl + R<br />event.keyCode=0;<br />event.returnValue=false;<br />}</p>
		<p>}<br />document.onkeydown=KeyDown;<br />&lt;/script&gt;</p>
<img src ="http://www.blogjava.net/Stellar/aggbug/62303.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-08-08 10:33 <a href="http://www.blogjava.net/Stellar/archive/2006/08/08/62303.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>人民币大小写转</title><link>http://www.blogjava.net/Stellar/archive/2006/08/01/61156.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 01 Aug 2006 03:37:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/08/01/61156.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/61156.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/08/01/61156.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/61156.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/61156.html</trackback:ping><description><![CDATA[
		<p>
				<br />     String HanDigiStr[] = new String[]{"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};</p>
		<p>      String HanDiviStr[] = new String[]{"","拾","佰","仟","万","拾","佰","仟","亿",<br />          "拾","佰","仟","万","拾","佰","仟","亿",<br />          "拾","佰","仟","万","拾","佰","仟" };</p>
		<p>     /**<br />      * 输入字符串必须正整数，只允许前导空格(必须右对齐)，不宜有前导零<br />      * @param NumStr<br />      * @return<br />      *  */<br />      String PositiveIntegerToHanStr(String NumStr)<br />      {<br />       String RMBStr = "";<br />       boolean lastzero = false;<br />       boolean hasvalue= false;       // 亿、万进位前有数值标记<br />       int len,n;<br />       len = NumStr.length();<br />       if( len &gt; 15 ) return "数值过大!";<br />       for(int i=len-1;i&gt;=0;i--) {<br />        if( NumStr.charAt(len-i-1)==' ' ) continue;<br />        n = NumStr.charAt(len-i-1) - '0';<br />        if( n&lt;0 || n&gt;9 ) return "输入含非数字字符!";</p>
		<p>        if( n!=0 ) {<br />         if( lastzero ) RMBStr += HanDigiStr[0];  // 若干零后若跟非零值，只显示一个零<br />                 // 除了亿万前的零不带到后面<br />         //if( !( n==1 &amp;&amp; (i%4)==1 &amp;&amp; (lastzero || i==len-1) ) )    // 如十进位前有零也不发壹音用此行<br />         if( !( n==1 &amp;&amp; (i%4)==1 &amp;&amp; i==len-1 ) )     // 十进位处于第一位不发壹音<br />          RMBStr += HanDigiStr[n];<br />         RMBStr += HanDiviStr[i];    // 非零值后加进位，个位为空<br />         hasvalue = true;                                    // 置万进位前有值标记</p>
		<p>        }else {<br />         if( (i%8)==0 || ((i%8)==4 &amp;&amp; hasvalue) )  // 亿万之间必须有非零值方显示万<br />          RMBStr += HanDiviStr[i];   // “亿”或“万”<br />        }<br />        if( i%8==0 ) hasvalue = false ;      // 万进位前有值标记逢亿复位<br />        lastzero = (n==0) &amp;&amp; (i%4!=0);<br />        }</p>
		<p>       if( RMBStr.length()==0 ) return HanDigiStr[0];         // 输入空字符或"0"，返回"零"<br />       return RMBStr;<br />      }</p>
		<p>     /**<br />      *<br />      * @param val<br />      * @return<br />      *  */<br />     public  String NumToRMBStr(double val)<br />      {<br />       String SignStr ="" ;<br />       String TailStr ="";<br />       long  fraction, integer;<br />       int jiao,fen;</p>
		<p>       if( val&lt;0 ) {<br />        val = -val;<br />        SignStr = "负";<br />        }<br />       if(val &gt; 99999999999999.999 || val &lt;-99999999999999.999 ) return "数值位数过大!";<br />       // 四舍五入到分<br />       long temp = Math.round(val*100);<br />       integer = temp/100;<br />       fraction = temp%100;<br />       jiao = (int)fraction/10;<br />       fen = (int)fraction%10;<br />       if( jiao==0 &amp;&amp; fen==0 ) {<br />        TailStr = "整";<br />        }<br />       else {<br />        TailStr = HanDigiStr[jiao];<br />        if( jiao!=0 )<br />         TailStr += "角";<br />        if( integer==0 &amp;&amp; jiao==0 )                // 零元后不写零几分<br />         TailStr = "";<br />        if( fen!=0 )<br />         TailStr += HanDigiStr[fen] + "分";<br />        }</p>
		<p>      // 下一行可用于非正规金融场合，0.03只显示“叁分”而不是“零元叁分”<br />      //        if( !integer ) return  SignStr+TailStr;</p>
		<p>       return SignStr+PositiveIntegerToHanStr(String.valueOf(integer) )+"元"+TailStr;<br />      }</p>
		<p> </p>
<img src ="http://www.blogjava.net/Stellar/aggbug/61156.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-08-01 11:37 <a href="http://www.blogjava.net/Stellar/archive/2006/08/01/61156.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Struts的文件上传</title><link>http://www.blogjava.net/Stellar/archive/2006/08/01/61152.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Tue, 01 Aug 2006 03:17:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/08/01/61152.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/61152.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/08/01/61152.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/61152.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/61152.html</trackback:ping><description><![CDATA[
		<p>作者：wldandan　来源：www.matrix.org.cn 　发布时间：2006-02-22 17:55:09.217<br /><br />最近刚做完一个项目，用Struts1.1做的。从不懂，到熟练使用，都靠参考CSDN的一些文档。但是文章上讲的并不一定适合自己，所以我把我自己做的一些东西拿上来给大家看看，互相交流一下。如果您有跟好的方法，可以和我联系。<br />MSN:whw_dream (AT) hotmail.com<br /><br />Struts的文件上传<br />本文用的是Struts1.1的org.apache.struts.upload.FormFile类。很方便，不用自己写。也不用写一个jsp调用jspsmartupload就可以搞定。<br /><br />选择上传文件页面：selfile.jsp<br /><br /><br /><br />--------------------------------------------------------------------------------<br />&lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%&gt;<br />&lt;html:html&gt;<br />&lt;html:form action="/uploadsAction.do" enctype="multipart/form-data"&gt;<br />&lt;html:file property="theFile"/&gt;<br />&lt;html:submit/&gt;<br />&lt;/html:form&gt;<br />&lt;/html:html&gt;<br /><br />--------------------------------------------------------------------------------<br />UpLoadAction.java <br />--------------------------------------------------------------------------------<br />import java.io.*;<br />import javax.servlet.http.*;<br />import org.apache.struts.action.*;<br />import org.apache.struts.upload.FormFile; <br /><br />/**<br />* &lt;p&gt;Title:UpLoadAction&lt;/p&gt;<br />* &lt;p&gt;Description: QRRSMMS &lt;/p&gt;<br />* &lt;p&gt;Copyright: Copyright (c) 2004 jiahansoft&lt;/p&gt;<br />* &lt;p&gt;Company: jiahansoft&lt;/p&gt;<br />* @author wanghw<br />* @version 1.0<br />*/<br /><br />public class UpLoadAction extends Action {<br />  public ActionForward execute(ActionMapping mapping,<br />                               ActionForm form,<br />                               HttpServletRequest request,<br />                               HttpServletResponse response)<br />      throws Exception {<br />    if (form instanceof uploadsForm) {//如果form是uploadsForm<br />        String encoding = request.getCharacterEncoding();<br />        if ((encoding != null) &amp;&amp; (encoding.equalsIgnoreCase("utf-8")))<br />        {<br />            response.setContentType("text/html; charset=gb2312");//如果没有指定编码，编码格式为gb2312<br />        }<br />        UpLoadForm theForm = (UpLoadForm ) form;<br />        FormFile file = theForm.getTheFile();//取得上传的文件<br />        try {<br />          InputStream stream = file.getInputStream();//把文件读入<br />          String filePath = request.getRealPath("/");//取当前系统路径<br />          // filePath = request.getRealPath(request.getRequestURI()); //取当前系统路径<br />          ByteArrayOutputStream baos = new ByteArrayOutputStream();<br />          OutputStream bos = new FileOutputStream(filePath + "/" +<br />                                                  file.getFileName());//建立一个上传文件的输出流<br />          //System.out.println(filePath+"/"+file.getFileName());<br />          int bytesRead = 0;<br />          byte[] buffer = new byte[8192];<br />          while ( (bytesRead = stream.read(buffer, 0, 8192)) != -1) {<br />            bos.write(buffer, 0, bytesRead);//将文件写入服务器<br />          }<br />          bos.close();<br />          stream.close();<br />        }catch(Exception e){<br />          System.err.print(e);<br />        }<br />        //request.setAttribute("dat",file.getFileName());<br />        return mapping.findForward("display");<br />    }<br />    return null;<br />  }<br />}<br /><br /><br /><br />--------------------------------------------------------------------------------<br /><br />UpLoadForm.java<br /><br />--------------------------------------------------------------------------------<br /><br /><br />import javax.servlet.http.HttpServletRequest;<br />import org.apache.struts.action.*;<br />import org.apache.struts.upload.*;<br /><br />/**<br />* &lt;p&gt;Title:UpLoadForm&lt;/p&gt;<br />* &lt;p&gt;Description: QRRSMMS &lt;/p&gt;<br />* &lt;p&gt;Copyright: Copyright (c) 2004 jiahansoft&lt;/p&gt;<br />* &lt;p&gt;Company: jiahansoft&lt;/p&gt;<br />* @author wanghw<br />* @version 1.0<br />*/<br /><br />public class UpLoadForm extends ActionForm {<br />  public static final String ERROR_PROPERTY_MAX_LENGTH_EXCEEDED = "org.apache.struts.webapp.upload.MaxLengthExceeded";<br />  protected FormFile theFile;<br />  public FormFile getTheFile() {<br />      return theFile;<br />  }<br />  public void setTheFile(FormFile theFile) {<br />      this.theFile = theFile;<br />  }<br />  public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)<br />  {<br />      ActionErrors errors = null;<br />      //has the maximum length been exceeded?<br />      Boolean maxLengthExceeded = (Boolean)<br />              request.getAttribute(MultipartRequestHandler.ATTRIBUTE_MAX_LENGTH_EXCEEDED);<br />      if ((maxLengthExceeded != null) &amp;&amp; (maxLengthExceeded.booleanValue()))<br />      {<br />          errors = new ActionErrors();<br />          errors.add(ERROR_PROPERTY_MAX_LENGTH_EXCEEDED, new ActionError("maxLengthExceeded"));<br />      }<br />      return errors;<br /><br />  }<br />}<br />//这是相对应的form，还有其他属性可以设置，具体可以参考struts的上传例子。<br /><br /><br /><br /><br />--------------------------------------------------------------------------------<br /><br />struts-config.xml<br /><br />--------------------------------------------------------------------------------<br /><br />&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"&gt;<br />&lt;struts-config&gt;<br />  &lt;form-beans&gt;<br />    &lt;form-bean name="uploadsForm" type="UpLoadForm" /&gt;<br />  &lt;/form-beans&gt;<br />  &lt;action-mappings&gt;<br />    &lt;action name="uploadsForm" type="UpLoadAction" path="/uploadsAction"&gt;<br />      &lt;forward name="display" path="/display.jsp" /&gt;<br />    &lt;/action&gt;<br />  &lt;/action-mappings&gt;<br />&lt;/struts-config&gt;<br />&lt;!--display.jsp就是随便写一个成功页--&gt; </p>
<img src ="http://www.blogjava.net/Stellar/aggbug/61152.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-08-01 11:17 <a href="http://www.blogjava.net/Stellar/archive/2006/08/01/61152.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>全选,通过复选框操作</title><link>http://www.blogjava.net/Stellar/archive/2006/05/17/46623.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Wed, 17 May 2006 06:37:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/05/17/46623.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/46623.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/05/17/46623.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/46623.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/46623.html</trackback:ping><description><![CDATA[// 全选,通过复选框操作<br />//checkid列表复选框name<br /><br />&lt;input type="checkbox" name="checkall" value="1"  onclick="CheckAll()"&gt;<br /><br />&lt;input type="checkbox" name="checkid" class="checkbox1" value=""&gt;<br /><br />function CheckAll()<br />{<br />  for (var i=0;i&lt;document.getElementsByName("checkid").length;i++)<br /> {<br />  var e = document.getElementsByName("checkid")[i];<br />    if (e.name != "checkall") {<br />       e.checked = document.all.checkall.checked;<br />    }<br />  }<br />}<img src ="http://www.blogjava.net/Stellar/aggbug/46623.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-05-17 14:37 <a href="http://www.blogjava.net/Stellar/archive/2006/05/17/46623.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>select下拉列表动态显示选择公司及部门信息——级联</title><link>http://www.blogjava.net/Stellar/archive/2006/05/14/46065.html</link><dc:creator>Stellar.He</dc:creator><author>Stellar.He</author><pubDate>Sun, 14 May 2006 05:05:00 GMT</pubDate><guid>http://www.blogjava.net/Stellar/archive/2006/05/14/46065.html</guid><wfw:comment>http://www.blogjava.net/Stellar/comments/46065.html</wfw:comment><comments>http://www.blogjava.net/Stellar/archive/2006/05/14/46065.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Stellar/comments/commentRss/46065.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Stellar/services/trackbacks/46065.html</trackback:ping><description><![CDATA[
		<p> //=================公司类方法===================//<br />public String getDrop(String compid,String dataid) throws Exception{<br />      if(str.IsEmpty(dataid) )<br />        dataid="AAA";<br />      Compid  com[]=this.readAll(compid,dataid);<br />      StringBuffer bf = new StringBuffer();<br />      if(com.length &gt; 0){<br />           for(int i=0;i&lt;com.length ;i++){<br />             if(dataid.equals(com[i].getBh()) )<br />               bf.append("&lt;option value=" + com[i].getID()  + " selected &gt;" + com[i].getName() + "&lt;/option&gt;") ;<br />             else<br />               bf.append("&lt;option value=" + com[i].getID()  + "&gt;" + com[i].getName() + "&lt;/option&gt;") ;<br />           }<br />         }<br />    return bf.toString();<br />    }<br /> //=================部门类方法同上===================//<br /><br />//====================页面调用=====================//<br /><br />   Compid com = new Compid();<br />   Deptid dep = new Deptid();<br />   Deptid [] depAll=bm.readAll("","");<br /><br />          &lt;select name="deptid" style="width:120px"&gt;<br />           &lt;option value=""&gt;所有公司<br />            &lt;%=com.getDrop(compid,deptid)%&gt;<br />          &lt;/select&gt;<br /><br />          &lt;select name="deptid" style="width:120px"&gt;<br />           &lt;option value=""&gt;所有部门<br />            &lt;%=dep.getDrop(compid,deptid)%&gt;<br />          &lt;/select&gt;<br /><br /><br /><br /><br />&lt;script language=javascript&gt;</p>
		<p> var bm= new Array();<br /> &lt;%if(depAll.length&gt;0){<br />     for(int i=0;i&lt;depAll.length;i++){%&gt;<br />     bm[&lt;%=i%&gt;] = new Array("&lt;%=depAll[i].getCom()%&gt;","&lt;%=depAll[i].getID()%&gt;","&lt;%=depAll[i].getName()%&gt;");<br />  &lt;%}}%&gt;<br /> function setBm(){<br />  document.form_com_dep.deptid.length = 0; <br />  document.form_com_dep.deptid.options[document.form_com_dep.deptid.length] = new Option("所有部门","");<br />  var comp = document.form_com_dep.compid.value ;<br />  var i=0;<br />  for (i=0;i &lt; &lt;%=depAll.length%&gt; ; i++)  {<br />      if (bm[i][0] == comp ) {<br />         document.form_com_dep.deptid.options[document.form_com_dep.deptid.length] = new Option(bm[i][2], bm[i][1]);<br />             }        <br />     }<br /> }<br />&lt;/script&gt;</p>
<img src ="http://www.blogjava.net/Stellar/aggbug/46065.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Stellar/" target="_blank">Stellar.He</a> 2006-05-14 13:05 <a href="http://www.blogjava.net/Stellar/archive/2006/05/14/46065.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>