﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-java node</title><link>http://www.blogjava.net/luoqx/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 18:56:02 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 18:56:02 GMT</pubDate><ttl>60</ttl><item><title>在windows下eclipse的带ssh的cvs客户端配置（使用putty tools）</title><link>http://www.blogjava.net/luoqx/archive/2006/04/12/40588.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Wed, 12 Apr 2006 03:16:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2006/04/12/40588.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/40588.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2006/04/12/40588.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/40588.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/40588.html</trackback:ping><description><![CDATA[
		<p>在sourceforge上注册了一个开源项目（<a href="http://nodepublisher.sourceforge.net/">http://nodepublisher.sourceforge.net/</a><a href="http://sourceforge.net/projects/nodepublisher"></a>），在后台管理里面其它配置基本上都配置成功，cvs开发人员的访问也按照帮助使用wincvs访问成功，可是现在开发都使用eclipse里面的cvs，如果结合者wincvs使用实在是太麻烦了，所以上网找了找资料，中文的没有，只有一些英文资料，将它们整理翻译一下，供大家参考。<br />我已经能够使用windows下的eclipse中的cvs访问SourceForge的cvs服务器了，下面是操作过程。<br /></p>
		<h2>下载 PuTTY tools</h2>
		<ul>
				<li>下载 <a href="http://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe">PuTTYgen</a>, <a href="http://the.earth.li/~sgtatham/putty/latest/x86/pageant.exe">Pageant</a>, 和 <a href="http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe">Plink</a> 三个文件到你计算机一个文件目录下。可以象本向导一样放到 "C:\Program Files\PuTTY"下。 </li>
		</ul>
		<h2>生成你自己的一对RSA密钥</h2>
		<ol>
				<li>运行PuTTYgen. 点击Generate 按钮并且按照上面说明的移动你的鼠标。 
</li>
				<li>在"Key passphrase"中输入一个规整的长密码并且在"Confirm passphrase"中重复输入。 
</li>
				<li>点击"Save public key" 将你生成的共钥保存在你的计算机的某个目录下.例如"C:\Documents and Settings\Matt Whitlock\sf0.pub". 其实在后面的使用中你并不真正使用它,但是保留下来还是挺好的有可能你会在其它地方用到它. 
</li>
				<li>点击"Save private key" 保存私钥到你的计算机上.例如"C:\Documents and Settings\Matt Whitlock\ssh\sf0.ppk". 这个文件已经被你的密码段加密了. 
</li>
				<li>拷贝高亮显示区域"Public key for pasting into OpenSSH authorized_keys file"中的内容到剪贴板中. </li>
		</ol>
		<h2>保存你的公钥到SourceForge中</h2>
		<ol>
				<li>登入到<a href="http://sourceforge.net/">SourceForge</a>. 
</li>
				<li>点击工具条上的 "My Settings". 
</li>
				<li>点击"Authorized Keys" . 
</li>
				<li>粘贴你拷贝在剪贴板里的公钥.新的公钥将替换原来已有的其它公钥。 
</li>
				<li>点击 "Update" 保存你的公钥到SourceForge. </li>
		</ol>
		<h2>使用Pageant来提供ssh的身份认证</h2>
		<ol>
				<li>启动Pageant. 将会有一个告示图标显示在右下角的任务条中. 
</li>
				<li>右键点击Pageant告示图标并且选择"Add Key". 
</li>
				<li>打开刚才生成并保存的私钥"C:\Documents and Settings\Matt Whitlock\ssh\sf0.ppk". 
</li>
				<li>Pageant 将会提示你输入你加密私钥的密码然后点击 "OK". </li>
		</ol>
		<h2>缓存SSH服务器的主机公钥</h2>
		<p>在你能够使用Eclipse连接CVS服务器之前,你必须添加SSH服务器的主机公钥到你的本地缓存中。</p>
		<h3>方法 1 (如果你有全部的PuTTY客户端)</h3>
		<ol>
				<li>就是使用PuTTY连接<font face="Courier New">cvs.sourceforge.net</font>，当它询问你是否信任这个服务器的时候你选择 并且添加公钥到你的缓存中,你只要选择yes.然后就可以了，你可以实际并不登入到此服务器。 </li>
		</ol>
		<h3>方法 2 (如果你有Plink,而没有 PuTTY)</h3>
		<ol>
				<li>打开命令提示框并执行: 
