﻿<?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-kukooBlog-随笔分类-Java</title><link>http://www.blogjava.net/kukoo/category/1243.html</link><description>look to the master, follow the master, walk with the master, see through the master, become the master.</description><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 11:24:33 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 11:24:33 GMT</pubDate><ttl>60</ttl><item><title>猫和狗是可以生活在一起的</title><link>http://www.blogjava.net/kukoo/archive/2007/01/13/93681.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sat, 13 Jan 2007 15:15:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2007/01/13/93681.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/93681.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2007/01/13/93681.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/93681.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/93681.html</trackback:ping><description><![CDATA[
<p><a href="http://www.eclipse.org/" class="externalLink" target="_blank">Eclipse Foundation</a> 加入<a href="http://jcp.org/en/home/index" class="externalLink" target="_blank">JCP (Java Community Process)</a>。</p>
<p>最早是Linux-watch公布了<a href="http://www.linux-watch.com/news/NS6467114693.html" class="externalLink" target="_blank">这条消息</a>的，甚至在Eclipse Foundation自己正式宣布之前。 Eclipse Foundation同时将宣布加入OMG和OSGi Alliance这两个组织。</p>
<p>Sun和JCP是支持NetBeans IDE的，Eclipse (当然还有IBM)是支持Eclipse IDE的。 现在猫和狗住一起了，后面将会是什么呢？ 不管怎么说，这两家都有一个共同的目标: 一个跨平台的，开源的，低价的Java IDE。</p>
<img src ="http://www.blogjava.net/kukoo/aggbug/93681.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2007-01-13 23:15 <a href="http://www.blogjava.net/kukoo/archive/2007/01/13/93681.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Groovy 1.0 正式发布</title><link>http://www.blogjava.net/kukoo/archive/2007/01/04/91821.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 04 Jan 2007 10:57:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2007/01/04/91821.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/91821.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2007/01/04/91821.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/91821.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/91821.html</trackback:ping><description><![CDATA[
<p>Groovy 1.0 <a href="http://glaforge.free.fr/weblog/?itemid=200" target="_blank" class="externalLink" title="Groovy 1.0 正式发布">正式发布</a>了。 正式的发布申明是这么写的:</p>
<blockquote>
<p>Groovy is a dynamic language for the JVM that integrates seamlessly with the Java platform. It offers a Java-like syntax, with language features inspired by Smalltalk, Python or Ruby, and lets your reuse all your Java libraries and protect the investment you made in Java skills, tools or application servers.</p>
</blockquote>
<p>很早以前就曾经关注过Groovy，还在Ruby和Groovy中犹豫过。 目前虽然在看一些Ruby和RoR的书籍和资料，Groovy还是不会忽略掉的，当然还有<a href="http://grails.org/" target="_blank" class="externalLink" title="Grails">Grails</a>，这个以Groovy写成的Web应用框架 (Groovy + Grails &amp; Ruby + Rails)。</p>
<p>【相关链接】</p>
<p>下载Groovy: <a href="http://dist.codehaus.org/groovy/distributions" target="_blank" class="externalLink" title="下载Groovy 1.0">http://dist.codehaus.org/groovy/distributions</a></p>
<p>About Groovy: <a href="http://www.aboutgroovy.com/item/list" target="_blank" class="externalLink" title="About Groovy">http://www.aboutgroovy.com/item/list</a><br/></p>
<img src ="http://www.blogjava.net/kukoo/aggbug/91821.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2007-01-04 18:57 <a href="http://www.blogjava.net/kukoo/archive/2007/01/04/91821.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Eclipse 3.2将EJB部署到Glassfish中</title><link>http://www.blogjava.net/kukoo/archive/2007/01/04/91818.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 04 Jan 2007 10:56:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2007/01/04/91818.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/91818.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2007/01/04/91818.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/91818.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/91818.html</trackback:ping><description><![CDATA[
<p>以前曾写过一篇关于在Eclipse 3.2中使用Glassfish的文章: <a href="http:///?p=34">安装和使用Glassfish</a>，主要是写如何在Eclipse 3.2的WTP中创建一个Glassfish的Server，配置，启动和停止。 在Eclipse的WTP中，要把一个Web Application部署到Glassfish中是非常容易的。 因为很久没有关心过EJB了，目前所做的所有项目，也不使用EJB而是用Spring + iBatis，所以从没想过要用Eclipse + Glassfish来试试如何玩EJB，尽管Glassfish已经支持最新的EJB 3.0规范了。</p>
<p>今天在网上看到一篇介绍<a href="http://www.imixs.com/websites/imixs-org.nsf/chapter/0300.0011.0005.?OpenDocument" class="externalLink" target="_blank">使用Eclipse将EJB部署到Glassfish的tutorial</a>，文章写的挺简单，如果你有过EJB开发经验，不用实际到Eclipse中去实验，也能看懂这个短小的tutorial。文章同时还简单介绍了Derby这个开源数据库，以及Eclipse的WTP附带的那个太过简单的Data Explorer工具。</p>
<p>因为很久没有去更新过关于EJB的知识了，只是简单的了解到，EJB 3.0的规范在制作过程中，吸取了EJB 2.x的经验，力图使得EJB编程变得更加容易和简单，也借鉴了Spring中的IoC以及运用Java 5中的一些新特性（比如annotation）。 看了这个简单的tutorial以后，第一个感觉是，EJB确实开始变得简单了，第一，没看到Home Interface （因为tutorial太简单，就不知道如何去lookup这个stateless session bean了）；其次，bean本身和remote interface，都使用annotation来配置bean。</p>
<p>现在已经有了简单易用的<a href="http://www.springframework.org/" class="externalLink" target="_blank">Spring Framework</a>和iBatis，Hibernate这样的轻量级框架了，还需要EJB吗？</p>
<img src ="http://www.blogjava.net/kukoo/aggbug/91818.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2007-01-04 18:56 <a href="http://www.blogjava.net/kukoo/archive/2007/01/04/91818.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Custom SWT widgets ?</title><link>http://www.blogjava.net/kukoo/archive/2006/09/01/67170.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Fri, 01 Sep 2006 09:23:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/09/01/67170.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/67170.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/09/01/67170.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/67170.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/67170.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Eclipse RCP平台真的是一个非常好的平台，但是在用RCP的过程中，一定有一个大问题: SWT的UI widgets。 了解Swing的人知道，Swing下面有相当多的widgets，而且Sun还赞助着一个SwingLab，为Swing开发更多的客户化的UI widgets。 但是SWT目前有这么一个问题，SWT的元件，不能直接继承来开发一个新的UI组件，Eclipse虽然提供了大量的widgets，但是却还不够丰富，或者使用上有局限性（比如table这个组件）。 所以我们面临的问题就是: 要么自己开发适合自己需求的widgets，要么在网上找。 而目前，还没有像Swing那样存在大量的custom widgets，这有点像``鸡"和``蛋"的问题。&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2006/09/01/67170.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/67170.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-09-01 17:23 <a href="http://www.blogjava.net/kukoo/archive/2006/09/01/67170.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>安装和使用Glassfish</title><link>http://www.blogjava.net/kukoo/archive/2006/07/20/59160.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 20 Jul 2006 04:26:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/07/20/59160.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/59160.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/07/20/59160.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/59160.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/59160.html</trackback:ping><description><![CDATA[<p><a href="https://glassfish.dev.java.net/" class="externalLink" target="_blank">Glassfish</a>是Sun Microsystem支持的一个开源社区，它参考了<a href="https://www.apache.org/" class="externalLink" target="_blank">Apache</a>, <a href="http://www.eclipse.org/" class="externalLink" target="_blank">Eclipse</a>等开源社区的模式，通过OpenSource实现了Java EE 5的全部功能。 Sun的Java System Application PE 9和Java EE 5 SDK即以Glassfish为基础。更多Glassfish的功能，<a href="http://blogs.sun.com/roller/page/theaquarium_zh?anchor=glassfish_%E4%BC%97%E5%A4%9A%E7%89%B9%E6%80%A7_%E4%B8%80%E4%B8%AA%E9%83%BD%E4%B8%8D%E8%A6%81%E9%94%99%E8%BF%87" target="_blank" class="externalLink" title="Glassfish众多特性">参考The Aquarium (水族馆)</a>。</p>
<p>利用空闲的时间，安装了Glassfish和相对应的Eclipse插件，简单的玩了一下。</p>
<p>1. 下载Glassfish和其Eclipse插件</p>
<p>在<a href="https://glassfish.dev.java.net/public/downloadsindex.html" class="externalLink" target="_blank">Glassfish的下载站点</a>下载，目前稳定的版本是<a href="https://glassfish.dev.java.net/downloads/04May06.html" class="externalLink" target="_blank">Milestone 7</a>。不同平台有不同的版本，注意你的操作系统。</p>
<p>在<a href="https://glassfishplugins.dev.java.net/download/" class="externalLink" target="_blank">Glassfish plugin的下载站点</a>下载Eclipse的WTP插件，目前有两个版本: <a href="https://glassfishplugins.dev.java.net/files/documents/3651/32391/glassfish-eclipse-plugin_0_21.zip" class="externalLink" target="_blank">Milestone 0.2.1</a>支持Eclipse 3.1.x和WTP 1.0+，<a href="https://glassfishplugins.dev.java.net/files/documents/3651/35660/glassfish-eclipse-plugin_0_3.zip" class="externalLink" target="_blank">Milestone 0.3</a>则支持Eclipse 3.2和WTP 1.5。 要注意你的Eclipse斑版本，下载正确的插件。</p>
<p>2. 安装Glassfih和Eclipse插件</p>
<p>下载到的Glassfish是一个jar文件，需要运行这个jar来安装: <em>java -Xmx256m -jar filename.jar。</em>安装完以后，需要在glassfish的目录下面，运行 <em>ant -f setup.xml</em>。安装Glassfish需要JDK 5和Ant 1.6.2(安装完以后，glassfish包含了Ant 1.6.2了，在\glassfish\ant\lib目录下面)。 详细的安装步骤，<a href="https://glassfish.dev.java.net/downloads/04May06.html" class="externalLink" target="_blank">参考这里</a>。</p>
<p>Eclipse插件只需要简单的解压缩到Eclipse安装目录下面即可。详细安装步骤，<a href="https://glassfishplugins.dev.java.net/download/" class="externalLink" target="_blank">参考这里</a>。</p>
<p>3. 在Eclipse中使用Glassfish</p>
<p>首先要在Eclipse WTP中配置Glassfish，参考我的配置步骤：</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336765868.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336765868_tn.jpg" title="InstallServer1.PNG" height="200" width="190" alt="InstallServer1.PNG" border="0" id="115336765868.PNG"/></a></p>
<p>图1 安装Glassfish运行环境</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336768734.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336768734_tn.jpg" title="InstallServer2.PNG" height="200" width="190" alt="InstallServer2.PNG" border="0" id="115336768734.PNG"/></a></p>
<p>图2 配置Glassfish的SDK和目录</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336775196.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336775196_tn.jpg" title="AddNewServer1.PNG" height="193" width="200" alt="AddNewServer1.PNG" border="0" id="115336775196.PNG"/></a></p>
<p>图3 添加一个新的Glassfish服务器</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336790779.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336790779_tn.jpg" title="AddNewServer2.PNG" height="193" width="200" alt="AddNewServer2.PNG" border="0" id="115336790779.PNG"/></a></p>
<p>图4 配置Glassfish服务器的地址，端口等其他信息(使用默认值即可)</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336797421.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336797421_tn.jpg" title="AddProject1.PNG" height="193" width="200" alt="AddProject1.PNG" border="0" id="115336797421.PNG"/></a></p>
<p>图5 把Web项目添加到服务器中</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336800176.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336800176_tn.jpg" title="ServerOverview.PNG" height="158" width="200" alt="ServerOverview.PNG" border="0" id="115336800176.PNG"/></a></p>
<p>图6 Glassfish服务器的配置页面和Server View</p>
<p><a href="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336802984.PNG"><img src="http://kthis.008.net/blog/wp-content/uploads/2006/07/115336802984_tn.jpg" title="ServerStartup.PNG" height="67" width="200" alt="ServerStartup.PNG" border="0" id="115336802984.PNG"/></a></p>
<p>图7 在Console中可以看到Glassfish正确启动</p>
<p>结论: 总体的安装和配置还是相对比较容易的，Eclipse 插件对WTP的支持也没有太多的问题。 Glassfish可以作为另一个可配置的Java EE的开发环境和Eclipse一起使用。</p>
<p>【更多信息】</p>
<ul>
<li><a href="https://glassfish.dev.java.net/downloads/quickstart/index.html" class="externalLink" target="_blank">Glassfish Quick Start</a></li>
<li><a href="http://blogs.sun.com/roller/page/theaquarium" class="externalLink" target="_blank">The Aquarium, Glassfish community</a></li>
<li><a href="http://blogs.sun.com/roller/page/theaquarium_zh" class="externalLink" target="_blank">The Aquarium 中文</a></li>
</ul>

