﻿<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JSSAY&#039;S BLOG</title>
	<atom:link href="http://www.jssay.com/blog/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jssay.com/blog</link>
	<description>不积跬步无以致千里，不积小流无以成江海</description>
	<lastBuildDate>Tue, 07 Sep 2010 04:04:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>四舍六入五成双</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/07/%e5%9b%9b%e8%88%8d%e5%85%ad%e5%85%a5%e4%ba%94%e6%88%90%e5%8f%8c/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/07/%e5%9b%9b%e8%88%8d%e5%85%ad%e5%85%a5%e4%ba%94%e6%88%90%e5%8f%8c/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 04:04:24 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[Java程序设计]]></category>
		<category><![CDATA[四舍六入]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1100</guid>
		<description><![CDATA[世界上的许多国家已广泛采用“四舍六入法”。我国国家科委于1955年就作了推荐。“四舍 六入法”可以概括为：“四舍六入五考虑，五后非零就进一，五后皆零看奇偶，五前为偶应舍 去，五前为奇要进一。简单地说叫“四舍、六入、五凑偶”.]]></description>
			<content:encoded><![CDATA[<p>世界上的许多国家已广泛采用“四舍六入法”。我国国家科委于1955年就作了推荐。“四舍 六入法”可以概括为：“四舍六入五考虑，五后非零就进一，五后皆零看奇偶，五前为偶应舍 去，五前为奇要进一。简单地说叫“四舍、六入、五凑偶”.<br />
在工程技术、金融和科学领域，我们往往认为将一个小数圆整到距离它最近的偶数（而并非总是将它向上圆整）更加精确，即我们在此所说的“四舍六入”法。 Math.Round()方法使用的银行家算法的依据,是IEEE Standard 754这个国际标准.<br />
如果你还不清楚四舍六入五成双是如何发生的,请看下面的例子:<br />
double a = -12.65;</p>
<p>		NumberFormat nf = NumberFormat.getInstance();<br />
		nf.setMaximumFractionDigits(1);</p>
<p>		System.out.println(nf.format(a));<br />
打印结果是: -12.6<br />
如果我把a的值设为-12.651,打印结果是-12.7.<br />
如果我把a的值设为-12.55,打印结果是-12.6.<br />
由此可以验证文章开头的四射六入法则,虽然我们所熟悉的四舍五入在Java中已经变成了四舍六入了.但是也不必紧张,我们还是有办法实现四舍五入的.<br />
方法一:如果一个数是正数,将这个数加上一个很小的数,比如:0.0000000001.然后在保留几位小数就好了.反之就减一个很小的数.<br />
方法二:可以使用BigDecimal的setScale()方法。<br />
方法三：如果你用的是Math.round()方法，其正数是遵守四舍五入法则的，但是负数进位的话就向大数靠了，可以先将负数转换为正数，然后在乘以-1。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/07/%e5%9b%9b%e8%88%8d%e5%85%ad%e5%85%a5%e4%ba%94%e6%88%90%e5%8f%8c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>免费网盘大全</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/07/%e5%85%8d%e8%b4%b9%e7%bd%91%e7%9b%98%e5%a4%a7%e5%85%a8/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/07/%e5%85%8d%e8%b4%b9%e7%bd%91%e7%9b%98%e5%a4%a7%e5%85%a8/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 01:23:44 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[电脑软件]]></category>
		<category><![CDATA[free disk]]></category>
		<category><![CDATA[免费网盘]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1098</guid>
		<description><![CDATA[下面介绍那28个免费文件存储站。再说一句，曾经我用过很多免费网盘，后来它们大多消失了…… 呃，下面眼熟的有 Box.net / FileDen / DivShare / MediaFire / MegaUpload / Rapidshare，这几个应该比较靠谱；不出所料里面也提到了 DropBox，我都想试试它了。]]></description>
			<content:encoded><![CDATA[<p>下面介绍那28个免费文件存储站。再说一句，曾经我用过很多免费网盘，后来它们大多消失了…… 呃，下面眼熟的有 Box.net / FileDen / DivShare / MediaFire / MegaUpload / Rapidshare，这几个应该比较靠谱；不出所料里面也提到了 DropBox，我都想试试它了。</p>
<p>介绍开始，请大家注意区分下文中上传文件大小限制和存储空间大小限制。</p>
<p>1、<a href="http://www.filesavr.com/">FileSavr</a><br />
10GB 的上传大小限制(很雷！)，使用前需要注册。</p>
<p>2、<a href="http://www.filedropper.com/">FileDropper</a><br />
5GB 的文件大小限制，自称速度最快。</p>
<p>3、<a href="http://www.xdrive.com/">XDrive</a><br />
基于 Adobe AIR 技术，可以直接从桌面或 U 盘里把文件拖进去，5GB 免费存储空间。</p>
<p>4、<a href="http://www.adrive.com/">ADrive</a><br />
提供 50GB 的免费存贮空间，基于云技术，可通过客户端在线上传、编辑、分享或远程操作文档。</p>
<p>5、<a href="http://drop.io/">Drop.io</a><br />
以很简便的方式在线共享文件，提供100MB的免费空间，可通过电话、邮件、网页、组件(widget)或传真等方式随时随地分享文件。</p>
<p>6、<a href="http://sharesend.com/">ShareSend</a><br />
界面超简洁，选择文件上传、得到链接，2步操作直接搞定。100MB 文件限制。</p>
<p>7、<a href="http://filefactory.com/">FileFactory</a><br />
300MB 免费存贮空间，无需注册或下载客户端。</p>
<p>8、<a href="http://xuploadz.com/">Xuploadz</a><br />
无限制、免费，界面简洁，操作方便。</p>
<p>9、<a href="http://upload.inesports.com/">Inesports</a><br />
简洁到连 Logo 都省了，只有一个上传选择框和几个按钮。</p>
<p>10、<a href="http://www.youconvertit.com/convertfiles.aspx">YouConvertIt</a><br />
在分享媒体文件(文档、图片、音频视频等)方面有较大优势，支持的文件格式较多而且方便发给他人。</p>
<p>11、<a href="http://www.neebit.com/">Neebit</a><br />
支持很多格式甚至包括 flash，对不同文件类型的上传限制为：<br />
图片5MB、SWF 15MB、视频 125MB、TXT 10MB、音频 20MB。</p>
<p>12、<a href="http://www.upmyfiles.com/">UpMyFiles</a><br />
需注册，文件限制25MB。</p>
<p>13、<a href="http://www.box.net/">Box.net</a><br />
这个相信大家都知道，免费版是 1GB 空间。</p>
<p>14、<a href="http://fileden.com/">FileDen</a><br />
1GB免费空间、50MB文件限制、5GB/月的流量限制</p>
<p>15、<a href="http://www.dropsend.com/">DropSend</a><br />
快速、简洁、安全，注册后的免费账户有250MB 空间。</p>
<p>16、<a href="http://upload.divshare.com/">DivShare</a><br />
自称最好，提供5GB免费空间和10GB的月流量，现有87w+会员和400w个存储文件。</p>
<p>17、<a href="http://www.4shared.com/">4Shared</a><br />
5GB 免费空间，可上传音频、视频和图片。</p>
<p>18、<a href="http://www.badongo.com/">Badongo</a><br />
可无限数量批量上传，同时上传的文件总量不超过1GB，每天下载总量不超过12GB。适用于收集资料和熟人间分享。</p>
<p>19、<a href="http://www.fileqube.com/">Fileqube</a><br />
2GB空间，150MB文件限制，支持批量上传。</p>
<p>20、<a href="http://www.mediafire.com/">MediaFire</a><br />
小众软件经常用这个网盘。单文件限制 100MB，无限制上传下载和流量，无需注册。</p>
<p>21、<a href="http://www.megaupload.com/">MegaUpload</a><br />
名气很大，好处是已上传的文件丰富，坏处是免费账户限制太多，下载机制跟 rapidshare 一样 bt，可能有很高级的验证码或者很长的等待时间。无限上传，单文件限为 1GB。</p>
<p>22、<a href="http://www.rapidshare.com/">Rapidshare</a><br />
优缺点同 MegaUpload，单文件限制为 200MB。</p>
<p>23、<a href="http://www.fastfreeupload.com/">FastFreeUpload</a><br />
界面也很简洁，单文件限制100MB。</p>
<p>24、<a href="http://www.upload-drive.com/">UploadDrive</a><br />
界面很友善，单文件限制450MB。</p>
<p>25、<a href="http://www.2big2send.com/">2big2Send</a><br />
文件交换服务，1GB 空间、100MB 保管箱、1GB 月流量，1GB 上传限额以及5天保存期。</p>
<p>26、<a href="http://www.blazeload.com/">Blazeupload</a><br />
据说速度不错，上传进度条很直观，文件管理有 ajax 效果，支持加标签，100MB 上传文件限制，可同时上传10个文件。</p>
<p>27、<a href="https://www.getdropbox.com/">GetDropBox</a><br />
这个，就是传说中的 dropbox。目前看来无文件格式限制，提供直链地址，免费空间2GB，可使用客户端。<br />
原文对它的介绍就是“just great”。详情可了解其官方在线指引。</p>
<p>28、<a href="http://www.dsfileshare.com/">DsFileShare</a><br />
1GB免费空间、1GB单文件限制，无需注册。</p>
<p>来自:<a href="http://jandan.net/2008/10/18/28free-file-storage.html">煎蛋</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/07/%e5%85%8d%e8%b4%b9%e7%bd%91%e7%9b%98%e5%a4%a7%e5%85%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>20个最佳WordPress SEO插件</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/06/20%e4%b8%aa%e6%9c%80%e4%bd%b3wordpress-seo%e6%8f%92%e4%bb%b6/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/06/20%e4%b8%aa%e6%9c%80%e4%bd%b3wordpress-seo%e6%8f%92%e4%bb%b6/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 14:34:34 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[插件]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1096</guid>
		<description><![CDATA[wordpress本 身的seo效果在博客 /CMS程序里已经很好了。再加一些开发者奉 献的优秀SEO插件，非技术博客人群也可以让自己的WordPress对搜索引擎非友好。]]></description>
			<content:encoded><![CDATA[<p>转载：wordpress本 身的seo效果在博客 /CMS程序里已经很好了。再加一些开发者奉 献的优秀SEO插件，非技术博客人群也可以让自己的WordPress对搜索引擎非友好。</p>
<p>提示 :  以下推荐的WordPress SEO插件要有针对性的选择使用，你可千万别一下子全装了。</p>
<p><a href="http://semperfiwebdesign.com/portfolio/wordpress/wordpress-plugins/all-in-one-seo-pack/">All in One SEO Pack</a><br />
wordpress平台上最受欢迎的SEO插件之一，该Wordpress 插件可以对全站进行优化，自动生成文章描述和关键词等。利用该插件，你可以给每篇页面添加独立的关键词和摘要，还可以防止存档页面被抓取以免被 Google 降权等等。</p>
<p>补充 : 这是wordpress插件 目录里面 下载量最高的插件，且下载量是第二名的两倍。我很久以前一直使用这个插件，不过对于中文博客来说，这个插件还是有一些问题，比如可能某些文章无法自动生成 摘要，会影响页面载入和服务器性能，中文截断的meta描述会有乱码等。</p>
<p>不过，该插件的版本更新也可谓无人所及。我很久没用了，看了一下插件更新记录，似乎修复了一些中文不友好的问题。对于新手朋友和懒得折腾的朋友，还是强烈推荐该款插件。</p>
<p><a href="http://cvs.aesinformatica.com/download/automatic-seo-links">Automatic SEO Links</a><br />
Automatic SEO Links允许你选择一个关键词或者文章标题来自动进行链接，比如我们可以设置“网络营销博客” 的自动链接URL为“http://zhengyong.net”，那么在你post的文章中出现“网络营销博客”这个词的时候，插件会将该关键词自动添 加链接。你可以为关键词设置为内部或者外部链接，设置锚文本，选择是否为链接添加 “nofollow” 等等。该插件还有个特色就是一篇文章中只会出现一次相同的自动链接，避免过度优化而造成搜索引擎惩罚。</p>
<p>补充 : 你也可以查看本站之前发布的5款自动添加内部链接的WordPress SEO插件 。</p>
<p>提示 : 如果你有耐心，还是手动添加链接会得到更好的SEO效果。</p>
<p><a href="http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator/">Google XML Sitemaps</a><br />
个人认为这个是每个wordpress博客都必须的SEO插件工具。虽然说的是google xml站点地图生成工具，但实际上该插件生成的XML-sitmap也可以被ask，msn，yahoo等搜索引擎蜘蛛读取。</p>
<p>提示 : 上面说的都没错，这个插件是值得每个WordPress用户安装的。但同时也要非常小心的维护好这个插件，本站的亲身经历: 该插件出问题，导致sitemap页面出错，Google索引页面狂消失。</p>
<p><a href="http://urbangiraffe.com/plugins/headspace2/">HeadSpace2</a><br />
该WordPress SEO插件让你可以安装各种类型的meta-data，为页面添加特别的javascript 和CSS 代码，以及tags提示等，也是一 个非常有用的SEO插件。</p>
<p><a href="http://yoast.com/wordpress/meta-robots-wordpress-plugin/">Meta Robots WordPress plugin</a><br />
可以为你博客的任何页面添加针对搜索引擎机器人的metadata。为页面和目录添加nofollow属性，这对一些利用web service的会员计划来建立的博客商店来说非常重要，可以避免搜索引擎索引重复内容。你还可以防止登陆页，归档页等被索引。</p>
<p><a href="http://wordpress.org/extend/plugins/nofollow-case-by-case/">Nofollow Case by Case</a><br />
该插件让你去除在文章评论中的nofollow属性，你可以选择在哪个文章中支持评论的dofollow，避免全站都采用dofollow的评论， 防止垃圾评论。</p>
<p><a href="http://techblissonline.com/platinum-seo-pack/">Platinum SEO Plugin</a><br />
Platinum SEO Plugin 支持永久链接的自动301重定向，自动生成meta tags，以及post slug优化等，还可以帮助你避免副本内容。</p>
<p><a href="http://urbangiraffe.com/plugins/redirection/">Redirection</a><br />
在很多时候，你因为一些不同的原因需要对博客文章进行移动或者修改，这很容易造成原有页面在搜索引擎的排名下降。Redirection插件可以通 过301重定向帮助你捕获404错误日志，因此你可以发现并修改这些错误，你还可以设置一个错误RSS feed。</p>
<p><a href="http://www.francesco-castaldo.com/plugins-and-widgets/seo-blogroll/">SEO Blogroll</a><br />
如果你担心你的blogroll中的博客链接分享你的PageRank，那么使用SEOBlogroll，你可以对链接分组进行分别设置，并为一些 链接组分配nofollow属性，避免该链接组中的博客分享你的网站权重。</p>
<p><a href="http://pressedwords.com/solving-wordpress-seo-paged-comments-problem/">SEO for Paged Comments</a><br />
WordPress 2.7评论分页功能有效的降低了页面体积，增加页面载入速度，尤其对于留言较多的博客确实很实用，但WordPress默认的评论分页随着带来的SEO问 题–内容重复，正文页面与评论分页页面内容一样。该插件将评论分页页面的post正文显示摘要，再加上一个至post的permalink链接，从而区分 了正文页面，避免重复内容，完全达到了SEO的要求。</p>
<p><a href="http://mark-kirby.co.uk/2009/seo-friendly-and-html-valid-subheadings-a-wordpress-plugin/">SEO friendly and HTML valid subheadings</a><br />
该插件会自动修改你页面中的子标题，使之更加SEO友好。对于一些设计不合理的wordpress主题模板来说非常 有用，自动将h2变为h3，h3变为h4等等。</p>
<p><a href="http://www.prelovac.com/vladimir/wordpress-plugins/seo-friendly-images">SEO Friendly Images</a><br />
当人们搜索不同科目的图片时，图片会是一个非常重要的流量来源，SEO图象友好插件将帮助你为博客中的图片添加 “alt” and “title” 标签，帮助搜索引擎正确的索引这些图片。</p>
<p><a href="http://omninoggin.com/wordpress-plugins/seo-no-duplicate-wordpress-plugin/">SEO No Duplicate WordPress Plugin</a><br />
一款刚刚推出的WordPress SEO插件，主要功能就是告诉搜索引擎爬虫一篇日志页面的首选版本。因为许多黑帽SEO会滥用副本内容来获取搜索引擎排名，而搜索引擎很难检测和处罚他 们，该插件帮助你告诉搜索引擎你才是该文章的原创。</p>
<p><a href="http://www.maxblogpress.com/plugins/spl/">SEO Post Link</a><br />
post slug是你在浏览器的url输入框中看到的博客标题，有时候由于标题过长造成文章的post slug也很长，搜索引擎不喜欢太长的URL。该插件让你的post slug合理减肥，只保留重要的关键词，让你的文章地址对搜索引擎更加友好。你可以设置包含的字符数量，去除不必要的字词。</p>
<p><a href="http://www.prelovac.com/vladimir/wordpress-plugins/seo-smart-links">SEO Smart Links</a><br />
内部链接对于SEO来说也是一个非常重要的技巧，同时适当的内部链接还可以让更多的人阅读到你更多的相关文章，提高网站的page view，但是如果手动添加链接则会花费你大量的时间和精力。通过SEO Smart Links插件，你可以指定什么关键词自动链接到哪个URL，以及允许你为链接设置nofollow，open in new window等属性。</p>
<p><a href="http://blog.fleischer.hu/wordpress/seo-tag-cloud/">SEO Tag Cloud Widget</a><br />
有许多朋友喜欢在他们的博客上面使用标签云，本插件让你的tags cloud更容易被搜索引擎阅读， 更加SEO友好。</p>
<p><a href="http://www.netconcepts.com/seo-title-tag-plugin/">SEO Title Tag</a><br />
标签是一个非常重要的部分，它让搜索引擎了解你的文章都如何放置，很多人都很讨厌wordpress标题栏那里的那个有点像括号的符号——“»”， 因为它 在很多的中文搜索引擎里面显示为乱码，非常地不利于搜索引擎优化（SEO），用SEO Title Tag这个插件则可以方便地把这个符号消除。同时，还可以自定义文章名和网站名中间的那个符号，如使用“-”或者“|”等。另外，你还可以在首页的 title里面加上网站的描述，而在其它的页面则不显示网站的描述，这对SEO非常有利。</p>
<p><a href="http://wordpress.org/extend/plugins/simple-tags/">Simple Tags</a><br />
一个极度受欢迎的tags建议的WordPress SEO插件，帮助你为你的博客文章选择最好的tag标签，包括标签建议，tags自动完成，批量编辑等众多功能。</p>
<p><a href="http://www.dagondesign.com/articles/sitemap-generator-plugin-for-wordpress/">Sitemap Generator</a><br />
一个支持多级分类目录和页面的可定制的站点地图生成的WordPress SEO插件，有许多可定制选项。把这个插件当成wordpress blog存档插件来使用也是非常不错的选择。</p>
<p><a href="http://wordpress.org/extend/plugins/tgfinet-seo/">TGFInet SEO Wordpress Plugin</a><br />
该插件可以可以做大多数常见的SEO工作，比如标题优化，关键词优化等，对于了解一定SEO技巧的blogger来说非常适用。实际上该插件是all-in-one-seo-pack 的 修改版本，在原插件的基础上进行了部分增强，对于想把博客做得像CMS一样的朋友来说，可以试用一下这个插件。</p>
<p>原文出处已无从考证，如果侵犯了您的权利，请告诉我们，我们会在第一时间做出处理。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/06/20%e4%b8%aa%e6%9c%80%e4%bd%b3wordpress-seo%e6%8f%92%e4%bb%b6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress中如何嵌入优酷视频</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/06/wordpress%e4%b8%ad%e5%a6%82%e4%bd%95%e5%b5%8c%e5%85%a5%e4%bc%98%e9%85%b7%e8%a7%86%e9%a2%91/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/06/wordpress%e4%b8%ad%e5%a6%82%e4%bd%95%e5%b5%8c%e5%85%a5%e4%bc%98%e9%85%b7%e8%a7%86%e9%a2%91/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 14:19:18 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[WordPress技巧]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[嵌入视频]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1094</guid>
		<description><![CDATA[精彩的视频无疑会给网站增色不少，那如何将我们看到的精彩视频嵌入你写的文章中呢。方法有多种，可以通过Wordpress插件，也可以通过Wordpress中的插入视频功能。但是这两个方法都有局限性，前一个方法需要搜索安装插件，以及要学会如何去用，如果是英文版的且你的英文又不好，那就比较郁闷了。第二个方法相比而言比较简单，但是插入文章后是以超链接的形式存在，需要点击链接才能收看视频，对于我们这些懒人来说，多点一下鼠标都难。]]></description>
			<content:encoded><![CDATA[<p>精彩的视频无疑会给网站增色不少，那如何将我们看到的精彩视频嵌入你写的文章中呢。方法有多种，可以通过Wordpress插件，也可以通过Wordpress中的插入视频功能。但是这两个方法都有局限性，前一个方法需要搜索安装插件，以及要学会如何去用，如果是英文版的且你的英文又不好，那就比较郁闷了。第二个方法相比而言比较简单，但是插入文章后是以超链接的形式存在，需要点击链接才能收看视频，对于我们这些懒人来说，多点一下鼠标都难。</p>
<p>我有一个办法能够很快地嵌入优酷视频，土豆或者其它网站的视频应该也是一样的道理。首先查看页面源代码，ctrl+f 搜索.swf文件，找到后插入如下代码中：</p>
<p>&lt;object width=&#8221;400&#8243; height=&#8221;300&#8243;&gt;&lt;param name=&#8221;movie&#8221; value=&#8221;插入链接&#8221;&gt;&lt;/param&gt;&lt;param name=&#8221;allowScriptAccess&#8221; value=&#8221;always&#8221;&gt;&lt;/param&gt;&lt;param name=&#8221;wmode&#8221; value=&#8221;transparent&#8221;&gt;&lt;/param&gt;&lt;embed src=&#8221;插入链接&#8221; type=&#8221;application/x-shockwave-flash&#8221; width=&#8221;400&#8243; height=&#8221;300&#8243; allowFullScreen=&#8221;true&#8221; wmode=&#8221;transparent&#8221; allowScriptAccess=&#8221;always&#8221;&gt;&lt;/embed&gt;&lt;/object&gt;</p>
<p>可以适当修改宽度（width)和高度(height)的值，来匹配您的文章内容。然后拷贝此代码到您的文章中就可以了。如果你认为此方法还不如之前的两种方法简单，请忽略此方法。如果你有更好的方法，请留下您的方案，大家一起分享一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/06/wordpress%e4%b8%ad%e5%a6%82%e4%bd%95%e5%b5%8c%e5%85%a5%e4%bc%98%e9%85%b7%e8%a7%86%e9%a2%91/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java4ever恶搞短片</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/06/java4ever%e6%81%b6%e6%90%9e%e7%9f%ad%e7%89%87/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/06/java4ever%e6%81%b6%e6%90%9e%e7%9f%ad%e7%89%87/#comments</comments>
		<pubDate>Mon, 06 Sep 2010 12:33:11 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[程序人生]]></category>
		<category><![CDATA[java4ever]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1090</guid>
		<description><![CDATA[恶搞无罪，Java万岁

]]></description>
			<content:encoded><![CDATA[<p>恶搞无罪，Java万岁<br />
<object width="400" height="300"><param name="movie" value="http://player.youku.com/player.php/sid/XMTkxNDk2ODY0/v.swf"></param><param name="allowScriptAccess" value="always"></param><param name="wmode" value="transparent"></param><embed src="http://player.youku.com/player.php/sid/XMTkxNDk2ODY0/v.swf" type="application/x-shockwave-flash" width="400" height="300" allowFullScreen="true" wmode="transparent" allowScriptAccess="always"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/06/java4ever%e6%81%b6%e6%90%9e%e7%9f%ad%e7%89%87/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript编程规范</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/03/javascript%e7%bc%96%e7%a8%8b%e8%a7%84%e8%8c%83/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/03/javascript%e7%bc%96%e7%a8%8b%e8%a7%84%e8%8c%83/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 15:04:38 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Closure Linter]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1086</guid>
		<description><![CDATA[相信大家都知道有个<a href="http://www.jssay.com/blog/index.php/2010/08/24/java%E7%BC%96%E7%A0%81%E8%A7%84%E8%8C%83/">Java编程规范</a>,但是很少人知道Javascript也有编程规范，此规范最早由Google提出来，虽然在工程实践上，我们对编写Javascript还比较随意，但是从代码规范性角度出发，不论何种语言都应该有自己的编程规范，否则过一段时间过后，连自己写的代码都不知道什么意思了，更何况别人来看你的代码。]]></description>
			<content:encoded><![CDATA[<p>相信大家都知道有个<a href="http://www.jssay.com/blog/index.php/2010/08/24/java%E7%BC%96%E7%A0%81%E8%A7%84%E8%8C%83/">Java编程规范</a>,但是很少人知道Javascript也有编程规范，此规范最早由Google提出来，虽然在工程实践上，我们对编写Javascript还比较随意，但是从代码规范性角度出发，不论何种语言都应该有自己的编程规范，否则过一段时间过后，连自己写的代码都不知道什么意思了，更何况别人来看你的代码。</p>
<p>虽然说这份编码规范有待验证，但是它由Google推出，还是具有一定的权威性和可靠性。</p>
<p> <a href="http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml">Google JavaScript Style</a></p>
<p>现在Google又发布了一个工具来帮助你检查 JavaScript 代码是否严格遵循了 Google JavaScript Style Guide ：<a href="http://code.google.com/p/closure-linter/">Closure Linter</a>。 </p>
<p>假设你有以下代码：</p>
<p><code>var x = 10<br />
var y=20;</p>
<p>for(var i = 0;i < 10; i++ ) {<br />
  x += i;<br />
   y -= i;<br />
}</p>
<p>var z = [10, 20,];</p>
<p>x = y + z[0]<br />
    + 10;</code></p>
<p>假设此文件名为:fixme.js.<br />
在命令行下运行 gjslint –strict fixme.js 之后，就会出现下面的结果：</p>
<p>Line 1, E:0010: (New error) Missing semicolon at end of line<br />
Line 2, E:0002: Missing space before "="<br />
Line 2, E:0002: Missing space after "="<br />
Line 4, E:0002: Missing space before "("<br />
Line 4, E:0002: Missing space after ";" in for statement<br />
Line 4, E:0001: Extra space before ")"<br />
Line 6, E:0006: (New error) Wrong indentation: expected any of {2} but got 3<br />
Line 9, E:0121: Illegal comma at end of array literal<br />
Line 12, E:0120: Binary operator should go on previous line "+"<br />
Found 9 errors, including 2 new errors, in 1 files (0 files OK).</p>
<p>这个工具甚至可以帮你自动修复一些错误，运行 fixjsstyle –strict fixme.js 即可。（注意：不一定可以修复全部错误）<br />
Closure Linter 支持 Windows, Linux &#038; Mac OS X. 具体使用方法<a href="http://code.google.com/intl/zh-CN/closure/utilities/docs/linter_howto.html">请看这里</a> 。</p>
<p>文章参考自：<a href="http://www.zhuoqun.net/html/y2010/1530.html">zhuoqun.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/03/javascript%e7%bc%96%e7%a8%8b%e8%a7%84%e8%8c%83/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TibcoRV入门实例</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/03/tibcorv%e5%85%a5%e9%97%a8%e5%ae%9e%e4%be%8b/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/03/tibcorv%e5%85%a5%e9%97%a8%e5%ae%9e%e4%be%8b/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 09:06:13 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[编程相关]]></category>
		<category><![CDATA[TibcoRV]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1075</guid>
		<description><![CDATA[Tibco RV(Rendezvous) 出来将近20年了, 但是在网上的中文资源还是少的可怜,可能是因为Tibco RV的使用成本太高,以至于很多中小型公司都放弃使用了.我也是最近才接触到一点TibcoRV的知识,希望我的一点总结能对大家有用.]]></description>
			<content:encoded><![CDATA[<p>      Tibco RV(Rendezvous) 出来将近20年了, 但是在网上的中文资源还是少的可怜,可能是因为Tibco RV的使用成本太高,以至于很多中小型公司都放弃使用了.我也是最近才接触到一点TibcoRV的知识,希望我的一点总结能对大家有用.<br />
      Tibco RV是基于发布/订阅模式的,消息发送方被称为发布者(Publisher),消息接收方称为订阅者(Subscriber). 一个消息的生产者可以发布一条消息给多个消费者,通过一条叫做主题(Topic)的虚拟通道.消息消费者可以选择订阅他们感兴趣的主题(Topic), 任何关于此主题(Topic)的消息都会被发送到订阅此主题的订阅者那里. 下图简单描述了发布/订阅模式:</p>
<p>      在了解了原理之后,我想通过代码来感受一下TibcoRv的神气力量, 下面定义了两个基本的类:TibSubScriber和TibPublisher,分别表示订阅者和发布者.<br />
<code><br />
public class TibSubscriber implements TibrvMsgCallback {</p>
<p>	private TibrvRvdTransport transport = null;   </p>
<p>	//初始化TibrvListener<br />
	public TibSubscriber() {<br />
		try {<br />
			Tibrv.open(Tibrv.IMPL_NATIVE);<br />
			transport = new TibrvRvdTransport(<br />
					ConfigUtil.getProperty(Constants.TIBCO_SERVICE),<br />
					ConfigUtil.getProperty(Constants.TIBCO_NETWORK),<br />
					ConfigUtil.getProperty(Constants.TIBCO_DAEMON));<br />
			new TibrvListener(Tibrv.defaultQueue(), this, transport, ConfigUtil.getProperty(Constants.TIBCO_SUBJECT), null);<br />
		} catch (TibrvException e) {<br />
			e.printStackTrace();<br />
		}<br />
	}</p>
<p>	//监听<br />
    public void listen() {<br />
         while (true) {<br />
             try {<br />
                 Tibrv.defaultQueue().dispatch();<br />
             }<br />
             catch(TibrvException ex) {<br />
            	 ex.printStackTrace();<br />
             }<br />
             catch(InterruptedException ex) {<br />
            	 ex.printStackTrace();<br />
             }<br />
        }<br />
    }</p>
<p>    //回调方法，监听到指定Subject时触发<br />
    public void onMsg(TibrvListener listener, TibrvMsg msg) {<br />
    	if (msg != null) {<br />
    		String receivedMsg;<br />
			try {<br />
				receivedMsg = (String)msg.get("msg");<br />
				System.out.println(receivedMsg);<br />
			} catch (TibrvException e) {<br />
				e.printStackTrace();<br />
			}</p>
<p>    	}<br />
	}</p>
<p>	public static void main(String[] args) {<br />
		TibSubscriber tibListener = new TibSubscriber();<br />
		tibListener.listen();<br />
	}<br />
</code><br />
<code><br />
public class TibPublisher {</p>
<p>	private TibrvRvdTransport transport = null;   </p>
<p>	public TibPublisher() {<br />
		try {<br />
			Tibrv.open(Tibrv.IMPL_NATIVE);<br />
			transport = new TibrvRvdTransport(<br />
					ConfigUtil.getProperty(Constants.TIBCO_SERVICE),<br />
					ConfigUtil.getProperty(Constants.TIBCO_NETWORK),<br />
					ConfigUtil.getProperty(Constants.TIBCO_DAEMON));<br />
		} catch (TibrvException e) {<br />
			e.printStackTrace();<br />
		}<br />
	}</p>
<p>	public void publish(String sendMessage) {<br />
		try {<br />
			TibrvMsg msg = new TibrvMsg();<br />
			msg.setSendSubject(ConfigUtil.getProperty(Constants.TIBCO_SUBJECT));<br />
			msg.add(“msg”, sendMessage);<br />
			transport.send(msg);<br />
		} catch (TibrvException e) {<br />
			e.printStackTrace();<br />
		}<br />
	}</p>
<p>	public static void main(String[] args) {<br />
		TibPublisher tibPublisher = new TibPublisher();<br />
		tibPublisher.publish(“Hello, World”);<br />
	}<br />
</code><br />
运行时,先执行TibSubscriber的main方法开始监听Topic,然后执行TibPublisher的main方法开始发布消息, TibSubscriber监听到消息后,执行回调函数onMsg(). 打印结果如下:<br />
Hello, World<br />
这就是经典的Hello World入门例子(需要下载tibrvj.jar), 希望大家能够喜欢!</p>
<p>由于本人水平有限,错误再所难免,希望各位大虾批判指正.<br />
原创文章,转载请著名出处!<br />
本文地址:<a href="http://www.jssay.com/blog/index.php/2010/09/03/tibcorv入门实例/">http://www.jssay.com/blog/index.php/2010/09/03/tibcorv入门实例/</a></p>
<p>相关文章:<br />
TibcoRV vs Tibco EMS: <a href="http://narencoolgeek.blogspot.com/2006/01/tibco-rv-vs-tibco-ems.html">http://narencoolgeek.blogspot.com/2006/01/tibco-rv-vs-tibco-ems.html</a><br />
TibcoRV vs SonicMQ: <a href="http://www.cs.cmu.edu/~priya/WFoMT2002/Pang-Maheshwari.pdf">http://www.cs.cmu.edu/~priya/WFoMT2002/Pang-Maheshwari.pdf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/03/tibcorv%e5%85%a5%e9%97%a8%e5%ae%9e%e4%be%8b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>百度新平台之我见</title>
		<link>http://www.jssay.com/blog/index.php/2010/09/02/%e7%99%be%e5%ba%a6%e6%96%b0%e5%b9%b3%e5%8f%b0%e4%b9%8b%e6%88%91%e8%a7%81/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/09/02/%e7%99%be%e5%ba%a6%e6%96%b0%e5%b9%b3%e5%8f%b0%e4%b9%8b%e6%88%91%e8%a7%81/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 12:22:03 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[前沿技术]]></category>
		<category><![CDATA[Baidu]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1073</guid>
		<description><![CDATA[最近关于百度新平台的评论很多，我也偶尔关注了一下。凡是新东西面世，总会招来很多非议。对此我也有自己的几条拙见：]]></description>
			<content:encoded><![CDATA[<p>最近关于百度新平台的评论很多，我也偶尔关注了一下。凡是新东西面世，总会招来很多非议。对此我也有自己的几条拙见：</p>
<p>1. 创新思想</p>
<p>首先，我们承认这是百度的一个大胆的创新，自百度贴吧以后，这是第二个有别与Google的重大创新。如今这个社会，懂得创新的人才是最富有的。</p>
<p>我一直比较看好Google，也深深地被Google的技术所吸引，除了之前搜索音乐的时候会用到百度，曾一度对百度嗤之以鼻，但是看到百度的这次革新之后，我想我会慢慢地开始体验百度生活。</p>
<p>2.六大传统业务或受重大冲击</p>
<p>网上说，百度推出的新平台或将颠覆传统六大行业，即下载网站，在线旅游，视频网站，电子商务，网上招聘和SNS。个人觉得对大型网站的冲击虽然大，但是不会致命，但是对于中小型网站来说，命运将是悲惨的。对于创业型企业，未来将非常艰难。</p>
<p>3. 对于个人来说是件好事<br />
我相信很多人都有这种体验，要去网上下载某个软件，结果一个页面全是下载链接。好不容易找到一个正确的链接，下载后发现是一个病毒。现在百度里搜索可牛杀毒，就有一个直接可供下载的链接，很方便，免去了不少的麻烦。另外新平台的视频服务也非常不错，想看什么电影，直接搜索后就可以看到结果，不用一个网页一个网页点开看。从另一个方面看，百度已然开始了一个全新的盈利模式。如果你想赚钱，就必须与百度合作，这是百度所希望的。</p>
<p>4. 支持民族产业<br />
虽然我一直使用Google搜索引擎，可能有种崇洋媚外的思想。但是从内心来讲，我还是希望百度能越来越好，能多点创新思想在里面。这样才能有足够的理由让我去使用它。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/09/02/%e7%99%be%e5%ba%a6%e6%96%b0%e5%b9%b3%e5%8f%b0%e4%b9%8b%e6%88%91%e8%a7%81/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android免费电子书下载</title>
		<link>http://www.jssay.com/blog/index.php/2010/08/31/android%e5%85%8d%e8%b4%b9%e7%94%b5%e5%ad%90%e4%b9%a6%e4%b8%8b%e8%bd%bd/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/08/31/android%e5%85%8d%e8%b4%b9%e7%94%b5%e5%ad%90%e4%b9%a6%e4%b8%8b%e8%bd%bd/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 12:34:25 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[移动开发]]></category>
		<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1068</guid>
		<description><![CDATA[免费的Android电子书来这里下载]]></description>
			<content:encoded><![CDATA[<p>免费的Android电子书来这里下载！</p>
<p>1. <a href="http://andbook.anddev.org/">免费的Android开发人员电子书:andbook</a><br />
<a href="http://www.jssay.com/blog/wp-content/uploads/2010/08/android_dev_02.jpg"><img src="http://www.jssay.com/blog/wp-content/uploads/2010/08/android_dev_02.jpg" alt="android_dev_02" title="android_dev_02" width="268" height="235" class="aligncenter size-full wp-image-1069" /></a></p>
<p>2. <a href="http://kronox.org/documentacion/Professional_Android_Application_Development.pdf">免费的Android开发人员电子书:专业Android应用程序开发</a><br />
<a href="http://www.jssay.com/blog/wp-content/uploads/2010/08/android_dev_03.jpg"><img src="http://www.jssay.com/blog/wp-content/uploads/2010/08/android_dev_03.jpg" alt="android_dev_03" title="android_dev_03" width="268" height="235" class="aligncenter size-full wp-image-1070" /></a></p>
<p>暂时只收集到两个，如果你有更好的，拿出来一起分享吧！</p>
<p>来自酷壳网</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/08/31/android%e5%85%8d%e8%b4%b9%e7%94%b5%e5%ad%90%e4%b9%a6%e4%b8%8b%e8%bd%bd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FireBug最新版下载</title>
		<link>http://www.jssay.com/blog/index.php/2010/08/31/firebug%e6%9c%80%e6%96%b0%e7%89%88%e4%b8%8b%e8%bd%bd/</link>
		<comments>http://www.jssay.com/blog/index.php/2010/08/31/firebug%e6%9c%80%e6%96%b0%e7%89%88%e4%b8%8b%e8%bd%bd/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 12:16:54 +0000</pubDate>
		<dc:creator>jssay</dc:creator>
				<category><![CDATA[电脑软件]]></category>
		<category><![CDATA[FireBug]]></category>

		<guid isPermaLink="false">http://www.jssay.com/blog/?p=1066</guid>
		<description><![CDATA[截止笔者发稿之日起，FireBug已更新至1.7版本。

Firebug 1.7a1下载地址发布了，关注Firebug的朋友可以去Firebug官方获取最新的Firebug 1.7a1下载地址下载试用。对于Firebug这款优秀的Firefox插件来说大多数web开发者应该都不会陌生吧。通过Firebug可以轻松的进行ajax调试对http请求和响应进行监控功能十分强大。不过随着chrome浏览器的发展，Firebug也已经着手研发了一款名为：Chromebug的工具。不过对于笔者来说，调试应用最方便的还是Firefox，无论操作，快捷键还是设置都如此。因此这里笔者着重介绍Firebug啦。]]></description>
			<content:encoded><![CDATA[<p>截止笔者发稿之日起，FireBug已更新至1.7版本。</p>
<p>Firebug 1.7a1下载地址发布了，关注Firebug的朋友可以去Firebug官方获取最新的Firebug 1.7a1下载地址下载试用。对于Firebug这款优秀的Firefox插件来说大多数web开发者应该都不会陌生吧。通过Firebug可以轻松的进行ajax调试对http请求和响应进行监控功能十分强大。不过随着chrome浏览器的发展，Firebug也已经着手研发了一款名为：Chromebug的工具。不过对于笔者来说，调试应用最方便的还是Firefox，无论操作，快捷键还是设置都如此。因此这里笔者着重介绍Firebug啦。</p>
<p>　　Firebug 1.7是Firebug系列产品的最新版，从官方发布的变更列表来看，在Firebug 1.7中会加入一些全信的特性，而这些特性不会兼容Firebug 1.6及之前的版本。而本次发布的Firebug 1.7a1最大的改进就是增加了名为：“re-run this stack”的功能，当在某个断点处点击对应的功能按钮的时候，Firebug会自动重新执行堆栈内的命令。该功能对于开发人员来说绝对是一个十分有吸引力的功能，因此操作某些功能用于调试是十分耗费时间的，而往往一次调试不一定能获得所需要的全部信息，有了这个功能，可以让同样的功能直接执行多次方便调试。当然，本次发布的Firebug 1.7a1同样修复了5个严重的bug，喜欢尝鲜的朋友不要错过Firebug 1.7a1呦。</p>
<p>Firebug 1.7a1下载地址：<br />
<a href="http://xiexiejiao.cn/?r=http://getfirebug.com/releases/firebug/1.7X/">Firebug 1.7a1下载</a></p>
<p>Related posts:<br />
<a href="http://xiexiejiao.cn/?r=http://getfirebug.com/">FireBug 1.6 beta1下载</a><br />
<a href="http://xiexiejiao.cn/linux/firebug-lite-1-2-release-download.html">Firebug Lite 1.2发布-下载</a><br />
<a href="http://xiexiejiao.cn/linux/firebug-1-5-2-release-download.html">Firebug 1.5.2 发布-下载</a><br />
<a href="http://xiexiejiao.cn/linux/firebug-1-5-0-release-download.html">Firebug 1.5.0 发布-下载</a></p>
<p>来自<a href="http://xiexiejiao.cn/linux/firebug-1-6-beta1-release-download.html">歇歇脚</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jssay.com/blog/index.php/2010/08/31/firebug%e6%9c%80%e6%96%b0%e7%89%88%e4%b8%8b%e8%bd%bd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