<blockquote><p><code>"C:\Program Files\PuTTY\plink.exe" cvs.sourceforge.net -l<i> username</i></code></p></blockquote><i>username</i>就是你在SourceForge的用户名. (注意在<em>username前面的</em>L是小写的 ) 
</li>
				<li>你可能得到一个信息说"the server's host key is not cached in the registry." 你应该回答 'y'. 
</li>
				<li>如果你得到的信息是"This is a restricted shell account. You cannot execute anything here", 你的SSH客户端已经正确设置完成。. </li>
		</ol>
		<h2>配置Eclipse使用PuTTY's Plink来SSH连接</h2>
		<ol>
				<li>运行Eclipse. 我运行的是版本3.1 
</li>
				<li>选择 "Preferences" 从 "Window" 菜单中. 选择"Team/CVS/Ext Connection Method". 
</li>
				<li>点击"Browse" 找到"C:\Program Files\PuTTY\plink.exe". 
</li>
				<li>点击"OK" 保存你的参数选择。 </li>
		</ol>
		<h2>添加你的CVS repository到Eclipse</h2>
		<ol>
				<li>选择 "Window", "Open Perspective", "Other", "CVS Repository Exploring", 点击 "OK". 
</li>
				<li>右键点击 "CVS Repositories"  (屏幕左面大块空白区域)选择"New", "Repository Location". 
</li>
				<li>在"Host"处填写"<font face="Courier New">cvs.sourceforge.net</font>". 
</li>
				<li>在"Repository path"处填写你的CVS repository 路径. 你可以在你的 SourceForge工程页的"Source code"处找到. 它应该类似"/cvsroot/projectname". 
</li>
				<li>在"User"处填写你的SourceForge用户名. 
</li>
				<li>password不填写.我们不使用口令认证而是通过Pageant使用SSH2-RSA key . 
</li>
				<li>在"Connection type"处选择"ext"类型。 
</li>
				<li>点击"Finish". 这样Eclipse就能够连接CVS server了。 </li>
		</ol>
<img src ="http://www.blogjava.net/luoqx/aggbug/40588.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2006-04-12 11:16 <a href="http://www.blogjava.net/luoqx/archive/2006/04/12/40588.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于使用utf8编码实现全球化的几点困惑</title><link>http://www.blogjava.net/luoqx/archive/2006/04/09/40059.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Sun, 09 Apr 2006 02:25:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2006/04/09/40059.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/40059.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2006/04/09/40059.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/40059.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/40059.html</trackback:ping><description><![CDATA[
		<p>    某日一时兴起将我们的内容管理发布系统改成uft-8格式（即将所有页面encode变为utf8，mysql字符集也变成uft-8）来支持能够建立各种语言的网站（产品现在可以免费下载，网址为：<a href="http://sourceforge.net/projects/nodepublisher">http://sourceforge.net/projects/nodepublisher</a>）。但是在修改程序过程中发现了一个问题，那就是在客户端页面提交过来的请求的编码格式在服务器端无法获知。如果提交页面的&lt;head&gt;里面如果包含&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&gt;，汉字部分则以utf8编码提交，如果没有的话则以gbk编码提交，而服务器端接受到的request无法判别编码格式，取到的头信息只有一些zh类似的说明,所以无法正确的将其转换成正确的编码格式。 <br />另一需要注意的是不能将取到的参数从ISO8859转换成中文系统默认的字符集GBK,然后再转换成utf8，这样的话如果出现奇数汉字的话会导致部分汉字乱码，原因在于汉字在GBK编码中为2个byte，而在utf8编码则为3个byte，如果是偶数个汉字，从ISO8859（tomcat默认得到的request都是ISO8859编码）转换成GBK，然后再转换成ISO8859到还无妨，但是奇数个，最后一个byte不知道会怎么转换成GBK的，然后再转回到utf8时最后那个字符就会成为乱码，我想可能是跟String类里面的拆分char的方法有关，不知道谁有更加明确的分析和解释。<br />再一数据库方面使用mysql5，设置成utf8初始化数据脚本汉字转换成uft8，一切正常。后来无意将数据库转换成GBK编码，竟然程序运行也正常，后来经过测试将mysql设置成gbk，然后执行初始化sql脚本，汉字编码格式为GBK，程序运行依然正常。不明白其中的原由。</p>