<br/>
<img src ="http://www.blogjava.net/kukoo/aggbug/59160.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-07-20 12:26 <a href="http://www.blogjava.net/kukoo/archive/2006/07/20/59160.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>循序渐进: 使用Eclipse Callisto</title><link>http://www.blogjava.net/kukoo/archive/2006/07/01/56113.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sat, 01 Jul 2006 14:10:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/07/01/56113.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/56113.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/07/01/56113.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/56113.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/56113.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Eclipse Callisto在历经了长时间的等待之后终于发布了。 Callisto的主要目的是为了同步发布10个Eclipse的主要项目（Eclipse Platform, JDT, PDE, CDT, BIRT, EMF, GEF, VE, WST, TPTP等）。 这样会使得下载，安装和配置这些项目变得更加容易。 前一篇blog中简单描述了如何下载最新的Eclipse 3.2 SDK，以及如何通过Callisto Discovery Site来安装其他的插件，在这里，将比较详细的描述一下如何使用Callisto Discovery。<br><br>&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2006/07/01/56113.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/56113.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-07-01 22:10 <a href="http://www.blogjava.net/kukoo/archive/2006/07/01/56113.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>安装 Eclipse Callisto</title><link>http://www.blogjava.net/kukoo/archive/2006/07/01/56106.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sat, 01 Jul 2006 11:03:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/07/01/56106.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/56106.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/07/01/56106.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/56106.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/56106.html</trackback:ping><description><![CDATA[<p>一早得知Eclipse 3.2正式发布的消息以后，第一时间就安装了Eclipse Callisto。也许是赶在下载高峰到来之前安装的，一共耗时约50分钟，包括Eclipse 3.2 SDK和所有Callisto中包含的Plugins。</p>
<p>我的安装步骤如下：</p>
<ol>
<li>进入<a href="http://www.eclipse.org">www.eclipse.org</a>，在主页上已经有一个大大的"<a href="http://www.eclipse.org/callisto/">Callisto Is Here</a>"的logo了，点击这个logo进入Callisto主页；</li>
<li>在Callisto主页上，增加了若干个安装选项，如：I Build Java/Web Applications, I build Plugins/RCP Applications等，如下图。我选择了<a href="http://www.eclipse.org/callisto/plugin-dev.php">I build Plugins/RCP Applications</a>。
<br/>
<div align="center"><a href="http://photos1.blogger.com/blogger/7897/1028/1600/install_options.0.jpg"><img width="400" height="28" border="0" src="http://photos1.blogger.com/blogger/7897/1028/400/install_options.jpg"/></a></div>
</li>
<li>然后我选择了下载Eclipse 3.2 SDK，简单的解压缩，然后运行eclipse.exe。</li>
<li>启动Eclipse 3.2 SDK以后，是新的Welcome页面，选择"New Updates。
<br/>
<div align="center"><a href="http://photos1.blogger.com/blogger/7897/1028/1600/welcome.jpg"><img width="356" height="82" border="0" src="http://photos1.blogger.com/blogger/7897/1028/400/welcome.jpg"/></a></div>
</li>
<li>从Update Manager中选择Callisto Discovery Site，再选择一个你常用（或者熟悉的）镜像站点，选择所有的plugins（比如TPTP, VE, BIRT等）</li>
</ol>
<p>OK，使用Callisto安装整个开发平台，比以往任何一次都要简单，明了。</p>
<p>当然，还有其他安装方式，如果你的网路速度足够快，你可以只下载Eclipse 3.2 Platform，然后通过Callisto Discovery Site来安装包括JDT，PDE在内的其他plugins。</p>
<p>感谢<a href="http://www.eclipse.org/">Eclipse</a>和<a href="http://www.eclipse.org/callisto/">Callisto</a>，现在终于有一个可以简单安装和更新的完整的Eclipse开发平台了。</p>
<p class="zoundry_bw_tags">
  <!-- Tag links generated by Zoundry Blog Writer. Do not manually edit. http://www.zoundry.com -->
  <span class="ztags"><span class="ztagspace">Technorati</span> : <a href="http://technorati.com/tag/Callisto" class="ztag" rel="tag">Callisto</a>, <a href="http://technorati.com/tag/Eclipse" class="ztag" rel="tag">Eclipse</a></span> 
