﻿<?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-BeanSoft's Java Blog</title><link>http://www.blogjava.net/beansoft/</link><description>MyEclipse 6, Java EE 5, JSPWiki, Spring, Struts, Hibernate, JPA, SWT, Swing, AJAX, JavaScript, Netbeans</description><language>zh-cn</language><lastBuildDate>Sun, 18 May 2008 00:34:43 GMT</lastBuildDate><pubDate>Sun, 18 May 2008 00:34:43 GMT</pubDate><ttl>60</ttl><item><title>欢迎关注《开源技术选型手册》</title><link>http://www.blogjava.net/beansoft/archive/2008/05/16/200784.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Fri, 16 May 2008 01:47:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/16/200784.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/200784.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/16/200784.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/200784.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/200784.html</trackback:ping><description><![CDATA[<p>我作为作者之一参与了本书的编写（ＯＲＭ），即将出版，欢迎购买。</p> <p>《开源技术选型手册》是一本面向CTO、项目经理、团队Leader和高级软件开发人员的一本参考书，供他们在做技术选型的时候使用。我们期望通过各个领域专家对自己所涉及领域的流行开源软件的整理分析，让读者能够阅览此书后对这些软件有一个大体的认识，并客观地了解它们的优缺点，进而做出有价值的判断。本书将由博文视点公司在2008年出版发行。</p> <p>作为作者之一，当然希望买的人越多越好，不过，如果您是想学习开源软件的初学者，此书可能不适合您，本书仅为介绍比较性质，并非开源软件教程。</p> <p>&nbsp;</p> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/2d68c82c17dc_898C/%E5%BC%80%E6%BA%90_2.jpg"><img border="0" alt="开源" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/2d68c82c17dc_898C/%E5%BC%80%E6%BA%90_thumb.jpg" width="618" height="768"></a></p><img src ="http://www.blogjava.net/beansoft/aggbug/200784.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-16 09:47 <a href="http://www.blogjava.net/beansoft/archive/2008/05/16/200784.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Pocket PC上运行Java ME应用和Java应用的JVM列表（留存）</title><link>http://www.blogjava.net/beansoft/archive/2008/05/14/200501.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Wed, 14 May 2008 14:00:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/14/200501.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/200501.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/14/200501.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/200501.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/200501.html</trackback:ping><description><![CDATA[<a title="爬树猴-Java游戏部署在Windows Mobile平台" href="http://www.mobile07.cn/showbbs.php?id=30">爬树猴-Java游戏部署在Windows Mobile平台</a> 这文章大体挺详细，细节部分不太全 <p><a title="weme-wm50-arm-ppro10_6.1.1.20061110-161633.zip CSDN 下载频道" href="http://d.download.csdn.net/down/437256/grantgrass">weme-wm50-arm-ppro10_6.1.1.20061110-161633.zip CSDN 下载频道</a> 可以运行eswt的Personal Java J9 虚拟机</p> <p><a title="Windows Mobile 6 Localized Emulator Images" href="http://www.microsoft.com/downloads/details.aspx?familyid=38C46AA8-1DD7-426F-A913-4F370A65A582&amp;displaylang=en">Windows Mobile 6 Localized Emulator Images</a> Mobile 6 智能手机简体中文模拟器镜像文件</p> <p><a title="Mysaifu JVM - A free Java Virtual Machine for Windows Mobile" href="http://www2s.biglobe.ne.jp/~dat/java/project/jvm/index_en.html">Mysaifu JVM - A free Java Virtual Machine for Windows Mobile</a> 令人震惊的日本开源JVM，能运行AWT，Swing，不得不服</p> <p><a title="ibm WebSphere Everyplace Micro Environment" href="https://www14.software.ibm.com/webapp/iwm/web/reg/download.do?source=weme&amp;S_PKG=dl61_win&amp;S_TACT=104CBW71&amp;lang=en_US&amp;cp=UTF-8&amp;dlmethod=http">ibm WebSphere Everyplace Micro Environment</a> IBM J9 手机虚拟机的原始下载出处</p><img src ="http://www.blogjava.net/beansoft/aggbug/200501.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-14 22:00 <a href="http://www.blogjava.net/beansoft/archive/2008/05/14/200501.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>最新版的Winamp真酷！</title><link>http://www.blogjava.net/beansoft/archive/2008/05/11/199813.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Sun, 11 May 2008 04:03:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/11/199813.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199813.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/11/199813.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199813.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199813.html</trackback:ping><description><![CDATA[
		<p>就是内存占用有点多，活动内存10MB，虚拟内存40MB，还好，我电脑2G内存。</p>
		<p> </p>
		<p>最小化模式（可以浮动显示）：</p>
		<p>
				<a href="/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_2.png">
						<img border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_thumb.png" width="727" height="23" />
				</a>
		</p>
		<p>正常模式：</p>
		<p>
				<a href="/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_6.png">
						<img border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_thumb_2.png" width="407" height="318" />
				</a>
		</p>
		<p>Media Player 11 皮肤：</p>
		<p>
				<a href="/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_4.png">
						<img border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/Winamp_A978/image_thumb_1.png" width="348" height="609" />
				</a>
		</p>