<img src ="http://www.blogjava.net/luoqx/aggbug/40059.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2006-04-09 10:25 <a href="http://www.blogjava.net/luoqx/archive/2006/04/09/40059.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>构件组装</title><link>http://www.blogjava.net/luoqx/archive/2005/11/18/20417.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Fri, 18 Nov 2005 04:38:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/11/18/20417.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/20417.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/11/18/20417.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/20417.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/20417.html</trackback:ping><description><![CDATA[
<h3><a name="_Toc119800820"></a><a name="_Toc119769813"></a><a name="_Toc119769766"><span style=""><span style=""><!--[if !supportLists]--><span style="font-size: 14pt; line-height: 173%;" lang="EN-US"><span style=""><span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"> 
</span></span></span><!--[endif]--><span style="font-family: 宋体;"></span></span></span></a><span style=""></span><span style=""></span><span style=""></span><span style="" lang="EN-US"><o:p></o:p></span></h3>


<p class="4TimesNewRoman" style="margin-left: 51.55pt; text-indent: -42.55pt;"><a name="_Toc119800821"><!--[if !supportLists]--><span style="" lang="EN-US"><span style=""><span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><!--[endif]--><span style="font-family: 黑体;">以框架为基础的方法</span></a></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">在软件开发中，使用面向对象技术开发构件并组装应用系统是当前的流行做法。由于这些构件是由对象构成的，为使对象之间能够通过相互触发的方式进行交互，需要对象来维护静态类信息和接口信息。这将导致对象之间具有隐式依赖</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">关系，同时还使对象依赖于外部服务</span><span style="font-size: 12pt;" lang="EN-US">(</span><span style="font-size: 12pt; font-family: 宋体;">如通信中间件</span><span style="font-size: 12pt;" lang="EN-US">)</span><span style="font-size: 12pt; font-family: 宋体;">。这些依赖关系不易于构件在不同平台间进行移植，使构件的组装变得更加困难。不过在统一平台上构件不存在移植和组装困难的问题。在本框架中采用</span><span style="font-size: 12pt;" lang="EN-US">IoC</span><span style="font-size: 12pt; font-family: 宋体;">反射注入容器来将各个构件组合起来而且不破坏构件的结构（不需要强制构件与容器耦合，不需要调用容器的</span><span style="font-size: 12pt;" lang="EN-US">API</span><span style="font-size: 12pt; font-family: 宋体;">），构件的实现类可以为普通的</span><span style="font-size: 12pt;" lang="EN-US">Java
Bean</span><span style="font-size: 12pt; font-family: 宋体;">，而不需要强制实现某些接口或者方法。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">以框架为基础的方法，增加了构件的可复用性，也提高了系统设计和演化的柔性。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="4TimesNewRoman" style="margin-left: 51.55pt; text-indent: -42.55pt;"><a name="_Toc119800822"><!--[if !supportLists]--><span style="" lang="EN-US"><span style=""><span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><!--[endif]--><span style="font-family: 黑体;">基于总线的方法</span></a></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">在基于构件的软件开发中，为了解决构件之间的数据交换，</span><span style="font-size: 12pt;" lang="EN-US">SUN</span><span style="font-size: 12pt; font-family: 宋体;">公司发布了</span><span style="font-size: 12pt;" lang="EN-US">InfoBus</span><span style="font-size: 12pt; font-family: 宋体;">标准用于构件的动态数据共享。</span><span style="font-size: 12pt;" lang="EN-US">InfoBus</span><span style="font-size: 12pt; font-family: 宋体;">符合</span><span style="font-size: 12pt;" lang="EN-US">100%</span><span style="font-size: 12pt; font-family: 宋体;">纯</span><span style="font-size: 12pt;" lang="EN-US">Java</span><span style="font-size: 12pt; font-family: 宋体;">认证标准，它允许通过定义少量的接口并声明使用这些接口的协议以在构件之间进行动态数据交换。在</span><span style="font-size: 12pt;" lang="EN-US">HTML</span><span style="font-size: 12pt; font-family: 宋体;">页面中的</span><span style="font-size: 12pt;" lang="EN-US">Applet</span><span style="font-size: 12pt; font-family: 宋体;">或者在</span><span style="font-size: 12pt;" lang="EN-US">JBuilder</span><span style="font-size: 12pt; font-family: 宋体;">环境中的为</span><span style="font-size: 12pt;" lang="EN-US">JavaBeans</span><span style="font-size: 12pt; font-family: 宋体;">都可以利用</span><span style="font-size: 12pt;" lang="EN-US">InfoBus</span><span style="font-size: 12pt; font-family: 宋体;">进行交互。</span><span style="font-size: 12pt;" lang="EN-US">InfoBus</span><span style="font-size: 12pt; font-family: 宋体;">也可以用于任意的</span><span style="font-size: 12pt;" lang="EN-US">Java</span><span style="font-size: 12pt; font-family: 宋体;">类，如</span><span style="font-size: 12pt;" lang="EN-US">Applet,Servlet</span><span style="font-size: 12pt; font-family: 宋体;">等等。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<span style="font-size: 12pt; font-family: 宋体;">基于总线的方法通过严格限制系统中使用的构件形式，尽可能地避免组装不匹配的问题出现。它通常清楚地说明</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;;" lang="EN-US">:</span><span style="font-size: 12pt; font-family: 宋体;">构件接口如何定义</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;;" lang="EN-US">;</span><span style="font-size: 12pt; font-family: 宋体;">何种数据实体可以在构件之间互换</span><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;;" lang="EN-US">:</span><span style="font-size: 12pt; font-family: 宋体;">构件之间的交互机制以及使用何种体系结构风格。基于总线的方法适用于特定的应用领域和体系结构的系统构造，它解决组装不匹配问题的能力有限，它的应用范围也是有限的。</span><img src ="http://www.blogjava.net/luoqx/aggbug/20417.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-11-18 12:38 <a href="http://www.blogjava.net/luoqx/archive/2005/11/18/20417.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>构件的定义</title><link>http://www.blogjava.net/luoqx/archive/2005/11/18/20416.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Fri, 18 Nov 2005 04:30:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/11/18/20416.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/20416.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/11/18/20416.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/20416.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/20416.html</trackback:ping><description><![CDATA[
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">构件（</span><span style="font-size: 12pt;" lang="EN-US">component</span><span style="font-size: 12pt; font-family: 宋体;">）就是使软件走向工业化的一种软件标准件，它是可复用的软件组成成份，他是可被用来快速构造其他软件的预制的特殊软件。它可以是被封装的对象类、类树、一些功能模块、软件框架（</span><span style="font-size: 12pt;" lang="EN-US">framwork</span><span style="font-size: 12pt; font-family: 宋体;">）、软件构架（或体系结构</span><span style="font-size: 12pt;" lang="EN-US">Architectural</span><span style="font-size: 12pt; font-family: 宋体;">）、文档、分析件、设计模式（</span><span style="font-size: 12pt;" lang="EN-US">Pattern</span><span style="font-size: 12pt; font-family: 宋体;">）等。构件分为构件类和构件实例，通过给出构件类的参数，生成实例，通过实例的组装和控制来构造相应的应用软件。其实质上是对已存在的软件开发知识</span><span style="font-size: 12pt;" lang="EN-US">(</span><span style="font-size: 12pt; font-family: 宋体;">开发过程和技能</span><span style="font-size: 12pt;" lang="EN-US">)</span><span style="font-size: 12pt; font-family: 宋体;">和软件开发各阶段的各种结果的重复使用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">本系统中构件小粒度的对象类。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">构件的基本属性</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">从广义上来说，构件有如下的几个基本属性。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">①、构件是可独立配置的单元，因此构件必须自包容；</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">②、构件强调与环境和其他构件的分离，因此构件的实现是严格封装的，外界没机会或没必要知道构件内部的实现细节；</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">③、构件可以在适当的环境中被复合使用，因此构件需要提供清楚的接口规范，可以与环境交互；</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">④、构件不应当是持续的，即构件没有个体特有的属性，理解为构件不应当与自身副本区别。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">从以上四个属性可以看出，构件沿袭了对象的封装特性，但同时并不局限在一个对象，其内部可以封装一个或多个类、原型对象甚至过程，结构是灵活的。构件突出了自包容和被包容的特性，这就是在软件工厂的软件开发生产线上作为零件的必要特征。　　</span><span style="font-size: 12pt;" lang="EN-US"><br>
&nbsp;&nbsp; </span><span style="font-size: 12pt; font-family: 宋体;">构件的构造原则</span><span style="font-size: 12pt;" lang="EN-US"> <o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt;" lang="EN-US">&nbsp; </span><span style="font-size: 12pt; font-family: 宋体;">构件是给人们可复用的软件标准件，因此，构件必须由构件开发商预先开发、预先构造，构件提供商应该非常明确构件系统的目标、方向，确定构件的构造原则。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt;" lang="EN-US">&nbsp; </span><span style="font-size: 12pt; font-family: 宋体;">其基本原则是：一开始就把重用性作为初始设计的一个目标，所有构件的构造目的都是为组装其它应用所复用和共享。因此，从构件分析、设计到构件提取、描述、认证、测试、分类和入库，都必须围绕重用这个目的而进行。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">构造构件要遵循其它原则：</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">①、增强构件的可重用性需要提高抽象的级别，应有一套有关名字，异常操作，结构的标准。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">②、可理解性，必须伴随有完整、正确、易读的文档，具有完整的说明，有利重用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">③、构件代表一个抽象，有很高的内聚力，提供一些所需的特定操作、属性、事件和方法接口。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">④、提高构件的重用程度，分离功能构件，将可变部分数据化、参数化，以适合不同的应用需求。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">⑤、构件的尺寸大小、复杂度适中。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 24pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">⑥、构件要易于演化，数据与其结构是封装在一起的，数据存放在数据构件对象中，能主动解释其结构。</span></p>