</p><img src ="http://www.blogjava.net/kukoo/aggbug/56106.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-07-01 19:03 <a href="http://www.blogjava.net/kukoo/archive/2006/07/01/56106.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://static.flickr.com/16/20444369_df4dc5957b_o.gif" border=0 align="top"/&gt; 使用Eclipse中内嵌的Tomcat服务器</title><link>http://www.blogjava.net/kukoo/archive/2006/06/27/55332.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Tue, 27 Jun 2006 07:08:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/06/27/55332.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/55332.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/06/27/55332.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/55332.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/55332.html</trackback:ping><description><![CDATA[
<p>Eclipse带有其内置的Tomcat服务器，用于支持Eclipse的Help服务。 通常在打开Help页面的时候，Help系统会启动内置的Tomcat。我们在开发基于RCP的应用系统时，也同样可以通过API来启动并且使用这个内置的Tomcat服务器（尽管Eclipse没有提供相应的文档，并且不推荐使用这类功能）。</p>
<p>Eclipse的org.eclipse.help.internal.appserver包中，含有一个重要的类：WebappManager，几乎所有和Tomcat相关的操作，都和这个WebappManager有关，其中比较重要的几个方法是：</p>
<ol>
<li>getHost()，返回运行Tomcat的主机名或者IP地址</li>
<li>getPort()，返回Tomcat监听的端口号，这个端口号在每次Tomcat启动时，都不一样</li>
<li>start(String webappName, String pluginId, IPath path)，启动应用程序，其中的pluginId为包含web应用的插件ID（后面做详细解释）</li>
</ol>
<p>在了解了基本的方法以后，我们可以实验一下：</p>
<ol>
<li>创建一个插件(plug-in): com.kompakar.webapp，这个插件可以不需要UI的支持</li>
<li>插件com.kompakar.webapp需要依赖以下Eclipse插件：</li>
<li style="LIST-STYLE-TYPE: none">
<ol>
<li>org.eclipse.help.appserver</li>
<li>org.eclipse.help.base</li>
</ol>
</li>
<li>在com.kompakar.webapp目录下面，建立WEB-INF，WEB-INF/lib和WEB-INF/classes目录。 这里的WEB-INF目录结构和普通的web application完全一致，用于存放你的JSP，Servlet和classes。 如果你的web application需要其他库的支持，那么放在WEB-INF/lib下面。</li>
<li>启动Tomcat: WebappManager.start("myapp", "com.kompakar.webapp", Path.EMPTY); 在启动方法中:</li>
<li style="LIST-STYLE-TYPE: none">
<ol>
<li>第一个参数myapp就是web application的上下文目录；</li>
<li>第二个参数就是包含了web application的插件ID；</li>
</ol>
</li>
<li>得到完整的URL: "http://" + WebappManager.getHost() + ":" + WebappManager.getPort();</li>
<li style="LIST-STYLE-TYPE: none">
<ol>
<li>这个操作返回的结果可能是：http://127.0.0.1:52235，最后的端口号是随机的</li>
</ol>
</li>
</ol>
<p>OK，如果你启动了你的插件，并且在WEB-INF下面有一个简单的index.jsp的话，打开你的浏览器，打开: http://127.0.0.1:52235/myapp，那么你就可以看到你的index.jsp了。 如果你的插件同时捆绑了Eclipse的Web Browser插件的话，你就可以在你的插件里打开浏览器，直接访问你的web application了。</p>
<p>这样做有什么好处吗？ 其中的一个好处是，你可以把支持web的报表系统（比如BIRT)安装在一个特殊的插件中，那么你的桌面RCP系统就有一个支持web的报表系统了，你可以通过启动Tomcat来使用你的报表。</p>
<p>【参考文章】<a href="http://www.eclipsezone.com/eclipse/forums/t62852.html" class="externalLink" target="_blank">Use Embedded Tomcat in Eclipse for a Webapp</a></p>
<p class="zoundry_bw_tags">
  <!-- Tag links generated by Zoundry Blog Writer. Do not manually edit. http://www.zoundry.com -->
  <span class="ztags"><span class="ztagspace">Technorati</span> : <a href="http://technorati.com/tag/eclipse" class="ztag" rel="tag">eclipse</a></span> 
</p><img src ="http://www.blogjava.net/kukoo/aggbug/55332.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-06-27 15:08 <a href="http://www.blogjava.net/kukoo/archive/2006/06/27/55332.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://static.flickr.com/16/20444369_df4dc5957b_o.gif" border=0 align="top"/&gt; Eclipse 3.2的新特性</title><link>http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Tue, 30 May 2006 01:36:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/48887.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/48887.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/48887.html</trackback:ping><description><![CDATA[Eclipse 3.2现在已经发布到RC6了，那Eclipse 3.2种到底有哪些新特性呢？ Callisto自然不必说了。  Chris Laffra 制作了一个91页的ppt，来介绍3.2种的新特性，覆盖到很多的页面。 有两种文件格式可供下载：<a href="http://www.eclipse.org/evangelism/resources/laffra-eclipse32-whatsnew/laffra-whats-new-in-3.2.pdf">PDF</a> 或者 <a href="http://www.eclipse.org/evangelism/resources/laffra-eclipse32-whatsnew/laffra-whats-new-in-3.2.pdf">ppt</a>。

<p><img alt="Yourit" src="http://static.flickr.com/17/20456973_2e070988d5_o.gif" align="middle"/> <a href="http://technorati.com/tag/eclipse" rel="tag">Eclipse</a> <a href="http://www.technorati.com/cosmos/search.html?rank=&sub=mtcosmos&url=http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html "><img border=0 alt="Technorati cosmos" src="http://girtby.net/wp-content/plugins/technobubble.gif" align="middle"/></a> <a href="http://www.technorati.com/ping.html?url=http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html "><img height=16 alt="Refresh Technorati" src="http://static.flickr.com/17/20458173_ad2bf9a578_o.gif" width=16 border=0 align="middle"/></a></p>
 
<p><script type="text/javascript"><!--
google_ad_client = "pub-0861024721602249";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
google_ad_channel ="";
google_color_border = "C3D9FF";
google_color_bg = "ECF8FF";
google_color_link = "0000CC";
google_color_url = "008000";
google_color_text = "6F6F6F";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<img src ="http://www.blogjava.net/kukoo/aggbug/48887.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-05-30 09:36 <a href="http://www.blogjava.net/kukoo/archive/2006/05/30/48887.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://static.flickr.com/16/20444369_df4dc5957b_o.gif" border=0 align="top"/&gt; Eclipse Fundation 里的第一个Sun成员</title><link>http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sun, 21 May 2006 03:45:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/47270.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/47270.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/47270.html</trackback:ping><description><![CDATA[<p>JavaOne 2006这周正在举行。 好东西还是源源不断地，但是有一条消息却是让人吃惊，但也是令人高兴的：Eclipse Fundation里终于有了第一个来自Sun Microsystems的成员了。 这位新成员将和Eclipse小组一起工作，使得Eclipse可以在Solaris x86平台下得到更好的支持，其中也包括在Solaris x86下，SWT可以得到更好的支持。 Eclipse 3.2RC4已经offcial地支持Solaris了。

<p>JavaOne之前的一段时间，关于SWT和Swing，Eclipse和NetBeans的争论有此起彼伏。 其实这种争论没什么意思，Sun是否会成为Eclipse Board中的一员，现在确实还太早。 但Sun终于还是做出了很多明智的决定：先成为Eclipse的committee，尝试和Eclipse合作； 宣布Java会open source，尽管还没有决定when and how （比如采用哪种license）。 这都是我们乐于看到的。

<p>更详细的信息，看<a href="">这里</a>，或者<a href="www.javaone.org">JavaOne</a>

