﻿<?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-宝宝堂-随笔分类-java</title><link>http://www.blogjava.net/soddabao/category/18014.html</link><description>喜欢没事学点东西,喜欢开开心心侃东侃西,喜欢土里土气的活着,喜欢享受好的坏的的生活。</description><language>zh-cn</language><lastBuildDate>Tue, 22 Apr 2008 15:27:44 GMT</lastBuildDate><pubDate>Tue, 22 Apr 2008 15:27:44 GMT</pubDate><ttl>60</ttl><item><title>使用JDBC访问DB2的问题：no db2jdbc in java.library.path</title><link>http://www.blogjava.net/soddabao/archive/2008/04/22/194878.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 22 Apr 2008 13:11:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2008/04/22/194878.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/194878.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2008/04/22/194878.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/194878.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/194878.html</trackback:ping><description><![CDATA[<span style="font-size: 12pt">使用DB2自带的驱动db2java.zip文件中的type2类型的驱动访问DB2，总是报错： java.sql.SQLException: java.lang.UnsatisfiedLinkError: no db2jdbc in java.library.path&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span>
<p><span style="font-size: 12pt">或者：<br />
java.lang.ClassNotFoundException: COM.ibm.db2.jdbc.app.DB2Driver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
要么就报:没有合适的驱动。</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 我开始查classpath，把多余的驱动都删除了，还是报错，后来我又把db2java.zip文件改名为db2java.jar，也还是不行。</span></p>
<p><span style="font-size: 12pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 折腾了一个小时，我意识到访问DB2和访问Oracle不太一样，于是google，结果找到这篇文章：</span></p>
<p><a href="http://www-128.ibm.com/developerworks/cn/db2/library/techarticles/0402chenjunwei/0402chenjunwei.html"><span style="font-size: 12pt">http://www-128.ibm.com/developerworks/cn/db2/library/techarticles/0402chenjunwei/0402chenjunwei.html</span></a></p>
<br />
把驱动加到环境变量中，怎么试也是出问题，测试也不是db的版本与驱动的版本不一致。<br />
上网baidu google也是没有找到原因，同事机器上就没有任何问题，我就看她的配置发现和我配置还有点区别，就是少动态数据库文件。<br />
于是我把db2jdbc.dll文件拷到Java_Home/<strong>bin</strong>下面，重启机器，OK！一定要记住：是<strong>bin</strong>下面！！！<br />
db2java.zip文件要改名为db2java.jar，并且放到Common/lib下。
<img src ="http://www.blogjava.net/soddabao/aggbug/194878.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2008-04-22 21:11 <a href="http://www.blogjava.net/soddabao/archive/2008/04/22/194878.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>多重子查询提取每次子查询的SQL语句</title><link>http://www.blogjava.net/soddabao/archive/2008/04/22/194871.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 22 Apr 2008 12:58:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2008/04/22/194871.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/194871.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2008/04/22/194871.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/194871.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/194871.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;之前用的oracle大型数据库，写的sql都是依据oracle的。移动端部分用的不能是oracle数据库，只能采用小型数据库，现场采用db2。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; db2大小只能论k为单位，很多基本的sql语法都不支持，尤其多重子查询就不支持，做试验报告的阀值就必须得用这个子查询，没有部分只好将多重子查询提出sql，单独执行。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 提取多重子查询的方法倒是不复杂，就是对sql语句循环处理，判断是否含有多个select关键字，如果有从字符串最后一个select处理，截取sql语句，执行，然后将查询的结果替换原先的sql语句，直到循环判断sql语句中只有一个select关键字。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 关键部分的代码：<br />
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;lastSelectNo&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 src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;size&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 src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(sqlString.split(</span><span style="color: #000000">"</span><span style="color: #000000">select</span><span style="color: #000000">"</span><span style="color: #000000">).length&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.split(</span><span style="color: #000000">"</span><span style="color: #000000">select</span><span style="color: #000000">"</span><span style="color: #000000">).length&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(sqlString.split(</span><span style="color: #000000">"</span><span style="color: #000000">SELECT</span><span style="color: #000000">"</span><span style="color: #000000">).length&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">)<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.split(</span><span style="color: #000000">"</span><span style="color: #000000">SELECT</span><span style="color: #000000">"</span><span style="color: #000000">).length&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;sql&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;String[size];<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;(isHaveTwoSelect(sqlString))<br />
<img id="Codehighlighter1_316_910_Open_Image" onclick="this.style.display='none'; Codehighlighter1_316_910_Open_Text.style.display='none'; Codehighlighter1_316_910_Closed_Image.style.display='inline'; Codehighlighter1_316_910_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_316_910_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_316_910_Closed_Text.style.display='none'; Codehighlighter1_316_910_Open_Image.style.display='inline'; Codehighlighter1_316_910_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_316_910_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_316_910_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lastSelectNo&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.lastIndexOf(</span><span style="color: #000000">"</span><span style="color: #000000">select</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(lastSelectNo&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 src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lastSelectNo&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.lastIndexOf(</span><span style="color: #000000">"</span><span style="color: #000000">SELECT</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">char</span><span style="color: #000000">&nbsp;beforeLast&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.charAt(lastSelectNo&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(beforeLast&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">'</span><span style="color: #000000">(</span><span style="color: #000000">'</span><span style="color: #000000">)<br />
<img id="Codehighlighter1_534_893_Open_Image" onclick="this.style.display='none'; Codehighlighter1_534_893_Open_Text.style.display='none'; Codehighlighter1_534_893_Closed_Image.style.display='inline'; Codehighlighter1_534_893_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_534_893_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_534_893_Closed_Text.style.display='none'; Codehighlighter1_534_893_Open_Image.style.display='inline'; Codehighlighter1_534_893_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_534_893_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_534_893_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;k&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">5</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;string&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.substring(lastSelectNo).substring(</span><span style="color: #000000">0</span><span style="color: #000000">,&nbsp;k);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">while</span><span style="color: #000000">&nbsp;(</span><span style="color: #000000">!</span><span style="color: #000000">IsMatching(string))<br />
<img id="Codehighlighter1_658_739_Open_Image" onclick="this.style.display='none'; Codehighlighter1_658_739_Open_Text.style.display='none'; Codehighlighter1_658_739_Closed_Image.style.display='inline'; Codehighlighter1_658_739_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_658_739_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_658_739_Closed_Text.style.display='none'; Codehighlighter1_658_739_Open_Image.style.display='inline'; Codehighlighter1_658_739_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_658_739_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_658_739_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k</span><span style="color: #000000">++</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString.substring(lastSelectNo).substring(</span><span style="color: #000000">0</span><span style="color: #000000">,&nbsp;k);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql[size&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;string.substring(</span><span style="color: #000000">0</span><span style="color: #000000">,&nbsp;k&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sqlString&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;replace(sqlString,&nbsp;sql[size&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">].toString(),&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">sql[</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;(size&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">]</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size</span><span style="color: #000000">--</span><span style="color: #000000">;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #008000">//</span><span style="color: #008000">if(befor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sql[</span><span style="color: #000000">0</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sqlString;</span></div>
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 问题是：对于select关键字的处理，目前只知道全是小写select或是全是大写SELECT，实际中select关键字这个不考虑大小写限制，我这边还尚未进行校验，一是比较麻烦二是尚未发现好的方法，目前就是对select关键字依次判断是否是s e l e c t几个字符 ，不考虑大小写。 <br />
&nbsp;&nbsp;&nbsp;&nbsp; 大家如果有好的处理select关键字方法，欢迎得道你的支持。
<img src ="http://www.blogjava.net/soddabao/aggbug/194871.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2008-04-22 20:58 <a href="http://www.blogjava.net/soddabao/archive/2008/04/22/194871.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jdk版本的问题</title><link>http://www.blogjava.net/soddabao/archive/2008/01/11/174606.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 11 Jan 2008 05:33:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2008/01/11/174606.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/174606.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2008/01/11/174606.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/174606.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/174606.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;大家发布web程序，出现如下这样的错误么？我只知道是jdk的版本问题，我机器上安装了4 5 6三个版本的jdk，应该是jdk6和jdk5冲突造成的。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我解决过一次，就是把所有的jdk全删除，然后安装我使用的jdk的版本，问题就没有了，不过这样解决不是最佳方法。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;不知道大家有么有别的好的解决方法？<br />
<br />
<br />
<img style="width: 997px; height: 593px" height="593" alt="" src="http://www.blogjava.net/images/blogjava_net/soddabao/error.gif" width="997" border="0" /></p>
 <img src ="http://www.blogjava.net/soddabao/aggbug/174606.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2008-01-11 13:33 <a href="http://www.blogjava.net/soddabao/archive/2008/01/11/174606.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Editplus编译执行JAVA程序</title><link>http://www.blogjava.net/soddabao/archive/2008/01/09/174051.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 09 Jan 2008 08:29:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2008/01/09/174051.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/174051.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2008/01/09/174051.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/174051.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/174051.html</trackback:ping><description><![CDATA[EditPlus是很多程序员非常熟悉的编辑工具，它以占用系统资源小、操作简便灵活、支持文件类型丰富（还能自定义文件类型）等优点而被广泛使用。 <br />
其实EditPlus不但有编辑程序的功能，还有灵活的编译功能，下面就简单介绍一下EditPlus对JAVA的编译设置。<br />
在配置EditPlus之前，我们先要将JAVA的运行环境安装并且调试好，这里我就不再说明了。 <br />
首先，从菜单&#8220;工具（Tools）&#8221;-&gt;&#8220;配置用户工具...&#8221;进入用户工具设置。 <br />
在类别里展开&#8220;工具&#8221;树形菜单-&gt;&#8220;用户工具（user tool）&#8221;，选择&#8220;组和工具项目&#8221;中的&#8220;Group 1&#8221;，点击面板右边的&#8220;组名称...(group name)&#8221;按钮，将文本&#8220;Group1&#8221;修改成&#8220;编译JAVA程序&#8221;。 <br />
然后选择修改的组&#8220;编译JAVA程序&#8221;，点击&#8220;添加新工具(add tools)&#8221;按钮，选择程序，建立&#8220;新建程序(program)&#8221;，选中它。 <br />
然后就是最重要的步骤（修改属性）：
<p>&nbsp;<strong><font color="#ff0000" size="3">※</font></strong>添加编译功能 <br />
&#8220;菜单文字&#8221;里的内容修改为&#8220;JAVAC&#8221;； <br />
&#8220;命令&#8221;选择安装JDK后的BIN目录中的编译程序JAVAC.EXE，如果JDK 安装路径为&#8220;c:\jdk&#8221;，那么此路径为&#8220;c:\jdk\bin\javac.exe&#8221;； <br />
&#8220;参数&#8221;选择&#8220;文件名称&#8221;，即显示为&#8220;$(FileName)&#8221;； <br />
&#8220;初始目录&#8221;选择&#8220;文件目录&#8221;，显示为&#8220;$(FileDir)&#8221;； <br />
选择&#8220;捕获输出&#8221;复选框。 <br />
</p>
<div><img src="http://photo1.bababian.com/upload6/20080106/A8AB06AE67439A6FFCC139566733280B_500.jpg"  alt="" /></div>
<div>&nbsp;<strong><font color="#ff0000" size="3">※</font></strong>添加执行功能 <br />
&#8220;菜单文字&#8221;里的内容修改为&#8220;JAVA&#8221;； <br />
&#8220;命令&#8221;选择安装JDK后的BIN目录中的编译程序JAVA.EXE，路径为&#8220;c:\jdk\bin\java.exe&#8221;； <br />
&#8220;参数&#8221;选择&#8220;文件名（不含扩展名）&#8221;，即显示为&#8220;$(FileNameNoExt)&#8221;； <br />
&#8220;初始目录&#8221;选择&#8220;文件目录&#8221;，显示为&#8220;$(FileDir)&#8221;； <br />
选择&#8220;捕获输出&#8221;复选框。</div>
<div>&nbsp;</div>
<div><img src="http://photo1.bababian.com/upload6/20080106/04699FE132A8426D1B91FE899C2D1436_500.jpg"  alt="" /></div>
<div>这样就完成了基本的配置工作，下面来试着编写一个JAVA程序来测试一下（如图），编译的所有信息都会显示在输出窗口中，双击某一行错误信息，EditPlus会自动定位到出错行。 <br />
<img class="photoBorder" id="current" src="http://photo1.bababian.com/upload6/20080106/1AB0DA941F027B0B66C3D84E9BB8FAA5_500.jpg"  alt="" /></div>
<img src ="http://www.blogjava.net/soddabao/aggbug/174051.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2008-01-09 16:29 <a href="http://www.blogjava.net/soddabao/archive/2008/01/09/174051.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>反编译工具jad简单用法</title><link>http://www.blogjava.net/soddabao/archive/2007/09/26/148305.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 26 Sep 2007 05:32:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/09/26/148305.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/148305.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/09/26/148305.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/148305.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/148305.html</trackback:ping><description><![CDATA[<font color="#333333">反编译工具jad简单用法 <br />
以下假设jad.exe在c:\java目录下 <br />
一、基本用法 <br />
Usage:&nbsp;&nbsp;&nbsp;&nbsp;jad&nbsp;[option(s)]&nbsp;&lt;filename(s)&gt; <br />
直接输入类文件名，且支持通配符，如下所示。 <br />
c:\java\&gt;jad&nbsp;example1.class <br />
c:\java\&gt;jad&nbsp;*.class <br />
结果是将example1.class反编译为example1.jad。将example1.jad改为example1.java即得源文件。 <br />
<br />
</font>
<table width="676" border="0">
    <tbody>
        <tr>
            <td width="307"><font color="#333333">二、Option&nbsp;-o <br />
            不提示，覆盖源文件 <br />
            三、Option&nbsp;-s <br />
            c:\java\&gt;jad&nbsp;-sjava&nbsp;example1.class <br />
            反编译结果以.java为扩展名。 <br />
            <br />
            四、Option&nbsp;-p <br />
            将反编译结果输出到屏幕 <br />
            c:\java\&gt;jad&nbsp;-p&nbsp;example1.class <br />
            将反编译结果重定向到文件 <br />
            c:\java\&gt;jad&nbsp;-p&nbsp;example1.class&gt;example1.java <br />
            <br />
            五、Option&nbsp;-d <br />
            指定反编译的输出文件目录 <br />
            c:\java\&gt;jad&nbsp;-o&nbsp;-dtest&nbsp;-sjava&nbsp;*.class</font></td>
        </tr>
    </tbody>
</table>
<br />
<strong>命令行选择的列表</strong><br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 用JVM字节格式来注解输出<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -af&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 同 -a,但是注解的时候用全名称<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -clear&nbsp;&nbsp;&nbsp; - 清除所有的前缀<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 输出多于的括号 (e.g., if(a) { b(); }, default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -d &lt;dir&gt; - 指定输出文件的文件目录<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -dead&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -试图反编译代码的dead 部分(default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -disass&nbsp;&nbsp; - 不用用字节码的方式反编译 (no JAVA source generated)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -f&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 输出整个的名字,无论是类还是方法<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -ff&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -输出类的成员在方法之前 (default: after methods)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -i&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 输出所有的变量的缺省的最初值<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -l&lt;num&gt;&nbsp;&nbsp;&nbsp; - 将strings分割成指定数目的块的字符 (default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -lnc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 将输出文件用行号来注解 (default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nl&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 分割strings用新行字符 newline character (default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nodos&nbsp;&nbsp;&nbsp; -不要去检查class文件是否以dos方式写 (CR before NL, default: check)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nocast&nbsp;&nbsp; - 不要生成辅助文件<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nocode&nbsp;&nbsp;&nbsp; -不要生成方法的源代码 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -noconv&nbsp;&nbsp;&nbsp; - 不要转换java的定义符 (default: do)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -noctor&nbsp;&nbsp; - 不允许空的构造器存在<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -noinner&nbsp;&nbsp; -关掉对内部类的支持 (default: turn on)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nolvt&nbsp;&nbsp;&nbsp; - 忽略局部变量的表信息<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -nonlb&nbsp;&nbsp;&nbsp;&nbsp; - 不要输出一个新行在打开一个括号之前 (default: do)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -o&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 无需确认直接覆盖输出 (default: no)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 发送反编译代码到标准输出 STDOUT (e.g., for piping) 
<img src ="http://www.blogjava.net/soddabao/aggbug/148305.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-09-26 13:32 <a href="http://www.blogjava.net/soddabao/archive/2007/09/26/148305.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>javax.servlet.ServletException: [HTTP:101249]</title><link>http://www.blogjava.net/soddabao/archive/2007/09/12/144574.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 12 Sep 2007 10:03:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/09/12/144574.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/144574.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/09/12/144574.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/144574.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/144574.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp; 今天发布程序，正式环境是weblogic816的集群，而自己的机器上的是813的单机版，发布程序一起出现如下错误&lt;2007-9-12 下午17时16分08秒 CST&gt; &lt;Error&gt; &lt;HTTP&gt; &lt;BEA-101249&gt; &lt;[ServletContext(id=4121484,name=ept,con...&nbsp;&nbsp;<a href='http://www.blogjava.net/soddabao/archive/2007/09/12/144574.html'>阅读全文</a><img src ="http://www.blogjava.net/soddabao/aggbug/144574.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-09-12 18:03 <a href="http://www.blogjava.net/soddabao/archive/2007/09/12/144574.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java连接各类数据库的方法 </title><link>http://www.blogjava.net/soddabao/archive/2007/08/17/137442.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 17 Aug 2007 00:52:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/08/17/137442.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/137442.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/08/17/137442.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/137442.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/137442.html</trackback:ping><description><![CDATA[<p>1、Oracle8/8i/9i数据库（thin模式） </p>
<p>　　Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); </p>
<p>　　String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID </p>
<p>　　String user="test"; </p>
<p>　　String password="test"; </p>
<p>　　Connection conn= DriverManager.getConnection(url,user,password); </p>
<p>　　2、DB2数据库 </p>
<p>　　Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); </p>
<p>　　String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名 </p>
<p>　　String user="admin"; <br>　　<br>　　String password=""; </p>
<p>　　Connection conn= DriverManager.getConnection(url,user,password); </p>
<p>　　3、Sql Server7.0/2000数据库 </p>
<p>　　Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); </p>
<p>　　String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb"; //mydb为数据库 <br>　<br>　　String user="sa"; </p>
<p>　　String password=""; <br>　<br>　　Connection conn= DriverManager.getConnection(url,user,password); </p>
<p>　<br>　　4、Sybase数据库 <br>　<br>　　Class.forName("com.sybase.jdbc.SybDriver").newInstance(); </p>
<p>　　String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名 </p>
<p>　　Properties sysProps = System.getProperties(); <br>　<br>　　SysProps.put("user","userid"); </p>
<p>　　SysProps.put("password","user_password"); </p>
<p>　　Connection conn= DriverManager.getConnection(url, SysProps); </p>
<p>　　5、Informix数据库 </p>
<p>　　Class.forName("com.informix.jdbc.IfxDriver").newInstance(); <br>　<br>　　String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver; </p>
<p>　　user=testuser;password=testpassword"; //myDB为数据库名 </p>
<p>　　Connection conn= DriverManager.getConnection(url); </p>
<p>　　6、MySQL数据库 </p>
<p>　　Class.forName("org.gjt.mm.mysql.Driver").newInstance(); <br>　<br>　　String url ="jdbc:mysql://localhost/myDB";</p>
<p>　　user=soft&amp;password=soft1234&amp;useUnicode=true&amp;characterEncoding=8859_1" ;//myDB为数据库名 </p>
<p>　　Connection conn= DriverManager.getConnection(url); </p>
<p>　　7、PostgreSQL数据库 </p>
<p>　　Class.forName("org.postgresql.Driver").newInstance(); </p>
<p>　　String url ="jdbc:postgresql://localhost/myDB";//myDB为数据库名 </p>
<p>　　String user="myuser"; </p>
<p>　　String password="mypassword"; </p>
<p>　　Connection conn= DriverManager.getConnection(url,user,password);</p>
<p>&nbsp;&nbsp;&nbsp; 8、Access数据库</p>
<p>&nbsp;&nbsp;&nbsp; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");</p>
<p>&nbsp;&nbsp;&nbsp; String dburl ="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=Mobile.mdb";//此为NO-DSN方式</p>
<p>&nbsp;&nbsp;&nbsp; //String dburl ="jdbc:odbc:odbcName";//此为ODBC连接方式</p>
<p>&nbsp;&nbsp;&nbsp; Connection conn=DriverManager.getConnection(dburl);<br>&nbsp;</p>
<img src ="http://www.blogjava.net/soddabao/aggbug/137442.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-08-17 08:52 <a href="http://www.blogjava.net/soddabao/archive/2007/08/17/137442.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关乱码的处理－－－中国程序员永远无法避免的话题</title><link>http://www.blogjava.net/soddabao/archive/2007/08/13/136360.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Mon, 13 Aug 2007 05:32:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/08/13/136360.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/136360.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/08/13/136360.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/136360.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/136360.html</trackback:ping><description><![CDATA[<p>为什么说乱码是中国程序员无法避免的话题呢？这个首先要从编码机制上说起，大家都是中文和英文的编码格式不是一样，解码也是不一样的！如果中国的程序员不会遇到乱码，那么只有使用汉语编程。汉语编程是怎么回事我也不大清楚，应该是前年吧，我一朋友给我介绍汉语编程，怎么不错不错？当时因为学习忙没去关注这个，等我闲了，那个朋友不弄这个，问他他也不说不大清楚，最后自己对这个学习也不了了之了。<br>&nbsp;&nbsp;&nbsp; 今天我写这个不是讲解中英文之间的差距，解码等，我是将我在这几年工作遇到各种各样的乱码的解决方法，总结一样，也希望大家能把自己晕倒解决乱码的方法都说出来，咱们弄一个解决乱码的&#8220;葵花宝典&#8221;。</p>
<p>对于Java由于默认的编码方式是 UNICODE,所以用中文也易出问题,常见的解决是<br>String s2 = new String(s1.getBytes(&#8220;ISO-8859-1&#8221;),&#8221;GBK&#8221;);<br><br><br><span style="COLOR: red">1、utf8解决JSP中文乱码问题</span> <br>一般说来在每个页面的开始处，加入：</p>
<p>&lt;%@ page language="java" contentType="text/html; charset=UTF-8"<br>&nbsp;&nbsp;&nbsp; pageEncoding="UTF-8"%&gt;</p>
<p>&lt;%<br>&nbsp;request.setCharacterEncoding("UTF-8");<br>%&gt; </p>
<p>charset=UTF-8&nbsp; 的作用是指定JSP向客户端输出的编码方式为&#8220;UTF-8&#8221;</p>
<p>pageEncoding="UTF-8"&nbsp; 为了让JSP引擎能正确地解码含有中文字符的JSP页面，这在LINUX中很有效</p>
<p>&nbsp;request.setCharacterEncoding("UTF-8"); 是对请求进行了中文编码</p>
<p>有时，这样仍不能解决问题，还需要这样处理一下：</p>
<p>String msg = request.getParameter("message");<br>&nbsp;String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");<br>&nbsp;out.println(st);</p>
<p><span style="COLOR: red">2、Tomcat 5.5 中文乱码</span> </p>
<p>)只要把%TOMCAT安装目录%/&nbsp;&nbsp; webapps\servlets-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class文件拷到你的webapp目录/filters下，如果没有filters目录，就创建一个。&nbsp;&nbsp; <br>&nbsp; 2)在你的web.xml里加入如下几行：&nbsp;&nbsp; &lt;filter&gt;&nbsp;&nbsp; <br>&nbsp; &lt;filter-name&gt;Set&nbsp;&nbsp; Character&nbsp;&nbsp; Encoding&lt;/filter-name&gt;&nbsp;&nbsp; <br>&nbsp; &lt;filter-class&gt;filters.SetCharacterEncodingFilter&lt;/filter-class&gt;&nbsp;&nbsp; <br>&nbsp; &lt;init-param&gt;&nbsp;&nbsp; <br>&nbsp; &lt;param-name&gt;encoding&lt;/param-name&gt;&nbsp;&nbsp; <br>&nbsp; &lt;param-value&gt;GBK&lt;/param-value&gt;&nbsp;&nbsp; <br>&nbsp; &lt;/init-param&gt;&nbsp;&nbsp; <br>&nbsp; &lt;/filter&gt;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;filter-mapping&gt;&nbsp;&nbsp; <br>&nbsp; &lt;filter-name&gt;Set&nbsp;&nbsp; Character&nbsp;&nbsp; Encoding&lt;/filter-name&gt;&nbsp;&nbsp; <br>&nbsp; &lt;url-pattern&gt;/*&lt;/url-pattern&gt;&nbsp;&nbsp; <br>&nbsp; &lt;/filter-mapping&gt;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp; 3)完成.&nbsp;&nbsp; <br>&nbsp; 2&nbsp;&nbsp; get方式的解决办法&nbsp;&nbsp; <br>&nbsp; 1)&nbsp;&nbsp; 打开tomcat的server.xml文件，找到区块，加入如下一行：&nbsp;&nbsp; <br>&nbsp; URIEncoding=&#8221;GBK&#8221;&nbsp;&nbsp; <br>&nbsp; 完整的应如下：&nbsp;&nbsp; <br>&nbsp; &lt;Connector&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp; port="80"&nbsp;&nbsp; maxThreads="150"&nbsp;&nbsp; minSpareThreads="25"&nbsp;&nbsp; maxSpareThreads="75"&nbsp;&nbsp; <br>&nbsp; enableLookups="false"&nbsp;&nbsp; redirectPort="8443"&nbsp;&nbsp; acceptCount="100"&nbsp;&nbsp; <br>&nbsp; debug="0"&nbsp;&nbsp; connectionTimeout="20000"&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp; disableUploadTimeout="true"&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp; URIEncoding="GBK"&nbsp;&nbsp; <br>&nbsp; /&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp; 2)重启tomcat,一切OK。</p>
<p><span style="COLOR: red">3、xmlHttpRequest中文问题</span> </p>
<p>页面jsp用的GBK编码 </p>
<p><br>代码<br>&lt;%@ page contentType="text/html; charset=GBK"%&gt;&nbsp; </p>
<p><br>javascript部分 </p>
<p>代码<br>function addFracasReport() {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; var url="controler?actionId=0_06_03_01&amp;actionFlag=0010";&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; var urlmsg="&amp;reportId="+fracasReport1.textReportId.value;&nbsp; //故障报告表编号&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; var xmlHttp=Common.createXMLHttpRequest();&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; xmlHttp.onreadystatechange = Common.getReadyStateHandler(xmlHttp, eval("turnAnalyPage"));&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; xmlHttp.open("POST",url,true);&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; xmlHttp.setRequestHeader( " Content-Type " , " application/x-www-form-urlencoded);&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; xmlHttp.send(urlmsg);&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>}&nbsp; </p>
<p><br>后台java中获得的reportId是乱码，不知道该怎么转，主要是不知道xmlHttp.send(urlmsg);以后是什么编码？在后面用java来转，试了几种，都没有成功，其中有：</p>
<p><br>代码<br>public static String UTF_8ToGBK(String str) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return new String(str.getBytes("UTF-8"), "GBK");&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception ex) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public static String UTF8ToGBK(String str) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return new String(str.getBytes("UTF-16BE"), "GBK");&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception ex) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public static String GBK(String str) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return new String(str.getBytes("GBK"),"GBK");&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception ex) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public static String getStr(String str) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String temp_p = str;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String temp = new String(temp_p.getBytes("ISO8859_1"), "GBK");&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; temp = sqlStrchop(temp);&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return temp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } catch (Exception e) {&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return null;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; }&nbsp; </p>
<p><span style="COLOR: red">4、JDBC ODBC Bridge的Bug及其解决方法</span> </p>
<p>在编写一数据库管理程序时，发现JDBC-ODBC Bridge存在不易发现的Bug。在向数据表插入数据时，如果为英文字符，存储内容完全正确，如果存入中文字符，部分数据库只能存储前七八个中文字符，其他内容被截去，导致存储内容的不完整（有些数据库不存在这个问题，如Sybase SQL Anywhere 5.0。JDBC-ODBC Bridge还存在无法建表的Bug）。 </p>
<p>　　对于广大需要存储中文信息的Java程序员来说，这可是一个不好的消息。要么改用其他语言编程，要么选择其他价格昂贵的数据库产品。&#8220;一次编写，到处运行&#8221;的目标，也大打折扣。能不能采用变通的方法，将中文信息进行处理后再存储来解决这个问题呢？答案是肯定的。 </p>
<p>　　解决问题的具体思路、方法 <br>　　Java采用Unicode码编码方式，中英文字符均采用16bit存储。既然存储英文信息是正确的，根据一定规则，将中文信息转换成英文信息后存储，自然不会出现截尾现象。读取信息时再进行逆向操作，将英文信息还原成中文信息即可。由GB2312编码规则可知，汉字一般为二个高位为1的ASCII码，在转换时将一个汉字的二个高位1去掉，还原时再将二个高位1加上。为了处理含有英文字符的中文字串，对英文字符则需要加上一个Byte 0标记。以下提供的两个公用静态方法，可加入任何一个类中使用。 </p>
<p>　　将中英文字串转换成纯英文字串 <br>　　public static String toTureAsciiStr(String str){ </p>
<p>　　StringBuffer sb = new StringBuffer(); </p>
<p>　　byte[] bt = str.getBytes(); </p>
<p>　　for(int i =0 ;i〈bt.length;i++){ </p>
<p>　　if(bt[i]〈0){ </p>
<p>　　//是汉字去高位1 </p>
<p>　　sb.append((char)(bt[i]&amp;&amp;0x7f)); </p>
<p>　　 }else{//是英文字符 补0作记录 </p>
<p>　　sb.append((char)0); </p>
<p>　　sb.append((char)bt[i]); </p>
<p>　　 } </p>
<p>　　 } </p>
<p>　　return sb.toString(); </p>
<p>　　} </p>
<p>　　将经转换的字串还原 <br>　　public static String unToTrueAsciiStr(String str){ </p>
<p>　　 byte[] bt = str.getBytes(); </p>
<p>　　 int i,l=0,length = bt.length,j=0; </p>
<p>　　 for(i = 0;i〈length;i++){ </p>
<p>　　 if(bt[i] == 0){ </p>
<p>　　 l++; </p>
<p>　　 } </p>
<p>　　 } </p>
<p>　　 byte []bt2 = new byte[length-l]; </p>
<p>　　 for(i =0 ;i〈length;i++){ </p>
<p>　　 if(bt[i] == 0){ </p>
<p>　　 i++; </p>
<p>　　 bt2[j] = bt[i]; </p>
<p>　　 }else{ </p>
<p>　　 bt2[j] = (byte)(bt[i]|0x80); </p>
<p>　　 } </p>
<p>　　 j++; </p>
<p>　　 } </p>
<p>　　String tt = new String(bt2); </p>
<p>　　return tt; </p>
<p>　　} </p>
<p>　　上例在实际编程中效果很好，只是存储的中文信息需要经过同样处理，才能被其他系统使用。而且如果中文字串出现英文字符，实际上增加了额外的存储空间。<br><br><span style="COLOR: red">5、Solaris下Servlet编程的中文问题及解决办法 <br></span>在使用Java开发Internet上的一个应用系统时，发现在Windows下调试完全正常的Servlet，上传到Solaris 服务器上，运行却出现故障——返回的网页不能显示中文，应为中文的信息全为乱码；用中文信息做关键字，不能正确检索数据库。后来采用加入检查代码等方法探知故障原因如下： </p>
<p>　　显示乱码主要是因为通过类 HttpServletResponse提供的方法setContentType 无法改变返回给客户的数据的编码方式，正确的编码方式应为GB2312或者GBK，而事实上为缺省的ISO8859-1。无法检索中文信息则是因为，客户提交的中文信息经浏览器编码到达服务器后，Servlet无法将其正确解码。 </p>
<p>　　举例说明显示乱码解决方法 <br>　　Servlet 一般通常做法如下： </p>
<p>　　public class ZldTestServlet extends HttpServlet { </p>
<p>　　public void doGet (HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException{ </p>
<p>　　//在使用 Writer向浏览器返回数据前，设置 content-type header ，在这里设置相应的字符集gb2312 </p>
<p>　　response.setContentType("text/html;charset=gb2312"); </p>
<p>　　PrintWriter out = response.getWriter(); //* </p>
<p>　　// 正式返回数据 </p>
<p>　　out.println("〈html〉〈head〉〈title〉Servlet test〈/title〉〈/head〉" ); </p>
<p>　　out.println("这是一个测试页！"); </p>
<p>　　out.println("〈/body〉〈/html〉"); </p>
<p>　　out.close(); </p>
<p>　　} </p>
<p>　　 ... </p>
<p>　　} </p>
<p>　　解决页面显示乱码问题，需将*处代码换成如下内容： </p>
<p>　　PrintWriter out = new PrintWriter(new OutputStreamWriter(response.getOutputStream(),"gb2312")); </p>
<p>　　Solaris中文信息检索问题的解决 <br>　　浏览器利用表单向服务器提交信息时，一般采用x-www-form-urlencoded 的MIME格式对数据进行编码。如果使用get方法，参数名称和参数值经编码后附加在URL后，在Java中称作查询串（query string）。 </p>
<p>　　在Servlet程序中，如果采用ServletRequest的方法getParameter取得参数值，在Solaris环境下，对汉字却不能正确解码。因而无法正确检索数据库。 </p>
<p>　　在Java 1.2的包——java.net中提供了URLEncode和URLDecode类。类URLEncode提供了按x-www-form-urlencoded格式对给定串进行转换的方法。类URLEncode则提供了逆方法。 </p>
<p><span style="COLOR: red">6、Common Mail乱码问题</span><br>common mail是一个小而方便的mail包，他实现了对Java Mail的封装，使用起来十分的方便，但是我在使用他的时候发现，使用纯文本的内容发送，结果是乱码，代码如下：<br>public class TestCommonMail {<br>public static void main(String[] args) throws EmailException, MessagingException {<br>SimpleEmail email = new SimpleEmail();<br>email.setCharset("GB2312");<br>email.setHostName("smtp.163.com");<br>email.setSubject("test");<br>email.addTo("<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#101;&#115;&#116;&#64;&#49;&#54;&#51;&#46;&#99;&#111;&#109;">test@163.com</a>");<br>email.setFrom("<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#101;&#115;&#116;&#64;&#49;&#54;&#51;&#46;&#99;&#111;&#109;">test@163.com</a>");<br>email.setMsg("我的测试");<br>email.setAuthentication("test", "test");<br>email.send();<br>}<br>}</p>
<p>分析了一下commons mail的源码找到了原因。源码如下:<br>public class SimpleEmail extends Email<br>{<br>public Email setMsg(String msg) throws EmailException, MessagingException<br>{<br>if (EmailUtils.isEmpty(msg))<br>{<br>throw new EmailException("Invalid message supplied");<br>}</p>
<p>setContent(msg, TEXT_PLAIN);<br>return this;<br>}<br>}</p>
<p>Email代码片段<br>public void setContent(Object aObject, String aContentType)<br>{<br>this.content = aObject;<br>if (EmailUtils.isEmpty(aContentType))<br>{<br>this.contentType = null;<br>}<br>else<br>{<br>// set the content type<br>this.contentType = aContentType;</p>
<p>// set the charset if the input was properly formed<br>String strMarker = "; charset=";<br>int charsetPos = aContentType.toLowerCase().indexOf(strMarker);<br>if (charsetPos != -1)<br>{<br>// find the next space (after the marker)<br>charsetPos += strMarker.length();<br>int intCharsetEnd =<br>aContentType.toLowerCase().indexOf(" ", charsetPos);</p>
<p>if (intCharsetEnd != -1)<br>{<br>this.charset =<br>aContentType.substring(charsetPos, intCharsetEnd);<br>}<br>else<br>{<br>this.charset = aContentType.substring(charsetPos);<br>}<br>}<br>}<br>}</p>
<p>email.send();的send方法将调用<br>public void buildMimeMessage() throws EmailException<br>{<br>try<br>{<br>this.getMailSession();<br>this.message = new MimeMessage(this.session);</p>
<p>if (EmailUtils.isNotEmpty(this.subject))<br>{<br>if (EmailUtils.isNotEmpty(this.charset))<br>{<br>this.message.setSubject(this.subject, this.charset);<br>}<br>else<br>{<br>this.message.setSubject(this.subject);<br>}<br>}</p>
<p>// ========================================================<br>// Start of replacement code<br>if (this.content != null)<br>{<br>this.message.setContent(this.content, this.contentType);<br>}<br>// end of replacement code<br>// ========================================================<br>else if (this.emailBody != null)<br>{<br>this.message.setContent(this.emailBody);<br>}<br>else<br>{<br>this.message.setContent("", Email.TEXT_PLAIN);<br>}</p>
<p>if (this.fromAddress != null)<br>{<br>this.message.setFrom(this.fromAddress);<br>}<br>else<br>{<br>throw new EmailException("Sender address required");<br>}</p>
<p>if (this.toList.size() + this.ccList.size() + this.bccList.size() == 0)<br>{<br>throw new EmailException(<br>"At least one receiver address required");<br>}</p>
<p>if (this.toList.size() &gt; 0)<br>{<br>this.message.setRecipients(<br>Message.RecipientType.TO,<br>this.toInternetAddressArray(this.toList));<br>}</p>
<p>if (this.ccList.size() &gt; 0)<br>{<br>this.message.setRecipients(<br>Message.RecipientType.CC,<br>this.toInternetAddressArray(this.ccList));<br>}</p>
<p>if (this.bccList.size() &gt; 0)<br>{<br>this.message.setRecipients(<br>Message.RecipientType.BCC,<br>this.toInternetAddressArray(this.bccList));<br>}</p>
<p>if (this.replyList.size() &gt; 0)<br>{<br>this.message.setReplyTo(<br>this.toInternetAddressArray(this.replyList));<br>}</p>
<p>if (this.headers.size() &gt; 0)<br>{<br>Iterator iterHeaderKeys = this.headers.keySet().iterator();<br>while (iterHeaderKeys.hasNext())<br>{<br>String name = (String) iterHeaderKeys.next();<br>String value = (String) headers.get(name);<br>this.message.addHeader(name, value);<br>}<br>}</p>
<p>if (this.message.getSentDate() == null)<br>{<br>this.message.setSentDate(getSentDate());<br>}</p>
<p>if (this.popBeforeSmtp)<br>{<br>Store store = session.getStore("pop3");<br>store.connect(this.popHost, this.popUsername, this.popPassword);<br>}<br>}<br>catch (MessagingException me)<br>{<br>throw new EmailException(me);<br>}<br>}<br>由代码可以知道纯文本方式最终调用了Java Mail的<br>message.setContent(this.content, this.contentType);<br>content是内容<br>contentType是类型，如text/plain,<br>(我们可以试试直接用Java mail发邮件，设置文本内容不使用setText方法，也使用setContent("测试", "text/plain")方式，你可以看到内容也是乱码)<br>关键就在于text/plain，我们改成text/plain;charset=gb2312，ok乱码解决了。在commons mail我们看SimpleEmail 类中setMsg方法调用的就是 setContent(msg, TEXT_PLAIN);我们只需要将Email类中的常量TEXT_PLAIN修改一下加入 charset=你的字符集 ，重新打包jar，这样就可以了</p>
<p><span style="COLOR: red">7、toad的字符集的设置与oracle的安装</span><br>oracle数据库服务器的安装一般是中文字符集，有时安装在不同的平台下，设置为ISO编码，toad是oracle开发的最好工具，不是我说的，可是中文环境下安装的toad，打开英文字符的oracle时，中文全是乱码。必须进行设置</p>
<p>环境变量---〉系统变量<br>加<br>&nbsp; NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK<br>&nbsp; 或<br>&nbsp; NLS_lANG=AMERICAN_AMERICA.WE8ISO8859P1</p>
<p>AMERICAN_AMERICA.WE8MSWIN1252<br>&nbsp;<br>&nbsp;或者</p>
<p>&nbsp;打开注册表，点击HKEY_LOCAL_MATHINE<br>再点击Software,再点击ORACLE<br>在点击HOME（ORACLE所在目录）<br>在注册表的右半面有NLS_LANG,<br>双击它，将你想要的覆盖掉原来的就可以了<br>最好记下旧的，以便可以改回来。</p>
<p><br>connect sys/chang_on_install<br>update props$<br>set value$='ZHS16CGB231280'<br>where name='NLS_CHARACTERSET';<br>commit;<br>&nbsp;这样就OK了</p>
<p>&nbsp;<br><span style="COLOR: red">8、如何解決GWT(google web toolkit)中文的問題</span><br>GWT 中文乱码解决方法 </p>
<p>1.把你要显示的中文&#8220;测试字符串&#8221;输入到一个文件，如:1.txt <br>2.进入命令行,进入1.txt所在的目录,敲入以下命令:native2ascii.exe 1.txt 2.txt 回车。这样就生成了另外一个文件2.txt。 <br>3.2.txt的内容如下:\u6d4b\u8bd5\u5b57\u7b26\u4e32 <br>4.然后用上面的编码，在gwt中使用，就可以了. </p>
<p><span style="COLOR: red">9、xmlHttp得到的网页怎么是乱码？</span> <br>(1)在服务器端使用WebRequest而不是xmlHttp<br>(2) 将 </p>
<p>StreamReader sr = new StreamReader(stream);</p>
<p><br>对于简体中文改成：</p>
<p>StreamReader sr = new StreamReader(stream , Encoding.Default );<br>对于utf-8改成：</p>
<p><br>StreamReader sr = new StreamReader(stream , Encoding.UTF8 );<br>当然，Encoding枚举还有很多其他的成员，对于不同的编码content-type可以有选择的应用</p>
<p>(3)后来我发现无论是content-type是gb2312还是utf-8,用</p>
<p><br>StreamReader sr = new StreamReader(stream , Encoding.Default );</p>
<p>都可以返回正常的汉字，所以统一的改成Encoding.Default</p>
<p>&nbsp;</p>
<p><br>--------------------------------------------------------------------------------</p>
<p>最后，在服务器端从一个url获得网页的源代码的代码如下：</p>
<p>&nbsp;</p>
<p>/// &lt;summary&gt;<br>/// post一个指定的url，获得网页的源代码(用WebRequest实现)<br>/// &lt;/summary&gt;<br>/// &lt;param name="url"&gt;&lt;/param&gt;<br>/// &lt;returns&gt;<br>/// 如果请求失败，返回null<br>/// 如果请求成功，返回网页的源代码<br>/// &lt;/returns&gt;<br>public static string GetContentFromUrl2( string url )<br>{<br>&nbsp;&nbsp;&nbsp; //变量定义<br>&nbsp;&nbsp;&nbsp; string respstr;</p>
<p>&nbsp;&nbsp;&nbsp; WebRequest myWebRequest=WebRequest.Create(url);<br>&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myWebRequest.PreAuthenticate=true;<br>&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NetworkCredential networkCredential=new NetworkCredential( username , password , domain );<br>&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myWebRequest.Credentials=networkCredential;</p>
<p>&nbsp;&nbsp;&nbsp; // Assign the response object of 'WebRequest' to a 'WebResponse' variable.<br>&nbsp;&nbsp;&nbsp; WebResponse myWebResponse=myWebRequest.GetResponse();<br>&nbsp;&nbsp;&nbsp; System.IO.Stream stream = myWebResponse.GetResponseStream();<br>&nbsp;&nbsp;&nbsp; StreamReader sr = new StreamReader(stream , Encoding.Default );<br>&nbsp;&nbsp;&nbsp; //以字符串形式读取数据流<br>&nbsp;&nbsp;&nbsp; respstr = sr.ReadToEnd();<br>&nbsp;&nbsp;&nbsp; sr.Close(); <br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; return respstr;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>}</p>
<p><span style="COLOR: red">10、解决weblogic／webshpere中文问题：</span> <br>在web.xml文件中需要配置中文环境。r如下： <br>&lt;context-param&gt; <br>&nbsp;&nbsp;&lt;param-name&gt;weblogic.httpd.inputCharset./*&lt;/param-name&gt; <br>&nbsp;&nbsp;&lt;param-value&gt;GB2312&lt;/param-value&gt; <br>&lt;/context-param&gt;</p>
<img src ="http://www.blogjava.net/soddabao/aggbug/136360.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-08-13 13:32 <a href="http://www.blogjava.net/soddabao/archive/2007/08/13/136360.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>eclipse3.3+myeclipse6</title><link>http://www.blogjava.net/soddabao/archive/2007/07/20/131416.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 20 Jul 2007 02:33:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/07/20/131416.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/131416.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/07/20/131416.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/131416.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/131416.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;之前因为用ajax的一个eclipse插件，下了3.2，使用还是不错，只是使用cvs同步代码的时候，发现出了点问题，同步会出各种各样的bug，基本上让我受不了，就天天等出3.3，3.3出来后马上就down，发现myeclipse用不了，因为做web项目没有myeclipse插件，所以3.3还是用不了。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 前天在网上看到出了myeclipse6，说支持3.3，二话不说就下，今天上午就把3.3＋myeclipse配置起来，感觉还不错，带了不少插件，myeclipse注册后，正常启动没有任何问题。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 发现之前网上说3.3在进程中没有javaw.exe,启动后把项目导入，也发现没有，进程中只有一个eclipse.exe，还真是不错，javaw那个运行eclipse时间长了会出现两个，太消耗内存，在eclipse配置启动参数也是无济于事的，现在一切都好了。有了3.3就不怕eclipse占有内存了。<br><br><br><img src="http://www.blogjava.net/images/blogjava_net/soddabao/eclipse3.3.GIF" border=0>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这一周忙死了，本来有很多东西要写，因为大多数是纯技术的，再加上是部门原创的，要求保密没办法了，我发现其实也没什么，就想不明白为什么还要求保密？搞不清......<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 昨天妹妹还问我，怎么好几天都不写blog，我甚是感动，其实妹妹也知道我忙，再次感谢妹妹的关注。同时也感谢blogjava中没一个网友。 
<img src ="http://www.blogjava.net/soddabao/aggbug/131416.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-07-20 10:33 <a href="http://www.blogjava.net/soddabao/archive/2007/07/20/131416.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关java中时间格式的调整</title><link>http://www.blogjava.net/soddabao/archive/2007/06/30/127189.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Fri, 29 Jun 2007 17:09:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/06/30/127189.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/127189.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/06/30/127189.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/127189.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/127189.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在java中获取一个时间或者是处理时间数据时，往往会发现时间的格式不是我们所需要的。这个时候如果把时间转化成字符串，然后在处理是可以，不过呢？你会不会觉得很是麻烦。我个人认为在一个大型的项目对字符串操作多了，不是什么好事。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 如果你常用java API文档你会发现这个类的SimpleDateFormat，这个类就是格式化时间的。<br>&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用方法也是很简单的<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">SimpleDateFormat&nbsp;&nbsp;&nbsp;form&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;SimpleDateFormat(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">yyyyMMddHHmmss</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>form.format(时间);</span></div>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其中SimpleDateFormat构造函数内的字符串就是格式化输入的格式：<br>&nbsp;&nbsp;&nbsp;&nbsp;
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">字母&nbsp;&nbsp;日期或时间元素&nbsp;&nbsp;表示&nbsp;&nbsp;示例&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>G&nbsp;&nbsp;Era&nbsp;标志符&nbsp;&nbsp;Text&nbsp;&nbsp;AD&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>y&nbsp;&nbsp;年&nbsp;&nbsp;Year&nbsp;&nbsp;</span><span style="COLOR: #000000">1996</span><span style="COLOR: #000000">;&nbsp;</span><span style="COLOR: #000000">96</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>M&nbsp;&nbsp;年中的月份&nbsp;&nbsp;Month&nbsp;&nbsp;July;&nbsp;Jul;&nbsp;</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>w&nbsp;&nbsp;年中的周数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">27</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>W&nbsp;&nbsp;月份中的周数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>D&nbsp;&nbsp;年中的天数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">189</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>d&nbsp;&nbsp;月份中的天数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>F&nbsp;&nbsp;月份中的星期&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>E&nbsp;&nbsp;星期中的天数&nbsp;&nbsp;Text&nbsp;&nbsp;Tuesday;&nbsp;Tue&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>a&nbsp;&nbsp;Am</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">pm&nbsp;标记&nbsp;&nbsp;Text&nbsp;&nbsp;PM&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>H&nbsp;&nbsp;一天中的小时数（</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000">）&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>k&nbsp;&nbsp;一天中的小时数（</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">24</span><span style="COLOR: #000000">）&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">24</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>K&nbsp;&nbsp;am</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">pm&nbsp;中的小时数（</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">11</span><span style="COLOR: #000000">）&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>h&nbsp;&nbsp;am</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">pm&nbsp;中的小时数（</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">12</span><span style="COLOR: #000000">）&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">12</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>m&nbsp;&nbsp;小时中的分钟数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">30</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>s&nbsp;&nbsp;分钟中的秒数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>S&nbsp;&nbsp;毫秒数&nbsp;&nbsp;Number&nbsp;&nbsp;</span><span style="COLOR: #000000">978</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>z&nbsp;&nbsp;时区&nbsp;&nbsp;General&nbsp;time&nbsp;zone&nbsp;&nbsp;Pacific&nbsp;Standard&nbsp;Time;&nbsp;PST;&nbsp;GMT</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">08</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>Z&nbsp;&nbsp;时区&nbsp;&nbsp;RFC&nbsp;</span><span style="COLOR: #000000">822</span><span style="COLOR: #000000">&nbsp;time&nbsp;zone&nbsp;&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">0800</span><span style="COLOR: #000000">&nbsp;</span></div>
说明一下：<br>模式字母通常是重复的，其数量确定其精确表示： <br>Text: 对于格式化来说，如果模式字母的数量大于或等于 4，则使用完全形式；否则，在可用的情况下使用短形式或缩写形式。对于分析来说，两种形式都是可接受的，与模式字母的数量无关。 <br>Number: 对于格式化来说，模式字母的数量是最小的数位，如果数位不够，则用 0 填充以达到此数量。对于分析来说，模式字母的数量被忽略，除非必须分开两个相邻字段。 <br>Year: 对于格式化来说，如果模式字母的数量为 2，则年份截取为 2 位数,否则将年份解释为 number。 <br>对于分析来说，如果模式字母的数量大于 2，则年份照字面意义进行解释，而不管数位是多少。因此使用模式 "MM/dd/yyyy"，将 "01/11/12" 分析为公元 12 年 1 月 11 日。 <br>
<img src ="http://www.blogjava.net/soddabao/aggbug/127189.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-06-30 01:09 <a href="http://www.blogjava.net/soddabao/archive/2007/06/30/127189.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>NetBeans 和Eclipse共用项目！</title><link>http://www.blogjava.net/soddabao/archive/2007/06/21/125644.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 21 Jun 2007 10:43:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/06/21/125644.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/125644.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/06/21/125644.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/125644.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/125644.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在NetBeans新建一个项目！，<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;把这个项目的源文件目录加删除！<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在把Eclipse的项目下面那个源文件目录添加进来<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;把所有项目应用包添加到项目<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;web项目把web文件目录位置改变就ok<br>&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 修改web项目的class存放路径：在在nbproject\project.properties下的&nbsp; uild.classes.dir=ept/WEB-INF/classes 改成你存放class的路径就可以。<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 然后修改一个快捷键：eclipse的内容辅助键，netbean的修改办法：其他 显示代码完成弹出式菜单 改为ALT+SLASH。<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 个人感觉nb不错，不过eclipse用的时间比较长，感情就比较深，nb现在还不是很流行。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其实java的ide工具eclipse、jbuild和现在的netbean都差不多，只是个人习惯了^_^
<img src ="http://www.blogjava.net/soddabao/aggbug/125644.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-06-21 18:43 <a href="http://www.blogjava.net/soddabao/archive/2007/06/21/125644.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>今天面试的时候，发现已题来面试的大多没答对</title><link>http://www.blogjava.net/soddabao/archive/2007/05/16/117911.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 16 May 2007 10:36:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/05/16/117911.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/117911.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/05/16/117911.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/117911.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/117911.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;公司因业务扩展，需要扩大队伍，再这里也做一下广告，欢迎大家都来，我们单位不错，2006年年度最佳雇主的单位，不过招人是福建本地。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其实这道题不难，只是一个多态的问题，这也是面向对象语言中的比较重要的一点(我个人认为)，题目是这样<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_15_156_Open_Image onclick="this.style.display='none'; Codehighlighter1_15_156_Open_Text.style.display='none'; Codehighlighter1_15_156_Closed_Image.style.display='inline'; Codehighlighter1_15_156_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_15_156_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_15_156_Closed_Text.style.display='none'; Codehighlighter1_15_156_Open_Image.style.display='inline'; Codehighlighter1_15_156_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;A&nbsp;</span><span id=Codehighlighter1_15_156_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_15_156_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_30_59_Open_Image onclick="this.style.display='none'; Codehighlighter1_30_59_Open_Text.style.display='none'; Codehighlighter1_30_59_Closed_Image.style.display='inline'; Codehighlighter1_30_59_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_30_59_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_30_59_Closed_Text.style.display='none'; Codehighlighter1_30_59_Open_Image.style.display='inline'; Codehighlighter1_30_59_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;A&nbsp;()&nbsp;</span><span id=Codehighlighter1_30_59_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_30_59_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">A</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;a&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000">&nbsp;d</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">2.0</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_101_154_Open_Image onclick="this.style.display='none'; Codehighlighter1_101_154_Open_Text.style.display='none'; Codehighlighter1_101_154_Closed_Image.style.display='inline'; Codehighlighter1_101_154_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_101_154_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_101_154_Closed_Text.style.display='none'; Codehighlighter1_101_154_Open_Image.style.display='inline'; Codehighlighter1_101_154_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;show()&nbsp;</span><span id=Codehighlighter1_101_154_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_101_154_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Class&nbsp;A:&nbsp;a=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">a</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\tb=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">d);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_25_202_Open_Image onclick="this.style.display='none'; Codehighlighter1_25_202_Open_Text.style.display='none'; Codehighlighter1_25_202_Closed_Image.style.display='inline'; Codehighlighter1_25_202_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_25_202_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_25_202_Closed_Text.style.display='none'; Codehighlighter1_25_202_Open_Image.style.display='inline'; Codehighlighter1_25_202_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;B&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;A&nbsp;</span><span id=Codehighlighter1_25_202_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_25_202_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_38_68_Open_Image onclick="this.style.display='none'; Codehighlighter1_38_68_Open_Text.style.display='none'; Codehighlighter1_38_68_Closed_Image.style.display='inline'; Codehighlighter1_38_68_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_38_68_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_38_68_Closed_Text.style.display='none'; Codehighlighter1_38_68_Open_Image.style.display='inline'; Codehighlighter1_38_68_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;B()</span><span id=Codehighlighter1_38_68_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_38_68_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">B</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;a&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">3.0f</span><span style="COLOR: #000000">;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;d&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">java&nbsp;prog</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_127_200_Open_Image onclick="this.style.display='none'; Codehighlighter1_127_200_Open_Text.style.display='none'; Codehighlighter1_127_200_Closed_Image.style.display='inline'; Codehighlighter1_127_200_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_127_200_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_127_200_Closed_Text.style.display='none'; Codehighlighter1_127_200_Open_Image.style.display='inline'; Codehighlighter1_127_200_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;show()&nbsp;</span><span id=Codehighlighter1_127_200_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_127_200_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">super.show();</span><span style="COLOR: #008000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">CLoas&nbsp;b=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;a&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">\td=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;d);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
<br>问在main方法中，这样定义输出是什么？<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;b</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;B();<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(b.a);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b.show();</span></div>
&nbsp;&nbsp;&nbsp;&nbsp; 其实就是的子与父的关系，你能答的出来么？不要想的太复杂了 <br>&nbsp;&nbsp;&nbsp; 
<img src ="http://www.blogjava.net/soddabao/aggbug/117911.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-05-16 18:36 <a href="http://www.blogjava.net/soddabao/archive/2007/05/16/117911.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读取远程文件，然后在指定目录下生成同样的文件</title><link>http://www.blogjava.net/soddabao/archive/2007/05/15/117720.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 15 May 2007 14:29:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/05/15/117720.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/117720.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/05/15/117720.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/117720.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/117720.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_77_733_Open_Image onclick="this.style.display='none'; Codehighlighter1_77_733_Open_Text.style.display='none'; Codehighlighter1_77_733_Closed_Image.style.display='inline'; Codehighlighter1_77_733_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_77_733_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_77_733_Closed_Text.style.display='none'; Codehighlighter1_77_733_Open_Image.style.display='inline'; Codehighlighter1_77_733_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;FileWrite(String&nbsp;ftp,String&nbsp;DXBS,String&nbsp;fileName,String&nbsp;fileExt)</span><span id=Codehighlighter1_77_733_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_77_733_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;java.net.URL&nbsp;urlfile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpURLConnection&nbsp;httpUrl&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_153_699_Open_Image onclick="this.style.display='none'; Codehighlighter1_153_699_Open_Text.style.display='none'; Codehighlighter1_153_699_Closed_Image.style.display='inline'; Codehighlighter1_153_699_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_153_699_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_153_699_Closed_Text.style.display='none'; Codehighlighter1_153_699_Open_Image.style.display='inline'; Codehighlighter1_153_699_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_153_699_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_153_699_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;连接指定的网络资源,获取网络输入流</span><span style="COLOR: #008000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;urlfile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;java.net.URL(ftp</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">DXBS</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">fileName</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">fileExt);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpUrl&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(HttpURLConnection)&nbsp;urlfile.openConnection();<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpUrl.connect();<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;bytesum&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 src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;byteread&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 src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream&nbsp;inStream&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;httpUrl.getInputStream();<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.mkdir(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">d:/ftp/</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">DXBS);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileOutputStream&nbsp;fs&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;FileOutputStream(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">D:/ftp/</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">DXBS</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">fileName</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">fileExt);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[]&nbsp;buffer&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">1444</span><span style="COLOR: #000000">];<br><img id=Codehighlighter1_630_695_Open_Image onclick="this.style.display='none'; Codehighlighter1_630_695_Open_Text.style.display='none'; Codehighlighter1_630_695_Closed_Image.style.display='inline'; Codehighlighter1_630_695_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_630_695_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_630_695_Closed_Text.style.display='none'; Codehighlighter1_630_695_Open_Image.style.display='inline'; Codehighlighter1_630_695_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;((byteread&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;inStream.read(buffer))&nbsp;</span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)&nbsp;</span><span id=Codehighlighter1_630_695_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_630_695_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bytesum&nbsp;</span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000">&nbsp;byteread;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fs.write(buffer,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;byteread);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img id=Codehighlighter1_721_726_Open_Image onclick="this.style.display='none'; Codehighlighter1_721_726_Open_Text.style.display='none'; Codehighlighter1_721_726_Closed_Image.style.display='inline'; Codehighlighter1_721_726_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_721_726_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_721_726_Closed_Text.style.display='none'; Codehighlighter1_721_726_Open_Image.style.display='inline'; Codehighlighter1_721_726_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">&nbsp;(Exception&nbsp;e)&nbsp;</span><span id=Codehighlighter1_721_726_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_721_726_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img id=Codehighlighter1_793_999_Open_Image onclick="this.style.display='none'; Codehighlighter1_793_999_Open_Text.style.display='none'; Codehighlighter1_793_999_Closed_Image.style.display='inline'; Codehighlighter1_793_999_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_793_999_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_793_999_Closed_Text.style.display='none'; Codehighlighter1_793_999_Open_Image.style.display='inline'; Codehighlighter1_793_999_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;mkdir(String&nbsp;mkdirName)&nbsp;</span><span style="COLOR: #0000ff">throws</span><span style="COLOR: #000000">&nbsp;Exception&nbsp;</span><span id=Codehighlighter1_793_999_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_793_999_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;dirFile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;File(mkdirName);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">boolean</span><span style="COLOR: #000000">&nbsp;bFile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;dirFile.exists();<br><img id=Codehighlighter1_891_895_Open_Image onclick="this.style.display='none'; Codehighlighter1_891_895_Open_Text.style.display='none'; Codehighlighter1_891_895_Closed_Image.style.display='inline'; Codehighlighter1_891_895_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_891_895_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_891_895_Closed_Text.style.display='none'; Codehighlighter1_891_895_Open_Image.style.display='inline'; Codehighlighter1_891_895_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(bFile&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">)&nbsp;</span><span id=Codehighlighter1_891_895_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_891_895_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_902_995_Open_Image onclick="this.style.display='none'; Codehighlighter1_902_995_Open_Text.style.display='none'; Codehighlighter1_902_995_Closed_Image.style.display='inline'; Codehighlighter1_902_995_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_902_995_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_902_995_Closed_Text.style.display='none'; Codehighlighter1_902_995_Open_Image.style.display='inline'; Codehighlighter1_902_995_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_902_995_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_902_995_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bFile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;dirFile.mkdir();<br><img id=Codehighlighter1_954_959_Open_Image onclick="this.style.display='none'; Codehighlighter1_954_959_Open_Text.style.display='none'; Codehighlighter1_954_959_Closed_Image.style.display='inline'; Codehighlighter1_954_959_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_954_959_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_954_959_Closed_Text.style.display='none'; Codehighlighter1_954_959_Open_Image.style.display='inline'; Codehighlighter1_954_959_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(bFile&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">)&nbsp;</span><span id=Codehighlighter1_954_959_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_954_959_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_966_991_Open_Image onclick="this.style.display='none'; Codehighlighter1_966_991_Open_Text.style.display='none'; Codehighlighter1_966_991_Closed_Image.style.display='inline'; Codehighlighter1_966_991_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_966_991_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_966_991_Closed_Text.style.display='none'; Codehighlighter1_966_991_Open_Image.style.display='inline'; Codehighlighter1_966_991_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_966_991_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_966_991_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.exit(</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 大家看代码，第一个方法是读取远程的文件，生成同样的目录文件，下面的方法是生成文件夹，想必这个大家应该都能清楚明了。
<img src ="http://www.blogjava.net/soddabao/aggbug/117720.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-05-15 22:29 <a href="http://www.blogjava.net/soddabao/archive/2007/05/15/117720.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【再次讨论】【转】Java程序性能和速度优化实例</title><link>http://www.blogjava.net/soddabao/archive/2007/04/04/108373.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 04 Apr 2007 02:56:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/04/04/108373.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/108373.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/04/04/108373.html#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/108373.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/108373.html</trackback:ping><description><![CDATA[<strong>例一：应用具有I/O Buffer功能Class</strong>
<p align=left>　　import java.io.*; <br>　　public class IoTest<br>　　{ <br>　　　public static void main(String args[])<br>　　　{ <br>　　　　try<br>　　　　{ <br>　　　　　FileReader fr = new FileReader(args[0]); <br>　　　　　BufferedReader br = new BufferedReader(fr); <br>　　　　　while ( br.readLine() != null )<br>　　　　　{ <br>　　　　　　System.out.println(" The file content are :" + br.readLine()); <br>　　　　　} <br>　　　　　fis.close(); <br>　　　　}<br>　　　　catch ( IOException ioe )<br>　　　　{ <br>　　　　　System.out.println("The I/O exception is " + ioe); <br>　　　　} <br>　　　} <br>　　} <br>　　　<br>　　在上例中，程序使用了具有Buffer功能的Class，使得Disk I/O的读取速度大大提高。BufferedReader 是取代DataInputStream 而提高读写速度的Java Class。在新的Java版本中，已不建议使用DataInputStream，因为其读写是基于字符为单位的。<br>　　　<br>　　<strong>例二：字符串运算处理</strong><br>　　　<br>　　public class StringOperation<br>　　{ <br>　　　public static void main(String args[])<br>　　　{ <br>　　　　String sqlQuery = null; <br>　　　　String sqlCondition = " conditionC = conditionD "); <br>　　　　StringBuffer sb = new StringBuffer(); <br>　　　　sb.append("select * from database table where "); <br>　　　　sb.append(" conditionA = conditionB and "); <br>　　　　if ( ! sqlCondition.equals(null)<br>　　　　{ <br>　　　　　sb.append(sqlCondition); <br>　　　　}<br>　　　　else<br>　　　　{ <br>　　　　　sb.append(" conditionE = conditionF "); <br>　　　　} <br>　　　　sqlQuery = sb.toString(); <br>　　　　// Then connect to the database then excute the database query <br>　　　　// ....... <br>　　　} <br>　　} <br>　　　<br>　　在上例中，使用StingBuffer class来完成数据库查询建立，避免使用String class的"+="操作，以减少JVM在内存中创建新的对象，占用资源，增加JVM回收资源负担。读者可以使用Java Proflier功能来具体比较使用不同的String操作，JVM需要完成多少资源回收和运行时间。因此在JVM中对String直接进行"+="是非常昂贵的运算。</p>
<p align=left>　　<strong>例三：处理昂贵的数据库初始化</strong></p>
<p align=left>　　目前许多网站可以透过Web服务器查询数据库，如何提高数据库查询速度成为许多程序员关注的问题。在Java Servlets或JSP中可以通过init() 或Jspinit()来实现，以下是一具体Java Servlet与数据库对话实例。<br>　　　　<br>　　import java.io.*; <br>　　import java.sql.*; <br>　　import javax.servlet.*; <br>　　import javax.servlet.http.*; <br>　　　<br>　　public class DatabaseServlet extends HttpServlet<br>　　{ <br>　　　public void init( ServletConfig conf) throws ServletException<br>　　　{ <br>　　　　super.init(conf); <br>　　　　Connection conn = null; <br>　　　　try<br>　　　　{<br>　　　　　Class.forName("sun.jdbc.odbc.JdcOdbcDriver"); <br>　　　　　Conn = DriverManager.getConnection("jdbc:odbc:yourDSN,"",""); <br>　　　　}<br>　　　　catch ( SQLException sqle )<br>　　　　{ <br>　　　　　System.err.println("your error exception is " + sqle); <br>　　　　}<br>　　　　catch ( ClassNotFoundException cnfe )<br>　　　　{ <br>　　　　　System.err.println("your error exception is " + cnfe); <br>　　　　} <br>　　　} <br>　　　public void doGet( HttpServletRequest req, HttpServletResponse res) throws <br>　　　ServletException, IOException<br>　　　{ <br>　　　　res.setContentType("text/html"); <br>　　　　ServletOutputStream out = null; <br>　　　　// Your HTML formatter <br>　　　　out.println(" Your HTML"); <br>　　　　try<br>　　　　{ <br>　　　　　Statement stmt = conn.creatStatement(); <br>　　　　　ResultSet rs = stmt.excuteQuery("select * from yourDatabasetable "); <br>　　　　　while ( rs.next() )<br>　　　　　{ <br>　　　　　　// Processing your data <br>　　　　　} <br>　　　　}<br>　　　　catch ( SQLException sqle )<br>　　　　{ <br>　　　　　out.println("The SQL error is " + sqle); <br>　　　　} <br>　　　　// output your processing result to HTML page <br>　　　　out.println(" your HTML"); <br>　　　　rs.close(); <br>　　　　stmt.close(); <br>　　　} <br>　　　public void destroy()<br>　　　{ <br>　　　　try<br>　　　　{ <br>　　　　　conn.close(); <br>　　　　}<br>　　　　catch ( SQLException sqle )<br>　　　　{ <br>　　　　　System.err.println("your SQL error is " + sqle); <br>　　　　} <br>　　　} <br>　　} <br>　　　<br>　　在上例中，由于Java Servlet运行机制的特点，将昂贵的数据库初始化运算在整个Servlet运行中仅只调用一次的init()中完成，以减少不必要的重复性数据库运算。读者可以根据应用的具体情况，甚至将数据库的Statement和ResultSet部分移至init()中完成，或者调用PreparedStatement与CallableStatement来优化数据库的运算。同时，对数据库的连接的关闭由destroy()一次性完成</p>
<img src ="http://www.blogjava.net/soddabao/aggbug/108373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-04-04 10:56 <a href="http://www.blogjava.net/soddabao/archive/2007/04/04/108373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关java远程读取文件的方法</title><link>http://www.blogjava.net/soddabao/archive/2007/04/03/108109.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 03 Apr 2007 00:57:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/04/03/108109.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/108109.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/04/03/108109.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/108109.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/108109.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">&nbsp;1</span><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000">&nbsp;word;<br></span><span style="COLOR: #008080">&nbsp;2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">&nbsp;3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.io.FileOutputStream;<br></span><span style="COLOR: #008080">&nbsp;4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.io.InputStream;<br></span><span style="COLOR: #008080">&nbsp;5</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.net.HttpURLConnection;<br></span><span style="COLOR: #008080">&nbsp;6</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">&nbsp;7</span><span style="COLOR: #000000"><img id=Codehighlighter1_134_803_Open_Image onclick="this.style.display='none'; Codehighlighter1_134_803_Open_Text.style.display='none'; Codehighlighter1_134_803_Closed_Image.style.display='inline'; Codehighlighter1_134_803_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_134_803_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_134_803_Closed_Text.style.display='none'; Codehighlighter1_134_803_Open_Image.style.display='inline'; Codehighlighter1_134_803_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;FileRead&nbsp;</span><span id=Codehighlighter1_134_803_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_134_803_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">&nbsp;8</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">&nbsp;9</span><span style="COLOR: #000000"><img id=Codehighlighter1_176_801_Open_Image onclick="this.style.display='none'; Codehighlighter1_176_801_Open_Text.style.display='none'; Codehighlighter1_176_801_Closed_Image.style.display='inline'; Codehighlighter1_176_801_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_176_801_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_176_801_Closed_Text.style.display='none'; Codehighlighter1_176_801_Open_Image.style.display='inline'; Codehighlighter1_176_801_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top></span><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_176_801_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_176_801_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;java.net.URL&nbsp;urlfile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;&nbsp;<br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;HttpURLConnection&nbsp;httpUrl&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;&nbsp;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img id=Codehighlighter1_251_771_Open_Image onclick="this.style.display='none'; Codehighlighter1_251_771_Open_Text.style.display='none'; Codehighlighter1_251_771_Closed_Image.style.display='inline'; Codehighlighter1_251_771_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_251_771_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_251_771_Closed_Text.style.display='none'; Codehighlighter1_251_771_Open_Image.style.display='inline'; Codehighlighter1_251_771_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_251_771_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_251_771_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;连接指定的网络资源,获取网络输入流</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">16</span><span style="COLOR: #008000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;urlfile&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;java.net.URL(<br></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">http://10.142.202.12/ftp/Y0131000000168/D0011000006537.jpg</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpUrl&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(HttpURLConnection)&nbsp;urlfile.openConnection();<br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpUrl.connect();<br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;bytesum&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;byteread&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream&nbsp;inStream&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;httpUrl.getInputStream();<br></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileOutputStream&nbsp;fs&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;FileOutputStream(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">c:/1.jpg</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[]&nbsp;buffer&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">1444</span><span style="COLOR: #000000">];<br></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img id=Codehighlighter1_697_762_Open_Image onclick="this.style.display='none'; Codehighlighter1_697_762_Open_Text.style.display='none'; Codehighlighter1_697_762_Closed_Image.style.display='inline'; Codehighlighter1_697_762_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_697_762_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_697_762_Closed_Text.style.display='none'; Codehighlighter1_697_762_Open_Image.style.display='inline'; Codehighlighter1_697_762_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;((byteread&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;inStream.read(buffer))&nbsp;</span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)&nbsp;</span><span id=Codehighlighter1_697_762_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_697_762_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bytesum&nbsp;</span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000">&nbsp;byteread;<br></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fs.write(buffer,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;byteread);<br></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img id=Codehighlighter1_793_798_Open_Image onclick="this.style.display='none'; Codehighlighter1_793_798_Open_Text.style.display='none'; Codehighlighter1_793_798_Closed_Image.style.display='inline'; Codehighlighter1_793_798_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_793_798_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_793_798_Closed_Text.style.display='none'; Codehighlighter1_793_798_Open_Image.style.display='inline'; Codehighlighter1_793_798_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">&nbsp;(Exception&nbsp;e)&nbsp;</span><span id=Codehighlighter1_793_798_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_793_798_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">32</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;<br></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">34</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">35</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span></div>
<img src ="http://www.blogjava.net/soddabao/aggbug/108109.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-04-03 08:57 <a href="http://www.blogjava.net/soddabao/archive/2007/04/03/108109.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关java读取文件，转移</title><link>http://www.blogjava.net/soddabao/archive/2007/04/02/108051.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Mon, 02 Apr 2007 12:48:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/04/02/108051.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/108051.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/04/02/108051.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/108051.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/108051.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 今天想通过数据库转移文件，想到java的流来进行处理。先读取文件生成流再把流专业后，再将流中的数据生成文件。<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000">&nbsp;word;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.io.FileInputStream;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.io.FileOutputStream;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000">&nbsp;java.io.InputStream;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_130_659_Open_Image onclick="this.style.display='none'; Codehighlighter1_130_659_Open_Text.style.display='none'; Codehighlighter1_130_659_Closed_Image.style.display='inline'; Codehighlighter1_130_659_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_130_659_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_130_659_Closed_Text.style.display='none'; Codehighlighter1_130_659_Open_Image.style.display='inline'; Codehighlighter1_130_659_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;TestDoc&nbsp;</span><span id=Codehighlighter1_130_659_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_130_659_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_172_657_Open_Image onclick="this.style.display='none'; Codehighlighter1_172_657_Open_Text.style.display='none'; Codehighlighter1_172_657_Closed_Image.style.display='inline'; Codehighlighter1_172_657_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_172_657_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_172_657_Closed_Text.style.display='none'; Codehighlighter1_172_657_Open_Image.style.display='inline'; Codehighlighter1_172_657_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><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_172_657_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_172_657_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;bytesum</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;byteread</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream&nbsp;inStream;<br><img id=Codehighlighter1_257_599_Open_Image onclick="this.style.display='none'; Codehighlighter1_257_599_Open_Text.style.display='none'; Codehighlighter1_257_599_Closed_Image.style.display='inline'; Codehighlighter1_257_599_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_257_599_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_257_599_Closed_Text.style.display='none'; Codehighlighter1_257_599_Open_Image.style.display='inline'; Codehighlighter1_257_599_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000">&nbsp;</span><span id=Codehighlighter1_257_599_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_257_599_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inStream&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;FileInputStream(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">c:/1.xls</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileOutputStream&nbsp;&nbsp;&nbsp;fs</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;FileOutputStream(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">d:/aaa.xls</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buffer&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">byte</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">1444</span><span style="COLOR: #000000">];&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;((byteread</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">inStream.read(buffer))</span><span style="COLOR: #000000">!=-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)&nbsp;&nbsp;&nbsp;<br><img id=Codehighlighter1_478_566_Open_Image onclick="this.style.display='none'; Codehighlighter1_478_566_Open_Text.style.display='none'; Codehighlighter1_478_566_Closed_Image.style.display='inline'; Codehighlighter1_478_566_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_478_566_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_478_566_Closed_Text.style.display='none'; Codehighlighter1_478_566_Open_Image.style.display='inline'; Codehighlighter1_478_566_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_478_566_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_478_566_Open_Text><span style="COLOR: #000000">{&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bytesum</span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000">byteread;&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fs.write(buffer,</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,byteread);&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inStream.close();&nbsp;<br><img id=Codehighlighter1_621_649_Open_Image onclick="this.style.display='none'; Codehighlighter1_621_649_Open_Text.style.display='none'; Codehighlighter1_621_649_Closed_Image.style.display='inline'; Codehighlighter1_621_649_Closed_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_621_649_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_621_649_Closed_Text.style.display='none'; Codehighlighter1_621_649_Open_Image.style.display='inline'; Codehighlighter1_621_649_Open_Text.style.display='inline';" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">&nbsp;(Exception&nbsp;e)&nbsp;</span><span id=Codehighlighter1_621_649_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"></span><span id=Codehighlighter1_621_649_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace();<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;<br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
<img src ="http://www.blogjava.net/soddabao/aggbug/108051.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-04-02 20:48 <a href="http://www.blogjava.net/soddabao/archive/2007/04/02/108051.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关项目的优化问题</title><link>http://www.blogjava.net/soddabao/archive/2007/03/29/107342.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 29 Mar 2007 13:43:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/03/29/107342.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/107342.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/03/29/107342.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/107342.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/107342.html</trackback:ping><description><![CDATA[     今天测试程序，某一菜单进去的时候比较慢，应该说是很慢，我就跟踪也没有发现什么地方不妥的。只是有些查询语句感觉不大好。<br />       1、查询数据库，应该要有主键，这样查询比较快。<br />       2、少用string 应该多用stringbuffer。<br />       3、应该多操作内存，少操作数据库。<br />       4、if else 应该用的合理，if走完后应该跳过后面的判断，不要重复判断。<br />       5、其实最主要的还是搞清编译的环境－－运行时还是.......?<br />       6、少用new，变量比较多时用完后尽早回收。<br />      其实主要的还是代码的“干净”，要养成良好的书写代码习惯。<br />     今天在晚上看到一篇文章比较不错，大家可以借鉴一下。<a title=" Java 理论与实践: 动态编译与性能测量" href="http://www.ibm.com/developerworks/cn/java/j-jtp12214/"> Java 理论与实践: 动态编译与性能测量</a><img src ="http://www.blogjava.net/soddabao/aggbug/107342.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-03-29 21:43 <a href="http://www.blogjava.net/soddabao/archive/2007/03/29/107342.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java发送HTTP请求</title><link>http://www.blogjava.net/soddabao/archive/2007/03/21/105270.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 21 Mar 2007 06:59:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/03/21/105270.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/105270.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/03/21/105270.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/105270.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/105270.html</trackback:ping><description><![CDATA[     前段时间发送http请求，是在javascipt中发送，用的ajax。今天一同事问我有没有可以在java中发送的方法，我看了api后写了这个方法，其中参数可以是xml串，也可以是是参数对，比如名称=值&amp;名称=值.<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_73_706_Open_Image" onclick="this.style.display='none'; Codehighlighter1_73_706_Open_Text.style.display='none'; Codehighlighter1_73_706_Closed_Image.style.display='inline'; Codehighlighter1_73_706_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_73_706_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_73_706_Closed_Text.style.display='none'; Codehighlighter1_73_706_Open_Image.style.display='inline'; Codehighlighter1_73_706_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> String send_url(String urlStr, String param) </span><span style="COLOR: #0000ff">throws</span><span style="COLOR: #000000"> Exception </span><span id="Codehighlighter1_73_706_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_73_706_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        StringBuilder tempStr;<br /><img id="Codehighlighter1_106_609_Open_Image" onclick="this.style.display='none'; Codehighlighter1_106_609_Open_Text.style.display='none'; Codehighlighter1_106_609_Closed_Image.style.display='inline'; Codehighlighter1_106_609_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_106_609_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_106_609_Closed_Text.style.display='none'; Codehighlighter1_106_609_Open_Image.style.display='inline'; Codehighlighter1_106_609_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_106_609_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_106_609_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> URL(urlStr);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (HttpURLConnection) url.openConnection();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con.setRequestMethod(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">POST</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con.setDoOutput(</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con.getOutputStream().write(param.getBytes());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con.getOutputStream().flush();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url_con.getOutputStream().close();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            InputStream in </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> url_con.getInputStream();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            BufferedReader rd </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> BufferedReader(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> InputStreamReader(in));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            tempStr </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> StringBuilder();<br /><img id="Codehighlighter1_564_604_Open_Image" onclick="this.style.display='none'; Codehighlighter1_564_604_Open_Text.style.display='none'; Codehighlighter1_564_604_Closed_Image.style.display='inline'; Codehighlighter1_564_604_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_564_604_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_564_604_Closed_Text.style.display='none'; Codehighlighter1_564_604_Open_Image.style.display='inline'; Codehighlighter1_564_604_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000"> (rd.read() </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">) </span><span id="Codehighlighter1_564_604_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_564_604_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                tempStr.append(rd.readLine());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_619_673_Open_Image" onclick="this.style.display='none'; Codehighlighter1_619_673_Open_Text.style.display='none'; Codehighlighter1_619_673_Closed_Image.style.display='inline'; Codehighlighter1_619_673_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_619_673_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_619_673_Closed_Text.style.display='none'; Codehighlighter1_619_673_Open_Image.style.display='inline'; Codehighlighter1_619_673_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">finally</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_619_673_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_619_673_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (url_con </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                url_con.disconnect();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> String(tempStr);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span></div>      还可以做个gui界面，做几个JTextField，JTextArea存在这些需要的参数，然后在按钮的ActionListener中处理函数中加入这个发送方法，实现可视化操作。<br />     偶做了一个不过是给公司专用的，大家在别的地方肯定是用不到这个jar，偶就帖上来。<img src ="http://www.blogjava.net/soddabao/aggbug/105270.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-03-21 14:59 <a href="http://www.blogjava.net/soddabao/archive/2007/03/21/105270.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>HTTP请求发送XML数据</title><link>http://www.blogjava.net/soddabao/archive/2007/01/25/95951.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 25 Jan 2007 07:36:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/25/95951.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/95951.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/25/95951.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/95951.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/95951.html</trackback:ping><description><![CDATA[
		<p>      http请求发送一些简单的数据,大家应该知道,直接在url后加"?参数名=参数值&amp;参数名=参数值&amp;",但是数据过多,这样发送就不可以,不管post还是get数据量超过2m好像都不行.当数据量大的时候可以采用xml格式,发送,此时发送方法就要改一下,不能在url地址后面加参数了,这是要用到</p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">                 var Http </span>
				<span style="COLOR: #000000">=</span>
				<span style="COLOR: #000000"> </span>
				<span style="COLOR: #0000ff">new</span>
				<span style="COLOR: #000000"> ActiveXObject(</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">Microsoft.XMLHTTP</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">) <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />                    Http.open(</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">POST</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">,GZURL,</span>
				<span style="COLOR: #0000ff">false</span>
				<span style="COLOR: #000000">) <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />                    Http.setRequestHeader(</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">CONTENT-TYPE</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">,</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">text/xml; charset = gb2312</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />                 Http.send(message) </span>
		</div>       在httpserver中接受  
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">        request.setCharacterEncoding(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">GB2312</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        ServletInputStream inStream </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> request.getInputStream();</span></div><br />        接受到的数据为一个流,流中包含xml数据,如果直接对流操作,转化成string然后再操作就有些麻烦了.此时用jdom操作这个xml的流,直接生成xml对象<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">SAXBuilder sb </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> SAXBuilder(); </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 新建立构造器</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">            doc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> sb.build(inStream);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            Element root </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (Element) doc.getRootElement();</span></div>        对这个xml的doc对象操作,想必大家应该会吧!先得到根节点,然后再得到子节点.....<img src ="http://www.blogjava.net/soddabao/aggbug/95951.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-25 15:36 <a href="http://www.blogjava.net/soddabao/archive/2007/01/25/95951.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JDK6.0的新特性:轻量级Http Server</title><link>http://www.blogjava.net/soddabao/archive/2007/01/10/92994.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 10 Jan 2007 11:59:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/10/92994.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/92994.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/10/92994.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/92994.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/92994.html</trackback:ping><description><![CDATA[         JDK6提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持Http和Https协议,提供了HTTP1.1的部分实现，没有被实现的那部分可以通过扩展已有的Http Server API来实现,程序员必须自己实现HttpHandler接口,HttpServer会调用HttpHandler实现类的回调方法来处理客户端请求,在这里,我们把一个Http请求和它的响应称为一个交换,包装成HttpExchange类,HttpServer负责将HttpExchange传给HttpHandler实现类的回调方法.下面代码演示了怎样创建自己的Http Server<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> jdk6;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.io.IOException;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.net.InetSocketAddress;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.sun.net.httpserver.HttpServer;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_156_659_Open_Image" onclick="this.style.display='none'; Codehighlighter1_156_659_Open_Text.style.display='none'; Codehighlighter1_156_659_Closed_Image.style.display='inline'; Codehighlighter1_156_659_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_156_659_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_156_659_Closed_Text.style.display='none'; Codehighlighter1_156_659_Open_Image.style.display='inline'; Codehighlighter1_156_659_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> HTTPServerAPITester </span><span id="Codehighlighter1_156_659_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_156_659_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    <br /><img id="Codehighlighter1_167_237_Open_Image" onclick="this.style.display='none'; Codehighlighter1_167_237_Open_Text.style.display='none'; Codehighlighter1_167_237_Closed_Image.style.display='inline'; Codehighlighter1_167_237_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_167_237_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_167_237_Closed_Text.style.display='none'; Codehighlighter1_167_237_Open_Image.style.display='inline'; Codehighlighter1_167_237_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span id="Codehighlighter1_167_237_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/** */</span><span id="Codehighlighter1_167_237_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     * The main method.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     * <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     * </span><span style="COLOR: #808080">@param</span><span style="COLOR: #008000"> args the args<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />     </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_282_657_Open_Image" onclick="this.style.display='none'; Codehighlighter1_282_657_Open_Text.style.display='none'; Codehighlighter1_282_657_Closed_Image.style.display='inline'; Codehighlighter1_282_657_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_282_657_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_282_657_Closed_Text.style.display='none'; Codehighlighter1_282_657_Open_Image.style.display='inline'; Codehighlighter1_282_657_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_282_657_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_282_657_Open_Text"><span style="COLOR: #000000">{<br /><img id="Codehighlighter1_296_584_Open_Image" onclick="this.style.display='none'; Codehighlighter1_296_584_Open_Text.style.display='none'; Codehighlighter1_296_584_Closed_Image.style.display='inline'; Codehighlighter1_296_584_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_296_584_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_296_584_Closed_Text.style.display='none'; Codehighlighter1_296_584_Open_Image.style.display='inline'; Codehighlighter1_296_584_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_296_584_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_296_584_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            HttpServer hs </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> HttpServer.create(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> InetSocketAddress(</span><span style="COLOR: #000000">8888</span><span style="COLOR: #000000">),</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">);</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">设置HttpServer的端口为8888</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            hs.createContext(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/soddabao</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> MyHandler());</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">用MyHandler类内处理到/chinajash的请求</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            hs.setExecutor(</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">); </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> creates a default executor</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">            hs.start();<br /><img id="Codehighlighter1_608_651_Open_Image" onclick="this.style.display='none'; Codehighlighter1_608_651_Open_Text.style.display='none'; Codehighlighter1_608_651_Closed_Image.style.display='inline'; Codehighlighter1_608_651_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_608_651_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_608_651_Closed_Text.style.display='none'; Codehighlighter1_608_651_Open_Image.style.display='inline'; Codehighlighter1_608_651_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000"> (IOException e) </span><span id="Codehighlighter1_608_651_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_608_651_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> jdk6;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.io.IOException;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.io.OutputStream;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.sun.net.httpserver.HttpExchange;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> com.sun.net.httpserver.HttpHandler;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> TODO: Auto-generated Javadoc</span><span style="COLOR: #008000"><br /><img id="Codehighlighter1_193_223_Open_Image" onclick="this.style.display='none'; Codehighlighter1_193_223_Open_Text.style.display='none'; Codehighlighter1_193_223_Closed_Image.style.display='inline'; Codehighlighter1_193_223_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_193_223_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_193_223_Closed_Text.style.display='none'; Codehighlighter1_193_223_Open_Image.style.display='inline'; Codehighlighter1_193_223_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_193_223_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/** */</span><span id="Codehighlighter1_193_223_Open_Text"><span style="COLOR: #008000">/**</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> * The Class MyHandler.<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" /> </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_271_763_Open_Image" onclick="this.style.display='none'; Codehighlighter1_271_763_Open_Text.style.display='none'; Codehighlighter1_271_763_Closed_Image.style.display='inline'; Codehighlighter1_271_763_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_271_763_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_271_763_Closed_Text.style.display='none'; Codehighlighter1_271_763_Open_Image.style.display='inline'; Codehighlighter1_271_763_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> MyHandler </span><span style="COLOR: #0000ff">implements</span><span style="COLOR: #000000"> HttpHandler </span><span id="Codehighlighter1_271_763_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_271_763_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />       <br /><img id="Codehighlighter1_282_396_Open_Image" onclick="this.style.display='none'; Codehighlighter1_282_396_Open_Text.style.display='none'; Codehighlighter1_282_396_Closed_Image.style.display='inline'; Codehighlighter1_282_396_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_282_396_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_282_396_Closed_Text.style.display='none'; Codehighlighter1_282_396_Open_Image.style.display='inline'; Codehighlighter1_282_396_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />       </span><span id="Codehighlighter1_282_396_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">/**/</span><span id="Codehighlighter1_282_396_Open_Text"><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"> (non-Javadoc)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        * @see com.sun.net.httpserver.HttpHandler#handle(com.sun.net.httpserver.HttpExchange)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        </span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br /><img id="Codehighlighter1_466_760_Open_Image" onclick="this.style.display='none'; Codehighlighter1_466_760_Open_Text.style.display='none'; Codehighlighter1_466_760_Closed_Image.style.display='inline'; Codehighlighter1_466_760_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_466_760_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_466_760_Closed_Text.style.display='none'; Codehighlighter1_466_760_Open_Image.style.display='inline'; Codehighlighter1_466_760_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />       </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> handle(HttpExchange httpexchnge) </span><span style="COLOR: #0000ff">throws</span><span style="COLOR: #000000"> IOException </span><span id="Codehighlighter1_466_760_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_466_760_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />              httpexchnge.getRequestBody();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />           String response </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;h3&gt;Happy New Year 2007!--Soddabao&lt;/h3&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />           httpexchnge.sendResponseHeaders(</span><span style="COLOR: #000000">200</span><span style="COLOR: #000000">, response.length());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />           OutputStream os </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> httpexchnge.getResponseBody();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />           os.write(response.getBytes());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />           os.close();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />       }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span></div><br /><img src ="http://www.blogjava.net/soddabao/aggbug/92994.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-10 19:59 <a href="http://www.blogjava.net/soddabao/archive/2007/01/10/92994.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打jar把第三方的jar也打进去</title><link>http://www.blogjava.net/soddabao/archive/2007/01/08/92455.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Mon, 08 Jan 2007 12:10:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/08/92455.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/92455.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/08/92455.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/92455.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/92455.html</trackback:ping><description><![CDATA[      之前在我的blog中写道,关于这个问题,以前是不知道怎么实现?<a title="关于java跨平台移值" href="/soddabao/archive/2006/10/20/76304.html" target="_blank">地址</a>.后来自己在网上查了,有各种不同的说法,感觉都不怎么实用.<br />     前几天在看&lt;&lt;Eclipse从入门到精通&gt;&gt;一书,看到一节关于eclipse打包的介绍,感觉有方法了.<br />     大家都知道打java包,需要一个清单文件,MANIFEST.MF,内容无非就是<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">Manifest</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Version: </span><span style="COLOR: #000000">1.0</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />Main</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Class: awt.MyGuiImp</span></div>     实际上,清单文件中还有一个重要的,就是Class-Path,大家一看就知道这个是用来干什么的了.不错,这个就是程序运行的支持库的路径.后来上网查了一下,MANIFEST.MF的具体解释是这样:<br />      打包清单.它是打包的关键性文件,主要是设置执行入口类和支持库的路径,在运行java应用程序时要根据此文件中给出的信息来查找入口类和支持库.<br />      我们以前只注意了MANIFEST.MF中的入口类,也就是我们常说的主类(有main方法的类),却忽视了支持库.<br />      Class-Path:指定支持库的路径,"."指程序运行目录,即到处的jar包所在目录.程序运行时依据Class-Path项的设置路径来查找支持库.每一个支持库之间用空格格开.<br />     后来我自己用到的jar,放一个文件夹lib,lib就放在和jar包一个文件夹下,清单文件这样写<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">Manifest</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Version: </span><span style="COLOR: #000000">1.0</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />Main</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Class: awt.MyGuiImp<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />Class</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Path: .</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">lib</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">jacob.jar .</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">lib</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">jdom.jar .</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">lib</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">log4j.jar</span></div>    移到别的计算机,运行jar,就不会出现任何问题了,前提是该计算机必须装jdk.<img src ="http://www.blogjava.net/soddabao/aggbug/92455.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-08 20:10 <a href="http://www.blogjava.net/soddabao/archive/2007/01/08/92455.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用java语言直接生成html对象 </title><link>http://www.blogjava.net/soddabao/archive/2007/01/07/92224.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Sun, 07 Jan 2007 07:23:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/07/92224.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/92224.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/07/92224.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/92224.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/92224.html</trackback:ping><description><![CDATA[ 我们一直做httpserver的时候,请求返回html文件的时候,都是得到一个PrintWriter对象,然后在<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;HTML&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;HEAD&gt;&lt;TITLE&gt;Demo&lt;TITLE&gt;&lt;HEAD&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;BODY&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;H1&gt;Demo Header&lt;H1&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;H3&gt;Sub Header:&lt;H3&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;FONT SIZE=\</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">\</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> FACE=\</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Times\</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> COLOR=\</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">#FFFFFF</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&gt;);</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">The big dog &amp;amp; the little cat chased each other.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;FONT&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;BODY&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&lt;HTML&gt;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div>     如果返回的html文件中包含的内容比较少,这样做还是可以的.不过一直用out.println,大家没觉得有点太过于陈旧,一直用一种方法.<br />      今天上apache的网站,发现<strong>Jakarta ECS</strong>可以直接生成一个html对象(在java中一切皆为对象),用起来也是比较简单的.在apache网站中介绍<strong>Jakarta ECS(</strong>由于本人e文不怎么好,不能给大家翻译)<br /><p>The <strong>Element Construction Set</strong> is a Java API for generating elements for various markup languages it directly supports HTML 4.0 and XML, but can easily be extended to create tags for any markup language. It is designed and implemented by Stephan Nagy and Jon S. Stevens. <br /><br />      其实,我们看一个java的第三方jar,重要的是去看的api,看的方法是怎么用以及知道这个jar是用来干什么的.<br />我把jar包以及api下载了,下载地址:http://apache.mirrors.hoobly.com/jakarta/ecs/binaries/ecs-1.4.2.tar.gz,这里面包括jar以及api.<br />       下载后把jar放到eclipse下,相信导入一个jar到一个工程中大家都应该知道了,牛刀小试.<br /></p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> ECS;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.HtmlColor;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.Body;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.Font;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.H1;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.H3;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.Head;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.Html;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.ecs.html.Title;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_297_820_Open_Image" onclick="this.style.display='none'; Codehighlighter1_297_820_Open_Text.style.display='none'; Codehighlighter1_297_820_Closed_Image.style.display='inline'; Codehighlighter1_297_820_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_297_820_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_297_820_Closed_Text.style.display='none'; Codehighlighter1_297_820_Open_Image.style.display='inline'; Codehighlighter1_297_820_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> TestECS </span><span id="Codehighlighter1_297_820_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_297_820_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_340_817_Open_Image" onclick="this.style.display='none'; Codehighlighter1_340_817_Open_Text.style.display='none'; Codehighlighter1_340_817_Closed_Image.style.display='inline'; Codehighlighter1_340_817_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_340_817_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_340_817_Closed_Text.style.display='none'; Codehighlighter1_340_817_Open_Image.style.display='inline'; Codehighlighter1_340_817_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_340_817_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_340_817_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Html html </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Html()<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                .addElement(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Head().addElement(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Title(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Demo</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)))<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                .addElement(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                        </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Body()<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                .addElement(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> H1(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Demo Header</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">))<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                .addElement(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> H3(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Sub Header:</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">))<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                .addElement(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                        </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Font()<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                                .setSize(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">+1</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                                .setColor(HtmlColor.WHITE)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                                .setFace(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Times</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                                .addElement(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                                                        </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">The big dog &amp; the little cat chased each other.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        System.out.println(html.toString());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div><br />      具体详细的大家可以用apache网站看,或是看api.apache网站关于<strong>ECS,</strong>地址:http://jakarta.apache.org/ecs/<br />       心动了么?还不行动,尝试一下ECS! <img src ="http://www.blogjava.net/soddabao/aggbug/92224.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-07 15:23 <a href="http://www.blogjava.net/soddabao/archive/2007/01/07/92224.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>swt入门注意几点</title><link>http://www.blogjava.net/soddabao/archive/2007/01/04/91832.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 04 Jan 2007 11:59:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/04/91832.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/91832.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/04/91832.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/91832.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/91832.html</trackback:ping><description><![CDATA[    元旦放假三天,加了三天吧.但玩的时候比工作的时候,这几天看了eclipse的swt编程,感觉这个和java的swt以及swing差不多大,还是有些区别?不过这些区别只要对java的swt或是swing熟的,操作起来是没有什么?最重要的就是把环境给配置好,导入那些jar包,dll文件之类.<br />     1导入swt.jar,在eclipse的目录下搜索,一般情况都会搜到,可能会根据你的eclipse的版本不同,在这搜的jar名字不一样,我用的org.eclipse.swt.win32.win32.x86_3.1.2.jar,把这个导入你的classpath中,别以为这就可以了,还要加个dll文件,swt-win32-3139.dll,这个的名字也是和eclipse的版本有关的,要是不加的会出现这个错误<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">Exception in thread </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">main</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> java.lang.UnsatisfiedLinkError: no swt</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">win32</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">3139</span><span style="COLOR: #000000"> in java.library.path<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at java.lang.ClassLoader.loadLibrary(Unknown Source)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at java.lang.Runtime.loadLibrary0(Unknown Source)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at java.lang.System.loadLibrary(Unknown Source)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:</span><span style="COLOR: #000000">123</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at org.eclipse.swt.internal.win32.OS.</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">clinit</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">(OS.java:</span><span style="COLOR: #000000">18</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at org.eclipse.swt.widgets.Display.</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">clinit</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">(Display.java:</span><span style="COLOR: #000000">125</span><span style="COLOR: #000000">)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    at SwtHelloWorld.main(SwtHelloWorld.java:</span><span style="COLOR: #000000">25</span><span style="COLOR: #000000">)</span></div>这里会提示要加那个dll文件,我是直接放在javahome/bin下<br />   2JFace.jar的引入,导入JFaced的jar,不只就这一个jar包,这个在eclipse的目录下能搜的到,我用的是org.eclipse.jface_3.1.1.jar,把这个放到classpath后,出现这个问题<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">Exception in thread </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">main</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> java.lang.NoClassDefFoundError: org</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">eclipse</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">core</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">runt<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />ime</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">IProgressMonitor</span></div>原因呢?因为还少一个jar,org.eclipse.core.runtime_3.1.2.jar,把这个也加上了.运行没有问题了.<br /><br />这两个问题在新手学swt的时候是最需要注意的!<img src ="http://www.blogjava.net/soddabao/aggbug/91832.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-04 19:59 <a href="http://www.blogjava.net/soddabao/archive/2007/01/04/91832.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>对前几天作的java万年历,再弄修改,加上农历</title><link>http://www.blogjava.net/soddabao/archive/2007/01/04/91729.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 04 Jan 2007 05:08:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2007/01/04/91729.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/91729.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2007/01/04/91729.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/91729.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/91729.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 前几天在blog中,对网友的java万年历作修改,看到有的网友说能不能加上农历,后来在网上看到有人写过几个阳历转阴历的算法,我比较了一个发现,这个算法还算不错,只要有的计算机编程基础的人看明白应该是没有问题的,其实这个就和我们以前在c中,判断一天是周几的算法差不多,都是和某一个特定的时间作比较,算出差多少天,再根据月大月小瑞月这些规则,算出是农历的那年那月那日.package clock;impo...&nbsp;&nbsp;<a href='http://www.blogjava.net/soddabao/archive/2007/01/04/91729.html'>阅读全文</a><img src ="http://www.blogjava.net/soddabao/aggbug/91729.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2007-01-04 13:08 <a href="http://www.blogjava.net/soddabao/archive/2007/01/04/91729.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>改进java万年历，前几天看到别人写的java万年历，其中不足之处多多</title><link>http://www.blogjava.net/soddabao/archive/2006/12/31/91098.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Sun, 31 Dec 2006 01:58:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/31/91098.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/91098.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/31/91098.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/91098.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/91098.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;&nbsp;&nbsp; 昨天网上看到别人blog里面写的自己做的万年历不错，down下来看看，发现有些地方不妥。&nbsp;&nbsp;&nbsp;&nbsp; 1。在java中获取指定年月的天数居然还用闰年来判断，感觉这个人java肯定用的不精。GregorianCalendar类里面有个方法&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; isLeapYe...&nbsp;&nbsp;<a href='http://www.blogjava.net/soddabao/archive/2006/12/31/91098.html'>阅读全文</a><img src ="http://www.blogjava.net/soddabao/aggbug/91098.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-31 09:58 <a href="http://www.blogjava.net/soddabao/archive/2006/12/31/91098.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Log4j 简单使用</title><link>http://www.blogjava.net/soddabao/archive/2006/12/27/90368.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Wed, 27 Dec 2006 11:39:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/27/90368.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/90368.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/27/90368.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/90368.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/90368.html</trackback:ping><description><![CDATA[
		<div style="LINE-HEIGHT: 150%">
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">         程序开发环境中的日志记录是由嵌入在程序中以输出一些对开发人员有用信息的语句所组成。例如，跟踪语句（</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">trace</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">），结构转储和常见的</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">System.out.println</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">或</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">printf</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">调试语句。</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">log4j</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">提供分级方法在程序中嵌入日志记录语句。日志信息具有多种输出格式和多个输出级别。</span>
		</div>
		<div style="LINE-HEIGHT: 150%">
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">使用一个专门的日志记录包，可以减轻对成千上万的</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">System.out.println</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">语句的维护成本，因为日志记录可以通过配置脚本在运行时得以控制。</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">log4j</span>
				<span style="FONT-SIZE: 10.5pt; COLOR: black; LINE-HEIGHT: 150%">维护嵌入在程序代码中的日志记录语句。通过规范日志记录的处理过程，一些人认为应该鼓励更多的使用日志记录并且获得更高程度的效率。<br />       在java程序中,使用的方法,我总结一下有两种:<br />       一是:
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> org.apache.log4j.Category log </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />org.apache.log4j.Category.getInstance(classname);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">classname java文件名\r</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />log.debug(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/dot.gif" /><img src="http://www.blogjava.net/images/dot.gif" /><img src="http://www.blogjava.net/images/dot.gif" /></span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />log.error(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/dot.gif" /><img src="http://www.blogjava.net/images/dot.gif" /><img src="http://www.blogjava.net/images/dot.gif" /></span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><img src="http://www.blogjava.net/images/dot.gif" />..</span></div></span>
		</div>    一是:<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.log4j.BasicConfigurator;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.log4j.Logger;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> org.apache.log4j.Priority;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> TestLog4j <br /><img id="Codehighlighter1_134_873_Open_Image" onclick="this.style.display='none'; Codehighlighter1_134_873_Open_Text.style.display='none'; Codehighlighter1_134_873_Closed_Image.style.display='inline'; Codehighlighter1_134_873_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_134_873_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_134_873_Closed_Text.style.display='none'; Codehighlighter1_134_873_Open_Image.style.display='inline'; Codehighlighter1_134_873_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span id="Codehighlighter1_134_873_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_134_873_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">代码（1）</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> Logger logger </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> Logger.getLogger(TestLog4j.</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">.getName());<br /><img id="Codehighlighter1_242_243_Open_Image" onclick="this.style.display='none'; Codehighlighter1_242_243_Open_Text.style.display='none'; Codehighlighter1_242_243_Closed_Image.style.display='inline'; Codehighlighter1_242_243_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_242_243_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_242_243_Closed_Text.style.display='none'; Codehighlighter1_242_243_Open_Image.style.display='inline'; Codehighlighter1_242_243_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> TestLog4j()</span><span id="Codehighlighter1_242_243_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_242_243_Open_Text"><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args)<br /><img id="Codehighlighter1_288_871_Open_Image" onclick="this.style.display='none'; Codehighlighter1_288_871_Open_Text.style.display='none'; Codehighlighter1_288_871_Closed_Image.style.display='inline'; Codehighlighter1_288_871_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_288_871_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_288_871_Closed_Text.style.display='none'; Codehighlighter1_288_871_Open_Image.style.display='inline'; Codehighlighter1_288_871_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span id="Codehighlighter1_288_871_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_288_871_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">代码（2）</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        BasicConfigurator.configure();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />         </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">代码（3）</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        logger.debug(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Start of the main() in TestLog4j</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.info(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Just testing a log message with priority set to INFO</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.warn(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Just testing a log message with priority set to WARN</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.error(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Just testing a log message with priority set to ERROR</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.fatal(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Just testing a log message with priority set to FATAL</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.log(Priority.DEBUG, </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Testing a log message use a alternate form</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        logger.debug(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">End of the main() in TestLog4j</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><img src ="http://www.blogjava.net/soddabao/aggbug/90368.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-27 19:39 <a href="http://www.blogjava.net/soddabao/archive/2006/12/27/90368.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>泛型与数据类型转换</title><link>http://www.blogjava.net/soddabao/archive/2006/12/26/90175.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Tue, 26 Dec 2006 13:49:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/26/90175.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/90175.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/26/90175.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/90175.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/90175.html</trackback:ping><description><![CDATA[         <a title="jdk6" href="/soddabao/archive/2006/12/12/87171.html">jdk6</a>都出来有一点时间,感觉自己还是停留在jdk4的水平上,今天研究线程的时候,看到资料上的<br />         ExecutorService pool = Executors.newCachedThreadPool();以及class MatchCounter implements Callable&lt;Integer&gt; ,感觉很是奇怪.后来上网找了资料才知道是<span id="ArticleTitle1_ArticleTitle1_lblTitle"><strong>Jdk5.0新特性——Generic Types （泛型）.<br /></strong>        我就将我理解的大体说一下,大家学习一下.<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> Java.util.Hashtable; <br /><img id="Codehighlighter1_40_218_Open_Image" onclick="this.style.display='none'; Codehighlighter1_40_218_Open_Text.style.display='none'; Codehighlighter1_40_218_Closed_Image.style.display='inline'; Codehighlighter1_40_218_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_40_218_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_40_218_Closed_Text.style.display='none'; Codehighlighter1_40_218_Open_Image.style.display='inline'; Codehighlighter1_40_218_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Test </span><span id="Codehighlighter1_40_218_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_40_218_Open_Text"><span style="COLOR: #000000">{ <br /><img id="Codehighlighter1_84_215_Open_Image" onclick="this.style.display='none'; Codehighlighter1_84_215_Open_Text.style.display='none'; Codehighlighter1_84_215_Closed_Image.style.display='inline'; Codehighlighter1_84_215_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_84_215_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_84_215_Closed_Text.style.display='none'; Codehighlighter1_84_215_Open_Image.style.display='inline'; Codehighlighter1_84_215_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />　 </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_84_215_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_84_215_Open_Text"><span style="COLOR: #000000">{ <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　　 Hashtable h </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Hashtable(); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　　 h.put(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">key</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">value</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　　 String s </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> (String)h.get(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">key</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　　 System.out.println(s); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />　 }</span></span><span style="COLOR: #000000"> <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"> </span></div></span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">      这个我们做了类型转换，是不是感觉很烦的，并且强制类型转换会带来潜在的危险，系统可能会抛一个</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">ClassCastException</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">异常信息。在</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">JDK5.0</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">中我们完全可以这么做，如：<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">import</span><span style="COLOR: #000000"> java.util.Hashtable;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_47_244_Open_Image" onclick="this.style.display='none'; Codehighlighter1_47_244_Open_Text.style.display='none'; Codehighlighter1_47_244_Closed_Image.style.display='inline'; Codehighlighter1_47_244_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_47_244_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_47_244_Closed_Text.style.display='none'; Codehighlighter1_47_244_Open_Image.style.display='inline'; Codehighlighter1_47_244_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Test </span><span id="Codehighlighter1_47_244_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_47_244_Open_Text"><span style="COLOR: #000000">{<br /><img id="Codehighlighter1_89_242_Open_Image" onclick="this.style.display='none'; Codehighlighter1_89_242_Open_Text.style.display='none'; Codehighlighter1_89_242_Closed_Image.style.display='inline'; Codehighlighter1_89_242_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_89_242_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_89_242_Closed_Text.style.display='none'; Codehighlighter1_89_242_Open_Image.style.display='inline'; Codehighlighter1_89_242_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_89_242_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_89_242_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Hashtable</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">String, Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"> h </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Hashtable</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">String, Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        h.put(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">key</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Integer(</span><span style="COLOR: #000000">123</span><span style="COLOR: #000000">));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> s </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> h.get(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">key</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        System.out.println(s);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><br /><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">      这里我们使用泛化版本的</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">HashMap,</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">这样就不用我们来编写类型转换的代码了，类型转换的过程交给编译器来处理，是不是很方便，而且很安全。上面是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">String</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">映射到</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">String</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">，也可以将</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Integer</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">映射为</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">String</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">，只要写成</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">HashTable&lt;Integer,String&gt; h=new HashTable&lt;Integer,String&gt;();h.get(new Integer(0))</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">返回</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">value</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">。果然很方便!<br /><br />      从上面有没有看到有点别扭啊，<span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">h.get(new Integer(123))</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">这里的</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">new Integer(123);</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">好烦的，在</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">JDK5.0</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">之前我们只能忍着了，现在这种问题已经解决了，请看下面这个方法。我们传入一个</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">int</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">这一基本型别，然后再将</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">i</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">的值直接添加到</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">List</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">中，其实</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">List</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">是不能储存基本型别的，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">List</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">中应该存储对象，这里编译器将</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">int</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">包装成</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">Integer</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">，然后添加到</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">List</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">中去。接着我们用</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">List.get(0);</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">来检索数据，并返回对象再将对象解包装成</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">int</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">。恩，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">JDK5.0</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">给我们带来更多方便与安全。<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_38_175_Open_Image" onclick="this.style.display='none'; Codehighlighter1_38_175_Open_Text.style.display='none'; Codehighlighter1_38_175_Closed_Image.style.display='inline'; Codehighlighter1_38_175_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_38_175_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_38_175_Closed_Text.style.display='none'; Codehighlighter1_38_175_Open_Image.style.display='inline'; Codehighlighter1_38_175_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> autoBoxingUnboxing(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i) </span><span id="Codehighlighter1_38_175_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_38_175_Open_Text"><span style="COLOR: #000000">{ <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　 ArrayList</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"> L</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> ArrayList</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">(); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　 L.add(i); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　 </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> a </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> L.get(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />　 System.out.println(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">The value of i is </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> a); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span><span style="COLOR: #000000"> </span></div><br />      也许你已经发现在<span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">TestGen&lt;K,V&gt;</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">这个泛型类</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">,</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">其中</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">K,V</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">可以是任意的型别。也许你有时候呢想限定一下</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">K</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">和</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-font-kerning: 0pt">V</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">当然范围，怎么做呢？看看如下的代码：<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #0000ff">package</span><span style="COLOR: #000000"> jdk5;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img id="Codehighlighter1_73_524_Open_Image" onclick="this.style.display='none'; Codehighlighter1_73_524_Open_Text.style.display='none'; Codehighlighter1_73_524_Closed_Image.style.display='inline'; Codehighlighter1_73_524_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_73_524_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_73_524_Closed_Text.style.display='none'; Codehighlighter1_73_524_Open_Image.style.display='inline'; Codehighlighter1_73_524_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> TestGen2</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">K </span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000"> String, V </span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000"> Number</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_73_524_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_73_524_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000"> V v </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000"> K k </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_142_159_Open_Image" onclick="this.style.display='none'; Codehighlighter1_142_159_Open_Text.style.display='none'; Codehighlighter1_142_159_Closed_Image.style.display='inline'; Codehighlighter1_142_159_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_142_159_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_142_159_Closed_Text.style.display='none'; Codehighlighter1_142_159_Open_Image.style.display='inline'; Codehighlighter1_142_159_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> setV(V v) </span><span id="Codehighlighter1_142_159_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_142_159_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.v </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> v;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_179_199_Open_Image" onclick="this.style.display='none'; Codehighlighter1_179_199_Open_Text.style.display='none'; Codehighlighter1_179_199_Closed_Image.style.display='inline'; Codehighlighter1_179_199_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_179_199_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_179_199_Closed_Text.style.display='none'; Codehighlighter1_179_199_Open_Image.style.display='inline'; Codehighlighter1_179_199_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> V getV() </span><span id="Codehighlighter1_179_199_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_179_199_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.v;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_225_242_Open_Image" onclick="this.style.display='none'; Codehighlighter1_225_242_Open_Text.style.display='none'; Codehighlighter1_225_242_Closed_Image.style.display='inline'; Codehighlighter1_225_242_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_225_242_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_225_242_Closed_Text.style.display='none'; Codehighlighter1_225_242_Open_Image.style.display='inline'; Codehighlighter1_225_242_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> setK(K k) </span><span id="Codehighlighter1_225_242_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_225_242_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.k </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> k;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_262_282_Open_Image" onclick="this.style.display='none'; Codehighlighter1_262_282_Open_Text.style.display='none'; Codehighlighter1_262_282_Closed_Image.style.display='inline'; Codehighlighter1_262_282_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_262_282_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_262_282_Closed_Text.style.display='none'; Codehighlighter1_262_282_Open_Image.style.display='inline'; Codehighlighter1_262_282_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> K getK() </span><span id="Codehighlighter1_262_282_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_262_282_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.k;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_325_522_Open_Image" onclick="this.style.display='none'; Codehighlighter1_325_522_Open_Text.style.display='none'; Codehighlighter1_325_522_Closed_Image.style.display='inline'; Codehighlighter1_325_522_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_325_522_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_325_522_Closed_Text.style.display='none'; Codehighlighter1_325_522_Open_Image.style.display='inline'; Codehighlighter1_325_522_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> main(String[] args) </span><span id="Codehighlighter1_325_522_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_325_522_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        TestGen2</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">String, Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"> t2 </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> TestGen2</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">String, Integer</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        t2.setK(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> String(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">String</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        t2.setV(</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Integer(</span><span style="COLOR: #000000">123</span><span style="COLOR: #000000">));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        System.out.println(t2.getK());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        System.out.println(t2.getV());<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><p><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">上边</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">K</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的范围是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">&lt;=String </span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">V</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的范围是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">&lt;=Number</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">，注意是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">“&lt;=”,</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">对于</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">K</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">可以是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">String</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">的，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">V</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">当然也可以是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">Number</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">，也可以是</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">Integer,Float,Double,Byte</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">等。</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"><br /></span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">　　</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"></span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">这个是单一的限制，你也可以对型别多重限制，如下：</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"> <br /><br />         class C&lt;T extends Comparable&lt;? super T&gt; &amp; Serializable&gt;<br /></span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">　　</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"></span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">我们来分析以下这句，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">T extends Comparable</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">这个是对上限的限制，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">Comparable&lt; super T&gt;</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">这个是下限的限制，</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">Serializable</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">是第</span><span lang="EN-US" style="FONT-SIZE: 12pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">2</span><span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">个上限。一个指定的类型参数可以具有一个或多个上限。具有多重限制的类型参数可以用于访问它的每个限制的方法和域。</span></p><p></p></span></span></span></span> <img src ="http://www.blogjava.net/soddabao/aggbug/90175.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-26 21:49 <a href="http://www.blogjava.net/soddabao/archive/2006/12/26/90175.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关格式化输出XML文件</title><link>http://www.blogjava.net/soddabao/archive/2006/12/17/88382.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Sun, 17 Dec 2006 14:21:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/17/88382.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/88382.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/17/88382.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/88382.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/88382.html</trackback:ping><description><![CDATA[jdom出来xml文件比较方便,尤其是在读写文件的时候,但出xml文件的时候,要format一下,这样看起来比较方便,因项目需要和别的公司做接口,传输就采用xml文件,起初写xml文件时候没格式化,不过输出实在不好看.今天晚上就写了个程序格式化,发上来大家一起学习.<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_59_391_Open_Image" onclick="this.style.display='none'; Codehighlighter1_59_391_Open_Text.style.display='none'; Codehighlighter1_59_391_Closed_Image.style.display='inline'; Codehighlighter1_59_391_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_59_391_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_59_391_Closed_Text.style.display='none'; Codehighlighter1_59_391_Open_Image.style.display='inline'; Codehighlighter1_59_391_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> writeFormatXML(Document doc, String filename) </span><span id="Codehighlighter1_59_391_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_59_391_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        String indent </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">    </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 缩进符号</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">boolean</span><span style="COLOR: #000000"> newLines </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 是否产生新行</span><span style="COLOR: #008000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: #000000">        XMLOutputter outp </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> XMLOutputter(indent, newLines, </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">gb2312</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">); </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 构造新的输出流</span><span style="COLOR: #008000"><br /><img id="Codehighlighter1_217_274_Open_Image" onclick="this.style.display='none'; Codehighlighter1_217_274_Open_Text.style.display='none'; Codehighlighter1_217_274_Closed_Image.style.display='inline'; Codehighlighter1_217_274_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_217_274_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_217_274_Closed_Text.style.display='none'; Codehighlighter1_217_274_Open_Image.style.display='inline'; Codehighlighter1_217_274_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" /></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"> </span><span id="Codehighlighter1_217_274_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_217_274_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            outp.output(doc, </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> FileOutputStream(filename));<br /><img id="Codehighlighter1_308_336_Open_Image" onclick="this.style.display='none'; Codehighlighter1_308_336_Open_Text.style.display='none'; Codehighlighter1_308_336_Closed_Image.style.display='inline'; Codehighlighter1_308_336_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_308_336_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_308_336_Closed_Text.style.display='none'; Codehighlighter1_308_336_Open_Image.style.display='inline'; Codehighlighter1_308_336_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000"> (FileNotFoundException e) </span><span id="Codehighlighter1_308_336_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_308_336_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /><img id="Codehighlighter1_360_388_Open_Image" onclick="this.style.display='none'; Codehighlighter1_360_388_Open_Text.style.display='none'; Codehighlighter1_360_388_Closed_Image.style.display='inline'; Codehighlighter1_360_388_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_360_388_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_360_388_Closed_Text.style.display='none'; Codehighlighter1_360_388_Open_Image.style.display='inline'; Codehighlighter1_360_388_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000"> (IOException e) </span><span id="Codehighlighter1_360_388_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_360_388_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            e.printStackTrace();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span></div><img src ="http://www.blogjava.net/soddabao/aggbug/88382.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-17 22:21 <a href="http://www.blogjava.net/soddabao/archive/2006/12/17/88382.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>有关程序员而想</title><link>http://www.blogjava.net/soddabao/archive/2006/12/07/86084.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Thu, 07 Dec 2006 06:12:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/12/07/86084.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/86084.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/12/07/86084.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/86084.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/86084.html</trackback:ping><description><![CDATA[* 比较宽的知识面，并且能够时时补充自己的知识和完善自己的知识结构 <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 />* 有时候也不妨问问自己：我不做开发时去做什么 <br />* 坚持为自己做每周的开发计划，在事情没有做完以前不要轻易转移自己的注意力 <br />* 尽可能多的将你所做的教给别人，因为你有一天可能不再负责这个系统<br />* 做事一定要有始有终，除非是有不得已的理由否则不要在工作完成前提前离开 <br />* 不要将你为公司做的东西带走，你因该带走的是开发经验和对开发的认识而不是代码和产品 <br />* 感到累时就休息一下，给自己放个假也无妨，毕竟人不是机器 <br /><br />　                              　做程序员很累的，够你受的，加油吧！ <br /><img src ="http://www.blogjava.net/soddabao/aggbug/86084.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-12-07 14:12 <a href="http://www.blogjava.net/soddabao/archive/2006/12/07/86084.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>14 个经典的javascript代码</title><link>http://www.blogjava.net/soddabao/archive/2006/11/20/82337.html</link><dc:creator>冷面阎罗</dc:creator><author>冷面阎罗</author><pubDate>Mon, 20 Nov 2006 09:37:00 GMT</pubDate><guid>http://www.blogjava.net/soddabao/archive/2006/11/20/82337.html</guid><wfw:comment>http://www.blogjava.net/soddabao/comments/82337.html</wfw:comment><comments>http://www.blogjava.net/soddabao/archive/2006/11/20/82337.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/soddabao/comments/commentRss/82337.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/soddabao/services/trackbacks/82337.html</trackback:ping><description><![CDATA[■打开■ <br />&lt;input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开&gt; <br />&lt;OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0&gt;&lt;/OBJECT&gt;<br /> <br />■另存为■ <br />&lt;input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为&gt;&lt;OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0&gt;&lt;/OBJECT&gt; <br /><br />■属性■ <br />&lt;input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性&gt;&lt;OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0&gt;&lt;/OBJECT&gt; <br /><br />■打印■ <br />&lt;input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印&gt;&lt;OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0&gt;&lt;/OBJECT&gt; <br /><br />■页面设置■ <br />&lt;input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置&gt;&lt;OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0&gt;&lt;/OBJECT&gt; <br /><br />■刷新■ <br />&lt;input type=button value=刷新 name=refresh onclick="window.location.reload()"&gt; <br /><br />■导入收藏■ <br />&lt;input type="button" name="Button" value="导入收藏夹" onClick=window.external.ImportExportFavorites(true,);&gt; <br /><br />■导出收藏■ <br />&lt;input type="button" name="Button3" value="导出收藏夹" onClick=window.external.ImportExportFavorites(false,);&gt;<br /> <br />■加入收藏■ <br />&lt;INPUT name=Button2 onclick="window.external.AddFavorite(location.href, document.title)" type=button value=加入收藏夹&gt; <br /><br />■整理收藏夹■ <br />&lt;INPUT name=Submit2 onclick="window.external.ShowBrowserUI(OrganizeFavorites, null)" type=button value=整理收藏夹&gt;<br /> <br />■查看原文件■ <br />&lt;INPUT name=Button onclick=window.location = "view-source:" + window.location.href type=button value=查看源文件&gt; <br /><br />■语言设置■ <br />&lt;INPUT name=Button onclick="window.external.ShowBrowserUI(LanguageDialog, null)" type=button value=语言设置&gt; <br /><br />■前进■ <br />&lt;INPUT name=Submit onclick=history.go(1) type=submit value=前进&gt; <br /><br />■后退■ <br />&lt;INPUT name=Submit2 onclick=history.go(-1) type=submit value=后退&gt;<img src ="http://www.blogjava.net/soddabao/aggbug/82337.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/soddabao/" target="_blank">冷面阎罗</a> 2006-11-20 17:37 <a href="http://www.blogjava.net/soddabao/archive/2006/11/20/82337.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>