<img src ="http://www.blogjava.net/luoqx/aggbug/20416.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-11-18 12:30 <a href="http://www.blogjava.net/luoqx/archive/2005/11/18/20416.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>软件体系结构（构架）、框架、设计模式之间的关系</title><link>http://www.blogjava.net/luoqx/archive/2005/11/18/20397.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Fri, 18 Nov 2005 03:12:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/11/18/20397.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/20397.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/11/18/20397.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/20397.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/20397.html</trackback:ping><description><![CDATA[
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;">

</p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">一、软件体系结构和框架的定义</span></p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;">

</p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">软件体系结构的英文单词是“</span><span style="font-size: 12pt;" lang="EN-US">architecture”. Architecture</span><span style="font-size: 12pt; font-family: 宋体;">的基本词义是建筑、建筑学、建筑风格。</span>

</p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">软件体系结构虽然根植于软件工程，但还处于一个研究发展的阶段，迄今为止还没有一个为大家所公认的定义。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>

<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">&nbsp;《设计模式》</span><span style="font-size: 12pt; font-family: 宋体;">中对框架的定义是框架就是一组相互协作的类，对于特定的一类软件，框架构成了一种可重用的设计。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">软件框架</span><span style="font-size: 12pt; font-family: 宋体;">是
项目软件开发过程中提取特定领域软件的共性部分形成的体系结构，不同领域的软件项目有着不同的框架类型。框架的作用在于：由于提取了特定领域软件的共性部
分，因此在此领域内新项目的开发过程中代码不需要从头编写，只需要在框架的基础上进行一些开发和调整便可满足要求；对于开发过程而言，这样做会提高软件的
质量，降低成本，缩短开发时间，使开发越做越轻松，效益越做越好，形成一种良性循环。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">框
架不是现成可用的应用系统。是一个半成品，需要后来的开发人员进行二次开发，实现具体功能的应用系统。框架不是“平台”，平台概念比较模糊可以是一种操作
系统，一种应用服务器，一种数据库软件，一种通讯中间件等地那个，因此平台在应用平台主要指提供特定服务的系统软件，而框架更侧重了设计，开发过程，或者
可以说，框架通过调用平台提供的服务而起的作用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">框架不是工具包或者类库，调用</span><span style="font-size: 12pt;" lang="EN-US">API</span><span style="font-size: 12pt; font-family: 宋体;">并不就是在使用框架开发，紧紧使用</span><span style="font-size: 12pt;" lang="EN-US">API</span><span style="font-size: 12pt; font-family: 宋体;">是，开发者完成系统的主题部分，并不时地调用类库实现特定任务。而框架构成了通用的、具有一般性的系统主体部分，二次开发人员只是像做填空一样，根据具体业务，完成特定应用系统中与众不同的特殊部分。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>