<p><img alt="Yourit" src="http://static.flickr.com/17/20456973_2e070988d5_o.gif" align="middle"/> <a href="http://technorati.com/tag/eclipse" rel="tag">Eclipse</a> <a href="http://www.technorati.com/cosmos/search.html?rank=&sub=mtcosmos&url=http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html"><img border=0 alt="Technorati cosmos" src="http://girtby.net/wp-content/plugins/technobubble.gif" align="middle"/></a> <a href="http://www.technorati.com/ping.html?url=http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html"><img height=16 alt="Refresh Technorati" src="http://static.flickr.com/17/20458173_ad2bf9a578_o.gif" width=16 border=0 align="middle"/></a></p>
 
<p><script type="text/javascript"><!--
google_ad_client = "pub-0861024721602249";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
google_ad_channel ="";
google_color_border = "C3D9FF";
google_color_bg = "ECF8FF";
google_color_link = "0000CC";
google_color_url = "008000";
google_color_text = "6F6F6F";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<img src ="http://www.blogjava.net/kukoo/aggbug/47270.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2006-05-21 11:45 <a href="http://www.blogjava.net/kukoo/archive/2006/05/21/47270.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java开发的10个必备工具？</title><link>http://www.blogjava.net/kukoo/archive/2005/11/11/19318.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Fri, 11 Nov 2005 07:08:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/11/11/19318.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/19318.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/11/11/19318.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/19318.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/19318.html</trackback:ping><description><![CDATA[<p>Visual Studio .Net 2005发布了以后，装了一个Visutal Studio .Net C# 2005 Express （目前是一年免费），然后就在网上看到了这样一篇文章：<a href="http://msdn.microsoft.com/msdnmag/issues/04/07/MustHaveTools/" class="externalLink">Ten Must-Have Tools Every Developer Should Download Now</a>。 里面列出了开发.Net的10个必备的工具，写的通俗易懂，其中的工具包括了：NAnt和NUnit （从Ant和JUnit借鉴到.Net平台的工具）。

<p>那在Java开发领域，有没有10个必备工具呢（除了IDE以外）？ 我能想到的，无外乎：Ant，JavaDoc（这个是包含在JDK里面了），JUnit，Marven等等（Hibernate，SpringFramework，iBatis这样的framework应该不算在内）。

<p>同一个作者，还写了一篇: <a href="" class="externalLink">Visual Studio Add-Ins Every Developer Should Download Now</a>，给出了Visual Studio下常用的plug-in。 我用Eclipse，如果不算WTP, TPTP等，最常用的plug-in是什么呢？checkstyle算是一个，还有其他的吗？

<p>也许需要总结总结了。 简单的罗列估计是不行的，看看能不能像<a href="http://dotavery.com/blog/" class="externalLink">James Avery</a>的两篇文章一样。

