﻿<?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-备忘录</title><link>http://www.blogjava.net/103335460/</link><description>记录学习过、研究过、使用过和总结过的内容，以备不时之需</description><language>zh-cn</language><lastBuildDate>Mon, 11 May 2026 21:52:01 GMT</lastBuildDate><pubDate>Mon, 11 May 2026 21:52:01 GMT</pubDate><ttl>60</ttl><item><title>（原创）RHEL 6.3安装NVIDIA官方驱动</title><link>http://www.blogjava.net/103335460/articles/395197.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Wed, 06 Feb 2013 17:25:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/395197.html</guid><wfw:comment>http://www.blogjava.net/103335460/comments/395197.html</wfw:comment><comments>http://www.blogjava.net/103335460/articles/395197.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/103335460/comments/commentRss/395197.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/103335460/services/trackbacks/395197.html</trackback:ping><description><![CDATA[一、本地环境：<br /><div>1、显卡：ASUS ENGTX460<br />GPU品牌：NVIDIA<br /><div><div>GPU型号：nVIDIA GeForce GTX 460</div><br />2、显示器：Samsung S24A350H<br /><div>最佳分辨率：1920*1080</div><div>水平刷新率：30 kHz ~ 82 kHz<div>垂直刷新率：55 到 75 赫兹</div></div><br />3、操作系统：Red Hat Enterprise Linux 6.3 (x86)<br /><br />二、安装步骤<br />1、安装Linux系统<br />下载RHEL6.3的ISO文件，刻录成系统光盘后，进行安装，具体安装过程略。<br /><br />2、Linux系统的相关包<br />安装驱动，需要kernel相关包，和一些编译源码的工具包：<br />kernel、kernel-devel、kernel-doc、kernel-headers、gcc\*、glibc\*、glibc-\*<br /><br />3、下载NVIDIA官方驱动<br />登录NVIDIA官方网站http://www.nvidia.com，下载对应的显卡驱动NVIDIA-Linux-x86-310.32.run，<br />本人的情况是：GeForce --&gt; GeForce 400 Series --&gt; GeForce GTX 460 --&gt; Linux 32-bit --&gt; English(US)，当前最新版本是310.32<br /><br />4、关闭Linux的自带驱动<br />REHL6.3默认安装了第三方开源nvidia驱动nouveau，需要通过加入黑名单将其禁用掉，<br />使用vi打开/etc/modprobe.d/blacklist.conf，在内容末尾增加一行：blacklist nouveau<br />保存并退出<br /><br />5、Linux系统initramfs重建<br /><div>使用dracut重新建立initramfs image file:<br /> # mv /boot/initramfs-$(uname -r).img&nbsp; /boot/initramfs-$(uname -r).img.bak<br /> 重新建立 the initramfs file:<br /> # dracut -v /boot/initramfs-$(uname -r).img $(uname -r)<br /><br />6、调整启动模式<br /><div>用vi打开/etc/inittab，修改启动模式为3(文本模式)：id:3:initdefault:<br />修改完毕后保存退出，使用reboot重启</div></div><br />7、安装NVIDIA官方驱动文件：<br /><div>使用root帐号登录（重启后的文本模式）系统，进行/tmp目录（我的NVIDIA-Linux-x86-310.32.run存放在/tmp目录里），执行命令：<br /><div>[root@RHEL-6 tmp]# chmod +x NVIDIA-Linux-x86-310.32.run<br />[root@RHEL-6 tmp]# ./NVIDIA-Linux-x86-310.32.run</div>安装过程中，选择&#8220;Accept&#8221;和&#8220;YES&#8221;后，即可。<br /><br /><div>8、调整启动模式<br /> <div>用vi打开/etc/inittab，修改启动模式为5(X模式)：id:5:initdefault:<br /> 修改完毕后保存退出，使用reboot重启<br /><br />9、判断驱动安装是否成功<br />Linux重启后，登录系统，进入X-window界面，&#8220;系统&#8220;的&#8221;首选项&#8221;中出现&#8220;NVIDIA X Server Settings&#8221;，并且<div>&#8220;系统&#8220;的&#8221;首选项&#8221;中&#8220;桌面效果&#8221;可设置3D加速，表明NVIDIA官方驱动安装成功</div><br /> </div> </div>10、调整分辨率<br /><div>驱动安装成功后，但是（我的）桌面的分辨率极差，并且（在&#8220;首选项&#8221;中的&#8221;NVIDIA X Server Settings&#8220;或&#8220;桌面&#8221;都）不可调。<br />此时，我手动修改/etc/X11/xorg.conf文件，修改后的内容如下：（红色处表示修改）<br />----------------------------------------------------------xorg.conf文件内容开始-----------------------------------------------------<br /><div># nvidia-xconfig: X configuration file generated by nvidia-xconfig<br /># nvidia-xconfig:&nbsp; version 310.32&nbsp; (buildmeister@swio-display-x86-rhel47-09)&nbsp; Mon Jan 14 15:46:49 PST 2013<br /><br />Section "ServerLayout"<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Layout0"<br />&nbsp;&nbsp;&nbsp; Screen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp; "Screen0"<br />&nbsp;&nbsp;&nbsp; InputDevice&nbsp;&nbsp;&nbsp; "Keyboard0" "CoreKeyboard"<br />&nbsp;&nbsp;&nbsp; InputDevice&nbsp;&nbsp;&nbsp; "Mouse0" "CorePointer"<br />EndSection<br /><br />Section "Files"<br />&nbsp;&nbsp;&nbsp; FontPath&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "/usr/share/fonts/default/Type1"<br />EndSection<br /><br />Section "InputDevice"<br />&nbsp;&nbsp;&nbsp; # generated from default<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Mouse0"<br />&nbsp;&nbsp;&nbsp; Driver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "mouse"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Protocol" "auto"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Device" "/dev/input/mice"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Emulate3Buttons" "no"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "ZAxisMapping" "4 5"<br />EndSection<br /><br />Section "InputDevice"<br />&nbsp;&nbsp;&nbsp; # generated from data in "/etc/sysconfig/keyboard"<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Keyboard0"<br />&nbsp;&nbsp;&nbsp; Driver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "kbd"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "XkbLayout" "us"<br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "XkbModel" "pc105"<br />EndSection<br /><br />Section "Monitor"<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Monitor0"<br />&nbsp;&nbsp;&nbsp; VendorName&nbsp;&nbsp;&nbsp;&nbsp; "<span style="color: red;">Samsung"</span><br />&nbsp;&nbsp;&nbsp; ModelName&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "<span style="color: red;">S24A350H"</span><br />&nbsp;&nbsp;&nbsp; HorizSync&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: red;">30.0 - 82.0</span><br />&nbsp;&nbsp;&nbsp; VertRefresh&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: red;">55.0 - 75.0</span><br />&nbsp;&nbsp;&nbsp; Option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "DPMS"<br />&nbsp;&nbsp;&nbsp; <span style="color: red;">UseModes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Modes0"</span><br />EndSection<br /><br /><span style="color: red;">Section "Modes"</span><br /><span style="color: red;">&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Modes0"&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</span><br /><span style="color: red;">&nbsp;&nbsp;&nbsp; Modeline&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "1920x1080_60.00"&nbsp; 172.80&nbsp; 1920 2040 2248 2576&nbsp; 1080 1081 1084 1118&nbsp; -HSync +Vsync</span><br /><span style="color: red;">EndSection</span><br /><br />Section "Device"<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Device0"<br />&nbsp;&nbsp;&nbsp; Driver&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "nvidia"<br />&nbsp;&nbsp;&nbsp; VendorName&nbsp;&nbsp;&nbsp;&nbsp; "NVIDIA Corporation"<br />EndSection<br /><br />Section "Screen"<br />&nbsp;&nbsp;&nbsp; Identifier&nbsp;&nbsp;&nbsp;&nbsp; "Screen0"<br />&nbsp;&nbsp;&nbsp; Device&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Device0"<br />&nbsp;&nbsp;&nbsp; Monitor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Monitor0"<br />&nbsp;&nbsp;&nbsp; DefaultDepth&nbsp;&nbsp;&nbsp; 24<br />&nbsp;&nbsp;&nbsp; SubSection&nbsp;&nbsp;&nbsp;&nbsp; "Display"<br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <span style="color: red;">Viewport 0 0</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Depth&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 24<br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <span style="color: red;">Modes&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; "1920x1080_60.00"</span><br />&nbsp;&nbsp;&nbsp; EndSubSection<br />EndSection</div><div>----------------------------------------------------------xorg.conf文件内容截止-----------------------------------------------------</div><br />说明：<br />a、Section "Monitor"中，VendorName表示显示器生产商，ModelName表示显示器型号，HorizSync表示水平刷新率，VertRefresh表示垂直刷新率<br /><br /><span>b、</span><span>Section "Modes"</span><span>中的</span><span>Modeline来源于下面这个命令：</span><br /><div>[root@RHEL-6 桌面]# gtf 1920 1080 60</div>这个命令的执行结果如下：<br style="color: #000080;" /><div><span style="color: #000080;">&nbsp; # 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz</span><br style="color: #000080;" /><span style="color: #000080;">&nbsp; Modeline "1920x1080_60.00"&nbsp; 172.80&nbsp; 1920 2040 2248 2576&nbsp; 1080 1081 1084 1118&nbsp; -HSync +Vsync</span><br style="color: #000080;" /><br />gtf具体是什么，可以自己去查查资料</div><span><br />c、Section "Screen"中的</span><span>("1920x1080_60.00"</span><span>)要与上面</span><span>Section "Modes"</span><span>中的</span><span>Modeline</span><span>保持一致。<br /></span><span></span><div></div></div></div><div><br />11、保存文件并重启，待登录后，系统界面已经是1920*1080_60了。</div></div></div><img src ="http://www.blogjava.net/103335460/aggbug/395197.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2013-02-07 01:25 <a href="http://www.blogjava.net/103335460/articles/395197.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>主题：几个热门开源数据库</title><link>http://www.blogjava.net/103335460/articles/361868.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Mon, 24 Oct 2011 02:59:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/361868.html</guid><description><![CDATA[<span style="font-size: small"><font size="2">当下，开源数据库正被越来越多的企业所应用，特别是中小企业。它能有效降低信息处理的成本，拥有高性能、易部署、易使用，存储数据方便等特点。下面，与大家整理了8个热门的开源数据库，供参考。 <br /><br />&nbsp;&nbsp;&nbsp; 1. HSQLDB <br /><br />&nbsp;&nbsp;&nbsp; HSQLDB是一个开放源代码的JAVA数据库，其具有标准的SQL语法和JAVA接口，它可以自由使用和分发，非常简洁和快速的。 <br /><br />&nbsp;&nbsp;&nbsp; 2. Axion <br /><br />&nbsp;&nbsp;&nbsp; Axion是一个小型的，快速的SQL和JDBC 适应的关系数据库引擎，由JAVA编程语言编写并且用于JAVA语言。 <br /><br />&nbsp;&nbsp;&nbsp; 3. db4o <br /><br />&nbsp;&nbsp;&nbsp; db4o是一个开源的纯面向对象数据库引擎，对于 Java 与 .NET 开发者来说都是一个简单易用的对象持久化工具，使用简单。 <br /><br />&nbsp;&nbsp;&nbsp; 4. MckoiDDB <br /><br />&nbsp;&nbsp;&nbsp; MckoiDDB是基于Java 1.6开发的一种分布式数据库系统，采用100%纯Java编写，可以运行在任何操作系统上。它对小数据集与大数据集都有很好的支持。 <br /><br />&nbsp;&nbsp;&nbsp; 5. QED <br /><br />&nbsp;&nbsp;&nbsp; QED是一个速度快，但很小的纯java关系型数据库。支持SQL92标准，支持事务回滚。QED可以任意免费使用。 <br /><br />&nbsp;&nbsp;&nbsp; 6. yaRDBMS <br /><br />&nbsp;&nbsp;&nbsp; yaRDBMS是一个简单、快速的数据库，用于存储来自Java程序的key&#8212;value成对数据。可以通过配置来使该数据库支持不同的功能和存储方式。 <br /><br />&nbsp;&nbsp;&nbsp; 7. Apache Derby <br /><br />&nbsp;&nbsp;&nbsp; Apache Derby是一个完全用java编写的数据库，所以可以跨平台，但需要在JVM中运行。其非常小巧，核心部分derby.jar只有2M，所以既可以作为单独的数据库服务器使用，也可以内嵌在应用程序中使用。 <br /><br />&nbsp;&nbsp;&nbsp; 8. SMYLE <br /><br />&nbsp;&nbsp;&nbsp; SMYLE是一个基于 LGPL 的高可靠性、高性能 Java 数据库，能够处理 100,000 行的表，支持多维索引、事务处理、崩溃及时恢复等特性。并可嵌入到应用中，不需要单独安装发布。&nbsp;<br /><br /><font size="2">&nbsp;&nbsp;&nbsp; 9.&nbsp;H2<br /></font><br />&nbsp;&nbsp;&nbsp;&nbsp;JAVA实现，最吓人的是它网站上的一个性能图表，居然比Derby和HSQLDB高出来一大截，请有经验的来评论一下<br /><br /><font size="2">&nbsp;&nbsp;&nbsp; 10. </font>SQLite<br />
<p>&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;SQLite，是一款轻型的数据库，是遵守ACID的关联式<a href="http://baike.baidu.com/view/68446.htm" target="_blank"><font color="#136ec2">数据库管理系统</font></a>，它的设计目标是嵌入式的，而且目前已经在很多嵌入式产品中使用了它，它占用资源非常的低，在嵌入式设备中，可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的<a href="http://baike.baidu.com/view/880.htm" target="_blank"><font color="#136ec2">操作系统</font></a>，同时能够跟很多程序语言相结合，比如 Tcl、C#、PHP、Java等，还有ODBC接口，同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲，它的处理速度比他们都快。SQLite第一个<a href="http://baike.baidu.com/view/707803.htm" target="_blank"><font color="#136ec2">Alpha版本</font></a>诞生于2000年5月. 至今已经有10个年头，SQLite也迎来了一个版本 SQLite 3已经发布。</p></font></span><img src ="http://www.blogjava.net/103335460/aggbug/361868.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2011-10-24 10:59 <a href="http://www.blogjava.net/103335460/articles/361868.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>搜集好用好玩的classid(转)</title><link>http://www.blogjava.net/103335460/articles/357718.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Thu, 01 Sep 2011 03:55:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/357718.html</guid><wfw:comment>http://www.blogjava.net/103335460/comments/357718.html</wfw:comment><comments>http://www.blogjava.net/103335460/articles/357718.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/103335460/comments/commentRss/357718.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/103335460/services/trackbacks/357718.html</trackback:ping><description><![CDATA[wbbrowser控件<br />&lt;OBJECT id=WB&nbsp; classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 VIEWASTEXT&gt;&lt;/OBJECT&gt; 
<p>------------------------------------------------------------------------------------------------------<br />画图控件<br />&lt;OBJECT id=SGrfxCtl1 classid=clsid:369303C2-D7AC-11D0-89D5-00A0C90833E6 &gt;&lt;/OBJECT&gt;</p>
<p>------------------------------------------------------------------------------------------------------<br />上下滚动条控件<br />&lt;OBJECT id=UpDown1 classid=clsid:026371C0-1B7C-11CF-9D53-00AA003C9CB6 &gt;&lt;/OBJECT&gt;</p>
<p>------------------------------------------------------------------------------------------------------<br />日历控件<br />&lt;OBJECT id=Calendar1 CLASSID="clsid:8E27C92B-1264-101C-8A2F-040224009C02" &gt; &lt;/OBJECT&gt;</p>
<p>------------------------------------------------------------------------------------------------------<br />&lt;OBJECT&nbsp; classid=CLSID:20DD1B9E-87C4-11D1-8BE3-0000F8754DA1 VIEWASTEXT&gt;</p>
<p>&lt;/OBJECT&gt;<br />---------------------------------------------------------------------------------------------------------</p>
<p>时间的，绝对经典。</p>
<p>&lt;OBJECT classid="clsid:20DD1B9E-87C4-11D1-8BE3-0000F8754DA1" name=fccrq width=145&nbsp; height=22<br />updown="0"&gt;<br />&lt;param name="CalendarTrailingForeColor" value="11184810"&gt;<br />&lt;param name="CalendarTitleForeColor" value="15658734"&gt;<br />&lt;param name="CalendarTitleBackColor" value="11141120"&gt;<br />&lt;param name="CalendarForeColor" value="0"&gt;<br />&lt;param name="CalendarBackColor" value="16777215"&gt;<br />&lt;param name="format" value="0"&gt;<br />&lt;param name="CurrentDate" value="&lt;%=DateDiff("d","1899/12/31","2002/11/11")+1%&gt;"&gt;<br />&lt;/object&gt;<br />--------------------------------------------------------------------------------------------------</p>
<p>最小化<br />&lt;object id=min classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"&gt; <br />&lt;param name="Command" value="Minimize"&gt;&lt;/object&gt;<br />最大化<br />&lt;object id=max classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"&gt; <br />&lt;param name="Command" value="Maximize"&gt;&lt;/object&gt;<br />强制关闭<br />&lt;OBJECT id=cle classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"&gt;<br />&lt;PARAM NAME="Command" VALUE="Close"&gt;&lt;/OBJECT&gt;<br />---------------------------------------------------------------------------------------------------------</p>
<p>&lt;OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0 VIEWASTEXT&gt;&lt;/OBJECT&gt;<br />&lt;input type=button value=打开&nbsp;&nbsp;&nbsp;&nbsp; onclick=document.all.WebBrowser.ExecWB(1,1)&gt;<br />&lt;input type=button value=另存为&nbsp;&nbsp; onclick=document.all.WebBrowser.ExecWB(4,1)&gt;<br />&lt;input type=button value=全选&nbsp;&nbsp;&nbsp;&nbsp; onclick=document.all.WebBrowser.ExecWB(17,1)&gt;<br />&lt;input type=button value=属性&nbsp;&nbsp;&nbsp;&nbsp; onclick=document.all.WebBrowser.ExecWB(10,1)&gt;<br />&lt;input type=button value=关闭窗口 onclick=document.all.WebBrowser.ExecWB(45,1)&gt;<br />&lt;input type=button value=打印&nbsp;&nbsp;&nbsp;&nbsp; onclick=document.all.WebBrowser.ExecWB(6,1)&gt;<br />&lt;input type=button value=直接打印 onclick=document.all.WebBrowser.ExecWB(6,6)&gt;<br />&lt;input type=button value=页面设置 onclick=document.all.WebBrowser.ExecWB(8,1)&gt;<br />&lt;input type=button value=打印预览 onclick=document.all.WebBrowser.ExecWB(7,1)&gt;<br />&lt;OBJECT id="min" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" VIEWASTEXT&gt;&lt;PARAM name="Command" value="Minimize"&gt;&lt;/OBJECT&gt;<br />&lt;input type=button value="Min" onclick="min.Click()"&gt;<br />&lt;OBJECT id="max" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" VIEWASTEXT&gt;&lt;PARAM name="Command" value="Maximize"&gt;&lt;/OBJECT&gt;<br />&lt;input type=button value="Max/Restore" onclick="max.Click()" id=button1 name=button1&gt;<br />----------------------------------------------------------------------------------------------------------</p>
<p>&lt;object id=oWMP classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6"&gt;&lt;/object&gt;<br />&lt;SCRIPT language=VBScript&gt;<br />&lt;!--</p>
<p>'Set oWMP = CreateObject("WMPlayer.OCX.7" )<br />Set colCDROMs = oWMP.cdromCollection</p>
<p>if colCDROMs.Count &gt;= 1 then<br />For i = 0 to colCDROMs.Count - 1<br />&nbsp; colCDROMs.Item(i).Eject<br />Next ' cdrom<br />End If</p>
<p>--&gt;<br />&lt;/SCRIPT&gt;<br />有光驱的可以试试<br />-------------------------------------------------------------------------------------------------</p>
<p>&lt;OBJECT classid="clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F" id="Agent" CODEBASE="#VERSION=2,0,0,0" VIEWASTEXT&gt;<br />&lt;/OBJECT&gt;<br />&lt;OBJECT classid="clsid:B8F2846E-CE36-11D0-AC83-00C04FD97575" id="TruVoice" CODEBASE="#VERSION=6,0,0,0" VIEWASTEXT&gt;<br />&lt;/OBJECT&gt;<br />ms页面小精灵，可以说英语滴。</p><img src ="http://www.blogjava.net/103335460/aggbug/357718.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2011-09-01 11:55 <a href="http://www.blogjava.net/103335460/articles/357718.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>js刷新页面 方法大全(转)</title><link>http://www.blogjava.net/103335460/articles/357709.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Thu, 01 Sep 2011 03:15:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/357709.html</guid><wfw:comment>http://www.blogjava.net/103335460/comments/357709.html</wfw:comment><comments>http://www.blogjava.net/103335460/articles/357709.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/103335460/comments/commentRss/357709.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/103335460/services/trackbacks/357709.html</trackback:ping><description><![CDATA[<h1 class="block_title"><a id="viewpost1_TitleUrl" href="http://www.blogjava.net/xcp/archive/2010/05/29/javascript_refrash.html">js刷新页面 方法大全</a></h1>
<div class="post">
<div class="postcontent">本文转载于：http://www.jb51.net/article/14397.htm<br /><br />一、先来看一个简单的例子：<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面以三个页面分别命名为<strong>frame.html</strong>、<strong>top.html</strong>、<strong>bottom.html</strong>为例来具体说明如何做。&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; frame.html 由上(top.html)下(bottom.html)两个页面组成，代码如下： <br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><span style="color: #008080">&nbsp;1</span><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #0000ff">&lt;!</span><span style="color: #ff00ff">DOCTYPE&nbsp;HTML&nbsp;PUBLIC&nbsp;"-//W3C//DTD&nbsp;HTML&nbsp;4.0&nbsp;Transitional//EN"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;frame&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">frameset&nbsp;</span><span style="color: #ff0000">rows</span><span style="color: #0000ff">="50%,50%"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">frame&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">=top&nbsp;</span><span style="color: #ff0000">src</span><span style="color: #0000ff">="top.html"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">frame&nbsp;</span><span style="color: #ff0000">name</span><span style="color: #0000ff">=bottom&nbsp;</span><span style="color: #ff0000">src</span><span style="color: #0000ff">="bottom.html"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">frameset</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;现在假设top.html (即上面的页面) 有七个button来实现对bottom.html (即下面的页面) 的刷新，可以用以下七种语句，哪个好用自己看着办了。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><span style="color: #008080">&nbsp;1</span><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">top.html&nbsp;页面的代码如下：&nbsp;<br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;!</span><span style="color: #ff00ff">DOCTYPE&nbsp;HTML&nbsp;PUBLIC&nbsp;"-//W3C//DTD&nbsp;HTML&nbsp;4.0&nbsp;Transitional//EN"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;top.html&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">BODY</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新1"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.frames[1].location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新2"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.frames.bottom.location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">11</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新3"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.frames['bottom'].location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;&nbsp;<br /></span><span style="color: #008080">12</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新4"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.frames.item(1).location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">13</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新5"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.frames.item('bottom').location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">14</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新6"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent.bottom.location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">15</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">input&nbsp;</span><span style="color: #ff0000">type</span><span style="color: #0000ff">=button&nbsp;</span><span style="color: #ff0000">value</span><span style="color: #0000ff">="刷新7"</span><span style="color: #ff0000">&nbsp;onclick</span><span style="color: #0000ff">="window.parent['bottom'].location.reload()"</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">br</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">16</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">BODY</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">17</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">18</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面是bottom.html页面源代码，为了证明下方页面的确被刷新了，在装载完页面弹出一个对话框。&nbsp;&nbsp; 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><span style="color: #008080">&nbsp;1</span><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;!</span><span style="color: #ff00ff">DOCTYPE&nbsp;HTML&nbsp;PUBLIC&nbsp;"-//W3C//DTD&nbsp;HTML&nbsp;4.0&nbsp;Transitional//EN"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;bottom.html&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">TITLE</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HEAD</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">BODY&nbsp;</span><span style="color: #ff0000">onload</span><span style="color: #0000ff">="alert('我被加载了！')"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">h1</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">This&nbsp;is&nbsp;the&nbsp;content&nbsp;in&nbsp;bottom.html.</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">h1</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">BODY</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">HTML</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;</span></div><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;解释一下：<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">1.window指代的是当前页面，例如对于此例它指的是top.html页面。&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />2.parent指的是当前页面的父页面，也就是包含它的框架页面。例如对于此例它指的是framedemo.html。&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />3.frames是window对象，是一个数组。代表着该框架内所有子页面。&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />4.item是方法。返回数组里面的元素。&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />5.如果子页面也是个框架页面，里面还是其它的子页面，那么上面的有些方法可能不行。&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />附：&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />Javascript刷新页面的几种方法：&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />1&nbsp;history.go(0)&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />2&nbsp;location.reload()&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />3&nbsp;location=location&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />4&nbsp;location.assign(location)&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />5&nbsp;document.execCommand('Refresh')&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />6&nbsp;window.navigate(location)&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />7&nbsp;location.replace(location)&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />8&nbsp;document.URL=location.href&nbsp;</span></div><br />二、自动刷新页面<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.页面自动刷新：把如下代码加入&lt;head&gt;区域中&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">meta&nbsp;</span><span style="color: #ff0000">http-equiv</span><span style="color: #0000ff">="refresh"</span><span style="color: #ff0000">&nbsp;content</span><span style="color: #0000ff">="20"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />其中20指每隔20秒刷新一次页面.&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.页面自动跳转：把如下代码加入&lt;head&gt;区域中<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #0000ff">&lt;</span><span style="color: #800000">meta&nbsp;</span><span style="color: #ff0000">http-equiv</span><span style="color: #0000ff">="refresh"</span><span style="color: #ff0000">&nbsp;content</span><span style="color: #0000ff">="20;url=http://xcp.blogjava.net"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />其中20指隔20秒后跳转到http://xcp.blogjava.net页面&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.页面自动刷新js版 <br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">&lt;</span><span style="color: #000000">script&nbsp;language</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">JavaScript</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;myrefresh()&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span id="Codehighlighter1_56_92_Open_Text"><span style="color: #000000">{&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.location.reload();&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;setTimeout('myrefresh()',</span><span style="color: #000000">1000</span><span style="color: #000000">);&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">指定1秒刷新一次&nbsp;</span><span style="color: #008000"><br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;/</span><span style="color: #000000">script</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span></div><br /><br />三、java在写Servler,Action等程序时，要操作返回页面的话（如谈出了窗口，操作完成以后，关闭当前页面，刷新父页面）<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><span style="color: #008080">1</span><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #000000">PrintWriter&nbsp;out&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;response.getWriter();<br /></span><span style="color: #008080">2</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.write(</span><span style="color: #000000">"</span><span style="color: #000000">&lt;script&nbsp;&nbsp;type=\</span><span style="color: #000000">"</span><span style="color: #000000">text</span><span style="color: #000000">/</span><span style="color: #000000">javascript\</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&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">4</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.write(</span><span style="color: #000000">"</span><span style="color: #000000">self.opener.location.reload();</span><span style="color: #000000">"</span><span style="color: #000000">);&nbsp;<br /></span><span style="color: #008080">5</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">关闭窗口</span><span style="color: #008000"><br /></span><span style="color: #008080">6</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.write(</span><span style="color: #000000">"</span><span style="color: #000000">window.opener=null;</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">7</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.write(</span><span style="color: #000000">"</span><span style="color: #000000">window.close();</span><span style="color: #000000">"</span><span style="color: #000000">);<br /></span><span style="color: #008080">8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out.write(</span><span style="color: #000000">"</span><span style="color: #000000">&lt;/script&gt;</span><span style="color: #000000">"</span><span style="color: #000000">);</span></div><br />四、JS刷新框架的脚本语句 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.如何刷新包含该框架的页面用 <br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">&lt;</span><span style="color: #000000">script&nbsp;language</span><span style="color: #000000">=</span><span style="color: #000000">JavaScript</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;parent.location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;/</span><span style="color: #000000">script</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; 2.子窗口刷新父窗口 <br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">&lt;</span><span style="color: #000000">script&nbsp;language</span><span style="color: #000000">=</span><span style="color: #000000">JavaScript</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;self.opener.location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;/</span><span style="color: #000000">script</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.如何刷新另一个框架的页面用 （上面的实例以说明了）<br />
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">语句1.&nbsp;window.parent.frames[</span><span style="color: #000000">1</span><span style="color: #000000">].location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句2.<strong>&nbsp;window.parent.frames.bottom.location.reload();&nbsp;<br /></strong><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句3.&nbsp;window.parent.frames[</span><span style="color: #000000">"</span><span style="color: #000000">bottom</span><span style="color: #000000">"</span><span style="color: #000000">].location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句4.&nbsp;window.parent.frames.item(</span><span style="color: #000000">1</span><span style="color: #000000">).location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句5.&nbsp;window.parent.frames.item('bottom').location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句6.&nbsp;window.parent.bottom.location.reload();&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />语句7.&nbsp;window.parent['bottom'].location.reload();&nbsp;</span></div>&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.如果想关闭窗口时刷新或者想开窗时刷新的话，在&lt;body&gt;中调用以下语句即可。&nbsp; 
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /><span style="color: #000000">&lt;</span><span style="color: #000000">body&nbsp;onload</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">opener.location.reload()</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;开窗时刷新&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;</span><span style="color: #000000">body&nbsp;onUnload</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">opener.location.reload()</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;关闭时刷新&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;</span><span style="color: #000000">script&nbsp;language</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">javascript</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;window.opener.document.location.reload()&nbsp;<br /><img alt="" align="top" src="http://www.blogjava.net/Images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&lt;/</span><span style="color: #000000">script</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;</span></div><br /><br /></div></div><img src ="http://www.blogjava.net/103335460/aggbug/357709.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2011-09-01 11:15 <a href="http://www.blogjava.net/103335460/articles/357709.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解决MyEclipse 5.5和Weblogic 9.2整合以及清除缓存问题(转) </title><link>http://www.blogjava.net/103335460/articles/354968.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Mon, 25 Jul 2011 03:35:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/354968.html</guid><description><![CDATA[最近公司需要用到weblogic9.2做开发，关于两者之间的整合网上一搜一大堆，而且和整合tomcat的方法基本相同，本文中只列出相关步骤，在这里我谈一下在整合一下在整合过程中遇到的一些问题，以及在开发过程中关于缓存问题解决的方法。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="font-weight: bold"> 一）MyEclipse 5.5和Weblogic 9.2整合步骤</span>：<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.点击MyEclipse工具栏上的&#8220;Window&#8221;-&gt;"Preferences"-&gt;"MyEclipse"-&gt;"Aplication Servers"-&gt;"Weblogic"-&gt;"Weblogic 9.x"。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.Weblogic Server 选择"Enable"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.<font size="2">BEA home directory：D:\bea。假定WebLogic安装在D:\bea文件夹中。 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.WebLogic installation directory：D:\BEA\weblogic92。 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.Administrator username：weblogic。 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6.</font><font size="2">Administrator </font><font size="2">password：</font><font size="2">weblogic</font><font size="2">。 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7.Execution domain root：D:\bea\user_projects\domains\base_domain。 已设置此路径为工作域。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8.Execution server name：AdminServer。 <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 9.Security policy file：D:\bea\weblogic92\server\lib\weblogic.policy。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10.JAAS login configuration file：省略。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 11.点击Apply。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 12.展开</font>"Weblogic 9.x"选项，点击&#8220;Launch&#8221;。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 13.确认External management server 选为"This server is running standalone",确认Weblogic launch mode 选为"Debug mode"<font size="2">。</font><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 14.点击"OK"<font size="2">。<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold">二)解决整合以后依然不能运行的问题</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 按照以上配置后操作我们熟悉的"deploy"-&gt;"run"发布,启动应用,但是有可能因为由于MyEclispe的Bug依然不成功,因此编辑D:\bea\user_projects\domains\base_domain\config\config.xml文件,<span style="color: rgb(255,153,0); font-weight: bold">在&lt;admin-server-name&gt;AdminServer&lt;/admin-server-name&gt;这一行前添加如下代码:</span><br style="color: rgb(255,204,153)" /><br />&lt;app-deployment&gt;<br />&nbsp;&nbsp;&nbsp; &lt;name&gt;_appsdir_EAI_Manage_dir&lt;/name&gt;<br />&nbsp;&nbsp;&nbsp; &lt;target&gt;AdminServer&lt;/target&gt;<br />&nbsp;&nbsp;&nbsp; &lt;module-type&gt;dir&lt;/module-type&gt;<br />&nbsp;&nbsp;&nbsp; &lt;source-path&gt;autodeploy/EAI_Manage&lt;/source-path&gt;<br />&nbsp;&nbsp;&nbsp; &lt;security-dd-model&gt;DDOnly&lt;/security-dd-model&gt;<br />&nbsp;&nbsp;&nbsp; &lt;staging-mode&gt;stage&lt;/staging-mode&gt;<br />&nbsp; &lt;/app-deployment&gt;<br />注意:其中</font><font size="2">EAI_Manage为项目名称.<br /><br />再尝试发布运行代码,OK!运行成功.<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: rgb(0,0,0); font-weight: bold">三)清除缓存问题</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 按照以上的配置方式可以通过MyEclipse去发布运行应用到Weblogic 9.2上,但是在实际开发过程中又遇到了一个由于缓存引起的问题:在项目的Webroot下添加一个页面后,通过浏览器访问此页面居然返回404错误!<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例如:在Webroot下添加一个MyJsp.jsp页面,然后访问http://localhost:7001/EAI_Manage/MyJsp.jsp后返回404错误.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 为了解决这个问题,我在"</font><font size="2">D:\bea\user_projects"下搜索"EAI_Manage"发现有如下结果:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.D:\bea\user_projects\domains\base_domain\autodeploy\EAI_Manage<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.D:\bea\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_user\_appsdir_EAI_Manage_dir<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: rgb(255,153,0); font-weight: bold">3.D:\bea\user_projects\domains\base_domain\servers\AdminServer\tmp\_WL_TEMP_APP_DOWNLOADS\_appsdir_EAI_Manage_dir\</span><br style="color: rgb(255,153,0); font-weight: bold" /><span style="color: rgb(255,153,0); font-weight: bold">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.D:\bea\user_projects\domains\base_domain\servers\AdminServer\stage\</span></font><font style="color: rgb(255,153,0); font-weight: bold" size="2">_appsdir_EAI_Manage_dir\</font><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其中<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1为MyEclipse通过deploy部署到weblogic上的,与MyEclipse目录结构一致,分析结果:正常.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2为weblogic中jsp生成的.class文件所在的文件夹,分析结果:正常.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: rgb(255,153,0); font-weight: bold">3文件夹中存在一个*.jar文件,通过测试后发现此文件中有在启动时才会生成,并且在生成之后不会改变.<span style="color: rgb(255,0,0)">分析结果:此文件为缓存.</span></span><br style="color: rgb(255,153,0); font-weight: bold" /><span style="color: rgb(255,153,0); font-weight: bold">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4文件夹中存在EAI_Manage文件夹,通过测试后发现文件夹中的内容与3文件夹中的内容一致,并且在启动weblogic之间删除3文件夹中的内容,而不删除此文件夹,依然存在缓存问题.<span style="color: rgb(255,0,0)">分析结果:此文件夹为缓存.</span></span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在开发过程中,当weblogic启动时,由于文件在使用中,不能删除3和4文件夹.但是每次清除缓存都需要重起服务器又降低了开发效率,因此希望找出一个方法,像tomcat那样热部署.查阅bea的官方文档后发现需要修改<font size="2">staging-mode参数.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold">缓存解决方法:修改</span></font><font style="font-weight: bold" size="2">D:\bea\user_projects\domains\base_domain\config\config.xml中我们刚才所添加的配置文件,<span style="color: rgb(255,0,0)">将</span></font><font size="2"><span style="font-weight: bold"><span style="color: rgb(255,0,0)">staging-mode节点改成nostage即可</span>,配置文件代码示例如下:</span><br />&lt;app-deployment&gt;<br />&nbsp;&nbsp;&nbsp; &lt;name&gt;_appsdir_EAI_Manage_dir&lt;/name&gt;<br />&nbsp;&nbsp;&nbsp; &lt;target&gt;AdminServer&lt;/target&gt;<br />&nbsp;&nbsp;&nbsp; &lt;module-type&gt;dir&lt;/module-type&gt;<br />&nbsp;&nbsp;&nbsp; &lt;source-path&gt;autodeploy/EAI_Manage&lt;/source-path&gt;<br />&nbsp;&nbsp;&nbsp; &lt;security-dd-model&gt;DDOnly&lt;/security-dd-model&gt;<br />&nbsp;&nbsp;&nbsp; &lt;staging-mode&gt;nostage&lt;/staging-mode&gt;<br />&nbsp; &lt;/app-deployment&gt;<br /></font><img src ="http://www.blogjava.net/103335460/aggbug/354968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2011-07-25 11:35 <a href="http://www.blogjava.net/103335460/articles/354968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Red Hat Enterprise Linux Server5.5安装VirtualBox(原创)</title><link>http://www.blogjava.net/103335460/articles/346608.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Sat, 19 Mar 2011 12:02:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/346608.html</guid><wfw:comment>http://www.blogjava.net/103335460/comments/346608.html</wfw:comment><comments>http://www.blogjava.net/103335460/articles/346608.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/103335460/comments/commentRss/346608.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/103335460/services/trackbacks/346608.html</trackback:ping><description><![CDATA[本人Red Hat Enterprise Linux Server5.5系统，安装VirtualBox如下：<br />
<br />
<strong>1、下载VirtualBox</strong><br />
地址：http://www.virtualbox.org/wiki/Linux_Downloads，<br />
下载到应的VirtualBox版本: VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm<br />
<br />
<strong>2、安装gcc</strong><br />
安装顺序如下：<br />
&nbsp;&nbsp;&nbsp; rpm -ivh kernel-headers-2.6.18-164.el5.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-glibc-headers-2.3.4-2.26.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-glibc-2.3.4-2.26.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-libstdc++-33-3.2.3-61.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-libf2c-34-3.4.6-4.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-libgcc-296-2.96-138.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh cpp-4.1.2-46.el5.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh glibc-headers-2.5-42.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh glibc-devel-2.5-42.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh libgomp-4.4.0-6.el5.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh libstdc++-devel-4.1.2-46.el5.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh gcc-4.1.2-46.el5.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-gcc-34-3.4.6-4.i386.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh compat-gcc-34-c++-3.4.6-4.i386.rpm<br />
(Linux系统安装盘里都有)<br />
<br />
<strong>3、安装kernel</strong><br />
确定系统已经安装如下软件包，缺少的则补上<br />
kernel-2.6.18-194.el5.i686.rpm<br />
kernel-debug-2.6.18-194.el5.i686.rpm<br />
kernel-debug-devel-2.6.18-194.el5.i686.rpm<br />
kernel-devel-2.6.18-194.el5.i686.rpm<br />
kernel-doc-2.6.18-194.el5.noarch.rpm<br />
kernel-headers-2.6.18-194.el5.i386.rpm<br />
kernel-PAE-2.6.18-194.el5.i686.rpm<br />
kernel-PAE-devel-2.6.18-194.el5.i686.rpm<br />
kernel-xen-2.6.18-194.el5.i686.rpm<br />
kernel-xen-devel-2.6.18-194.el5.i686.rpm<br />
<br />
<strong>4、安装DKMS</strong><br />
从网络上下载DKMS，对应的版本为dkms-2.0.17.5-1.noarch.rpm，或高点版本。<br />
&nbsp;&nbsp;&nbsp; rpm -ivh --test dkms-2.0.17.5-1.noarch.rpm<br />
&nbsp;&nbsp;&nbsp; rpm -ivh dkms-2.0.17.5-1.noarch.rpm<br />
<br />
<strong>5、安装VirtualBox</strong><br />
执行命令：<br />
&nbsp;&nbsp;&nbsp; rpm -ivh --force VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm <br />
(因为先前kernel和dkms相关软件包不全，安装失败)<br />
执行情况如下：<br />
[root@******** download]# rpm -ivh --force --test VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm <br />
warning: VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm: Header V4 DSA signature: NOKEY, key ID 98ab5139<br />
Preparing...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ########################################### [100%]<br />
[root@******** download]# rpm -ivh --force VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm <br />
warning: VirtualBox-4.0-4.0.4_70112_rhel5-1.i386.rpm: Header V4 DSA signature: NOKEY, key ID 98ab5139<br />
Preparing...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ########################################### [100%]<br />
&nbsp;&nbsp; 1:VirtualBox-4.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ########################################### [100%]<br />
<br />
Creating group 'vboxusers'. VM users must be member of that group!<br />
<br />
No precompiled module for this kernel found -- trying to build one. Messages<br />
emitted during module compilation will be logged to /var/log/vbox-install.log.<br />
<br />
Stopping VirtualBox kernel modules [确定]<br />
Uninstalling old VirtualBox DKMS kernel modules [确定]<br />
Trying to register the VirtualBox kernel modules using DKMS [确定]<br />
Starting VirtualBox kernel modules [确定]<br />
[root@******** download]#<br />
<br />
<strong>6、使用VirtualBox</strong><br />
略<br />
<br />
<strong>其他</strong><br />
<br />
<strong>1、安装NTFS</strong><br />
RHEL默认只识别win下的vfat，不识别ntfs格式的。如果想要在linux中挂载nffs格式的硬盘方法如下：<br />
(1)下载源码包： http://tuxera.com/opensource/ntfs-3g-2010.10.2.tgz<br />
(2)安装:<br />
&nbsp;&nbsp;&nbsp; tar -zxf ntfs-3g-2010.10.2.tgz<br />
&nbsp;&nbsp;&nbsp; cd ntfs-3g-2010.10.2<br />
&nbsp;&nbsp; ./configure<br />
&nbsp;&nbsp;&nbsp; make &amp;&amp; make install<br />
(3)安装成功，手动挂载ntfs格式硬盘：<br />
&nbsp;&nbsp; mount -t ntfs-3g /dev/sdb1 /mnt/windows<br />
&nbsp;&nbsp; mount.ntfs-3g /dev/sdb1 /mnt/windows<br />
(4)开机自动挂载ntfs格式硬盘：<br />
&nbsp; /dev/sdb1 /mnt/windows ntfs-3g defaults 0 0<br />
<br />
<br />
<br />
<br />
<br />
<img src ="http://www.blogjava.net/103335460/aggbug/346608.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2011-03-19 20:02 <a href="http://www.blogjava.net/103335460/articles/346608.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XP和Linux双系统安装说明</title><link>http://www.blogjava.net/103335460/articles/327900.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Wed, 04 Aug 2010 02:01:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/327900.html</guid><description><![CDATA[1. 如Partition Magic(PQMAGIC) 工具等,分配一个主分区(如C盘),其余的均为逻辑分区,细分为D\E\F\G盘.<br />
注意: 主分区C盘,要作为引导分区.<br />
<br />
2.在C盘上全新安装Window XP系统,最好不要使用ghost安装,因为先前安装过双系统,则因为可能因为grup的存在,导致无法进入xp系统.<br />
<br />
3.使用Red hat Linux5.5系统光盘,进行安装时, 在选择分区时,使用自定义分区, 删除D盘, 使用其空间创建三个挂载点: /, /boot, swap.<br />
其中swap大小为(物理内存&lt;=2)&nbsp; ? &nbsp;(物理内存* 2) &nbsp;:&nbsp; ((物理内存-2G) * 1 + 2G * 2).<br />
/boot大小为100-512MB即可,不需设置"强制为主分区"<br />
/的大小为余下空间.<br />
<br />
4.在安装grup时,命名window xp.<br />
<br />
<img src ="http://www.blogjava.net/103335460/aggbug/327900.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2010-08-04 10:01 <a href="http://www.blogjava.net/103335460/articles/327900.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例</title><link>http://www.blogjava.net/103335460/articles/314145.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Mon, 01 Mar 2010 03:01:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/314145.html</guid><description><![CDATA[以下是Java对几种文本文件内容读取代码。其中，OFFICE文档（WORD,EXCEL）使用了POI控件，PDF使用了PDFBOX控件。
<p>&nbsp;<span style="font-size: small"> <a title="[置顶] POI,PDFBOX,JDOM的下载地址和在Eclipse中的配置方法" href="http://lycoder.javaeye.com/blog/451613" target="_blank"><span style="color: #ff0000">点击这里</span> </a>查看相关控件的下载地址和配置方法。</span> </p>
<p>&nbsp;</p>
&nbsp;
<p>&nbsp; <span style="color: #ff0000"><span style="font-size: small"><strong>WORD</strong> </span></span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.*; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.apache.poi.hwpf.extractor.WordExtractor; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;WordReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;WordReader(){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;读出的Word的内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromWord(String&nbsp;filePath){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;result&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;file&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;File(filePath); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInputStream&nbsp;fis&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;FileInputStream(file); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WordExtractor&nbsp;wordExtractor&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;WordExtractor(fis); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;=&nbsp;wordExtractor.getText(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span class="keyword">catch</span><span>(FileNotFoundException&nbsp;e){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span class="keyword">catch</span><span>(IOException&nbsp;e){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;result; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import java.io.*;
import org.apache.poi.hwpf.extractor.WordExtractor;
public class WordReader {
public WordReader(){
}
/**
* @param filePath 文件路径
* @return 读出的Word的内容
*/
public String getTextFromWord(String filePath){
String result = null;
File file = new File(filePath);
try{
FileInputStream fis = new FileInputStream(file);
WordExtractor wordExtractor = new WordExtractor(fis);
result = wordExtractor.getText();
}catch(FileNotFoundException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
};
return result;
}
}
</pre>
&nbsp;&nbsp;
<p>&nbsp; <span style="font-size: small; color: #ff0000"><strong>EXCEL</strong> </span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.apache.poi.hssf.usermodel.HSSFWorkbook; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.apache.poi.hssf.usermodel.HSSFSheet; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.apache.poi.hssf.usermodel.HSSFRow; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.apache.poi.hssf.usermodel.HSSFCell; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.FileInputStream; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.FileNotFoundException; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.IOException; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;ExcelReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="annotation">@SuppressWarnings</span><span>(</span><span class="string">"deprecation"</span><span>) &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;读出的Excel的内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromExcel(String&nbsp;filePath)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuffer&nbsp;buff&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;StringBuffer(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//创建对Excel工作簿文件的引用 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFWorkbook&nbsp;wb&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;HSSFWorkbook(</span><span class="keyword">new</span><span>&nbsp;FileInputStream(filePath)); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//创建对工作表的引用。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;numSheets&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;numSheets&nbsp;&lt;&nbsp;wb.getNumberOfSheets();&nbsp;numSheets++)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(</span><span class="keyword">null</span><span>&nbsp;!=&nbsp;wb.getSheetAt(numSheets))&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFSheet&nbsp;aSheet&nbsp;=&nbsp;wb.getSheetAt(numSheets);</span><span class="comment">//获得一个sheet </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;rowNumOfSheet&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;rowNumOfSheet&nbsp;&lt;=&nbsp;aSheet.getLastRowNum();&nbsp;rowNumOfSheet++)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(</span><span class="keyword">null</span><span>&nbsp;!=&nbsp;aSheet.getRow(rowNumOfSheet))&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFRow&nbsp;aRow&nbsp;=&nbsp;aSheet.getRow(rowNumOfSheet);&nbsp;</span><span class="comment">//获得一个行 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;cellNumOfRow&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;cellNumOfRow&nbsp;&lt;=&nbsp;aRow.getLastCellNum();&nbsp;cellNumOfRow++)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(</span><span class="keyword">null</span><span>&nbsp;!=&nbsp;aRow.getCell(cellNumOfRow))&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HSSFCell&nbsp;aCell&nbsp;=&nbsp;aRow.getCell(cellNumOfRow);</span><span class="comment">//获得列值 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">switch</span><span>(aCell.getCellType()){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">case</span><span>&nbsp;HSSFCell.CELL_TYPE_FORMULA: &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">break</span><span>;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">case</span><span>&nbsp;HSSFCell.CELL_TYPE_NUMERIC: &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buff.append(aCell.getNumericCellValue()).append(</span><span class="string">'\t'</span><span>);</span><span class="keyword">break</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">case</span><span>&nbsp;HSSFCell.CELL_TYPE_STRING: &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buff.append(aCell.getStringCellValue()).append(</span><span class="string">'\t'</span><span>);</span><span class="keyword">break</span><span>;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buff.append(</span><span class="string">'\n'</span><span>); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(FileNotFoundException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;buff.toString(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class ExcelReader {
@SuppressWarnings("deprecation")
/**
* @param filePath 文件路径
* @return 读出的Excel的内容
*/
public String getTextFromExcel(String filePath) {
StringBuffer buff = new StringBuffer();
try {
//创建对Excel工作簿文件的引用
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(filePath));
//创建对工作表的引用。
for (int numSheets = 0; numSheets &lt; wb.getNumberOfSheets(); numSheets++) {
if (null != wb.getSheetAt(numSheets)) {
HSSFSheet aSheet = wb.getSheetAt(numSheets);//获得一个sheet
for (int rowNumOfSheet = 0; rowNumOfSheet &lt;= aSheet.getLastRowNum(); rowNumOfSheet++) {
if (null != aSheet.getRow(rowNumOfSheet)) {
HSSFRow aRow = aSheet.getRow(rowNumOfSheet); //获得一个行
for (int cellNumOfRow = 0; cellNumOfRow &lt;= aRow.getLastCellNum(); cellNumOfRow++) {
if (null != aRow.getCell(cellNumOfRow)) {
HSSFCell aCell = aRow.getCell(cellNumOfRow);//获得列值
switch(aCell.getCellType()){
case HSSFCell.CELL_TYPE_FORMULA:
break;
case HSSFCell.CELL_TYPE_NUMERIC:
buff.append(aCell.getNumericCellValue()).append('\t');break;
case HSSFCell.CELL_TYPE_STRING:
buff.append(aCell.getStringCellValue()).append('\t');break;
}
}
}
buff.append('\n');
}
}
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return buff.toString();
}
}
</pre>
&nbsp;
<div class="quote_title"></div>
<p>&nbsp; <span style="color: #ff0000"><span style="font-size: small"><strong>PDF</strong> </span>&nbsp;</span> </p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.FileInputStream; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.FileNotFoundException; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.IOException; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">import</span><span>&nbsp;org.pdfbox.pdfparser.PDFParser; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.pdfbox.pdmodel.PDDocument; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;org.pdfbox.util.PDFTextStripper; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;PdfReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;PdfReader(){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;读出的pdf的内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromPdf(String&nbsp;filePath)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;result&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInputStream&nbsp;is&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PDDocument&nbsp;document&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;FileInputStream(filePath); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PDFParser&nbsp;parser&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;PDFParser(is); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parser.parse(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document&nbsp;=&nbsp;parser.getPDDocument(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PDFTextStripper&nbsp;stripper&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;PDFTextStripper(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;=&nbsp;stripper.getText(document); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(FileNotFoundException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">finally</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(is&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{is.close();}</span><span class="keyword">catch</span><span>(IOException&nbsp;e){e.printStackTrace();} &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(document&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>{document.close();}</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e){e.printStackTrace();} &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;result; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.pdfbox.pdfparser.PDFParser;
import org.pdfbox.pdmodel.PDDocument;
import org.pdfbox.util.PDFTextStripper;
public class PdfReader {
public PdfReader(){
}
/**
* @param filePath 文件路径
* @return 读出的pdf的内容
*/
public String getTextFromPdf(String filePath) {
String result = null;
FileInputStream is = null;
PDDocument document = null;
try {
is = new FileInputStream(filePath);
PDFParser parser = new PDFParser(is);
parser.parse();
document = parser.getPDDocument();
PDFTextStripper stripper = new PDFTextStripper();
result = stripper.getText(document);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (is != null) {
try {is.close();}catch(IOException e){e.printStackTrace();}
}
if (document != null) {
try{document.close();}catch (IOException e){e.printStackTrace();}
}
}
return result;
}
}
</pre>
<p>&nbsp; <span style="font-size: small; color: #ff0000"><strong>TXT</strong> </span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.*; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;TxtReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;TxtReader()&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;读出的txt的内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromTxt(String&nbsp;filePath)&nbsp;</span><span class="keyword">throws</span><span>&nbsp;Exception&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileReader&nbsp;fr&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;FileReader(filePath); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedReader&nbsp;br&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;BufferedReader(fr); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuffer&nbsp;buff&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;StringBuffer(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;temp&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">while</span><span>((temp&nbsp;=&nbsp;br.readLine())&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buff.append(temp&nbsp;+&nbsp;</span><span class="string">"\r\n"</span><span>); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;br.close();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;buff.toString();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import java.io.*;
public class TxtReader {
public TxtReader() {
}
/**
* @param filePath 文件路径
* @return 读出的txt的内容
*/
public String getTextFromTxt(String filePath) throws Exception {
FileReader fr = new FileReader(filePath);
BufferedReader br = new BufferedReader(fr);
StringBuffer buff = new StringBuffer();
String temp = null;
while((temp = br.readLine()) != null){
buff.append(temp + "\r\n");
}
br.close();
return buff.toString();
}
}</pre>
<p><span style="font-size: small; color: #ff0000"><strong>RTF</strong> </span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.File; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.FileInputStream; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.IOException; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.InputStream; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">import</span><span>&nbsp;javax.swing.text.BadLocationException; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;javax.swing.text.DefaultStyledDocument; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;javax.swing.text.rtf.RTFEditorKit; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;RtfReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;RtfReader(){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;读出的rtf的内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromRtf(String&nbsp;filePath)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;result&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;File&nbsp;file&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;File(filePath); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DefaultStyledDocument&nbsp;styledDoc&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;DefaultStyledDocument(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream&nbsp;is&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;FileInputStream(file); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">new</span><span>&nbsp;RTFEditorKit().read(is,&nbsp;styledDoc,&nbsp;</span><span class="number">0</span><span>); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;String(styledDoc.getText(</span><span class="number">0</span><span>,styledDoc.getLength()).getBytes(</span><span class="string">"ISO8859_1"</span><span>)); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//提取文本，读取中文需要使用ISO8859_1编码，否则会出现乱码 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(BadLocationException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;result; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.swing.text.BadLocationException;
import javax.swing.text.DefaultStyledDocument;
import javax.swing.text.rtf.RTFEditorKit;
public class RtfReader {
public RtfReader(){
}
/**
* @param filePath 文件路径
* @return 读出的rtf的内容
*/
public String getTextFromRtf(String filePath) {
String result = null;
File file = new File(filePath);
try {
DefaultStyledDocument styledDoc = new DefaultStyledDocument();
InputStream is = new FileInputStream(file);
new RTFEditorKit().read(is, styledDoc, 0);
result = new String(styledDoc.getText(0,styledDoc.getLength()).getBytes("ISO8859_1"));
//提取文本，读取中文需要使用ISO8859_1编码，否则会出现乱码
} catch (IOException e) {
e.printStackTrace();
} catch (BadLocationException e) {
e.printStackTrace();
}
return result;
}
}</pre>
<p>&nbsp;&nbsp; <span style="color: #ff0000"><span style="font-size: small"><strong>HTML</strong> </span></span></p>
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://lycoder.javaeye.com/blog/451564#"></a></div>
</div>
<ol class="dp-j">
    <li><span><span class="keyword">package</span><span>&nbsp;textReader; &nbsp;&nbsp;</span></span>
    <li><span class="keyword">import</span><span>&nbsp;java.io.*; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;HtmlReader&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;HtmlReader()&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;获得html的全部内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;readHtml(String&nbsp;filePath)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BufferedReader&nbsp;br=</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuffer&nbsp;sb&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;&nbsp;StringBuffer(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">try</span><span>&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;br=</span><span class="keyword">new</span><span>&nbsp;BufferedReader(</span><span class="keyword">new</span><span>&nbsp;InputStreamReader(</span><span class="keyword">new</span><span>&nbsp;FileInputStream(filePath),&nbsp;&nbsp;</span><span class="string">"GB2312"</span><span>));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;temp=</span><span class="keyword">null</span><span>;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">while</span><span>((temp=br.readLine())!=</span><span class="keyword">null</span><span>){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.append(temp); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(FileNotFoundException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span class="keyword">catch</span><span>&nbsp;(IOException&nbsp;e)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e.printStackTrace(); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;sb.toString(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">/** </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@param&nbsp;filePath&nbsp;文件路径 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@return&nbsp;获得的html文本内容 </span>&nbsp;</span>
    <li><span><span class="comment">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/</span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;String&nbsp;getTextFromHtml(String&nbsp;filePath)&nbsp;{ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//得到body标签中的内容 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;str=&nbsp;readHtml(filePath); &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuffer&nbsp;buff&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;StringBuffer(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">int</span><span>&nbsp;maxindex&nbsp;=&nbsp;str.length()&nbsp;-&nbsp;</span><span class="number">1</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">int</span><span>&nbsp;begin&nbsp;=&nbsp;</span><span class="number">0</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">int</span><span>&nbsp;end;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//截取&gt;和&lt;之间的内容 </span><span>&nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">while</span><span>((begin&nbsp;=&nbsp;str.indexOf(</span><span class="string">'&gt;'</span><span>,begin))&nbsp;&lt;&nbsp;maxindex){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;=&nbsp;str.indexOf(</span><span class="string">'&lt;'</span><span>,begin); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>(end&nbsp;-&nbsp;begin&nbsp;&gt;&nbsp;</span><span class="number">1</span><span>){ &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buff.append(str.substring(++begin,&nbsp;end));&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;=&nbsp;end+</span><span class="number">1</span><span>; &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">return</span><span>&nbsp;buff.toString(); &nbsp;&nbsp;</span></span>
    <li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span>
    <li><span>&nbsp;&nbsp;</span>
    <li><span>}&nbsp;&nbsp;</span> </li>
</ol>
</div>
<pre class="java" style="display: none" name="code">package textReader;
import java.io.*;
public class HtmlReader {
public HtmlReader() {
}
/**
* @param filePath 文件路径
* @return 获得html的全部内容
*/
public String readHtml(String filePath) {
BufferedReader br=null;
StringBuffer sb = new  StringBuffer();
try {
br=new BufferedReader(new InputStreamReader(new FileInputStream(filePath),  "GB2312"));
String temp=null;
while((temp=br.readLine())!=null){
sb.append(temp);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return sb.toString();
}
/**
* @param filePath 文件路径
* @return 获得的html文本内容
*/
public String getTextFromHtml(String filePath) {
//得到body标签中的内容
String str= readHtml(filePath);
StringBuffer buff = new StringBuffer();
int maxindex = str.length() - 1;
int begin = 0;
int end;
//截取&gt;和&lt;之间的内容
while((begin = str.indexOf('&gt;',begin)) &lt; maxindex){
end = str.indexOf('&lt;',begin);
if(end - begin &gt; 1){
buff.append(str.substring(++begin, end));
}
begin = end+1;
};
return buff.toString();
}
}</pre>
&nbsp;
<p>&nbsp; <span style="font-size: small"><span style="color: #ff0000"><strong>注意</strong> </span>：若使用WPS编辑相关文档，会有错误提示，应避免。</span> </p>
<p><span style="font-size: small">&nbsp; 错误文本提示如下：</span> </p>
<p><span style="font-size: small"><strong>WORD</strong> </span></p>
<p>Your document seemed to be mostly unicode, but the section definition was in bytes! Trying anyway, but things may well go wrong!</p>
<p><strong><span style="font-size: small">EXCEL</span> </strong></p>
<p>java.lang.RuntimeException: Expected an EXTERNSHEET record but got (org.apache.poi.hssf.record.SSTRecord)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.model.LinkTable.readExtSheetRecord(LinkTable.java:187)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.model.LinkTable.&lt;init&gt;(LinkTable.java:163)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.model.Workbook.createWorkbook(Workbook.java:199)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.usermodel.HSSFWorkbook.&lt;init&gt;(HSSFWorkbook.java:273)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.usermodel.HSSFWorkbook.&lt;init&gt;(HSSFWorkbook.java:196)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.usermodel.HSSFWorkbook.&lt;init&gt;(HSSFWorkbook.java:312)<br />
&nbsp;&nbsp;&nbsp; at org.apache.poi.hssf.usermodel.HSSFWorkbook.&lt;init&gt;(HSSFWorkbook.java:293)<br />
&nbsp;&nbsp;&nbsp; at textReader.ExcelReader.getTextFromExcel(ExcelReader.java:23)<br />
&nbsp;&nbsp;&nbsp; at DocumentInfo.getContent(DocumentInfo.java:86)<br />
&nbsp;&nbsp;&nbsp; at MainFunction.main(MainFunction.java:19)</p>
<p><strong><span style="font-size: small">RTF</span> </strong></p>
<p>java.io.IOException: Too many close-groups in RTF text<br />
&nbsp;&nbsp;&nbsp; at javax.swing.text.rtf.RTFParser.write(Unknown Source)<br />
&nbsp;&nbsp;&nbsp; at javax.swing.text.rtf.RTFParser.writeSpecial(Unknown Source)<br />
&nbsp;&nbsp;&nbsp; at javax.swing.text.rtf.AbstractFilter.write(Unknown Source)<br />
&nbsp;&nbsp;&nbsp; at javax.swing.text.rtf.AbstractFilter.readFromStream(Unknown Source)<br />
&nbsp;&nbsp;&nbsp; at javax.swing.text.rtf.RTFEditorKit.read(Unknown Source)<br />
&nbsp;&nbsp;&nbsp; at textReader.RtfReader.getTextFromRtf(RtfReader.java:25)<br />
&nbsp;&nbsp;&nbsp; at DocumentInfo.getContent(DocumentInfo.java:74)<br />
&nbsp;&nbsp;&nbsp; at MainFunction.main(MainFunction.java:19)</p>
<p>BODY { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } P { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } DIV { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } TD { FONT-FAMILY:Tahoma; FONT-SIZE:10pt } <span style="font-size: small; font-family: monospace">&nbsp; 顺便说一下，这里为什么会在write出错呢？因为</span> <span style="font-size: small">level是根据{和}来进行自增和自减的，当括号不匹配的时候就会提示该错误。</span> <span style="font-size: small; font-family: monospace">wps编辑rtf文件在格式上出了问题，{和}不匹配。</span> <span style="font-size: small; font-family: monospace">但用word或写字板下新建文件，编辑后另存为rtf文件（wps下不支持），用记事本打开可以发现添加了很多格式说明，但是{和}是匹配的，这样才不会报错。下面是具体说明：</span> </p>
<p><span><a href="http://www.chinaitpower.com/source/jdk122/javax/swing/text/rtf/RTFParser.java.html"><span style="font-family: monospace">http://www.chinaitpower.com/source/jdk122/javax/swing/text/rtf/RTFParser.java.html</span> </a></span></p>
<img src ="http://www.blogjava.net/103335460/aggbug/314145.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2010-03-01 11:01 <a href="http://www.blogjava.net/103335460/articles/314145.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TABLESPACE的查看SQL</title><link>http://www.blogjava.net/103335460/articles/310730.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Mon, 25 Jan 2010 06:50:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/310730.html</guid><wfw:comment>http://www.blogjava.net/103335460/comments/310730.html</wfw:comment><comments>http://www.blogjava.net/103335460/articles/310730.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/103335460/comments/commentRss/310730.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/103335460/services/trackbacks/310730.html</trackback:ping><description><![CDATA[查看表空间SQL:<br />
<br />
<br />
SELECT UPPER(F.TABLESPACE_NAME) "表空间名",<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; D.TOT_GROOTTE_MB "表空间大小(M)",<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') "使用比",<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F.TOTAL_BYTES "空闲空间(M)",<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F.MAX_BYTES "最大块(M)"<br />
&nbsp; FROM (SELECT TABLESPACE_NAME,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FROM SYS.DBA_FREE_SPACE<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GROUP BY TABLESPACE_NAME) F,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (SELECT DD.TABLESPACE_NAME,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FROM SYS.DBA_DATA_FILES DD<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GROUP BY DD.TABLESPACE_NAME) D<br />
&nbsp;WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME<br />
&nbsp;ORDER BY 4 DESC;
<img src ="http://www.blogjava.net/103335460/aggbug/310730.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2010-01-25 14:50 <a href="http://www.blogjava.net/103335460/articles/310730.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>简单介绍Java语言中内存管理的几个技巧(转)</title><link>http://www.blogjava.net/103335460/articles/295476.html</link><dc:creator>雪山飞狐</dc:creator><author>雪山飞狐</author><pubDate>Thu, 17 Sep 2009 09:07:00 GMT</pubDate><guid>http://www.blogjava.net/103335460/articles/295476.html</guid><description><![CDATA[<h1>&nbsp;</h1>
<h5 style="padding-right: 8px; padding-left: 8px; font-weight: normal; padding-bottom: 8px; line-height: 20px; padding-top: 8px">　　其实从理论上来讲java做的系统并不比其他语言开发出来的系统更占用内存，那么为什么却有这么N多理由来证明它确实占内存呢?两个字，陋习。 </h5>
<div id="content">
<div class="guanggao"><span id="contentAdv">
<div class="clear"></div>
</span></div>
<p>　　Java做的系统给人的印象是什么?占内存!说道这句话就会有N多人站出来为java辩护，并举出一堆的性能测试报告来证明这一点。</p>
<p>　　其实从理论上来讲java做的系统并不比其他语言开发出来的系统更占用内存，那么为什么却有这么N多理由来证明它确实占内存呢?两个字，陋习。</p>
<p>　　<strong>(1)别用new Boolean()。</strong></p>
<p>　　在很多场景中Boolean类型是必须的，比如JDBC中boolean类型的set与get都是通过Boolean封装传递的，大部分ORM也是用Boolean来封装boolean类型的，比如：</p>
<p>
<table style="border-right: #cccccc 1px dotted; table-layout: fixed; border-top: #cccccc 1px dotted; border-left: #cccccc 1px dotted; border-bottom: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">
    <tbody>
        <tr>
            <td style="word-wrap: break-word" bgcolor="#f3f3f3">ps.setBoolean("isClosed",new&nbsp;Boolean(true)); <br />
            ps.setBoolean("isClosed",new&nbsp;Boolean(isClosed)); <br />
            ps.setBoolean("isClosed",new&nbsp;Boolean(i==3));</td>
        </tr>
    </tbody>
</table>
</p>
<p>　　通常这些系统中构造的Boolean实例的个数是相当多的，所以系统中充满了大量Boolean实例小对象，这是相当消耗内存的。Boolean类实际上只要两个实例就够了，一个true的实例，一个false的实例。</p>
<p>　　Boolean类提供两了个静态变量：</p>
<p>
<table style="border-right: #cccccc 1px dotted; table-layout: fixed; border-top: #cccccc 1px dotted; border-left: #cccccc 1px dotted; border-bottom: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">
    <tbody>
        <tr>
            <td style="word-wrap: break-word" bgcolor="#f3f3f3">public&nbsp;static&nbsp;final&nbsp;Boolean&nbsp;TRUE&nbsp;=&nbsp;new&nbsp;Boolean(true); <br />
            public&nbsp;static&nbsp;final&nbsp;Boolean&nbsp;FALSE&nbsp;=&nbsp;new&nbsp;Boolean(false);</td>
        </tr>
    </tbody>
</table>
</p>
<p>　　需要的时候只要取这两个变量就可以了，</p>
<p>　　比如：</p>
<p>
<table style="border-right: #cccccc 1px dotted; table-layout: fixed; border-top: #cccccc 1px dotted; border-left: #cccccc 1px dotted; border-bottom: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">
    <tbody>
        <tr>
            <td style="word-wrap: break-word" bgcolor="#f3f3f3">ps.setBoolean("isClosed",Boolean.TRUE);</td>
        </tr>
    </tbody>
</table>
</p>
<p>　　那么象2、3句那样要根据一个boolean变量来创建一个Boolean怎么办呢?可以使用Boolean提供的静态方法： Boolean.valueOf()</p>
<p>　　比如：</p>
<p>
<table style="border-right: #cccccc 1px dotted; table-layout: fixed; border-top: #cccccc 1px dotted; border-left: #cccccc 1px dotted; border-bottom: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0">
    <tbody>
        <tr>
            <td style="word-wrap: break-word" bgcolor="#f3f3f3">
            <p>ps.setBoolean("isClosed",Boolean.valueOf(isClosed)); </p>
            <p>ps.setBoolean("isClosed",Boolean.valueOf(i==3)); </p>
            </td>
        </tr>
    </tbody>
</table>
</p>
<p>　　因为valueOf的内部实现是：return (b ? TRUE : FALSE);</p>
<p>　　所以可以节省大量内存。相信如果Java规范直接把Boolean的构造函数规定成private，就再也不会出现这种情况了。</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<strong>&nbsp;&nbsp;(2)别用new Integer。 　　</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;和Boolean类似，java开发中使用Integer封装int的场合也非常多，并且通常用int表示的数值通常都非常小。SUN SDK中对Integer的实例化进行了优化,Integer类缓存了-128到127这256个状态的Integer，如果使用Integer.valueOf(int i)，传入的int范围正好在此内，就返回静态实例。这样如果我们使用Integer.valueOf代替new Integer的话也将大大降低内存的占用。如果您的系统要在不同的SDK(比如IBM SDK)中使用的话，那么可以自己做了工具类封装一下，比如IntegerUtils.valueOf(),这样就可以在任何SDK中都可以使用这种特性。</p>
<p>　<strong>　(3)用StringBuffer代替字符串相加。</strong></p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong>这个我就不多讲了，因为已经被人讲过N次了。我只想将一个不是笑话的笑话，我在看国内某&#8220;著名&#8221;java开发的WEB系统的源码中，竟然发现其中大量的使用字符串相加，一个拼装SQL语句的方法中竟然最多构造了将近100个string实例。无语中!</p>
<p>　　<strong>(4)过滥使用哈希表</strong></p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </strong>有一定开发经验的开发人员经常会使用hash表(hash表在JDK中的一个实现就是HashMap)来缓存一些数据，从而提高系统的运行速度。比如使用HashMap缓存一些物料信息、人员信息等基础资料，这在提高系统速度的同时也加大了系统的内存占用，特别是当缓存的资料比较多的时候。其实我们可以使用</p>
<p>　　操作系统中的缓存的概念来解决这个问题，也就是给被缓存的分配一个一定大小的缓存容器，按照一定的算法淘汰不需要继续缓存的对象，这样一方面会因为进行了对象缓存而提高了系统的运行效率，同时由于缓存容器不是无限制扩大，从而也减少了系统的内存占用。现在有很多开源的缓存实现项目，比如ehcache、oscache等，这些项目都实现了FIFO、MRU等常见的缓存算法。</p>
<p>　<strong>　(5)避免过深的类层次结构和过深的方法调用。</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 因为这两者都是非常占用内存的(特别是方法调用更是堆栈空间的消耗大户。</p>
<p>　　<strong>(6)变量只有在用到它的时候才定义和实例化。</strong></p>
<p>　<strong>　(7)尽量避免使用static变量，类内私有常量可以用final来代替。</strong></p>
</div>
 <img src ="http://www.blogjava.net/103335460/aggbug/295476.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/103335460/" target="_blank">雪山飞狐</a> 2009-09-17 17:07 <a href="http://www.blogjava.net/103335460/articles/295476.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>