<img src ="http://www.blogjava.net/beansoft/aggbug/199813.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-11 12:03 <a href="http://www.blogjava.net/beansoft/archive/2008/05/11/199813.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Applet安全限制和签名Applet</title><link>http://www.blogjava.net/beansoft/archive/2008/05/11/199801.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Sun, 11 May 2008 02:44:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/11/199801.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199801.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/11/199801.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199801.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199801.html</trackback:ping><description><![CDATA[<p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">因为</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">在浏览器中运行，所以，并不是什么操作都能做，例如不能读写创建文件，不能任意连接网站等等，总之就是不可威胁用户电脑的信息安全。下面我们来试试看，新建一个文件操作的</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，代码清单如下：</span></p> <p class="MsoNormal"><b style="mso-bidi-font-weight: normal"><span lang="EN-US">applets.FileOperationApplet<?xml:namespace prefix = o /><o:p></o:p></span></b></p> <table style="border-top-style: none; border-right-style: none; border-left-style: none; border-collapse: collapse; border-bottom-style: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0pt 5.4pt 0pt 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"> <td style="border-right: windowtext 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; border-top: windowtext 1pt solid; padding-bottom: 0pt; border-left: windowtext 1pt solid; width: 426.1pt; padding-top: 0pt; border-bottom: windowtext 1pt solid; mso-border-alt: solid windowtext .5pt" valign="top" width="568"> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">package</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> applets;</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">import</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> java.applet.Applet;</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">import</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> java.awt.Label;</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">import</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> java.io.*;</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">public</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> </span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">class</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> FileOperationApplet </span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">extends</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> Applet {</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </span></span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">public</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> </span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">void</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> start() {</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">try</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> {</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>FileWriter out = </span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">new</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> FileWriter(</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"c:\\test.txt"</span><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">);</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.write(</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: #2a00ff; font-family: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'; mso-font-kerning: 0pt; mso-bidi-font-family: 'Courier New'">测试写入文件</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">);</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>out.close();</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>add(</span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">new</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> Label(</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: #2a00ff; font-family: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'; mso-font-kerning: 0pt; mso-bidi-font-family: 'Courier New'">文件写入成功</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">));</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>} </span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">catch</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> (IOException e) {</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 10pt; color: #3f7f5f; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">// </span><b><span style="font-size: 10pt; color: #7f9fbf; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">TODO</span></b><span style="font-size: 10pt; color: #3f7f5f; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> Auto-generated catch block</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>e.printStackTrace();</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>add(</span><b><span style="font-size: 10pt; color: #7f0055; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">new</span></b><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"> Label(</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: #2a00ff; font-family: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'; mso-font-kerning: 0pt; mso-bidi-font-family: 'Courier New'">文件写入失败</span><span style="font-size: 10pt; color: #2a00ff; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">"</span><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">));</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p style="text-align: left; mso-layout-grid-align: none" class="MsoNormal" align="left"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp; </span>}</span><span style="font-size: 10pt; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US"><o:p></o:p></span></p> <p class="MsoNormal"><span style="font-size: 10pt; color: black; font-family: 'Courier New'; mso-font-kerning: 0pt" lang="EN-US">}</span></p></td></tr></tbody></table> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">。首先我们用</span><span lang="EN-US">Eclipse</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">来运行，当然没问题，因为模拟器为了调试方便，是运行所有的操作的，运行后，界面显示文件写入成功，并且在</span><span lang="EN-US">C</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">盘根目录下可以找到文件</span><span lang="EN-US">test.txt</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，并看到文件内容。随后我们创建</span><span lang="EN-US">HTML</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">文件，打算在网页文件中运行它，文件代码清单如下：</span></p> <p class="MsoNormal"><b style="mso-bidi-font-weight: normal"><span lang="EN-US">FileOperationApplet.html<o:p></o:p></span></b></p> <table style="border-top-style: none; border-right-style: none; border-left-style: none; border-collapse: collapse; border-bottom-style: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0pt 5.4pt 0pt 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"> <td style="border-right: windowtext 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; border-top: windowtext 1pt solid; padding-bottom: 0pt; border-left: windowtext 1pt solid; width: 426.1pt; padding-top: 0pt; border-bottom: windowtext 1pt solid; mso-border-alt: solid windowtext .5pt" valign="top" width="568"> <p class="MsoNormal"><span lang="EN-US">&lt;html&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;body&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;applet code=applets.FileOperationApplet.class width="200" height="200" &gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/applet&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/body&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/html&gt;</span></p></td></tr></tbody></table> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，接着用浏览器打开这个网页，可以看到如图</span><span lang="EN-US">18.6</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">所示的出错界面和信息提示。这个出错信息完整的内容是：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">java.security.AccessControlException: access denied (java.io.FilePermission c:\test.txt write)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.security.AccessControlContext.checkPermission(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.security.AccessController.checkPermission(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.lang.SecurityManager.checkPermission(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.lang.SecurityManager.checkWrite(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.io.FileOutputStream.&lt;init&gt;(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.io.FileOutputStream.&lt;init&gt;(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.io.FileWriter.&lt;init&gt;(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at applets.FileOperationApplet.start(FileOperationApplet.java:10)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>at java.lang.Thread.run(Unknown Source)<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，即：访问拒绝，不能写入文件</span><span lang="EN-US">c:\test.txt</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">。这很安全，不是吗？</span></p> <p style="text-align: center" class="MsoNormal" align="center"><span lang="EN-US"><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/AppletApplet_9712/clip_image002_2.jpg"><img border="0" alt="clip_image002" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/AppletApplet_9712/clip_image002_thumb.jpg" width="295" height="147" v:shapes="_x0000_i1025"></a></span></p> <p style="text-align: center" class="MsoNormal" align="center"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">图</span><span lang="EN-US">18.6 Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">安全限制错误</span></p> <p style="text-align: center" class="MsoNormal" align="center"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">然而实话实说，</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">在企业内部网上，还是很有用处的，它一般可以用来做一些复杂的操作，或者是大文件的上传下载，即时消息支持等等，笔者见过不少这样的解决方案（网络上也有人制作了</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">批量文件上传的功能）。不过，这样的限制，虽然是安全了，但是却让</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">的功能大打折扣，那么有没有办法绕过这层安全限制呢？答案是肯定的，这就是</span><span lang="EN-US">Java</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">中推出的签名</span><span lang="EN-US">JAR</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">功能，可以帮助我们在用户同意的情况下，绕过安全限制（当然在内部网没有问题，如果是外网，很容易发生恶意代码，例如恶意删除文件等等）。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b style="mso-bidi-font-weight: normal"><span style="color: red; font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">注意：</span></b><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">由于</span><span lang="EN-US">Microsoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">也推出了一款</span><span lang="EN-US">JVM</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，导致了</span><span lang="EN-US">Java</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">标准的分裂，微软格式的数字签名</span><span lang="EN-US">applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">打包格式为</span><span lang="EN-US">cab</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，签名方式也和我们下面描述的内容不同，有兴趣的读者可以去查找相关资料，总之是不通用的。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">如果是正规的公司，数字证书都是需要购买的，像</span><span lang="EN-US">Verisign</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">之类的公司，提供这样的服务，它的好处就是确保证书是全球唯一的，能够在出现事故时，鉴定是否是有效的数字证书，其实就类似于一份全球唯一的身份证，带有你自己才知道的密码，缺点就是不免费。大家如果在线安装过软件，一般大公司的插件，例如</span><span lang="EN-US">Flash</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">播放器等等，都会带有数字证书。当然，在</span><span lang="EN-US">Java</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">中，不需要这么麻烦，</span><span lang="EN-US">JDK</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">已经提供了一个工具</span><i style="mso-bidi-font-style: normal"><span lang="EN-US">keytool.exe</span></i><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">来让开发人员自己生成数字证书（至于安全，加密方面的话题，那就太繁杂了，读者可以自己去查找资料）。如果不想使用命令行版本的这个工具，还可以下载一个开源的软件</span><span lang="EN-US">KeyTool GUI</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，详见参考资料一节的内容。下面我们就快速进入主题，首先启动</span><span lang="EN-US">CMD</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">命令行工具，然后进入到当前的项目目录，运行下面的命令：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">keytool -genkey -dname "cn=BeanSoft Studio, ou=Java Software, o=BeanSoft Studio, c=China" -alias beansoft -keypass beansoft -storepass beansoft -validity 365 -keystore .\beansoft<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">这段命令将会创建一个数字文件放在当前目录的二进制文件</span><span lang="EN-US">beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">中。该证书的别名是</span><span lang="EN-US">beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">（通过</span><span lang="EN-US">-alias</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">指定），密钥的密码是</span><span lang="EN-US">beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">（</span><span lang="EN-US">-keypass</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">命令指定），存储密钥的文件密码也是</span><span lang="EN-US">beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">（</span><span lang="EN-US">- storepass</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">命令指定），证书的有效期是</span><span lang="EN-US">365</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">天（通过</span><span lang="EN-US">-validity</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">指定），</span></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">并把它存储到密码文件</span><span lang="EN-US"> beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">中。这段命令执行后，没有出错信息的话即是创建成功。另外，如果是实际的项目的话，最好将两个密码设置成安全级别比较高的密码。除了这样来生成一个密钥文件外，还可以用</span><span lang="EN-US">KeyTool</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">以交互的方式来生成（比较推荐初学者使用这种方式）：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">keytool –genkey<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">随后，会提示您输入必须或者可选的内容。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">随后我们可以检查下这份证书文件的内容，执行下面的命令：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">keytool -list -keystore .\beansoft -storepass beansoft<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">会输出信息：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">Keystore </span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">类型：</span><span lang="EN-US"> JKS<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">Keystore </span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">提供者：</span><span lang="EN-US"> SUN<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">您的</span><span lang="EN-US"> keystore </span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">包含</span><span lang="EN-US"> 1 </span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">输入</span><span lang="EN-US"><o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">beansoft, 2008-5-7, PrivateKeyEntry,<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">认证指纹</span><span lang="EN-US"> (MD5)</span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">：</span><span lang="EN-US"> 16:15:A0:47:92:96:29:96:93:5D:F0:76:F7:D0:2C:84<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">。这说明证书没有问题。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">有时可能需要导出证书供人使用，可以执行下面的命令：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">keytool -export -keystore .\beansoft -storepass beansoft -file beansoft.cer -alias beansoft<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">随后会生成一个</span><span lang="EN-US">beansoft.cer</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，不过在这里对</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">签名是不需要这样做的，只有在做</span><span lang="EN-US">SSL</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">开发时，才能用得到它。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">随后，请读者按照</span><span lang="EN-US">16.1.3.1 JAR </span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">文件一节所介绍的内容，将</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">的类文件打包成</span><span lang="EN-US">jar</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">文件，名为</span><span lang="EN-US">applets.jar</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，放在项目的根目录下。接着就进入最关键的，对</span><span lang="EN-US">JAR</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">文件进行签名了，键入下列命令：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US">jarsigner -verbose -keystore .\beansoft applets.jar beansoft<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">接着提示信息为：</span></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">输入密钥库的口令短语：</span><span lang="EN-US">beansoft</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">按下回车，即可看到签名过程：</span></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在添加：</span><span lang="EN-US"> META-INF/MANIFEST.MF<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在添加：</span><span lang="EN-US"> META-INF/BEANSOFT.SF<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在添加：</span><span lang="EN-US"> META-INF/BEANSOFT.DSA<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在添加：</span><span lang="EN-US"> applets/<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在签名：</span><span lang="EN-US"> applets/FileOperationApplet.class<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在签名：</span><span lang="EN-US"> applets/LifeCycleApplet.class<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在签名：</span><span lang="EN-US"> applets/MyApplet.class<o:p></o:p></span></i></p> <p class="MsoNormal"><i style="mso-bidi-font-style: normal"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></i><i style="mso-bidi-font-style: normal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">正在签名：</span><span lang="EN-US"> applets/usb.jpg<o:p></o:p></span></i></p> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">可以看到</span><span lang="EN-US">META-INF</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">目录下将会多出两个数字指纹文件，运行的时候</span><span lang="EN-US">JVM</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">将会和类文件进行对比，确保文件没被人篡改过。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">好了，现在的</span><span lang="EN-US">applets.jar</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">已经今非昔比了，它是个被签名过的</span><span lang="EN-US">JAR</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，怎么使用它呢？需要在它所在的同一目录下，即项目根目录下，新建一个</span><span lang="EN-US">HTML</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">文件，代码清单如下：</span></p> <p class="MsoNormal"><b style="mso-bidi-font-weight: normal"><span lang="EN-US">FileOperationAppletSigned.html<o:p></o:p></span></b></p> <table style="border-top-style: none; border-right-style: none; border-left-style: none; border-collapse: collapse; border-bottom-style: none; mso-border-alt: solid windowtext .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0pt 5.4pt 0pt 5.4pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext" class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0"> <tbody> <tr style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"> <td style="border-right: windowtext 1pt solid; padding-right: 5.4pt; padding-left: 5.4pt; border-top: windowtext 1pt solid; padding-bottom: 0pt; border-left: windowtext 1pt solid; width: 426.1pt; padding-top: 0pt; border-bottom: windowtext 1pt solid; mso-border-alt: solid windowtext .5pt" valign="top" width="568"> <p class="MsoNormal"><span lang="EN-US">&lt;html&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;body&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;applet code=applets.FileOperationApplet.class <b style="mso-bidi-font-weight: normal"><i style="mso-bidi-font-style: normal">archive="applets.jar"</i></b> width="200" height="200" &gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/applet&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/body&gt;</span></p> <p class="MsoNormal"><span lang="EN-US">&lt;/html&gt;<b style="mso-bidi-font-weight: normal"><o:p></o:p></b></span></p></td></tr></tbody></table> <p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">唯一的不同，就是多了粗斜体的</span><span lang="EN-US">archive="applets.jar"</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">这句话。</span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">好了，最激动人心的时刻到来了，请用浏览器打开这个网页，会看到一个安全提示，如图</span><span lang="EN-US">18.7</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">所示。点击<b style="mso-bidi-font-weight: normal">运行</b>按钮，即可看到正确的执行了操作，在用户的</span><span lang="EN-US">C</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">盘上创建了一个文件！很好，我们可以为所欲为了，像写普通</span><span lang="EN-US">Java</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">应用那样来写</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">了！如果点击<b style="mso-bidi-font-weight: normal">取消</b>按钮，那很自然的无法创建文件，用户拥有选择权，当然，如果是企业的客户，自然都是让他们选择运行按钮。其实通过这里读者也可以注意到，现在好多网站（例如视频分享的网站等），都会提示您下载一些插件提供增强的功能，然而，他们的数字证书和这里的一样，都是自己造的（其实就是<b style="mso-bidi-font-weight: normal"><span style="color: red">伪造</span></b>），所以，装完后并不能保证是否夹杂了病毒或者恶意代码，所以读者上网时千万要谨慎识别，不要随意点击在线安装或者运行软件。</span></p> <p style="text-align: center" class="MsoNormal" align="center"><span lang="EN-US"><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/AppletApplet_9712/clip_image004_2.jpg"><img border="0" alt="clip_image004" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/AppletApplet_9712/clip_image004_thumb.jpg" width="295" height="197" v:shapes="_x0000_i1026"></a></span></p> <p style="text-align: center" class="MsoNormal" align="center"><span lang="EN-US">18.7 Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">数字签名安全提示</span></p> <p style="text-align: center" class="MsoNormal" align="center"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p> <p class="MsoNormal"><span lang="EN-US"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>OK</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，罗罗嗦嗦的讲了这么老半天，就是希望给那些使用</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">的用户提供一个相对完整的实践方案，也许现在能在项目中用到</span><span lang="EN-US">AWT</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">，</span><span lang="EN-US">Swing</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">的地方，也就剩下</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">了。接下来讨论在网页中使用</span><span lang="EN-US">Applet</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">的进一步功能：参数传递和调用</span><span lang="EN-US">JavaScript</span><span style="font-family: 宋体; mso-ascii-font-family: arial; mso-hansi-font-family: arial">。</span></p><img src ="http://www.blogjava.net/beansoft/aggbug/199801.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-11 10:44 <a href="http://www.blogjava.net/beansoft/archive/2008/05/11/199801.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>谷歌词霸真的那么好？词库大幅缩水！</title><link>http://www.blogjava.net/beansoft/archive/2008/05/09/199518.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Fri, 09 May 2008 07:36:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/09/199518.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199518.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/09/199518.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199518.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199518.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 2008 Beta 有词库53本，然而谷歌词霸里却只有13本！&nbsp;&nbsp;<a href='http://www.blogjava.net/beansoft/archive/2008/05/09/199518.html'>阅读全文</a><img src ="http://www.blogjava.net/beansoft/aggbug/199518.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-09 15:36 <a href="http://www.blogjava.net/beansoft/archive/2008/05/09/199518.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TextArea显示彩色文字</title><link>http://www.blogjava.net/beansoft/archive/2008/05/09/199433.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Fri, 09 May 2008 02:38:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/09/199433.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199433.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/09/199433.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199433.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199433.html</trackback:ping><description><![CDATA[<p></p> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/TextArea_959F/image_2.png"><img border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/TextArea_959F/image_thumb.png" width="177" height="41"></a>  <script><![CDATA[
var div = document.createElement("div");
div.innerHTML="<b>Bold</b>font color=blue>blue</font>i><font color=red>red</font>/i>";
tx.appendChild(div);
]]&gt;</script>  </p> <p>只有IE浏览器才支持。</p> <p>这段显示效果的HTML代码是：</p> <p>&lt;textarea id="tx"&gt;&lt;/textarea&gt;<br>&lt;script&gt;<br>var div = document.createElement("div");<br>div.innerHTML="&lt;b&gt;Bold&lt;/b&gt;&lt;font color=blue&gt;blue&lt;/font&gt;&lt;i&gt;&lt;font color=red&gt;red&lt;/font&gt;&lt;/i&gt;";<br>tx.appendChild(div);<br>&lt;/script&gt;</p> <p>&nbsp;</p> <p>BlogJava 对脚本嵌入支持不好，先前发的没看到效果，只好贴图看效果了。</p><img src ="http://www.blogjava.net/beansoft/aggbug/199433.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-09 10:38 <a href="http://www.blogjava.net/beansoft/archive/2008/05/09/199433.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MapEasy 作者更新的 webgis完整功能例子.rar，鹰眼，测距，拖拉缩放</title><link>http://www.blogjava.net/beansoft/archive/2008/05/09/199420.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Fri, 09 May 2008 01:54:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/09/199420.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199420.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/09/199420.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199420.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199420.html</trackback:ping><description><![CDATA[<p>Tim Wu分享的新版本代码，深圳市新例子，包括了大部分现代的Web GIS系统功能。下载地址：</p> <p><a title="http://groups.google.com/group/mapeasy" href="http://groups.google.com/group/mapeasy">http://groups.google.com/group/mapeasy</a> 然后 Files 文件列表下</p> <p>或者论坛 <a title="http://www.netbeans.org.cn/bbs/viewthread.php?tid=163&amp;extra=page%3D1" href="http://www.netbeans.org.cn/bbs/viewthread.php?tid=163&amp;extra=page%3D1">http://www.netbeans.org.cn/bbs/viewthread.php?tid=163&amp;extra=page%3D1</a></p> <p>或者ftp <a title="ftp://beansoftdown:1234@219.141.70.147" href="ftp://beansoftdown:1234@219.141.70.147">ftp://beansoftdown:1234@219.141.70.147</a> 下的 MapEasy 目录下</p> <p>注：本人不会GIS，此处转载只为提供更多信息的目的。</p> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/MapEasywebgis.rar_8B35/webgis%E5%AE%8C%E6%95%B4%E5%8A%9F%E8%83%BD%E4%BE%8B%E5%AD%90%EF%BC%8C%E9%B9%B0%E7%9C%BC%EF%BC%8C%E6%B5%8B%E8%B7%9D%EF%BC%8C%E6%8B%96%E6%8B%89%E7%BC%A9%E6%94%BE_2.png"><img border="0" alt="webgis完整功能例子，鹰眼，测距，拖拉缩放" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/MapEasywebgis.rar_8B35/webgis%E5%AE%8C%E6%95%B4%E5%8A%9F%E8%83%BD%E4%BE%8B%E5%AD%90%EF%BC%8C%E9%B9%B0%E7%9C%BC%EF%BC%8C%E6%B5%8B%E8%B7%9D%EF%BC%8C%E6%8B%96%E6%8B%89%E7%BC%A9%E6%94%BE_thumb.png" width="640" height="368"></a></p><img src ="http://www.blogjava.net/beansoft/aggbug/199420.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-09 09:54 <a href="http://www.blogjava.net/beansoft/archive/2008/05/09/199420.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SSL安全套接字服务器和客户端代码示例</title><link>http://www.blogjava.net/beansoft/archive/2008/05/07/199029.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Wed, 07 May 2008 09:47:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/07/199029.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/199029.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/07/199029.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/199029.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/199029.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: SSL，大家都知道，只要是想搞用证书来实现数据加密传输的，都离不开它，例如HTTPS也是类似的实现，我提供的这个代码就是2004年时候学习SSL时的练习代码，带有详细说明，有需要的可以试试，毕竟我也现在也用不到这个代码，放在那里是浪费。&nbsp;&nbsp;<a href='http://www.blogjava.net/beansoft/archive/2008/05/07/199029.html'>阅读全文</a><img src ="http://www.blogjava.net/beansoft/aggbug/199029.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-07 17:47 <a href="http://www.blogjava.net/beansoft/archive/2008/05/07/199029.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>做人应该多讲礼貌</title><link>http://www.blogjava.net/beansoft/archive/2008/05/07/198937.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Wed, 07 May 2008 05:17:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/07/198937.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/198937.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/07/198937.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/198937.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/198937.html</trackback:ping><description><![CDATA[<p>不止一次，发邮件问问题的同志，得到答复之后，连个回复谢谢都没有。  <p>&shy; <p>还有人加了QQ或者QQ群，就知道一个劲的问问题，也不管别人的状态是不是忙碌或者工作，真是让人很无奈，有时候不得不关了QQ。  <p>&shy; <p>谁都是初学者过来的，急切想得到帮助无可厚非，但是，网络上的人都不是慈善家或者活雷锋，都有自己的事情在做，有人答了，很好，没人答了，就不要发一遍又一遍，有时候真是让人无奈之极。 做人互相应该多体谅一些，如果你忙的时候，别人来打扰你，你是否也会很高兴，己所不欲，勿施于人。 <p>&shy; <p>再次重申，除购书用户外，不要在我忙碌或者隐身时QQ发信息，请发邮件<a href="mailto:beansoft@126.com">beansoft@126.com</a>，添加QQ者不说明来意一律拒绝。  <p>&shy; <p>另外，谁都是初学者过来的，那么，靠别人不如靠自己，耐心的Google，自己钻研，效果要好的多，不经过煎熬，哪有那么容易就学会的。归根结底还是要靠自己。  <p>&shy; <p>发点牢骚，继续写书。</p><img src ="http://www.blogjava.net/beansoft/aggbug/198937.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-07 13:17 <a href="http://www.blogjava.net/beansoft/archive/2008/05/07/198937.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Windows Mobile 5 Pocket PC手机模拟器中文版</title><link>http://www.blogjava.net/beansoft/archive/2008/05/07/198912.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Wed, 07 May 2008 03:56:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/07/198912.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/198912.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/07/198912.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/198912.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/198912.html</trackback:ping><description><![CDATA[<h3>Windows Mobile 5 Pocket PC手机模拟器中文版</h3> <p>整理制作 <a href="mailto:BeanSoft@126.com">BeanSoft@126.com</a> 刘长炯 2008-5-7 <p><a href="http://beansoft.blogjava.net/">http://beansoft.blogjava.net/</a> <p><b><font color="#ff0000">声明：未经许可和授权，严禁转载此文章和作品！</font></b> <p>下载地址：<a title="ftp://beansoftdown:1234@219.141.70.147" href="ftp://beansoftdown:1234@219.141.70.147">ftp://beansoftdown:1234@219.141.70.147</a> /PPC中文模拟器/ <p>安装步骤： <p>1. 运行<b> vs_emulator.exe </b>安装Microsoft Device Emulator version 2.0 ； <p>2. 将剩余文件复制到磁盘任意目录，然后运行<b>硬启动</b><b>PPC</b><b>中文.bat</b>来初次启动Pocket PC，并根据相关资料进行设置，例如联网和虚拟存储卡等； <p>3. 退出时选择保存状态，会多出镜像文件WM5.dess； <p>4. 再次启动时可运行<b>恢复状态</b><b>PPC</b><b>中文.bat</b>即可快速恢复到上次运行的界面和程序。 <p>这样，就可以放心的在模拟器上测试程序，而不用担心损坏了真正的手机，也可以进行相关的eSWT和 .NET Mobile测试。 <p>截图： <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image002_2.jpg"><img border="0" alt="clip_image002" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image002_thumb.jpg" width="281" height="173"></a> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image003_2.gif"><img border="0" alt="clip_image003" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image003_thumb.gif" width="356" height="552"></a> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image004_2.gif"><img border="0" alt="clip_image004" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image004_thumb.gif" width="356" height="552"></a> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image005_2.gif"><img border="0" alt="clip_image005" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image005_thumb.gif" width="356" height="552"></a> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image006_2.gif"><img border="0" alt="clip_image006" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image006_thumb.gif" width="356" height="552"></a> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image007_2.gif"><img border="0" alt="clip_image007" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/WindowsMobile5PocketPC_A7B4/clip_image007_thumb.gif" width="356" height="552"></a></p><img src ="http://www.blogjava.net/beansoft/aggbug/198912.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-07 11:56 <a href="http://www.blogjava.net/beansoft/archive/2008/05/07/198912.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Netbeans 团队 Blog 开通了 http://nb.blogjava.net/ </title><link>http://www.blogjava.net/beansoft/archive/2008/05/04/198036.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Sun, 04 May 2008 03:42:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/04/198036.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/198036.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/04/198036.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/198036.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/198036.html</trackback:ping><description><![CDATA[
		<a href="http://nb.blogjava.net/" target="_new">http://nb.blogjava.net/</a>
		<br />
		<br />欢迎成员发帖，访问！<img src ="http://www.blogjava.net/beansoft/aggbug/198036.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-04 11:42 <a href="http://www.blogjava.net/beansoft/archive/2008/05/04/198036.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Netbeans 的中文网站</title><link>http://www.blogjava.net/beansoft/archive/2008/05/04/198015.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Sun, 04 May 2008 02:35:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/04/198015.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/198015.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/04/198015.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/198015.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/198015.html</trackback:ping><description><![CDATA[
		<a href="http://www.netbeans.org/index_zh_CN.html">http://www.netbeans.org/index_zh_CN.html</a> Netbeans 官方中文社区<br /><br /><a href="http://www.netbeans.cn/">http://www.netbeans.cn/</a> 这个论坛人数比较多，但是帖子嘛，也不是特别的多。<br /><br /><a href="http://www.netbeans.org.cn/">http://www.netbeans.org.cn/</a> 我目前所在的论坛，人数更少。<br /><br />现在反而是做Ruby开发的人用NB比Java的多，呵呵，有意思的现象。<img src ="http://www.blogjava.net/beansoft/aggbug/198015.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-04 10:35 <a href="http://www.blogjava.net/beansoft/archive/2008/05/04/198015.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在线Flash小测试：MyEclipse 6</title><link>http://www.blogjava.net/beansoft/archive/2008/05/03/197897.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Sat, 03 May 2008 09:17:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/03/197897.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197897.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/03/197897.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197897.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197897.html</trackback:ping><description><![CDATA[<p>纯属娱乐，有兴趣的去看看：</p> <p><a title="http://beansoft.java-cn.org/myeclipse_doc_cn/MyEclipsetest1/" href="http://beansoft.java-cn.org/myeclipse_doc_cn/MyEclipsetest1/">http://beansoft.java-cn.org/myeclipse_doc_cn/MyEclipsetest1/</a></p> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/fb1baff811d2_F0AE/image_2.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/fb1baff811d2_F0AE/image_thumb.png" width="544" height="412"></a></p><img src ="http://www.blogjava.net/beansoft/aggbug/197897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-03 17:17 <a href="http://www.blogjava.net/beansoft/archive/2008/05/03/197897.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Head First EJB 中文版电子书下载</title><link>http://www.blogjava.net/beansoft/archive/2008/05/02/197757.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Fri, 02 May 2008 09:28:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/02/197757.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197757.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/02/197757.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197757.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197757.html</trackback:ping><description><![CDATA[<p><a title="http://cid-519b3f7aa2172030.skydrive.live.com/self.aspx/Public/Books/Head%20first%20EJB.pdf" href="http://cid-519b3f7aa2172030.skydrive.live.com/self.aspx/Public/Books/Head%20first%20EJB.pdf">http://cid-519b3f7aa2172030.skydrive.live.com/self.aspx/Public/Books/Head%20first%20EJB.pdf</a></p> <p>下的时候把FlashGet，迅雷之类的下载工具关了，否则看不到下载链接页面。</p> <p>图文并茂的讲解 EJB 2.1 的书籍，非常多的诙谐比喻和生动插图。</p><img src ="http://www.blogjava.net/beansoft/aggbug/197757.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-02 17:28 <a href="http://www.blogjava.net/beansoft/archive/2008/05/02/197757.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Foxit PDF Reader 2.3 新功能：标签式浏览和书签编辑器</title><link>http://www.blogjava.net/beansoft/archive/2008/05/02/197700.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Thu, 01 May 2008 16:59:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/05/02/197700.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197700.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/05/02/197700.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197700.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197700.html</trackback:ping><description><![CDATA[<p><a title="http://www.foxitsoftware.com/downloads/" href="http://www.foxitsoftware.com/downloads/">http://www.foxitsoftware.com/downloads/</a><strong>&nbsp;</strong>新版本推出了。这一个版本最大的改进，我想第一个就是标签式浏览，这样大大节省了同时打开多份文档时的切换之苦和内存占用；第二个就是书签编辑器了，可以非常快速的加入或者修改现有的书签。有时候下载的PDF文档没有书签，用它来加入书签的确是非常的方便。最后，还有个自动滚屏的功能，读书的时候会方便一些。</p> <p>&nbsp;</p> <p>操作技巧：先在PDF文档中选中希望作为书签标题的文字，然后点击书签工具栏上的添加按钮，即可完成添加过程！</p> <p><a href="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/FoxitPDFReader2.3_CD9/image_2.png"><img border="0" alt="image" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/FoxitPDFReader2.3_CD9/image_thumb.png" width="522" height="371"></a></p><img src ="http://www.blogjava.net/beansoft/aggbug/197700.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-05-02 00:59 <a href="http://www.blogjava.net/beansoft/archive/2008/05/02/197700.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Netbeans 6.1 的 Struts 2 插件使用视频</title><link>http://www.blogjava.net/beansoft/archive/2008/04/30/197510.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Wed, 30 Apr 2008 05:45:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/04/30/197510.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197510.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/04/30/197510.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197510.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197510.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Netbeans 6.1 的 Struts 2 插件使用视频<br><br>1. 下载安装 Struts 2 插件<br><br>2. 开发 Struts 2 简单登录应用<br><br>&nbsp;&nbsp;<a href='http://www.blogjava.net/beansoft/archive/2008/04/30/197510.html'>阅读全文</a><img src ="http://www.blogjava.net/beansoft/aggbug/197510.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-04-30 13:45 <a href="http://www.blogjava.net/beansoft/archive/2008/04/30/197510.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Thinking In Java 第3版 中文 PDF下载</title><link>http://www.blogjava.net/beansoft/archive/2008/04/29/197413.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Tue, 29 Apr 2008 15:20:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/04/29/197413.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197413.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/04/29/197413.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197413.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197413.html</trackback:ping><description><![CDATA[下载地址：<a href="http://downloads0517.cncode.com/book/JSP/ThinkingInJava3.rar">http://downloads0517.cncode.com/book/JSP/ThinkingInJava3.rar</a> 文件大小 3.82 MB <p><img border="0" alt="Thinking In Java 第3版 中文 PDF" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/ThinkingInJava3PDF_1481C/Thinking%20In%20Java%20%E7%AC%AC3%E7%89%88%20%E4%B8%AD%E6%96%87%20PDF_3.png" width="561" height="668"></p><img src ="http://www.blogjava.net/beansoft/aggbug/197413.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-04-29 23:20 <a href="http://www.blogjava.net/beansoft/archive/2008/04/29/197413.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>邮政汇款单认领</title><link>http://www.blogjava.net/beansoft/archive/2008/04/29/197395.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Tue, 29 Apr 2008 13:59:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/04/29/197395.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197395.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/04/29/197395.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197395.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197395.html</trackback:ping><description><![CDATA[收到上海市铁山路寄来的汇款单一张，请此单的主人速和我联系，发送电子版书籍事宜。如果等DVD，预计时间为5月中可以寄出。 <img src ="http://www.blogjava.net/beansoft/aggbug/197395.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-04-29 21:59 <a href="http://www.blogjava.net/beansoft/archive/2008/04/29/197395.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关注 Netbeans 中文官方社区</title><link>http://www.blogjava.net/beansoft/archive/2008/04/29/197355.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Tue, 29 Apr 2008 11:08:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/04/29/197355.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/197355.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/04/29/197355.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/197355.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/197355.html</trackback:ping><description><![CDATA[
		<a href="http://www.netbeans.org.cn/bbs/index.php">http://www.netbeans.org.cn/bbs/index.php</a>
		<br />
		<br />Netbeans 中文官方社区<br /><br />刚刚担任总版主，有一个月的试用期，希望大家多多支持！<img src ="http://www.blogjava.net/beansoft/aggbug/197355.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-04-29 19:08 <a href="http://www.blogjava.net/beansoft/archive/2008/04/29/197355.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>HeidiSQL便携版＋中文问题修正（重编译）</title><link>http://www.blogjava.net/beansoft/archive/2008/04/29/196994.html</link><dc:creator>BeanSoft</dc:creator><author>BeanSoft</author><pubDate>Mon, 28 Apr 2008 16:45:00 GMT</pubDate><guid>http://www.blogjava.net/beansoft/archive/2008/04/29/196994.html</guid><wfw:comment>http://www.blogjava.net/beansoft/comments/196994.html</wfw:comment><comments>http://www.blogjava.net/beansoft/archive/2008/04/29/196994.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/beansoft/comments/commentRss/196994.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/beansoft/services/trackbacks/196994.html</trackback:ping><description><![CDATA[
		<p>下载地址 <a href="ftp://beansoftdown:1234@219.141.70.147/HeidiSQL/HeidiSQLPortable.rar " temp_href="ftp://beansoftdown:1234@219.141.70.147/HeidiSQL/HeidiSQLPortable.rar ">ftp://beansoftdown:1234@219.141.70.147/HeidiSQL/HeidiSQLPortable.rar </a>  3.21 MB 是一个免安装绿色便携版</p>
		<p>感谢 Acheng 帮忙编译了修正了中文问题后的新版本，我的MySQL字符编码都是GBK的，不知道UTF-8的会怎样。此项目是一国外开源软件。</p>
		<p>关于此Bug的修正信息，请查看这里：<a title="http://sourceforge.net/tracker/index.php?func=detail&amp;amp;amp;aid=1913280&amp;amp;amp;group_id=164593&amp;amp;amp;atid=832350" href="http://sourceforge.net/tracker/index.php?func=detail&amp;aid=1913280&amp;group_id=164593&amp;atid=832350">http://sourceforge.net/tracker/index.php?func=detail&amp;aid=1913280&amp;group_id=164593&amp;atid=832350</a></p>
		<p>如果需要完整代码并希望自己亲手编译（需要<a href="http://www.codegear.com/downloads/free/delphi">CodeGear Delphi 2007</a> or Borland Developer Studio 2006），请与我联系。官方的编译说明：</p>
		<p>
				<a title="http://heidisql.svn.sourceforge.net/viewvc/*checkout*/heidisql/trunk/readme.html" href="http://heidisql.svn.sourceforge.net/viewvc/*checkout*/heidisql/trunk/readme.html">http://heidisql.svn.sourceforge.net/viewvc/*checkout*/heidisql/trunk/readme.html</a>
		</p>
		<p>截屏（注意红色部分，默认是不支持gbk的，已经修正了问题了）：</p>
		<p>   <a href="/images/blogjava_net/beansoft/WindowsLiveWriter/HeidiSQL_A7B/HeidiSQL_2.png"><img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" border="0" alt="HeidiSQL" src="http://www.blogjava.net/images/blogjava_net/beansoft/WindowsLiveWriter/HeidiSQL_A7B/HeidiSQL_thumb.png" width="531" height="446" /></a></p>
		<p>
				<a href="http://www.heidisql.com/">http://www.heidisql.com/</a>
				<br />Heidesql -&gt; MySQL-Front 2.5 的开源替代版本<br />Heidesql 中文乱码问题的另一种解决办法：<br />用 Heidesql 连接到 Mysql 服务器后, 执行下面代码(复制到 Query 面板中然后点击运行): </p>
		<p>SET character_set_client = gbk;<br />SET character_set_connection = gbk;<br />SET character_set_results = gbk; </p>
		<p>即可解决乱码的问题.</p>
<img src ="http://www.blogjava.net/beansoft/aggbug/196994.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/beansoft/" target="_blank">BeanSoft</a> 2008-04-29 00:45 <a href="http://www.blogjava.net/beansoft/archive/2008/04/29/196994.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>