<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;">二、框架与架构之间的关系<br>
<span style="font-size: 12pt; font-family: 宋体;">&nbsp;&nbsp;&nbsp; 框架不是构架（即软件体系机构）。体系结构确定了系统整体结构、层次划分，不同部分之间的协作等设计考虑。框架比架构更具体。更偏重于技术涉嫌。确定框架后，软件体系结构也随之确定，而对于同一软件体系结构（比如</span><span style="font-size: 12pt;" lang="EN-US">Web</span><span style="font-size: 12pt; font-family: 宋体;">开发中的</span><span style="font-size: 12pt;" lang="EN-US">MVC</span><span style="font-size: 12pt; font-family: 宋体;">），可以通过多种框架来实现。<br>
</span></p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;">三、框架与设计模式之间的关系<br>


</p>
<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">设
计模式和框架在软件设计中是两个不同的研究领域。设计模式研究的是一个设计问题的解决方法，一个模式可应用于不同的框架和被不同的语言所实现；而框架则是
一个应用的体系结构，是一种或多种设计模式和代码的混合体虽然它们有所不同，但却共同致力于使人们的设计可以被重用，在思想上存在着统一性的特点，因而设
计模式的思想可以在框架设计中进行应用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">框架和设计模式存在着显著的区别，主要表现在二者提供的内容和致力应用的领域。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt;" lang="EN-US">1)</span><span style="font-size: 12pt; font-family: 宋体;">从应用领域上分，框架给出的是整个应用的体系结构；而设计模式则给出了单一设计问题的解决方案，并且这个方案可在不同的应用程序或者框架中进行应用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt;" lang="EN-US">2)</span><span style="font-size: 12pt; font-family: 宋体;">从内容上分，设计模式仅是一个单纯的设计，这个设计可被不同语言以不用方式来实现；而框架则是设计和代码的一个混合体，编程者可以用各种方式对框架进行扩展，进而形成完整的不同的应用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt;" lang="EN-US">3)</span><span style="font-size: 12pt; font-family: 宋体;">以第二条为基础，可以得出设计模式比框架更容易移植：框架一旦设计成形，虽然还没有构成完整的一个应用，但是以其为基础进行应用的开发显然要受制于框架的实现环境；而设计模式是与语言无关的，所以可以在更广泛的异构环境中进行应用。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>


