﻿<?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/yiqi801218/CommentsRSS.aspx</link><description>　　一个菜鸟的问题总是很多，又很是白痴；而一个脸皮儿薄的菜鸟有问题更是麻烦，想问又扭捏！不过好好想想，要脸有啥子用？能挣钱买上三瓜两枣添肚子才是真格地！这样，菜鸟就不再是一个普通的菜鸟，而是一个合格的、符合组织上要求的好菜鸟！
　　上火了怎么办？找个地方yy一下就好了。</description><language>zh-cn</language><pubDate>Wed, 30 Nov 2011 05:41:13 GMT</pubDate><lastBuildDate>Wed, 30 Nov 2011 05:41:13 GMT</lastBuildDate><generator>cnblogs</generator><item><title>re: 安eclipse用到的环境变量JAVA_HOME和PATH</title><link>http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315016</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Wed, 10 Mar 2010 00:31:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315016</guid><description><![CDATA[因为有了 tomcat 所以 eclipse 知道了 localhost 可以用。<img src ="http://www.blogjava.net/yiqi801218/aggbug/315016.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2010-03-10 08:31 <a href="http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315016#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 安eclipse用到的环境变量JAVA_HOME和PATH</title><link>http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315013</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Wed, 10 Mar 2010 00:29:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315013</guid><description><![CDATA[如果在安装 eclipse 时没有装 tomcat ，可以再 project 里面直接引用 tomcat ，就是加入 tomcat 的包。不然就会发现 servlet 这类文件全部红了。<img src ="http://www.blogjava.net/yiqi801218/aggbug/315013.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2010-03-10 08:29 <a href="http://www.blogjava.net/yiqi801218/archive/2010/03/10/118600.html#315013#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 学习集合与泛型</title><link>http://www.blogjava.net/yiqi801218/archive/2009/10/16/213484.html#298648</link><dc:creator>初学生</dc:creator><author>初学生</author><pubDate>Fri, 16 Oct 2009 14:47:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2009/10/16/213484.html#298648</guid><description><![CDATA[@BlueSunshine<br>前辈<br>&lt;? extends T&gt; ：表示必须是T或者T的父型<br>怎么不是子型<br><img src ="http://www.blogjava.net/yiqi801218/aggbug/298648.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">初学生</a> 2009-10-16 22:47 <a href="http://www.blogjava.net/yiqi801218/archive/2009/10/16/213484.html#298648#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 同类型数组a,b, a为b的子集，求出a的补集</title><link>http://www.blogjava.net/yiqi801218/archive/2009/09/21/211983.html#295862</link><dc:creator>*</dc:creator><author>*</author><pubDate>Mon, 21 Sep 2009 06:45:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2009/09/21/211983.html#295862</guid><description><![CDATA[		BitSet bs = new BitSet();<br><br>		int[] b = { 1, 2, 3, 4, 5 };<br><br>		int[] a = { 1, 4 };<br><br>		for (int i : a) {<br>		  bs.set(i);<br>		}<br><br>		for (int i : b) {<br>		  if (bs.get(i) == false)<br>		    System.out.println(i);<br>		}<img src ="http://www.blogjava.net/yiqi801218/aggbug/295862.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">*</a> 2009-09-21 14:45 <a href="http://www.blogjava.net/yiqi801218/archive/2009/09/21/211983.html#295862#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 生成 Excel文件</title><link>http://www.blogjava.net/yiqi801218/archive/2008/08/04/220047.html#220049</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Mon, 04 Aug 2008 14:24:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/08/04/220047.html#220049</guid><description><![CDATA[做了个练习：<br />
<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"><span style="color: #008080">&nbsp;1</span>&nbsp;<span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;all;<br />
</span><span style="color: #008080">&nbsp;2</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">&nbsp;3</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.io.FileOutputStream;<br />
</span><span style="color: #008080">&nbsp;4</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">&nbsp;5</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.poi.hssf.usermodel.HSSFFont;<br />
</span><span style="color: #008080">&nbsp;6</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.poi.hssf.usermodel.HSSFRichTextString;<br />
</span><span style="color: #008080">&nbsp;7</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.poi.hssf.usermodel.HSSFRow;<br />
</span><span style="color: #008080">&nbsp;8</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.poi.hssf.usermodel.HSSFSheet;<br />
</span><span style="color: #008080">&nbsp;9</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;org.apache.poi.hssf.usermodel.HSSFWorkbook;<br />
</span><span style="color: #008080">10</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">11</span>&nbsp;<span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;CreateExcel&nbsp;{<br />
</span><span style="color: #008080">12</span>&nbsp;<span style="color: #000000">&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;{<br />
</span><span style="color: #008080">13</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">try</span><span style="color: #000000">&nbsp;{<br />
</span><span style="color: #008080">14</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFWorkbook&nbsp;workbook&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;HSSFWorkbook();<br />
</span><span style="color: #008080">15</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFSheet&nbsp;sheet&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;workbook.createSheet(</span><span style="color: #000000">"</span><span style="color: #000000">mySheet1</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">16</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">17</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;row0&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.createRow(</span><span style="color: #000000">0</span><span style="color: #000000">);<br />
</span><span style="color: #008080">18</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRichTextString&nbsp;arg0&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;HSSFRichTextString(</span><span style="color: #000000">"</span><span style="color: #000000">number</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">19</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFFont&nbsp;font&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;workbook.createFont();<br />
</span><span style="color: #008080">20</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font.setColor(HSSFFont.COLOR_RED);<br />
</span><span style="color: #008080">21</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">&nbsp;bold&nbsp;:&nbsp;粗体</span><span style="color: #008000"><br />
</span><span style="color: #008080">22</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);<br />
</span><span style="color: #008080">23</span>&nbsp;<span style="color: #000000">&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">24</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font.setFontHeightInPoints((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">18</span><span style="color: #000000">);<br />
</span><span style="color: #008080">25</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arg0.applyFont(font);<br />
</span><span style="color: #008080">26</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">27</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row0.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">).setCellValue(arg0);<br />
</span><span style="color: #008080">28</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row0.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">29</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row0.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">2</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">content</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">30</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">31</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;row1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.createRow(</span><span style="color: #000000">1</span><span style="color: #000000">);<br />
</span><span style="color: #008080">32</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row1.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">1</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">33</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row1.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">one</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">34</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row1.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">2</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">This&nbsp;is&nbsp;one.</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">35</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">36</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;row2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.createRow(</span><span style="color: #000000">2</span><span style="color: #000000">);<br />
</span><span style="color: #008080">37</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row2.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">2</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">38</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row2.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">two</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">39</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row2.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">2</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">This&nbsp;是&nbsp;two.</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">40</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">41</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;row3&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;sheet.createRow(</span><span style="color: #000000">3</span><span style="color: #000000">);<br />
</span><span style="color: #008080">42</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row3.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">3</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">43</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row3.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">哈哈</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">44</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;row3.createCell((</span><span style="color: #0000ff">short</span><span style="color: #000000">)&nbsp;</span><span style="color: #000000">2</span><span style="color: #000000">).setCellValue(</span><span style="color: #000000">"</span><span style="color: #000000">哈哈是pig。</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">45</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">46</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileOutputStream&nbsp;fileOutputStream&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">E:\\myExcel1.xls</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">47</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;workbook.write(fileOutputStream);<br />
</span><span style="color: #008080">48</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fileOutputStream.flush();<br />
</span><span style="color: #008080">49</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fileOutputStream.close();<br />
</span><span style="color: #008080">50</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">ok</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">51</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff">catch</span><span style="color: #000000">&nbsp;(Exception&nbsp;e)&nbsp;{<br />
</span><span style="color: #008080">52</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(</span><span style="color: #000000">"</span><span style="color: #000000">no&nbsp;create<img alt="" src="http://www.blogjava.net/Images/dot.gif" /></span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;e);<br />
</span><span style="color: #008080">53</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">54</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">55</span>&nbsp;<span style="color: #000000">}<br />
</span><span style="color: #008080">56</span>&nbsp;</div>
<br />
<span style="color: red"><strong>HSSFCell 的 sellCellValue(Stirng value) 方法不提倡使用，所以根据 API 改用sellCellValue(HSSFRiceTextString value)方法。</strong><span style="color: #000000">第二个方法</span><span style="color: #000000">具体用法见上例18－27行。</span></span> <br />
<br />
建出的Excel文件：<br />
<img height="279" alt="" src="http://www.blogjava.net/images/blogjava_net/yiqi801218/excelImg.jpg" width="478" border="0" /><br />
<br />
　　<span style="color: #0000ff">如果要创建的Excel文档已存在，那么将修改当前的Excel文档。</span> 
<img src ="http://www.blogjava.net/yiqi801218/aggbug/220049.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-08-04 22:24 <a href="http://www.blogjava.net/yiqi801218/archive/2008/08/04/220047.html#220049#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 学习集合与泛型</title><link>http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#214119</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Thu, 10 Jul 2008 13:50:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#214119</guid><description><![CDATA[五　泛型<br />
<br />
1，泛型中的&#8216;万用字符&#8217;：<br />
<br />
<strong><span style="color: red"><strong>&lt;T extends&nbsp; Comparable&gt;</strong> </span></strong>：表示T是实现了Comparable的类型（在&#8216;泛型&#8217;中extends表示extends或者implement）<br />
<br />
<strong style="color: red">&lt;? extends T&gt;</strong> ：表示必须是T或者T的父型<br />
<br />
ArrayList&lt;? extends Animal&gt; ：以实现或继承Animal的类型为元素类型的ArrayList<br />
<br />
2，相同功能的另一种语法：<br />
<br />
public <strong style="color: red">&lt;T extends Animal&gt;</strong> void takeThing(ArrayList&lt;T&gt; list);<br />
<br />
等同于：public void takeThing(ArrayList<strong style="color: red">&lt;? extends Animal&gt;</strong> list);
<img src ="http://www.blogjava.net/yiqi801218/aggbug/214119.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-07-10 21:50 <a href="http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#214119#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 学习集合与泛型</title><link>http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#213912</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Thu, 10 Jul 2008 04:07:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#213912</guid><description><![CDATA[四　使用TreeSet<br />
<br />
<p><font face="Times New Roman" size="3">　　防止重复又保持有序，可以用TreeSet。</font></p>
<p><font face="Times New Roman" size="3">例3－关于TreeSet 的例子，通过实现Comparator来达到排序。<br />
<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;collection;<br />
&nbsp;</span><span style="color: #000000">2</span><span style="color: #000000">&nbsp;<br />
&nbsp;</span><span style="color: #000000">3</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.Comparator;<br />
&nbsp;</span><span style="color: #000000">4</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.TreeSet;<br />
&nbsp;</span><span style="color: #000000">5</span><span style="color: #000000">&nbsp;<br />
&nbsp;</span><span style="color: #000000">6</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;TestTree&nbsp;{<br />
&nbsp;</span><span style="color: #000000">7</span><span style="color: #000000">&nbsp;&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;{<br />
&nbsp;</span><span style="color: #000000">8</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;TestTree().go();<br />
&nbsp;</span><span style="color: #000000">9</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #000000">10</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">11</span><span style="color: #000000">&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;go()&nbsp;{<br />
</span><span style="color: #000000">12</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">How&nbsp;Cats&nbsp;Work</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #000000">13</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">Remix&nbsp;you&nbsp;body</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #000000">14</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b3&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">Finding&nbsp;Emo</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #000000">15</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">16</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong><span style="color: red"><strong>SetComparator&nbsp;sc&nbsp;</strong><strong>=&nbsp;new</strong><strong>&nbsp;SetComparator();</strong></span></strong></span><span style="color: #000000"><br />
</span><span style="color: #000000">17</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TreeSet</span><span style="color: #000000">&lt;</span><span style="color: #000000">Book</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;tree&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;TreeSet</span><span style="color: #000000">&lt;</span><span style="color: #000000">Book</span><span style="color: #000000">&gt;</span><span style="color: #000000">(<strong style="color: red">sc</strong>);<br />
</span><span style="color: #000000">18</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">19</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b1);<br />
</span><span style="color: #000000">20</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b2);<br />
</span><span style="color: #000000">21</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b3);<br />
</span><span style="color: #000000">22</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b3);<br />
</span><span style="color: #000000">23</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(tree);<br />
</span><span style="color: #000000">24</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #000000">25</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">26</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><span style="color: #0000ff"><span style="color: red"><strong>class&nbsp;SetComparator&nbsp;implements&nbsp;Comparator&lt;Book&gt;</strong><strong>&nbsp;{<br />
27</strong><strong>&nbsp;<br />
28</strong><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
29&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int</strong><strong>&nbsp;compare(Book&nbsp;o1,&nbsp;Book&nbsp;o2)&nbsp;{<br />
30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return</strong><strong>&nbsp;o1.title.compareTo(o2.title);<br />
31</strong><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
32</strong><strong>&nbsp;<br />
</strong></span></span></strong><span style="color: #000000">33</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #000000">34</span><span style="color: #000000">&nbsp;}<br />
</span><span style="color: #000000">35</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">36</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">37</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;collection;<br />
</span><span style="color: #000000">38</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">39</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;Book&nbsp;{<br />
</span><span style="color: #000000">40</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;title;<br />
</span><span style="color: #000000">41</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">42</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;Book(String&nbsp;t)&nbsp;{<br />
</span><span style="color: #000000">43</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;title&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;t;<br />
</span><span style="color: #000000">44</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #000000">45</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">46</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #000000">47</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
</span><span style="color: #000000">48</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;String&nbsp;toString()&nbsp;{<br />
</span><span style="color: #000000">49</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;title;<br />
</span><span style="color: #000000">50</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #000000">51</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</span><span style="color: #000000">52</span><span style="color: #000000">&nbsp;}<br />
</span><span style="color: #000000">53</span><span style="color: #000000">&nbsp;</span></div>
<p><font face="Times New Roman" size="3">　　<br />
例4－关于TreeSet的第2个例子，通过实现Comparable来达到排序<br />
<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #008080">&nbsp;1</span>&nbsp;<span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;collection;<br />
</span><span style="color: #008080">&nbsp;2</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">&nbsp;3</span>&nbsp;<span style="color: #0000ff">import</span><span style="color: #000000">&nbsp;java.util.TreeSet;<br />
</span><span style="color: #008080">&nbsp;4</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">&nbsp;5</span>&nbsp;<span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;TestTree&nbsp;{<br />
</span><span style="color: #008080">&nbsp;6</span>&nbsp;<span style="color: #000000">&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;{<br />
</span><span style="color: #008080">&nbsp;7</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;TestTree().go();<br />
</span><span style="color: #008080">&nbsp;8</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">&nbsp;9</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">10</span>&nbsp;<span style="color: #000000">&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;go()&nbsp;{<br />
</span><span style="color: #008080">11</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b1&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">How&nbsp;Cats&nbsp;Work</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">12</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b2&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">Remix&nbsp;you&nbsp;body</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">13</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Book&nbsp;b3&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;Book(</span><span style="color: #000000">"</span><span style="color: #000000">Finding&nbsp;Emo</span><span style="color: #000000">"</span><span style="color: #000000">);<br />
</span><span style="color: #008080">14</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">15</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TreeSet</span><span style="color: #000000">&lt;</span><span style="color: #000000">Book</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;tree&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;TreeSet</span><span style="color: #000000">&lt;</span><span style="color: #000000">Book</span><span style="color: #000000">&gt;</span><span style="color: #000000">();<br />
</span><span style="color: #008080">16</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">17</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b1);<br />
</span><span style="color: #008080">18</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b2);<br />
</span><span style="color: #008080">19</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b3);<br />
</span><span style="color: #008080">20</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tree.add(b3);<br />
</span><span style="color: #008080">21</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(tree);<br />
</span><span style="color: #008080">22</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">23</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">24</span>&nbsp;<span style="color: #000000">}<br />
</span><span style="color: #008080">25</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">26</span>&nbsp;<span style="color: #0000ff">package</span><span style="color: #000000">&nbsp;collection;<br />
</span><span style="color: #008080">27</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">28</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">29</span>&nbsp;<span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span>&nbsp;Book&nbsp;<strong><span style="color: red"><strong>implements</strong><strong>&nbsp;Comparable&lt;Book</strong><strong>&gt;</strong>&nbsp;</span></strong></span><span>{<br />
</span><span style="color: #008080">30</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;title;<br />
</span><span style="color: #008080">31</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">32</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;Book(String&nbsp;t)&nbsp;{<br />
</span><span style="color: #008080">33</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;title&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;t;<br />
</span><span style="color: #008080">34</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">35</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">36</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: red"><strong>@Override<br />
37&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;compareTo(Book&nbsp;o)&nbsp;{<br />
38&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;title.compareTo(o.title);<br />
39&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</strong></span></span><span style="color: #008080">40</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">41</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
</span><span style="color: #008080">42</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;String&nbsp;toString()&nbsp;{<br />
</span><span style="color: #008080">43</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;title;<br />
</span><span style="color: #008080">44</span>&nbsp;<span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: #008080">45</span>&nbsp;<span style="color: #000000"><br />
</span><span style="color: #008080">46</span>&nbsp;<span style="color: #000000">}</span></div>
<p><br />
<font face="Times New Roman" size="3"><br />
　　TreeSet的排序功能也是通过实现<strong style="color: red">Comparator或Comparable</strong>来完成的。要么是TreeSet集合中的元素实现了Comparable，要么是用重载的Comparator作为参数来创建TreeSet。<br />
</font><br />
</font><br />
</font></p>
<img src ="http://www.blogjava.net/yiqi801218/aggbug/213912.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-07-10 12:07 <a href="http://www.blogjava.net/yiqi801218/archive/2008/07/10/213484.html#213912#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 建 English 项目遇到的问题</title><link>http://www.blogjava.net/yiqi801218/archive/2008/06/26/205458.html#210965</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Thu, 26 Jun 2008 14:36:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/06/26/205458.html#210965</guid><description><![CDATA[基本功能补充：<br><br>1　单词表的分页；<br>2　insert / update 后的定位；<br>3　index 页的动态截选（最后做）<img src ="http://www.blogjava.net/yiqi801218/aggbug/210965.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-06-26 22:36 <a href="http://www.blogjava.net/yiqi801218/archive/2008/06/26/205458.html#210965#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 学习JSP（二）－－JSP</title><link>http://www.blogjava.net/yiqi801218/archive/2008/06/25/210641.html#210642</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Wed, 25 Jun 2008 10:16:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/06/25/210641.html#210642</guid><description><![CDATA[二　JSP的<span style="color: red"><strong>内建对象</strong></span> <br />
<br />
<table style="border-collapse: collapse; word-wrap: break-word" cellspacing="0" cellpadding="4" width="680" align="center" border="0">
    <tbody>
        <tr>
            <td height="10"></td>
        </tr>
        <tr>
            <td style="margin: 8px; line-height: 150%" width="680">
            <p style="margin: 8px; line-height: 150%">
            <p>① out - javax.servlet.jsp.jspWriter<br />
            &nbsp;&nbsp; out对象用于把结果输出到网页上。</p>
            <p>方法：<br />
            1. void clear() ;<br />
            &nbsp;&nbsp; 清除输出缓冲区的内容，但是不输出到客户端。</p>
            <p>2. void clearBuffer() ;<br />
            &nbsp;&nbsp; 清除输出缓冲区的内容，并输出到客户端。</p>
            <p>3. void close() ;<br />
            &nbsp;&nbsp; 关闭输出流，清除所有内容。</p>
            <p>4. void flush() ;<br />
            &nbsp;&nbsp; 输出缓冲区里面的数据。</p>
            <p>5. int getBufferSize() ;<br />
            &nbsp;&nbsp; 获取以kb为单位的目前缓冲区大小。</p>
            <p>6. int getRemaining() ;<br />
            &nbsp;&nbsp; 获取以kb为单位的缓冲区中未被占用的空间大小。</p>
            <p>7. boolean isAutoFlush() ;<br />
            &nbsp;&nbsp; 是否自动刷新缓冲区。</p>
            <p>8. void newLine() ;<br />
            &nbsp;&nbsp; 输出一个换行字符。</p>
            <p>9. void print( boolean b ) ;<br />
            &nbsp;&nbsp; void print( char c ) ;<br />
            &nbsp;&nbsp; void print( char[] s ) ;<br />
            &nbsp;&nbsp; void print( double d ) ;<br />
            &nbsp;&nbsp; void print( float f ) ;<br />
            &nbsp;&nbsp; void print( int i ) ;<br />
            &nbsp;&nbsp; void print( long l ) ;<br />
            &nbsp;&nbsp; void print( Object obj ) ;<br />
            &nbsp;&nbsp; void print( String s ) ;<br />
            &nbsp;&nbsp; 将指定类型的数据输出到Http流，不换行。</p>
            <p>10. void println( boolean b ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( char c ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( char[] s ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( double d ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( float f ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( int i ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( long l ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( Object obj ) ;<br />
            &nbsp;&nbsp;&nbsp; void println( String s ) ;<br />
            &nbsp;&nbsp;&nbsp; 将指定类型的数据输出到Http流，并输出一个换行符。<br />
            &nbsp;&nbsp;&nbsp; <br />
            11. Appendable append( char c ) ;<br />
            &nbsp;&nbsp;&nbsp; Appendable append( CharSequence cxq, int start, int end ) ;<br />
            &nbsp;&nbsp;&nbsp; Appendable append( CharSequence cxq ) ;<br />
            &nbsp;&nbsp;&nbsp; 将一个字符或者实现了CharSequence接口的对象添加到输出流的后面。</p>
            <p>成员：<br />
            int DEFAULT_BUFFER = 0&nbsp;&nbsp;&nbsp; - 缺省缓冲区大小<br />
            int NO_BUFFER = -1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - writer是否处于缓冲输出状态<br />
            int UNBOUNDED_BUFFER = -2 - 是否限制缓冲区大小</p>
            <p><br />
            ② request - javax.servlet.http.HttpServletRequest<br />
            &nbsp;&nbsp; request对象包含所有请求的信息，如请求的来源、标头、cookies和请求相关的参数值等。</p>
            <p>方法：<br />
            1. Object getAttribute( String name ) ;<br />
            &nbsp;&nbsp; 返回由name指定的属性值，该属性不存在时返回null。</p>
            <p>2. Enumeration getAttributeNames() ;<br />
            &nbsp;&nbsp; 返回request对象的所有属性名称的集合。</p>
            <p>3. String getAuthType() ;<br />
            &nbsp;&nbsp; 返回用来保护servlet的认证方法的名称，未受保护时返回null。</p>
            <p>4. String getCharacterEncoding() ;<br />
            &nbsp;&nbsp; 返回请求中的字符编码方法，可以在response对象中设置。</p>
            <p>5. int getContentLength() ;<br />
            &nbsp;&nbsp; 返回请求的BODY的长度，不能确定长度时返回-1。可以在response中设置。</p>
            <p>6. String getContentType() ;<br />
            &nbsp;&nbsp; 返回在response中定义的内容类型。</p>
            <p>7. String getContentPath() ;<br />
            &nbsp;&nbsp; 返回请求的路径。</p>
            <p>8. Cookie[] getCookies() ;<br />
            &nbsp;&nbsp; 返回客户端所有的Cookie的数组。</p>
            <p>9. Enumeration getHeaderNames() ;<br />
            &nbsp;&nbsp; 返回所有HTTP头的名称的集合。</p>
            <p>10. Enumeration getHeaders( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回指定HTTP头的所有值的集合。</p>
            <p>11. String getHeader( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回指定名称的HTTP头的信息。</p>
            <p>12. long getDateHeader( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回指定名称的Data类型的HTTP头的信息。</p>
            <p>13. int getIntHeader( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回指定名称的Int类型的HTTP头的信息。</p>
            <p>14. ServletInputStream getInputStream() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求的输入流。</p>
            <p>15. Locale getLocale() ;<br />
            &nbsp;&nbsp;&nbsp; 返回当前页的Locale对象，可以在response中设定。</p>
            <p>16. Enumeration getLocales() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求中所有的Locale对象的集合。</p>
            <p>17. String getLocalName() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应请求的服务器端主机名。</p>
            <p>18. String getLocalAddr() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应请求的服务器端地址。</p>
            <p>19. int getLocalPort() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应请求的服务器端端口</p>
            <p>20. String getMethod() ;<br />
            &nbsp;&nbsp;&nbsp; 获取客户端向服务器端发送请求的方法(GET、POST)。</p>
            <p>21. String getParameter( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 获取客户端发送给服务器端的参数值。</p>
            <p>22. Map getParameterMap() ;<br />
            &nbsp;&nbsp;&nbsp; 该方法返回包含请求中所有参数的一个Map对象。</p>
            <p>23. Enumeration getParameterNames() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求中所有参数的集合。</p>
            <p>24. String[] getParameterValues( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 获得请求中指定参数的所有值。</p>
            <p>25. String getQueryString() ;<br />
            &nbsp;&nbsp;&nbsp; 返回get方法传递的参数字符串，该方法不分解出单独的参数。</p>
            <p>26. String getPathInfo() ;<br />
            &nbsp;&nbsp;&nbsp; 取出请求中处于ServletPath和QueryString之间的额外信息。</p>
            <p>27. String getPathTranslated() ;<br />
            &nbsp;&nbsp;&nbsp; 返回用getPathInfo()方法取得的路径信息的实际路径。</p>
            <p>28. String getProtocol() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求使用的协议。可以是HTTP1.1或者HTTP1.0。</p>
            <p>29. BufferedReader getReader() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求的输入流对应的Reader对象，该方法和getInputStream()方法在一个页面中只能调用一个。</p>
            <p>30. String getRemoteAddr() ;<br />
            &nbsp;&nbsp;&nbsp; 获取发出请求的客户端IP地址。</p>
            <p>31. String getRemoteHost() ;<br />
            &nbsp;&nbsp;&nbsp; 获取发出请求的客户端主机名</p>
            <p>32. String getRemoteUser() ;<br />
            &nbsp;&nbsp;&nbsp; 返回经过客户端验证的用户名，未经验证返回null。</p>
            <p>33. int getRemotePort() ;<br />
            &nbsp;&nbsp;&nbsp; 返回发出请求的客户端主机端口。</p>
            <p>34. String getRealPath( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回给定虚拟路径的物理路径。</p>
            <p>35. RequestDispatcher getRequestDispatcher( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 按给定的路径生成资源转向处理适配器对象。</p>
            <p>36. String getRequestedSessionId() ;<br />
            &nbsp;&nbsp;&nbsp; 返回请求的session的标识。</p>
            <p>37. String RequestURI() ;<br />
            &nbsp;&nbsp;&nbsp; 返回发出请求的客户端地址，但是不包括请求的参数字符串。</p>
            <p>38. StringBuffer getRequestURI() ;<br />
            &nbsp;&nbsp;&nbsp; 返回响应请求的服务器端地址</p>
            <p>39. String getScheme() ;<br />
            &nbsp;&nbsp;&nbsp; 获取协议名称，缺省值为HTTP协议。</p>
            <p>40. String getServerName() ;<br />
            &nbsp;&nbsp;&nbsp; 返回响应请求的服务器名称。</p>
            <p>41. String getServletPath() ;<br />
            &nbsp;&nbsp;&nbsp; 获取客户端所请求的脚本文件的文件路径。</p>
            <p>42. int getServerPort() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应请求的服务器端主机端口号。</p>
            <p>43. void removeAttribute( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 在属性列表中删除指定名称的属性。</p>
            <p>44. void setAttribute( String name, Object value ) ;<br />
            &nbsp;&nbsp;&nbsp; 在属性列表中添加/删除指定的属性。</p>
            <p>45. void setCharacterEncoding( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置请求的字符编码格式。</p>
            <p>46. HttpSession getSession() ;<br />
            &nbsp;&nbsp;&nbsp; HttpSession getSession( boolean create ) ;<br />
            &nbsp;&nbsp;&nbsp; 获取session，如果create为true，在无session的情况下创建一个。<br />
            &nbsp;&nbsp;&nbsp; <br />
            47. boolean isRequestedSessionIdFromCookie() ;<br />
            &nbsp;&nbsp;&nbsp; 检查请求的会话ID是否为通过Cookie传入。</p>
            <p>48. boolean isRequestedSessionIdFromURL() ;<br />
            &nbsp;&nbsp;&nbsp; 检查请求的会话ID是否为通过URL传入。</p>
            <p>49. boolean isRequestedSessionIdValid() ;<br />
            &nbsp;&nbsp;&nbsp; 检查请求的会话ID是否仍然有效。</p>
            <p>50. boolean isSecure() ;<br />
            &nbsp;&nbsp;&nbsp; 检查请求是否使用安全链接，如果HTTPS等。</p>
            <p>51. boolean isUserInRole( String role ) ;<br />
            &nbsp;&nbsp;&nbsp; 检查已经通过验证的用户是否在是role所指定的角色。</p>
            <p>52. Principal getUserPrincipal() ;<br />
            &nbsp;&nbsp;&nbsp; 返回包含用户登陆名的一个java.security.Principal对象。</p>
            <p>成员：<br />
            String BASIC_AUTH = "BASIC"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - <br />
            String CLIENT_CERT_AUTH = "CLIENT_CERT" - <br />
            String DIGEST_AUTH = "DIGEST"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - <br />
            String FORM_AUTH = "FORM"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - </p>
            <p><br />
            ③ response - javax.servlet.http.HttpServletResponse<br />
            &nbsp;&nbsp; response对象主要将JSP容器处理后的结果传回到客户端。</p>
            <p>方法：<br />
            1. void addCookie( Cookie cookie ) ;<br />
            &nbsp;&nbsp; 添加一个Cookie对象，保存客户端信息。</p>
            <p>2. void addDateHeader( String name, long value ) ;<br />
            &nbsp;&nbsp; 添加一个日期类型的HTTP头信息，覆盖同名的HTTP头信息。</p>
            <p>3. void addHeader( String name, String value ) ;<br />
            &nbsp;&nbsp; 添加一个HTTP头，覆盖同名的旧HTTP头。</p>
            <p>4. void addIntHeader( String name, int value ) ;<br />
            &nbsp;&nbsp; 添加一个整型的HTTP头，覆盖同名的旧HTTP头。</p>
            <p>5. boolean containsHeader( String name ) ;<br />
            &nbsp;&nbsp; 判断指定的HTTP头是否存在。</p>
            <p>6. String encodeRedirectURL( String url ) ;<br />
            &nbsp;&nbsp; 对sendRedirect()方法使用的URL进行编码。</p>
            <p>7. String encodeURL( String url ) ;<br />
            &nbsp;&nbsp; 将URL予以编码，回传包含session ID的URL。<br />
            &nbsp;&nbsp; <br />
            8. void flushBuffer() ;<br />
            &nbsp;&nbsp; 强制把当前缓冲区的内容发送到客户端。</p>
            <p>9. int getBufferSize() ;<br />
            &nbsp;&nbsp; 取得以kb为单位的缓冲区大小。</p>
            <p>10. String getCharacterEncoding() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应的字符编码格式。</p>
            <p>11. String getContentType() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应的类型。</p>
            <p>12. Locale getLocale() ;<br />
            &nbsp;&nbsp;&nbsp; 获取响应的Locale对象。</p>
            <p>13. ServletOutputStream getOutputStream() ;<br />
            &nbsp;&nbsp;&nbsp; 返回客户端的输出流对象。</p>
            <p>14. PrintWriter getWriter() ;<br />
            &nbsp;&nbsp;&nbsp; 获取输出流对应的writer对象。</p>
            <p>15. boolean isCommitted() ;<br />
            &nbsp;&nbsp;&nbsp; 判断服务器端是否已经将数据输出到客户端。</p>
            <p>16. void reset() ;<br />
            &nbsp;&nbsp;&nbsp; 清空buffer中的所有内容。</p>
            <p>17. void resetBuffer() ;<br />
            &nbsp;&nbsp;&nbsp; 情况buffer中所有的内容，但是保留HTTP头和状态信息。</p>
            <p>18. void sendError( int xc, String msg ) ;<br />
            &nbsp;&nbsp;&nbsp; void sendError( int xc ) ;<br />
            &nbsp;&nbsp;&nbsp; 发送错误，包括状态码和错误信息。</p>
            <p>19. void sendRedirect( String locationg ) ;<br />
            &nbsp;&nbsp;&nbsp; 把响应发送到另外一个位置进行处理。</p>
            <p>20. void setBufferSize( int size ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置以kb为单位的缓冲区大小。</p>
            <p>21. void setCharacterEncoding( String charset ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置响应使用的字符编码格式。</p>
            <p>22. void setContentLength( int length ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置响应的BODY长度。</p>
            <p>23. void setContentType( String type ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置响应的类型。</p>
            <p>24. void setDateHeader( String name, long value ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置指定名称的Data类型的HTTP头的值。</p>
            <p>25. void setHeader( String name, String value ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置指定名称的HTTP头的值。</p>
            <p>26. void setIntHeader( String name, int value ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置指定名称的int类型的HTTP头的值。</p>
            <p>27. void setStatus( int xc ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置响应状态码，新值会覆盖当前值。</p>
            <p>成员(HTTP状态码)：<br />
            int SC_CONTINUE = 100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_SWITCHING_PROTOCOLS = 101<br />
            int SC_OK = 200&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_NON_AUTHORITATIVE_INFORMATION = 203<br />
            int SC_ACCEPTED = 202&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_CREATED = 201<br />
            int SC_NO_CONTENT = 204&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_RESET_CONTENT = 205<br />
            int SC_PARTIAL_CONTENT = 206&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_MULTIPLE_CHOICES = 300<br />
            int SC_MOVED_PERMANENTLY = 301&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_MOVED_TEMPORARILY = 302<br />
            int SC_FOUND = 302&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_SEE_OTHER = 303<br />
            int SC_NOT_MODIFIED = 304&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_USE_PROXY = 305<br />
            int SC_TEMPORARY_REDIRECT = 307&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_BAD_REQUEST = 400<br />
            int SC_UNAUTHORIZED = 401&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_PAYMENT_REQUIRED = 402<br />
            int SC_FORBIDDEN = 403&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_NOT_FOUND = 404<br />
            int SC_METHOD_NOT_ALLOWED = 405&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_NOT_ACCEPTABLE = 406<br />
            int SC_PROXY_AUTHENTICATION_REQUIRED = 407 int SC_REQUEST_TIMEOUT = 408<br />
            int SC_CONFLICT = 409&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_GONE = 410<br />
            int SC_LENGTH_REQUIRED = 411&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_PRECONDITION_FAILED = 412<br />
            int SC_REQUEST_ENTITY_TOO_LARGE = 413&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_REQUEST_URI_TOO_LONG = 414<br />
            int SC_UNSUPPORTED_MEDIA_TYPE = 415&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 416<br />
            int SC_EXPECTATION_FAILED = 417&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_INTERNAL_SERVER_ERROR = 500<br />
            int SC_NOT_IMPLEMENTED = 501&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_BAD_GATEWAY = 502<br />
            int SC_SERVICE_UNAVAILABLE = 503&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int SC_GATEWAY_TIMEOUT = 504<br />
            int SC_HTTP_VERSION_NOT_SUPPORTED = 505</p>
            <p><br />
            ④ session - javax.servlet.http.HttpSession<br />
            &nbsp;&nbsp; session对象表示目前个别用户的会话状态，用来识别每个用户。</p>
            <p>方法：<br />
            1. Object getAttribute( String name ) ;<br />
            &nbsp;&nbsp; 获取与指定名字相关联的session属性值。</p>
            <p>2. Enumeration getAttributeNames() ;<br />
            &nbsp;&nbsp; 取得session内所有属性的集合。</p>
            <p>3. long getCreationTime() ;<br />
            &nbsp;&nbsp; 返回session的创建时间，最小单位千分之一秒。</p>
            <p>4. String getId() ;<br />
            &nbsp;&nbsp; 取得session标识。</p>
            <p>5. long getLastAccessedTime() ;<br />
            &nbsp;&nbsp; 返回与当前session相关的客户端最后一次访问的时间，由1970-01-01算起，单位毫秒。</p>
            <p>6. int getMaxInactiveInterval( int interval ) ;<br />
            &nbsp;&nbsp; 返回总时间，以秒为单位，表示session的有效时间(session不活动时间)。-1为永不过期。</p>
            <p>7. ServletContext getServletContext() ;<br />
            &nbsp;&nbsp; 返回一个该JSP页面对应的ServletContext对象实例。</p>
            <p>8. HttpSessionContext getSessionContext() ;<br />
            &nbsp;&nbsp; </p>
            <p>9. Object getValue( String name ) ;<br />
            &nbsp;&nbsp; 取得指定名称的session变量值，不推荐使用。</p>
            <p>10. String[] getValueNames() ;<br />
            &nbsp;&nbsp;&nbsp; 取得所有session变量的名称的集合，不推荐使用。</p>
            <p>11. void invalidate() ;<br />
            &nbsp;&nbsp;&nbsp; 销毁这个session对象。</p>
            <p>12. boolean isNew() ;<br />
            &nbsp;&nbsp;&nbsp; 判断一个session是否由服务器产生，但是客户端并没有使用。</p>
            <p>13. void pubValue( String name, Object value ) ;<br />
            &nbsp;&nbsp;&nbsp; 添加一个session变量，不推荐使用。</p>
            <p>14. void removeValue( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 移除一个session变量的值，不推荐使用。</p>
            <p>15. void setAttribute( String name, String value ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置指定名称的session属性值。</p>
            <p>16. void setMaxInactiveInterval( int interval ) ;<br />
            &nbsp;&nbsp;&nbsp; 设置session的有效期。</p>
            <p>17. void removeAttribute( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 移除指定名称的session属性。</p>
            <p><br />
            ⑤ pageContext - javax.servlet.jsp.PageContext<br />
            &nbsp;&nbsp; pageContext对象存储本JSP页面相关信息，如属性、内建对象等。</p>
            <p>方法：<br />
            1. void setAttribute( String name, Object value, int scope ) ;<br />
            &nbsp;&nbsp; void setAttribute( String name, Object value ) ;<br />
            &nbsp;&nbsp; 在指定的共享范围内设置属性。</p>
            <p>2. Object getAttribute( String name, int scope ) ;<br />
            &nbsp;&nbsp; Object getAttribute( String name ) ;<br />
            &nbsp;&nbsp; 取得指定共享范围内以name为名字的属性值。</p>
            <p>3. Object findAttribute( String name ) ;<br />
            &nbsp;&nbsp; 按页面、请求、会话和应用程序共享范围搜索已命名的属性。</p>
            <p>4. void removeAttribute( String name, int scope ) ;<br />
            &nbsp;&nbsp; void removeAttribute( String name ) ;<br />
            &nbsp;&nbsp; 移除指定名称和共享范围的属性。</p>
            <p>5. void forward( String url ) ;<br />
            &nbsp;&nbsp; 将页面导航到指定的URL。</p>
            <p>6. Enumeration getAttributeNamesScope( int scope ) ;<br />
            &nbsp;&nbsp; 取得指定共享范围内的所有属性名称的集合。</p>
            <p>7. int getAttributeScope( String name ) ;<br />
            &nbsp;&nbsp; 取得指定属性的共享范围。</p>
            <p>8. ErrorData getErrorDate() ;<br />
            &nbsp;&nbsp; 取得页面的errorData对象。</p>
            <p>9. Exception getException() ;<br />
            &nbsp;&nbsp; 取得页面的exception对象。</p>
            <p>10. ExpressionEvaluator getExpressionEvaluator() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的expressionEvaluator对象。</p>
            <p>11. JspWriter getOut() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的out对象。</p>
            <p>12. Object getPage() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的page对象。</p>
            <p>13. ServletRequest getRequest() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的request对象。</p>
            <p>14. ServletResponse getResponse() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的response对象。</p>
            <p>15. ServletConfig getConfig() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的config对象。</p>
            <p>16. ServletContext getServletContext() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的servletContext对象。</p>
            <p>17. HttpSession getSession() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的session对象。</p>
            <p>18. VariableResolver getVariableResolver() ;<br />
            &nbsp;&nbsp;&nbsp; 取得页面的variableResolver对象。</p>
            <p>19. void include( String url, boolean flush ) ;<br />
            &nbsp;&nbsp;&nbsp; void include( String url ) ;<br />
            &nbsp;&nbsp;&nbsp; 包含其他的资源，并指定是否自动刷新。</p>
            <p>20. void release() ;<br />
            &nbsp;&nbsp;&nbsp; 重置pageContext内部状态，释放所有内部引用。</p>
            <p>21. void initialize( Servlet servlet, ServletRequest request, ServletResponse response,<br />
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String errorPageURL, boolean needSession, int bufferSize, boolean autoFlush ) ;<br />
            &nbsp;&nbsp;&nbsp; 初始化未经初始化的pageContext对象。</p>
            <p>22. BodyContext pushBody() ;<br />
            &nbsp;&nbsp;&nbsp; BodyContext pushBody( Writer writer ) ;<br />
            &nbsp;&nbsp;&nbsp; 保存当前的out对象，并更新pageContext中page范围内的out对象。</p>
            <p>23. JspWrite popBody() ;<br />
            &nbsp;&nbsp;&nbsp; 取出由pushBody()方法保存的out对象。</p>
            <p>24. void handlePageException( Exception e ) ;<br />
            &nbsp;&nbsp;&nbsp; void handlePageException( Thrwoable t ) ;<br />
            &nbsp;&nbsp;&nbsp; </p>
            <p>成员：<br />
            int PAGE_SCOPE = 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - 页面共享范围<br />
            int REQUEST_SCOPE = 2&nbsp;&nbsp;&nbsp;&nbsp; - 请求共享范围<br />
            int SESSION_SCOPE = 3&nbsp;&nbsp;&nbsp;&nbsp; - 会话共享范围<br />
            int APPLICATION_SCOPE = 4 - 应用程序共享范围<br />
            String PAGE = "javax.servlet.jsp.jspPage"<br />
            String PAGECONTEXT = "javax.servlet.jsp.jspPageContext"<br />
            String REQUEST = "javax.servlet.jsp.jspRequest"<br />
            String RESPONSE = "javax.servlet.jsp.jspResponse"<br />
            String CONFIG = "javax.servlet.jsp.jspConfig"<br />
            String SESSION = "javax.servlet.jsp.jspSession"<br />
            String OUT = "javax.servlet.jsp.jspOut"<br />
            String APPLICATION = "javax.servlet.jsp.jspApplication"<br />
            String EXCEPTION = "javax.servlet.jsp.jspException"</p>
            <p><br />
            ⑥ application - javax.servlet.ServletContext<br />
            &nbsp;&nbsp; application主要功用在于取得或更改Servlet的设定。</p>
            <p>方法：<br />
            1. Object getAttribute( String name ) ;<br />
            &nbsp;&nbsp; 返回由name指定的application属性。</p>
            <p>2. Enumeration getAttributes() ;<br />
            &nbsp;&nbsp; 返回所有的application属性。</p>
            <p>3. ServletContext getContext( String uripath ) ;<br />
            &nbsp;&nbsp; 取得当前应用的ServletContext对象。</p>
            <p>4. String getInitParameter( String name ) ;<br />
            &nbsp;&nbsp; 返回由name指定的application属性的初始值。</p>
            <p>5. Enumeration getInitParameters() ;<br />
            &nbsp;&nbsp; 返回所有的application属性的初始值的集合。</p>
            <p>6. int getMajorVersion() ;<br />
            &nbsp;&nbsp; 返回servlet容器支持的Servlet API的版本号。</p>
            <p>7. String getMimeType( String file ) ;<br />
            &nbsp;&nbsp; 返回指定文件的类型，未知类型返回null。一般为"text/html"和"image/gif"。</p>
            <p>8. int getMinorVersion() ;<br />
            &nbsp;&nbsp; 返回servlet容器支持的Servlet API的副版本号。</p>
            <p>9. String getRealPath( String path ) ;<br />
            &nbsp;&nbsp; 返回给定虚拟路径所对应物理路径。</p>
            <p>10. RequestDispatcher getNamedDispatcher( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 为指定名字的Servlet对象返回一个RequestDispatcher对象的实例。</p>
            <p>11. RequestDispatcher getRequestDispatcher( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回一个RequestDispatcher对象的实例。</p>
            <p>12. URL getResource( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回指定的资源路径对应的一个URL对象实例，参数要以"/"开头。</p>
            <p>13. InputStream getResourceAsStream( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回一个由path指定位置的资源的InputStream对象实例。</p>
            <p>14. Set getResourcePaths( String path ) ;<br />
            &nbsp;&nbsp;&nbsp; 返回存储在web-app中所有资源路径的集合。</p>
            <p>15. String getServerInfo() ;<br />
            &nbsp;&nbsp;&nbsp; 取得应用服务器版本信息。</p>
            <p>16. Servlet getServlet( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 在ServletContext中检索指定名称的servlet。</p>
            <p>17. Enumeration getServlets() ;<br />
            &nbsp;&nbsp;&nbsp; 返回ServletContext中所有servlet的集合。</p>
            <p>18. String getServletContextName() ;<br />
            &nbsp;&nbsp;&nbsp; 返回本web应用的名称。</p>
            <p>19. Enumeration getServletContextNames() ;<br />
            &nbsp;&nbsp;&nbsp; 返回ServletContext中所有servlet的名称集合。</p>
            <p>20. void log( Exception ex, String msg ) ;<br />
            &nbsp;&nbsp;&nbsp; void log( String msg, Throwable t ) ;<br />
            &nbsp;&nbsp;&nbsp; void log( String msg ) ;<br />
            &nbsp;&nbsp;&nbsp; 把指定的信息写入servlet log文件。</p>
            <p>21. void removeAttribute( String name ) ;<br />
            &nbsp;&nbsp;&nbsp; 移除指定名称的application属性。</p>
            <p>22. void setAttribute( String name, Object value ) ;<br />
            &nbsp;&nbsp;&nbsp; 设定指定的application属性的值。</p>
            <p><br />
            ⑦ config - javax.servlet.ServletConfig<br />
            &nbsp;&nbsp; config对象用来存放Servlet初始的数据结构。</p>
            <p>方法：<br />
            1. String getInitParameter( String name ) ;<br />
            &nbsp;&nbsp; 返回名称为name的促使参数的值。</p>
            <p>2. Enumeration getInitParameters() ;<br />
            &nbsp;&nbsp; 返回这个JSP所有的促使参数的名称集合。</p>
            <p>3. ServletContext getContext() ;<br />
            &nbsp;&nbsp; 返回执行者的servlet上下文。</p>
            <p>4. String getServletName() ;<br />
            &nbsp;&nbsp; 返回servlet的名称。</p>
            <p><br />
            ⑧ exception - java.lang.Throwable<br />
            &nbsp;&nbsp; 错误对象，只有在JSP页面的page指令中指定isErrorPage="true"后，才可以在本页面使用exception对象。</p>
            <p>方法：<br />
            1. Throwable fillInStackTrace() ;<br />
            &nbsp;&nbsp; 将当前stack信息记录到exception对象中。</p>
            <p>2. String getLocalizedMessage() ;<br />
            &nbsp;&nbsp; 取得本地语系的错误提示信息。</p>
            <p>3. String getMessage()<br />
            &nbsp;&nbsp; 取得错误提示信息。</p>
            <p>4. StackTrackElement[] getStackTrace() ;<br />
            &nbsp;&nbsp; 返回对象中记录的call stack track信息。</p>
            <p>5. Throwable initCause( Throwable cause ) ;<br />
            &nbsp;&nbsp; 将另外一个异常对象嵌套进当前异常对象中。<br />
            &nbsp;&nbsp; <br />
            6. Throwable getCause() ;<br />
            &nbsp;&nbsp; 取出嵌套在当前异常对象中的异常。</p>
            <p>7. void printStackTrace() ;<br />
            &nbsp;&nbsp; void printStackTrace( printStream s ) ;<br />
            &nbsp;&nbsp; void printStackTrace( printWriter s ) ;<br />
            &nbsp;&nbsp; 打印出Throwable及其call stack trace信息。</p>
            <p>8. void setStackTrace( StackTraceElement[] stackTrace )<br />
            &nbsp;&nbsp; 设置对象的call stack trace信息。</p>
            <p><br />
            ⑨ page - javax.servlet.jsp.HttpJspPage<br />
            &nbsp;&nbsp; page对象代表JSP对象本身，或者说代表编译后的servlet对象，<br />
            &nbsp;&nbsp; 可以用( (javax.servlet.jsp.HttpJspPage)page )来取用它的方法和属性。</p>
            </td>
        </tr>
    </tbody>
</table>
<br />
<img src ="http://www.blogjava.net/yiqi801218/aggbug/210642.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-06-25 18:16 <a href="http://www.blogjava.net/yiqi801218/archive/2008/06/25/210641.html#210642#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 学习 JSP－－Servlet</title><link>http://www.blogjava.net/yiqi801218/archive/2008/06/25/210355.html#210562</link><dc:creator>BlueSunshine</dc:creator><author>BlueSunshine</author><pubDate>Wed, 25 Jun 2008 06:51:00 GMT</pubDate><guid>http://www.blogjava.net/yiqi801218/archive/2008/06/25/210355.html#210562</guid><description><![CDATA[<p>六　Http的一个会话对象<span style="color: red"><strong>Session</strong></span><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 id="Codehighlighter1_45_255_Open_Image" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_45_255_Closed_Image" style="display: none" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">class</span><span style="color: #000000">&nbsp;SomeServlet&nbsp;</span><span style="color: #0000ff">extends</span><span style="color: #000000">&nbsp;HttpServlet&nbsp;</span><span id="Codehighlighter1_45_255_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_45_255_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;@Override<br />
<img id="Codehighlighter1_169_253_Open_Image" src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_169_253_Closed_Image" style="display: none" src="http://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">protected</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;service(HttpServletRequest&nbsp;req,&nbsp;HttpServletResponse&nbsp;resp)&nbsp;</span><span style="color: #0000ff">throws</span><span style="color: #000000">&nbsp;ServletException,&nbsp;IOException&nbsp;</span><span id="Codehighlighter1_169_253_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_169_253_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;HttpSession&nbsp;session&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;req.getSession();<br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;session.setAttribute(</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">chh</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;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
<img src ="http://www.blogjava.net/yiqi801218/aggbug/210562.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yiqi801218/" target="_blank">BlueSunshine</a> 2008-06-25 14:51 <a href="http://www.blogjava.net/yiqi801218/archive/2008/06/25/210355.html#210562#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>