<img src ="http://www.blogjava.net/kukoo/aggbug/19318.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-11-11 15:08 <a href="http://www.blogjava.net/kukoo/archive/2005/11/11/19318.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ted Neward 的读书清单</title><link>http://www.blogjava.net/kukoo/archive/2005/08/23/10773.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Tue, 23 Aug 2005 02:50:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/08/23/10773.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/10773.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/08/23/10773.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/10773.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/10773.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Ted Neward, 畅销书 Efective Enterprise Java 作者, 在他自己的新blog中给出了一份Recommended Reading List。Ted 说这是一个非常“旧”的读书清单了，但是还是可以参考一下的。 &nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/08/23/10773.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/10773.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-08-23 10:50 <a href="http://www.blogjava.net/kukoo/archive/2005/08/23/10773.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaOne: 让我们期待2006!</title><link>http://www.blogjava.net/kukoo/archive/2005/07/03/7063.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sun, 03 Jul 2005 07:11:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/07/03/7063.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/7063.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/07/03/7063.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/7063.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/7063.html</trackback:ping><description><![CDATA[<P align=center><IMG src="http://java.sun.com/javaone/images/2005_Wrap_Up.jpg"></P>
<P>为期4天的JavaOne 2005落幕了，一个盛大的10周年party吹灭了蜡烛。 我至少错过了第四天，要赶快恶补一下了。</P>
<P align="center"><IMG src="http://photos17.flickr.com/22649252_05ce6a04f8.jpg?v=0"></P>
<P>让我们等待9月份J1资料公开下载。 让我们期待2006年5月！</P><img src ="http://www.blogjava.net/kukoo/aggbug/7063.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-07-03 15:11 <a href="http://www.blogjava.net/kukoo/archive/2005/07/03/7063.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos16.flickr.com/20444369_df4dc5957b_m.jpg" border=0 align="top"/&gt; JavaOne: Eclipse 的 ecosystem</title><link>http://www.blogjava.net/kukoo/archive/2005/07/03/7061.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Sun, 03 Jul 2005 06:46:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/07/03/7061.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/7061.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/07/03/7061.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/7061.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/7061.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Java世界到目前为止，也是一个和谐发展的ecosystem，Java语言和Java平台是它的基础元素，各类厂商（不管是软件的还是硬件的）基于Java开发了大量的应用系统，JCP的运作则在保证这个系统的良性发展。 那么Java开发工具，最重要的IDE部分呢？ Eclipse还是NetBeans？ [<a href="http://kukoo.blogsome.com/2005/07/03/j1-eclipse-ecosystem/" class="externalLink" target="_blank">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/07/03/7061.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/7061.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-07-03 14:46 <a href="http://www.blogjava.net/kukoo/archive/2005/07/03/7061.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; 更多的J1的照片</title><link>http://www.blogjava.net/kukoo/archive/2005/07/01/6967.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 30 Jun 2005 16:36:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/07/01/6967.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6967.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/07/01/6967.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6967.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6967.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这里有更多的JavaOne 2005的照片，一共57张高质量的照片。&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/07/01/6967.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6967.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-07-01 00:36 <a href="http://www.blogjava.net/kukoo/archive/2005/07/01/6967.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444371_203e5a75b6_m.jpg" border=0 align="top"/&gt; Groovy on JavaOne 2005</title><link>http://www.blogjava.net/kukoo/archive/2005/06/30/6961.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 30 Jun 2005 12:22:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/30/6961.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6961.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/30/6961.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6961.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6961.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Groovy这个新近的脚本语言（其实也不是很新了），在JavaOne 2005上又被热炒了一回。 来自OpenLogic, Inc的Rod Cope在Day 1做了Groovy的技术讲座：Groovy = Java Technology + Ruby + Python for JVM，同时演示了一些Groovy的强项和最新的功能，比如操作Excel工作表单，通过Groovy的脚本，在Groovy的控制台中，向一个Excel的表单中添加数据（当然是通过MS COM接口的）。 Artima.com上也发表了Eric Armstrong的一篇文章：It’s a Groovy Day。 [<a href="http://kukoo.blogsome.com/2005/06/30/groovy-on-javaone-2005/" class="externalLink">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/30/6961.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6961.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-30 20:22 <a href="http://www.blogjava.net/kukoo/archive/2005/06/30/6961.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://static.flickr.com/17/20444371_203e5a75b6_o.gif" border=0 align="top"/&gt; JavaOne 2005上的畅销书</title><link>http://www.blogjava.net/kukoo/archive/2005/06/30/6943.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 30 Jun 2005 06:50:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/30/6943.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6943.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/30/6943.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6943.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6943.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 想知道在JavaOne 2005上，哪些书最畅销吗？ 这是J1上的图书销售商给出的Top 10...[<a href="http://kukoo.blogsome.com/2005/06/30/bestseller-on-j1-2005/" class="externalLink">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/30/6943.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6943.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-30 14:50 <a href="http://www.blogjava.net/kukoo/archive/2005/06/30/6943.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; JaveOne 2005 第二天</title><link>http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Wed, 29 Jun 2005 13:16:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6898.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6898.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6898.html</trackback:ping><description><![CDATA[<P><IMG src="http://photos17.flickr.com/21815958_a2c4e3ac8c_m.jpg" align=left aligh="left"> 第二天，就没有那么多的新消息发布了，更多的是大量有趣的技术主题报告。 主题发言中，最引人注目的，可能还是Sun的首席执行官，Scott McNealy 的演讲了。 Scott当然不会忘了Java是这次年会的主角（而不是他），所以，他尽量的阐述了如何利用Java技术（当然不仅仅是Java语言）来搭建这个被数字化割断的（“the digital divided”）世界之间的桥梁，如何使用Java技术在教育，医疗等方面提高生活的质量: 
<BLOCKQUOTE>“He talked about all the efforts to apply Java technology around world (both from within and outside of Sun) to improve quality of life in such areas as education and healthcare. By providing great opportunities for people outside the company to participate and contribute to the technology via communities Sun has grown far beyond the physical boundaries of its corporate walls. ”-- <A class=externalLink href="http://weblogs.java.net/blog/sfharris/archive/2005/06/day_2_still_goi.html" target=_blank>Steven Harris's Blog</A></BLOCKQUOTE>为了表达对James Gosling的尊敬，放映了一部回顾James Gosling的短片，都是同事，家人和朋友对这位Java之父说的一些话。 James在他自己的<A class=externalLink href="http://today.java.net/jag/page16.html#2005/06/28/13-49-58-130" target=_blank>blog</A>中，写到： 
<BLOCKQUOTE>“….was a video that some folks put together about me and the past 10 years. They got a pile of old video clips and photos, and they interviewed many of the people I've worked with and for. And they got my wife and daughters in on the scheme to contribute their own segments. I don't know how they managed to keep it a secret (particularly my 7 year old), but they did. Thanks everyone! -- James Gosling</BLOCKQUOTE>Java这个计算机语言，在10年前不经意的创建了，如今10年过去了，它还是这样令人兴奋，并且极大的影响着这个IT界，真让人难以相信。 
<P></P>
<P align=center><IMG src="http://photos15.flickr.com/22308728_90abdecc9d.jpg"></P>
<P>JavaOne的技术讲座安排的非常非常满，很多有趣的主题都在相同的时间段里面而互相重叠。 第二天的技术讲座包括了Sun刚刚开放源码的GlassFish系统，也就是Sun的Java EE Application Server Platform 9。 在Day 1的eBay做过了技术讲座之后，Day 2则是Amazone，主体都是和Web Service有关，而重点则是Java （以及Sun公司）对Web Service的支持（说实话，Java对Web Service的支持还是不够，或者说由于有JCP，对Web Service的反应有些慢，不如.Net平台，但是这次JavaOne2005页有Microsoft参加，主题就是讨论Java平台和.Net平台上，Web Service的互操作性问题。</P><A class=externalLink href="" target=_blank>Wicket</A>，这是一个有趣的东西。 Wicket是什么？ 一个新的Web Application Framework （市面上的WebApp Framework这么多了，还要Wicket干什么？）。 是由几个原JSF团队（可能现在还是）的工程师设计的。 其主要的思想就是，把代码从HTML中剥离出去，象Swing那样设计页面。 简单的说：HTML+Swing的想法+一点点Tapstery的想法。 每个HTML文件对应于一个POJO，那些复杂的动态内容，form的处理都交给POJO，在Java里面处理。 在HTML中，使用特定的Wicket ID命名不同的HTML组件（比如一个label，一个输入框），然后POJO就可以控制这个HTML了。 早几天，我在Eclipse里面尝试过几个Wicket的例子，过些日子写些体会和感受。 
<P>更多关于JavaOne 2005的消息，可以通过<A href="http://kukoo.blogsome.com/2005/06/29/power-of-tag/">Technorati查询JavaOne</A>，你会得到很多关注JavaOne 2005的blog。</P>
<P><IMG alt=Yourit src="http://photos15.flickr.com/20444373_653cc39236_m.jpg" align=middle> <A href="http://technorati.com/tag/javaone" rel=tag>JavaOne</A>，<A href="http://technorati.com/tag/java" rel=tag>Java</A>，<A href="http://technorati.com/tag/wicket" rel=tag>wicket</A> <A href="http://www.technorati.com/cosmos/search.html?rank=&amp;sub=mtcosmos&amp;url=http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html"><IMG alt="Technorati cosmos" src="http://www.mallim.per.sg/wordpress/wp-content/plugins/technobubble.gif" align=middle border=0></A> <A href="http://www.technorati.com/ping.html?url=http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html"><IMG height=16 alt="Refresh Technorati" src="http://photos17.flickr.com/20458173_ad2bf9a578_m.jpg" width=16 align=middle border=0></A></P><img src ="http://www.blogjava.net/kukoo/aggbug/6898.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-29 21:16 <a href="http://www.blogjava.net/kukoo/archive/2005/06/29/6898.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; JavaOne 2005上的一些照片</title><link>http://www.blogjava.net/kukoo/archive/2005/06/29/6897.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Wed, 29 Jun 2005 13:15:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/29/6897.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6897.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/29/6897.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6897.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6897.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 网上看到，或是收集的一些JavaOne 2005 的照片....[<a href="http://kukoo.blogsome.com/2005/06/29/javaone-2005-day1-fotos/" class="externalLink">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/29/6897.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-29 21:15 <a href="http://www.blogjava.net/kukoo/archive/2005/06/29/6897.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; JavaOne 2005的资料将免费提供</title><link>http://www.blogjava.net/kukoo/archive/2005/06/28/6846.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Tue, 28 Jun 2005 15:31:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/28/6846.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6846.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/28/6846.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6846.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6846.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 来自www.bejug.org的消息，JavaOne 2005的全部资料（估计是PDF格式的幻灯片），Sun将免费提供，但是要等到估计9月份（没关系，我可以等）。 这几天的blog上，已经发布了太多的JavaOne 2005的各种内容了，目不暇接了.... [<a href="http://kukoo.blogsome.com/2005/06/28/javaone-2005-free-ppt/" class="externalLink">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/28/6846.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6846.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-28 23:31 <a href="http://www.blogjava.net/kukoo/archive/2005/06/28/6846.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; JavaOne 2005 第一天</title><link>http://www.blogjava.net/kukoo/archive/2005/06/28/6843.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Tue, 28 Jun 2005 14:18:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/28/6843.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6843.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/28/6843.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6843.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6843.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: JaveOne 2005的第一天已经过去了。 由于时差的关系，昨天半夜里的时候，正是Day 1最热闹的时候。 不过这样也好，老外们忙完了一天，就开始写他们的blog了，而我们这里天亮了，正好可以看看各种各样的blog，了解第一天发生的事情。Day 1确实发生了不少的事情......[<a href="http://kukoo.blogsome.com/2005/06/28/javaone-2005-day1/">阅读全文</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/28/6843.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6843.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-28 22:18 <a href="http://www.blogjava.net/kukoo/archive/2005/06/28/6843.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444371_203e5a75b6_m.jpg" border=0 align="top"/&gt; 再见了J2SE</title><link>http://www.blogjava.net/kukoo/archive/2005/06/27/6794.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Mon, 27 Jun 2005 15:11:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/27/6794.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6794.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/27/6794.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6794.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6794.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Java终于扔掉了那个名字中中的2了。 不管是初学Java还是一个Jave的资深程序员，可能谁也不会忘记这个2字: Java 2 Standard Edition，Java 2 Enterprise Edition。 从1998年起，这个2字就加在Java的版本号上了，那为什么要加这个2呢？ 很多人曾经困惑过：Java 2 Standard Edition 5.0，到底是2.0版还是5.0版？终于，Sun决定要把这个困扰了很多年的2字去掉了.... [<a href="http://kukoo.blogsome.com/2005/06/27/goodbye-j2se/" class="externalLink">详细内容</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/27/6794.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6794.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-27 23:11 <a href="http://www.blogjava.net/kukoo/archive/2005/06/27/6794.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444371_203e5a75b6_m.jpg" border=0 align="top"/&gt; JavaOne Day 0: NetBeans Day</title><link>http://www.blogjava.net/kukoo/archive/2005/06/27/6780.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Mon, 27 Jun 2005 09:34:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/27/6780.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6780.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/27/6780.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6780.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6780.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: java.net上已经充满了各种关于JaveOne 2005的blog了。 而且，NetBeans Day 0先于JavaOne在昨天就举行了。 我虽然不是NetBeans的“fans”，但是这个优秀的IDE还是吸引了我去看相关的blog...... [<a href="http://kukoo.blogsome.com/2005/06/27/javaone-day-0-netbeans-day/" class="externalLink">详细阅读</a>]&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/27/6780.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6780.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-27 17:34 <a href="http://www.blogjava.net/kukoo/archive/2005/06/27/6780.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align="top"/&gt; JavaOne 2005</title><link>http://www.blogjava.net/kukoo/archive/2005/06/27/6754.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Mon, 27 Jun 2005 04:32:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/27/6754.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6754.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/27/6754.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6754.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6754.html</trackback:ping><description><![CDATA[<P align=center><IMG src="http://java.sun.com/javaone/images/2005_joc.jpg"></P>
<P>JavaOne 2005今天就要在旧金山开幕了。 可以预见这将是一次非常盛大的庆祝活动：Java 10周岁了。 今年的JavaOne将包含更多的议题（以及大量的Open Source的话题），比如：Hibernate，JBoss， WebLogic，Spring，Groovy， JDNC （Java Desktop Network Components）以及 Grid。出人意料的是，JavaOne还将包含Eclipse的讨论。“Maybe Eclipse will be able to coexist peacefully alongside Swing. Maybe Sun will even begin to coop some Eclipsian concepts and evolve Swing beyond what it is today. ”</P>
<P>象我这样，目前还没有机会去JavaOne的人，只能通过<A class=externalLink href="http://wcdata.sun.com/webcast/archives/VIP-1981/">WebCast</A>来看一些现场的主题演讲。 也希望Sun会尽快把JavaOne的各位演讲人的.ppt公布到网上。</P>
<P><IMG src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_relatedlinks.gif"><BR><A class=externalLink href="http://java.sun.com/javaone/sf/index.jsp">JavaOne 2005</A><BR><A class=externalLink href="http://java.sun.com/javaone/sf/schedule.jsp">JavaOne 2005 日程</A><BR><A class=externalLink href="http://java.sun.com/developer/technicalArticles/JavaOne2005/desktop_topten.html">Top 10 Destinations for Desktop Developers</A><BR><A class=externalLink href="http://java.sun.com/developer/technicalArticles/JavaOne2005/enterprise_topten.html">Top 10 Destinations for Desktop Developers</A><BR><A class=externalLink href="http://blogs.sun.com/roller/page/jclingan">check out the The Clingan Zone</A></P>
<P></P>
<P><IMG alt=Yourit src="http://photos15.flickr.com/20444373_653cc39236_m.jpg" align=top> <A href="http://technorati.com/tag/java" rel=tag><FONT size=2>Java</FONT></A>, <A href="http://technorati.com/tag/javaone" rel=tag><FONT size=2>JavaOne</FONT></A> <A href="http://www.technorati.com/cosmos/search.html?rank=&amp;sub=mtcosmos&amp;url=http://kukoo.blogsome.com/2005/06/27/javaone-2005/"><IMG alt="Technorati cosmos" src="http://www.mallim.per.sg/wordpress/wp-content/plugins/technobubble.gif" align=top border=0></A> <A href="http://www.technorati.com/ping.html?url=http://kukoo.blogsome.com/2005/06/27/javaone-2005/"><IMG height=16 alt="Refresh Technorati" src="http://photos17.flickr.com/20458173_ad2bf9a578_m.jpg" width=16 align=top border=0></A></P><img src ="http://www.blogjava.net/kukoo/aggbug/6754.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-27 12:32 <a href="http://www.blogjava.net/kukoo/archive/2005/06/27/6754.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;img  src="http://photos17.flickr.com/20444368_ed86f68466_m.jpg" border=0 align=top&gt; Oracle frees its JDeveloper 10g</title><link>http://www.blogjava.net/kukoo/archive/2005/06/24/6697.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Fri, 24 Jun 2005 15:24:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/24/6697.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6697.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/24/6697.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6697.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6697.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Oracle will publicly announce next week at JavaOne that it is making JDeveloper 10g available for free to all developers, however, I am wondering if sooner or later Oracle will move the Eclipse platform......&nbsp;&nbsp;<a href='http://www.blogjava.net/kukoo/archive/2005/06/24/6697.html'>阅读全文</a><img src ="http://www.blogjava.net/kukoo/aggbug/6697.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-24 23:24 <a href="http://www.blogjava.net/kukoo/archive/2005/06/24/6697.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;IMG alt="ProgrammingIcon" src="http://photos17.flickr.com/20444371_203e5a75b6_m.jpg" border=0 align=top&gt; [收藏] “那本”J2EE书</title><link>http://www.blogjava.net/kukoo/archive/2005/06/22/6572.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Wed, 22 Jun 2005 13:48:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/22/6572.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/6572.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/22/6572.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/6572.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/6572.html</trackback:ping><description><![CDATA[<DIV id=main>
<DIV class=post>
<DIV class=postText>
<DIV align=left>
<P>目前正在重读《Core J2EE Patterns》这本书。经历了几年的编程生活和系统设计，重读这本书的第二版，感触良多。 恰好看到<A href="http://blog.csdn.net/gigix/">gigix</A>在blog中发表的<A href="http://blog.csdn.net/gigix/archive/2005/02/25/301690.aspx">“那本”J2EE书——《J2EE核心模式》（第二版）译者序</A> 。 虽然我很少看中文的技术书籍，但是这篇译者序却值得收藏，收录在自己的blog中。借此，感谢译者翻译这本书，为广大的中国程序员带来了一本好书。</P></DIV>　</DIV>
<DIV align=center><SPAN style="FONT-SIZE: 20pt; LINE-HEIGHT: 32pt"><B><FONT color=#ff0000>“那本”J2EE书</FONT></B></SPAN></DIV>
<DIV class=font1 align=center>　</DIV>
<DIV class=font1 align=center>刘天北　熊节<BR>　</DIV>
<DIV align=center><FONT color=#ff3300>（原文刊登于《中华读书报》2005年2月23日号）</FONT><BR>　
<HR width=590 color=#638db8 SIZE=1>
 </DIV><!--enpcontent-->