<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><span style="font-size: 12pt; font-family: 宋体;">总之，框架是软件，而设计模式是软件的知识体，提升框架的设计水平。</span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>

<p class="MsoNormal" style="text-indent: 21pt; line-height: 20pt;"><br>
<span style="font-size: 12pt; font-family: 宋体;"></span><span style="font-size: 12pt;" lang="EN-US"><o:p></o:p></span></p>

<img src ="http://www.blogjava.net/luoqx/aggbug/20397.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-11-18 11:12 <a href="http://www.blogjava.net/luoqx/archive/2005/11/18/20397.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>基于J2EE轻量级容器构件框架设计（系列）</title><link>http://www.blogjava.net/luoqx/archive/2005/11/18/20393.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Fri, 18 Nov 2005 03:01:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/11/18/20393.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/20393.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/11/18/20393.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/20393.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/20393.html</trackback:ping><description><![CDATA[<div style="text-align: center;"><font size="4"><span class="singleposttitle"><span style="font-weight: bold;">基于J2EE轻量级容器构件框架</span><br>
<font size="3"><br style="font-weight: bold;">
</font>
</span></font>
<font style="font-weight: bold;" size="3"><span class="singleposttitle"></span></font></div>
<font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/20366.html">一、总体结构图：http://www.blogjava.net/luoqx/articles/20366.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/20372.html">二、总体介绍：http://www.blogjava.net/luoqx/articles/20372.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span style="font-weight: normal;" class="singleposttitle"><a href="/luoqx/articles/20377.html">三、控制器部分：http://www.blogjava.net/luoqx/articles/20377.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span style="font-weight: normal;" class="singleposttitle"><a href="/luoqx/articles/20381.html">四、异常处理：http://www.blogjava.net/luoqx/articles/20381.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/20383.html">五、事务的AOP处理：http://www.blogjava.net/luoqx/articles/20383.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/20390.html">六、数据bean（DataBean）：http://www.blogjava.net/luoqx/articles/20390.html</a></span></font><font style="color: rgb(0, 0, 0);" size="2"><span style="font-family: times new roman;">
<br>
<br>
</span></font><font size="2"><span class="singleposttitle"><a HREF="/luoqx/articles/20406.html">七、系统初始化服务和过滤器配置：</a></span></font><font style="color: rgb(0, 0, 0);" size="2"><span style="font-family: times new roman;">http://www.blogjava.net/luoqx/articles/20406.html<br>
<br style="font-family: times new roman;">
</span>
<span style="font-family: times new roman;">
附以前写的文章介绍<br>
<br style="font-family: times new roman;">
</span>
</font>
<font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/11301.html">现有框架简单介绍：http://www.blogjava.net/luoqx/articles/11301.html</a><br>
<br>
</span></font><font style="font-family: times new roman; color: rgb(0, 0, 0);" size="2"><span class="singleposttitle"><a href="/luoqx/articles/12758.html">一个项目里简单实用的O/R mapping的功能代码：http://www.blogjava.net/luoqx/articles/12758.html</a></span></font><font style="color: rgb(0, 0, 0);" size="2"><span style="font-family: times new roman;">
</span></font><br><img src ="http://www.blogjava.net/luoqx/aggbug/20393.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-11-18 11:01 <a href="http://www.blogjava.net/luoqx/archive/2005/11/18/20393.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>j2ee框架设计原理及应用板块开张</title><link>http://www.blogjava.net/luoqx/archive/2005/08/27/11293.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Sat, 27 Aug 2005 03:45:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/08/27/11293.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/11293.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/08/27/11293.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/11293.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/11293.html</trackback:ping><description><![CDATA[一转眼已经做了5年的j2ee项目，其中积累了一些经验，看了一些资料一直没有时间整理拿出来分享，现在这个项目快要结束了，而且要准备与此相关的论文所以顺便整理一下供大家参考并给予指正。<BR>详细见文章的框架设计专栏。<BR>一、框架结构介绍<BR>http://www.blogjava.net/luoqx/articles/11301.html<BR>
<DIV style="TEXT-ALIGN: center"><FONT size=4><SPAN class=singleposttitle><SPAN style="FONT-WEIGHT: bold">基于J2EE轻量级容器构件框架</SPAN><BR><FONT size=3><BR style="FONT-WEIGHT: bold"></FONT></SPAN></FONT><FONT style="FONT-WEIGHT: bold" size=3><SPAN class=singleposttitle></SPAN></FONT></DIV><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/20366.html">一、总体结构图：http://www.blogjava.net/luoqx/articles/20366.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/20372.html">二、总体介绍：http://www.blogjava.net/luoqx/articles/20372.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle style="FONT-WEIGHT: normal"><A HREF="/luoqx/articles/20377.html">三、控制器部分：http://www.blogjava.net/luoqx/articles/20377.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle style="FONT-WEIGHT: normal"><A HREF="/luoqx/articles/20381.html">四、异常处理：http://www.blogjava.net/luoqx/articles/20381.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/20383.html">五、事务的AOP处理：http://www.blogjava.net/luoqx/articles/20383.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/20390.html">六、数据bean（DataBean）：http://www.blogjava.net/luoqx/articles/20390.html</A></SPAN></FONT><FONT style="COLOR: rgb(0,0,0)" size=2><SPAN style="FONT-FAMILY: times new roman"> <BR><BR></SPAN></FONT><FONT size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/20406.html">七、系统初始化服务和过滤器配置：</A></SPAN></FONT><FONT style="COLOR: rgb(0,0,0)" size=2><SPAN style="FONT-FAMILY: times new roman">http://www.blogjava.net/luoqx/articles/20406.html<BR><BR style="FONT-FAMILY: times new roman"></SPAN><SPAN style="FONT-FAMILY: times new roman">附以前写的文章介绍<BR><BR style="FONT-FAMILY: times new roman"></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/11301.html">现有框架简单介绍：http://www.blogjava.net/luoqx/articles/11301.html</A><BR><BR></SPAN></FONT><FONT style="COLOR: rgb(0,0,0); FONT-FAMILY: times new roman" size=2><SPAN class=singleposttitle><A HREF="/luoqx/articles/12758.html">一个项目里简单实用的O/R mapping的功能代码：http://www.blogjava.net/luoqx/articles/12758.html</A></SPAN></FONT><FONT style="COLOR: rgb(0,0,0)" size=2><SPAN style="FONT-FAMILY: times new roman"> </SPAN></FONT><BR><BR><img src ="http://www.blogjava.net/luoqx/aggbug/11293.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-08-27 11:45 <a href="http://www.blogjava.net/luoqx/archive/2005/08/27/11293.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>why? EnterpriseBean extend Serializable</title><link>http://www.blogjava.net/luoqx/archive/2005/08/27/11289.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Sat, 27 Aug 2005 03:20:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/08/27/11289.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/11289.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/08/27/11289.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/11289.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/11289.html</trackback:ping><description><![CDATA[	
	
		
<table _base_href="http://spaces.msn.com/mmm2005-08-03_15.21/" class="fixedTable blogpost" border="0" cellspacing="0" width="100%">
<tbody _base_href="http://spaces.msn.com/mmm2005-08-03_15.21/"><tr><td class="ellipse"><br>
</td></tr>
<tr>
<td class="bvh8"><br>
</td></tr>
<tr>
<td id="msgcns!1ppLlQyegnTGhBatkQ-HqHlQ!115">
<div>    
同事问了一个这样的问题，大家都知道，ejb的本地接口，远程接口还有参数都需要序列话，这是因为这些东西都需要分布式传输，可是在容器了的bean不需要分布传输为什么也要实现serializable接口呢？</div>
<div>    上网差了些资料，主要有两种说法，一个是app 
server要作cluster，交换内存中数据（包括ejb）。二是ejbPassivate（钝化）和ejbActivate() 
（活化）时需要使用序列话。第二种说法可能性比较大。</div>
<div>参考资料：</div>
<div><a href="http://www.theserverside.com/discussions/thread.tss?thread_id=6966">http://www.theserverside.com/discussions/thread.tss?thread_id=6966</a></div>
<div><a href="http://madbean.com/2003/mb2003-13/">http://madbean.com/2003/mb2003-13/</a></div>
<div><a href="http://www.cnblogs.com/lovewindy/articles/174170.html">http://www.cnblogs.com/lovewindy/articles/174170.html</a></div></td></tr></tbody>
</table>
<img src ="http://www.blogjava.net/luoqx/aggbug/11289.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-08-27 11:20 <a href="http://www.blogjava.net/luoqx/archive/2005/08/27/11289.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>开张了</title><link>http://www.blogjava.net/luoqx/archive/2005/08/17/10339.html</link><dc:creator>publisher luo</dc:creator><author>publisher luo</author><pubDate>Wed, 17 Aug 2005 06:53:00 GMT</pubDate><guid>http://www.blogjava.net/luoqx/archive/2005/08/17/10339.html</guid><wfw:comment>http://www.blogjava.net/luoqx/comments/10339.html</wfw:comment><comments>http://www.blogjava.net/luoqx/archive/2005/08/17/10339.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/luoqx/comments/commentRss/10339.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/luoqx/services/trackbacks/10339.html</trackback:ping><description><![CDATA[申请下来有一段时间了，一直因为项目忙没有加入文章，先把msn space的一些项目碰到的问题解决方案发布共享出来。<img src ="http://www.blogjava.net/luoqx/aggbug/10339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/luoqx/" target="_blank">publisher luo</a> 2005-08-17 14:53 <a href="http://www.blogjava.net/luoqx/archive/2005/08/17/10339.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>