<P><IMG alt="" hspace=0 src="http://images.amazon.com/images/P/0131422464.01._PIdp-schmoo2,TopRight,7,-26_SCMZZZZZZZ_.jpg" align=right border=0>　　翻开这本《J2EE核心模式》，你首先就会注意到软件方法论领域的两位大师GradyBooch和MartinFowler撰写的序言。在这样两份序言后面再附上一篇“译序”，这个念头本身就足够荒谬和僭越，不啻于在莎翁之后再写一出关于丹麦王子复仇的剧本。大师们的判断是中肯而毫不含糊的：“没有这本书，就别开发EJB。”他们的担保足以确认本书在其论域中舍我其谁的地位。它就是“那本”J2EE书（THEJ2EEbook）。 </P>
<P>　　当然，对于广大中国开发者而言，我们早就已经在“没有这本书”的条件下开发了大量J2EE、乃至EJB应用系统。那些充满了波折和磨难的开发历程似乎让不少程序员产生了某种自信；在掌握了若干API细节、若干应用服务器配置诀窍、若干框架类库用法之后，他们或是公开、或是暗自地把自己当成了当之无愧的Java企业开发专家———不，这些话没有任何揶揄的意思：我们想说的其实是，本书恰恰是为以上这一类开发者写的。对于他们想成为 “Java企业开发专家”的隐秘欲望，这本《J2EE核心模式》就是最大限度的补救和成全。如果说，此前的各种教程都是在介绍J2EE开发中的“内容”要素———也就是，教给我们“做什么”———的话，本书关注的则是这里的“形式”要素，是“怎样做”才能开发出高效的、优雅的J2EE系统。读者从中学到的，将不仅仅是“J2EE技术”，而是“如何使用J2EE技术进行设计”。 </P>
<P>　　换句话说，如果你以前没有过J2EE实践，但明早将应聘一个需要“1年J2EE开发经验”的职位，本书中不包含你今晚要彻夜吞咽的那一类知识；相反，如果你，这位隐形的“Java企业开发专家”，追求的职位是“资深Java应用系统架构师”，如果你预料到未来的上司明天将问起“怎样实现访问控制”、“何时采用细粒度的接口设计”等“高阶”问题，那么恭喜你，今晚———乃至今后———你选对了补课的读物。 </P>
<P>　　作为本书第一版的忠实读者，我们（半是欣喜、半是惊讶）发现眼前的这部第二版构成了全新的阅读经验。作者们按照最新版J2EE技术规范（尤其是EJB2.1）全面修订了技术细节；根据模式社区的研究交流，作者们补入了若干模式；即使是一些不涉及技术更新的部分，论述方式、示例也完全不同于第一版；原有的PSA项目（第一版“尾声”一章）融入了其余各章的“示例代码”部分；而新增的整整一章讨论“微架构”的尾声、对WebService 等技术的关注、对各种的持久化方案（定制持久化、EJB、JDO等）的深入讨论，都体现出作者们对本书新版的持续投入。 </P>
<P>　　受益于本书有年，在此我们也想不揣冒昧地为本书的中国读者们建议一条高效的阅读路径：与第一章相比，第五章“J2EE模式概览”是读者更合理的起步点。请尤其关注其中对“分层”、“术语”和模式/策略区别的讨论，这些都是贯穿全书的重要概念！其次，应该通读第二章“表现层设计考虑和不佳实践”和第三章“业务层设计考虑和不佳实践”：即使你不打算使用任何模式，甚至，即使你根本不关心J2EE开发，只要你的工作与分布式企业应用系统有关，这两章考察的问题都是你迟早会遇到的。至于每个具体模式本身，我们则推荐读者留意其中详尽的“策略”部分和那些散布其中的“设计手记”。前者讨论了对同一个模式的多种实现方案，后者则突出介绍了特定开发领域的一些核心概念和考虑。 </P>
<P>　　一部英文技术论著在汉语中的旅行，永远是一段难以捉摸的行程。对于本书的汉语译者，“技术难度”并非挑战：全书讨论的正是译者们最为熟知的一个领域，所以我们能够负责任地说，在这个中译本里，没有任何技术细节会因为译者的无知或生疏而发生变形或曲解。这次翻译的原则和前提是对原文的彻底领会。 </P>
<P>　　事实上，译者的工作中遇到的困难主要发生在“语汇”层面。简单地说，J2EE专著的译者总要面对“翻，还是不翻”的两难处境：对象、函数的名称，UML图中的各种元素，这些内容由英语表示早就是约定俗成，即使是英语程度略低的开发者大概也都能读懂，所以，在读者能够理解的部分尽可能保留原文似乎是一种合理的做法———毕竟开发工作最终是与代码有关，而代码则肯定是要出之以“英文”的。但在另一方面，翻译的责任就在于让不谙原文的读者也能通达作品，如果译文中大量段落（不包括示例代码）都仍保留为英文或“类英文”，那么读者也就无法直观地获得原文包含的信息。反复权衡之后，在这个译本中译者的解决方式还是折衷的。工作中我们采取了以下原则： </P>
<P>　　首先，术语尽可能采用通用文献定译，不自创译法。对于各个模式的名称、模式文档模版各部分名称、重构手法名称，我们参考了李英军等译《设计模式》、熊节等译《重构》等译作，以及IBMDe鄄veloperWorks中文网站的部分资源。 </P>
<P>　　其次，本领域的一些常见术语，如果没有定译，本书也不自我作古、强译为中文，而是保留英文原字。这一类的术语包括：applet、 servlet、bean、entitybean、sessionbean、cookie、WebService等。根据我们的观察，在日常工作中，国内的开发者已经习惯按原文使用以上术语。在一些情况下，我们也以注释形式澄清了这些术语的用法。 </P>
<P>　　第三，模式中的对象名称，往往按照代码风格命名，比如“BusinessObject”、“CustomerTO”等。如果对此完全不加翻译，那么很多充斥这类表达的段落就很难理解。我们的原则是，在每个自然段第一次出现某个这类表达方式时，用括号注明，比如 “BusinessObject（业务对象）”、“CustomerTO（客户传输对象）”等。希望这个做法能够维持易懂和简洁之间的平衡。 </P>
<P>　　第四，书中示例代码占有相当大的比重，而代码注释则是理解这些代码的关键。我们把所有代码注释译为中文。而对在视图中显示特定结果的代码（比如调试信息等），我们没有改为中文，只是在必要时对输出信息的涵义加以注解。如果读者更信赖代码原貌，还可以从本书官方网站http //www.corej2eepatterns.com/下载。 </P>
<P>　　第五，原书不包含注释。目前的所有注解都是译注。书中申义未畅处，译文中以方括号“ ”加以解释、补足，略去生涩。这与上面两条原则一样，都类似于在原作讲话时的插嘴———但翻译任务本身，似乎本就已经是一种“插嘴”了。在博学的读者看来，有时候译者或许还不如保持体面的沉默———但我们只能力图做到插嘴而不多嘴。 </P>
<P>　　原书经多人、多版修订完成，难免存在打字、排印错误。译本根据本书官方网站的最新勘误表订正，并结合参照本书第一版，另外修正了数十处错误。 </P>
<P>　　（本文为即将于2005年3月出版的《J2EE核心模式》中文版的译序，本报刊登时有删节）</P></DIV></DIV><img src ="http://www.blogjava.net/kukoo/aggbug/6572.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-22 21:48 <a href="http://www.blogjava.net/kukoo/archive/2005/06/22/6572.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;IMG alt=ProgrammingIcon src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/ProgrammingIcon.gif" border=0 align=top&gt; Spring, Hibernate, Web Frameworks</title><link>http://www.blogjava.net/kukoo/archive/2005/06/09/5813.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 09 Jun 2005 06:15:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/09/5813.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/5813.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/09/5813.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/5813.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/5813.html</trackback:ping><description><![CDATA[Matt Raible (AppFuse的作者，和《Spring Live》的作者) 在他的<A href="http://raibledesigns.com/"><U>blog：Raible Designs</U></A>中，更新了他的<A href="http://raibledesigns.com/trackback/rd/sunsets/updated_presentations_spring_appfuse_and"><U>三篇演讲稿： </U>
<P>
<UL>
<LI><A href="http://equinox.dev.java.net/framework-comparison/WebFrameworks.pdf"><U>Comparing Java Web Frameworks</U></A><U> </U>
<LI><A href="http://appfuse.dev.java.net/TDDWithAppFuse.pdf"><U>Test-Driven Development with Spring and Hibernate</U></A><U> </U>
<LI><A href="http://equinox.dev.java.net/SpringFramework.pdf"><U>The Spring Framework </U></A></LI></UL>
<P><BR><BR><U><IMG src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_relatedlinks.gif"><BR></U><A href="http://www.theserverside.com/talks/videos/MattRaible/interview.tss?bandwidth=dsl"><FONT size=2>TheServierSide对Matt Raible的访谈</FONT></A><BR><A href="http://raibledesigns.com/wiki/Wiki.jsp?page=AppFuse"><FONT size=2>关于AppFuse</FONT></A> </P>
<P><U><IMG alt=Yourit src="http://blogs.sun.com/roller/resources/alur/yourit.gif" align=top></U> <A href="http://technorati.com/tag/eclipse" rel=tag align="top"><FONT size=2>Java</FONT></A>，<A href="http://technorati.com/tag/springframework" rel=tag align="top"><FONT size=2>Spring Framework</FONT></A> <A href="http://www.technorati.com/cosmos/search.html?rank=&amp;url=http%3A%2F%2Fwww.blogjava.net%2Fkukoo%2Farchive%2F2005%2F06%2F09%2F5813.html"><U><IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" alt="Technorati cosmos" src="http://www.mallim.per.sg/wordpress/wp-content/plugins/technobubble.gif" align=top></U></A>&nbsp;<A href="http://www.technorati.com/ping.html?url=http://www.blogjava.net/kukoo/archive/2005/06/09/5813.html"><IMG height=16 alt=refresh.gif src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/refresh.gif" width=16 border=0></A><BR><U><IMG alt=Mycat src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_mycat.gif" align=top></U> <A href="http://www.blogjava.net/kukoo/category/1243.html"><FONT size=2>Java</FONT></A> </P>
<UL></UL>
<UL></UL><img src ="http://www.blogjava.net/kukoo/aggbug/5813.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-09 14:15 <a href="http://www.blogjava.net/kukoo/archive/2005/06/09/5813.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;IMG alt=ProgrammingIcon src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/ProgrammingIcon.gif" border=0 align=top&gt; Where is Think in Java, 4th Edition?</title><link>http://www.blogjava.net/kukoo/archive/2005/06/02/5464.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 02 Jun 2005 05:39:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/02/5464.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/5464.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/02/5464.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/5464.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/5464.html</trackback:ping><description><![CDATA[Think in Java已经发布3版了，那么，第4版在哪里呢？大量的email在询问 Bruce Eckel。为了回答这个问题，Bruce将他的blog迁移到Artima以后，<A href="http://www.artima.com/weblogs/viewpost.jsp?thread=112552"><U>发表了第二篇blog</U><A>，来解答这个问题。 
<P>在第4版里，将包含23个章节。目前，除了5个章节之外，其余的都已经写好。而剩下的这5章，Bruce认为是最难写的（“the 5 chapters are the hard ones. ”）。其中包括了“Generics” 和 “Concurrency”两部分。 
<P>那么，什么时候会看到第4版呢？Bruce原定在今年2月写完的，但是现在推迟到过完这个夏天（估计9，10月份）。书稿完毕以后，Hands-On Java CD 也将更新。 <BR>
<P><BR><IMG src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_relatedlinks.gif"><BR><A href="http://www.bruceeckel.com/"><FONT size=2>Bruce Eckel</FONT></A> 
<P><FONT size=1><A href="mailto:?subject=kukooWeb:where is Think in Java 4">Email this store to a friend</A> (send a short email with a subject to this story)<BR><A href="http://www.blogjava.net/kukoo/Rss.aspx">Subscribe to kukooBlog</A> (subscribe kukooBlog's RSS feed)<BR><A href="mailto:hello_kukoo@hotmail.com?subject=Re:where is Think in Java 4">Send me feedback on this story</A> </FONT>
<P><IMG alt=Yourit src="http://blogs.sun.com/roller/resources/alur/yourit.gif" align=top> <A href="http://technorati.com/tag/java" rel=tag align="top"><FONT size=2>Java</FONT></A>，<A href="http://technorati.com/tag/book" rel=tag align="top"><FONT size=2>book</FONT></A> <A href="http://www.technorati.com/cosmos/search.html?rank=&amp;url=http%3A%2F%2Fwww.blogjava.net%2Fkukoo%2Farchive%2F2005%2F06%2F02%2F5464.html"><IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" alt="Technorati cosmos" src="http://www.mallim.per.sg/wordpress/wp-content/plugins/technobubble.gif" align=top></A><BR><IMG alt=Mycat src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_mycat.gif" align=top> <A href="http://www.blogjava.net/kukoo/category/1243.html"><FONT size=2>Java</FONT></A> </P><img src ="http://www.blogjava.net/kukoo/aggbug/5464.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-02 13:39 <a href="http://www.blogjava.net/kukoo/archive/2005/06/02/5464.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaOne 2005</title><link>http://www.blogjava.net/kukoo/archive/2005/06/02/5463.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 02 Jun 2005 05:21:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/02/5463.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/5463.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/02/5463.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/5463.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/5463.html</trackback:ping><description><![CDATA[JavaOne 2005 (2005年6月27-30日，旧金山），将包含相当多的议题（以及大量的Open Source的话题），比如：Hibernate，JBoss，WebLogic，Spring，Groovy， JDNC （Java Desktop Network Components）以及 Grid。出人意料的是，JavaOne还将包含Eclipse的讨论。“Maybe Eclipse will be able to coexist peacefully alongside Swing. Maybe Sun will even begin to coop some Eclipsian concepts and evolve Swing beyond what it is today. ” 
<P><IMG src="http://java.sun.com/javaone/images/2005_joc.jpg"> 
<P><IMG src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_relatedlinks.gif"><BR><A href="http://java.sun.com/javaone/sf/index.jsp"><FONT size=2>JavaOne 2005</FONT></A><BR><A href="http://java.sun.com/javaone/sf/schedule.jsp"><FONT size=2>JavaOne 2005 日程</FONT></A> 
<P><IMG alt=Yourit src="http://blogs.sun.com/roller/resources/alur/yourit.gif" align=top> <A href="http://technorati.com/tag/java" rel=tag align="top"><FONT size=2>Java</FONT></A><BR><IMG alt=Mycat src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_mycat.gif" align=top> <A href="http://www.blogjava.net/kukoo/category/1243.html"><FONT size=2>Java</FONT></A> </P><img src ="http://www.blogjava.net/kukoo/aggbug/5463.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-02 13:21 <a href="http://www.blogjava.net/kukoo/archive/2005/06/02/5463.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>&lt;IMG alt=ProgrammingIcon src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/ProgrammingIcon.gif" border=0 align=top&gt; The Business Layer</title><link>http://www.blogjava.net/kukoo/archive/2005/06/02/5445.html</link><dc:creator>kukooBlog</dc:creator><author>kukooBlog</author><pubDate>Thu, 02 Jun 2005 01:19:00 GMT</pubDate><guid>http://www.blogjava.net/kukoo/archive/2005/06/02/5445.html</guid><wfw:comment>http://www.blogjava.net/kukoo/comments/5445.html</wfw:comment><comments>http://www.blogjava.net/kukoo/archive/2005/06/02/5445.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kukoo/comments/commentRss/5445.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kukoo/services/trackbacks/5445.html</trackback:ping><description><![CDATA[<P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Georgia; mso-outline-level: 1">The middle component of a typical web application is the business or service layer. This service layer is often the most ignored layer from a coding perspective. It is not uncommon to find this type of code scattered around in the UI layer or in the persistence layer. This is not the correct place because it leads to tightly coupled applications and code that can be hard to maintain over time. Fortunately, several frameworks exist that address these issues. Two of the most popular frameworks in this space are Spring and PicoContainer. ........</P>
<P lang=ZH-CN style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1">&nbsp;</P>
<P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Georgia; mso-outline-level: 1">..... The business layer should be responsible for the following:</P>
<P lang=ZH-CN style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1">&nbsp;</P>
<UL style="MARGIN-TOP: 0in; MARGIN-BOTTOM: 0in; MARGIN-LEFT: 1in; DIRECTION: ltr; unicode-bidi: embed" type=disc>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Handling application business logic and business validation </SPAN></LI>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Managing transactions </SPAN></LI>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Allowing interfaces for interaction with other layers </SPAN></LI>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Managing dependencies between business level objects </SPAN></LI>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Adding flexibility between the presentation and the persistence layer so they do not directly communicate with each other </SPAN></LI>
<LI style="MARGIN-TOP: 0px; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle; mso-outline-level: 2"><SPAN style="FONT-FAMILY: Georgia">Exposing a context to the business layer from the presentation layer to obtain business services <BR>Managing implementations from the business logic to the persistence layer </SPAN></LI></UL>
<P lang=ZH-CN style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; FONT-FAMILY: Verdana; mso-outline-level: 2">&nbsp;</P>
<P style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Georgia; mso-outline-level: 1"><SPAN lang=EN-US>Excerpt from </SPAN><A href="http://www.onjava.com/lpt/a/4744"><SPAN lang=ZH-CN style="COLOR: blue">"Wiring Your Web</SPAN></A><A href="http://www.onjava.com/lpt/a/4744"><SPAN lang=ZH-CN style="COLOR: blue"> </SPAN></A><A href="http://www.onjava.com/lpt/a/4744"><SPAN lang=ZH-CN style="COLOR: blue">Application with Open Source Java"</SPAN></A><SPAN lang=EN-US> by </SPAN><A href="http://www.oreillynet.com/pub/au/1804"><SPAN lang=ZH-CN style="COLOR: blue">Mark Eagle</SPAN></A></P>
<P lang=ZH-CN style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1">&nbsp;</P>
<P style="FONT-SIZE: 10pt; MARGIN: 0in; mso-outline-level: 1"><SPAN lang=EN-US style="FONT-FAMILY: Georgia">[Note</SPAN><SPAN lang=ZH-CN style="FONT-FAMILY: 宋体">：</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Georgia">This blog was migrated from my very old blog which was in the blogspirit.]<BR></SPAN></P>
<P><BR><IMG alt=Yourit src="http://blogs.sun.com/roller/resources/alur/yourit.gif" align=top> <A href="http://technorati.com/tag/software" rel=tag align="top">Software Programming</A>，<A href="http://technorati.com/tag/opensource" rel=tag align="top">Open Source</A><BR><IMG alt=Mycat src="http://www.blogjava.net/images/blogjava_net/kukoo/1547/o_mycat.gif" align=top> <A href="http://www.blogjava.net/kukoo/category/1245.html">Programming</A> </P><img src ="http://www.blogjava.net/kukoo/aggbug/5445.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kukoo/" target="_blank">kukooBlog</a> 2005-06-02 09:19 <a href="http://www.blogjava.net/kukoo/archive/2005/06/02/5445.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>