﻿<?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-mike zeseler</title><link>http://www.blogjava.net/mikezeseler/</link><description>张绍林</description><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 18:56:30 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 18:56:30 GMT</pubDate><ttl>60</ttl><item><title>  Groovy and Java</title><link>http://www.blogjava.net/mikezeseler/archive/2009/04/19/266382.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Sun, 19 Apr 2009 02:49:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/04/19/266382.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/266382.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/04/19/266382.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/266382.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/266382.html</trackback:ping><description><![CDATA[<p align="center">&nbsp; Groovy and Java</p>
<img height="585" alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovyjava.jpg" width="786" border="0" />
<img src ="http://www.blogjava.net/mikezeseler/aggbug/266382.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-04-19 10:49 <a href="http://www.blogjava.net/mikezeseler/archive/2009/04/19/266382.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JDK 7  Twice as Fast* as JDK 6 for Arrays and Arithmetic</title><link>http://www.blogjava.net/mikezeseler/archive/2009/04/06/264120.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Mon, 06 Apr 2009 07:03:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/04/06/264120.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/264120.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/04/06/264120.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/264120.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/264120.html</trackback:ping><description><![CDATA[<p>有时间我把它弄成中文的。<br />
The 7th version of the Java Developer&#8217;s Kit (aka JDK 7) delivers quite a speed boost over JDK 6 array accesses. For us, this is huge. It&#8217;s like another year and a half of Moore&#8217;s law for free. Only in software. And you don&#8217;t even have to write multi-threaded code.</p>
<p>I&#8217;ve been profiling my new <a href="http://lingpipe-blog.com/2009/03/23/arthur-vassilvitskii-2007-kmeans-the-advantages-of-careful-seeding/">K-Means++ implementation</a> for the next LingPipe release on some randomly generated data. It&#8217;s basically a stress test for array gets, array sets, and simple multiply-add arithmetic. Many LingPipe modules are like this at run-time: named entity, part-of-speech tagging, language modeling, LM-based classifiers, and much more. </p>
<p>While I was waiting for a run using JDK 1.6 to finish, I installed the following beta release of JDK 7:</p>
<pre style="padding-right: 1ex; border-top: black 1px solid; padding-left: 1ex; font-size: 90%; padding-bottom: 0.5em; margin: 0px; padding-top: 0.5em; border-bottom: black 1px solid; font-family: lucida console; background-color: #f0f0f0">&gt; java -version
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b52)
Java HotSpot(TM) 64-Bit Server VM (build 15.0-b03, mixed mode)
</pre>
<p>You can get it, too:</p>
<ul>
    <li>sun.com: <a href="http://java.sun.com/javase/downloads/ea.jsp">JDK 1.7 Early Access Download Page</a>
    <li>java.net: <a href="http://download.java.net/jdk7/binaries/">JDK 1.7 Binaries (including Installre)</a> </li>
</ul>
<p>I believe much of the reason it&#8217;s faster is the work of these fellows:</p>
<ul>
    <li>W&#252;rthinger, Thomas, Christian Wimmer, and Hanspeter M&#246;ssenb&#246;ck. 2007. <a href="http://www.cs.umd.edu/~vibha/330/array-bounds.pdf">Array Bounds Check Elimination for the Java HotSpot Client Compiler</a>. <em>PPPJ</em>. </li>
</ul>
<p>Java&#8217;s always suffered relative to C in straight matrix multiplication because Java does range checks on every array access (set or get). With some clever static and run-time analysis, W&#252;rthinger et al. are able to eliminate most of the array bounds checks. They show on matrix benchmarks that this one improvement doubles the speed of the <a href="http://en.wikipedia.org/wiki/LU_decomposition">LU matrix factorization</a> benchmark in the U.S. National Institute of Standards (NIST) benchmark suite <a href="http://math.nist.gov/scimark2/">SciMark 2</a>, which like our clustering algorithm, is basically just a stress test for array access and arithmetic.</p>
<p>So far, my tests have only been on a Thinkpad Z61P notebook running Windows Vista (64 bit) with an Intel Core 2 CPU (T2700; 2.0GHz), and 4GB of reasonably zippy memory. I don&#8217;t know if the speedups will be as great for other OSes or for 32-bit JDKs. </p>
<p>I&#8217;m pretty excited about the new <a href="http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5515.pdf">fork-join concurrency</a>, too, as it&#8217;s just what we&#8217;ll need to parallelize the inner loops without too much work for us or the operating system.</p>
<p><sup>*</sup><strong>Update: 2:30 PM, 30 March 2009</strong> JDK 7 is only about 15% faster than Sun&#8217;s JDK 6 on my quad Xeons (E5410, 2.33GHz) at work running the same code. I&#8217;ll have to check the exact specs on both of my memory buses. The notebook has surprisingly fast memory and the Xeon&#8217;s running ECC registered memory that I don&#8217;t think is quite as fast. </p>
<p><strong>Update: 11:00 AM, 31 March 2009</strong> Like other matrix algorithms, k-means clustering is extremely front-side-bus sensitive (connection between memory and the CPU), because the bottleneck is often between memory and the CPU&#8217;s L2 cache. Memory&#8217;s significantly slower than CPU these days.</p>
<p>The <a href="http://ark.intel.com/cpu.aspx?groupId=33080">Intel dual quad-core Xeon E5410</a> have 12MB of L2 cache at 2.3GHz, whereas the <a href="http://www-307.ibm.com/pc/support/site.wss/MIGR-66325.html#mem">Thinkpad Z61P</a> has <a href="http://processorfinder.intel.com/Details.aspx?sSpec=SLBBC">Intel Core 2 Mobile T7200</a> has only 4MB of L2 cache at 2GHz. The Core 2 has a 667 MHz front-side bus whereas the Xeon reports a 1333 MHz front-side bus (is that just the confusion between spec reporting). I actually don&#8217;t know what kind of memory&#8217;s in the workstation — I&#8217;ll have to crack it open and look. I&#8217;ve got 4GB of RAM in the notebook, but the motherboard can only see 3GB (ithat is, it&#8217;s not Windows — the same thing happened when I installed Ubuntu on the notebook and it&#8217;s a known design limitation in many motherboards); I have 16GB of RAM in the workstation and the motherboard can see all of it. But it has two physical chips, each of which share the memory, so the motherboard&#8217;s architecture&#8217;s very different. There are so many confounding factors that I can&#8217;t tease apart what&#8217;s speeding up in JDK 7 so much on the notebook.</p>
<p>Anway, go forth and test. If you&#8217;re using a machine like my notebook to do number crunching, JDK 7 really is twice as fast as JDK 6 for matrix algorithms.</p>
<img src ="http://www.blogjava.net/mikezeseler/aggbug/264120.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-04-06 15:03 <a href="http://www.blogjava.net/mikezeseler/archive/2009/04/06/264120.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate入门更新完成</title><link>http://www.blogjava.net/mikezeseler/archive/2009/02/13/254599.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Fri, 13 Feb 2009 11:47:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/02/13/254599.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/254599.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/02/13/254599.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/254599.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/254599.html</trackback:ping><description><![CDATA[<p align="center"><strong><span style="font-size: 48pt; color: teal; font-family: Impact; letter-spacing: -0.15pt">Hibernate</span></strong><strong><span style="font-size: 28pt; color: teal; font-family: 宋体">入门指南</span></strong></p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天抽咯时间完成咯自己没有完成的东西。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;希望大家多多支持我. 详细信息：<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;参见<span style="color: #ff9900"><a href="http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html">http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html</a>&nbsp;</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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 style="font-size: 18pt">&nbsp;Mike zeseler<br />
</span><img height="60" alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/g.gif" width="80" border="0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/b.gif" border="0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/y.gif" border="0" /> <br />
<p>&nbsp;</p>
<img src ="http://www.blogjava.net/mikezeseler/aggbug/254599.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-02-13 19:47 <a href="http://www.blogjava.net/mikezeseler/archive/2009/02/13/254599.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>groovy开发入门</title><link>http://www.blogjava.net/mikezeseler/archive/2009/02/08/mikezeseler.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Sun, 08 Feb 2009 04:20:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/02/08/mikezeseler.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/253772.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/02/08/mikezeseler.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/253772.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/253772.html</trackback:ping><description><![CDATA[<span style="color: #339966"><span style="color: #ff9900"><span style="color: #008000">自己软件开发经验不是很好，还须向大家学习！希望大家支持下我！有不足之处请大家批评指正。</span></span><br />
&nbsp;
<p>Groovy<span style="font-family: 宋体">就是</span>java<span style="font-family: 宋体">世界的动态语言</span></p>
<p><span style="font-family: 宋体">一：快速开始（</span>gettingStart<span style="font-family: 宋体">）</span></p>
<p><span style="font-family: 宋体">安装</span>JDK<span style="font-family: 宋体">环境</span></p>
<p>Groovy<span style="font-family: 宋体">需要</span>JDK1.4<span style="font-family: 宋体">以上版本的支持。因此在安装</span>groovy<span style="font-family: 宋体">时首先要安装</span>JDK<span style="font-family: 宋体">。</span></p>
<p>JDK<span style="font-family: 宋体">安装步骤：</span></p>
<p><span style="font-family: 宋体">&#8226;</span>&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">下载自己喜欢的</span>JDK<span style="font-family: 宋体">版本。（下载网址：</span><a href="http://java.sun.com/">http://java.sun.com</a><span style="font-family: 宋体">）</span></p>
<p><span style="font-family: 宋体">&#8226;</span>&nbsp;&nbsp; <span style="font-family: 宋体">下载</span>Groovy<span style="font-family: 宋体">：</span></p>
<p>Groovy<span style="font-family: 宋体">的</span> <span style="font-family: 宋体">下载首页截图</span></p>
<span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt"><v:shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600">&nbsp;&nbsp;<span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt"><v:shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600">&nbsp;<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy1.jpg.jpg" border="0" /><br />
&nbsp;
<p><span style="font-family: 宋体">点击</span>Download</p>
<p><span style="font-family: 宋体">进入下载页面</span></p>
<p>Groovy<span style="font-family: 宋体">最新版本：</span><span style="font-size: 11pt; color: #222233; font-family: Tahoma">Groovy 1.6-RC-2</span></p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy2.jpg" border="0" /><br />
<v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype></span><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><o:lock aspectratio="t" v:ext="edit"><br />
&nbsp;
<p><span style="font-family: 宋体">我下载的是：</span><strong><span style="font-size: 9pt; color: #222233; font-family: Tahoma">Download Windows-Installer</span></strong><span style="font-size: 9pt; color: #222233; font-family: Tahoma">: <a href="http://dist.codehaus.org/groovy/distributions/installers/windows/nsis/groovy-1.6.0-RC-2-installer.exe">Binary Release</a> </span><span style="font-size: 9pt; color: #222233; font-family: 宋体">安装版本</span></p>
<p><span style="font-family: 宋体">运行安装者</span></p>
<p><span style="font-family: 宋体">设置</span>JAVA_HOME <span style="font-family: 宋体">环境变量</span>. <span style="font-family: 宋体">在</span>Windows<span style="font-family: 宋体">平台里，步骤如下</span>: </p>
<p>(1)<span style="font-family: 宋体">打开系统</span>"<span style="font-family: 宋体">控制面板</span>" </p>
<p><span style="font-family: 宋体">单击</span>"<span style="font-family: 宋体">高级</span>"<span style="font-family: 宋体">选项卡</span></p>
<p><span style="font-family: 宋体">单击</span>"<span style="font-family: 宋体">环境变量</span>" <span style="font-family: 宋体">按钮</span></p>
<p><span style="font-family: 宋体">添加一个名称为</span>"JAVA_HOME" <span style="font-family: 宋体">的新的系统环境变量，并且将你的</span>Java<span style="font-family: 宋体">的安装目录作为它的值</span> (<span style="font-family: 宋体">例如，我的是</span>C:"Program Files"Java"jdk1.6.0<span style="font-family: 宋体">（版本号）</span>) </p>
<p><span style="font-family: 宋体">你也可以添加</span> %JAVA_HOME%"bin<span style="font-family: 宋体">到你的系统的</span>PATH<span style="font-family: 宋体">变量中</span></p>
<p><span style="font-size: 9pt; color: #222233; font-family: Tahoma"><span style="color: #008000"><span style="font-size: 9pt; font-family: Tahoma">(2)</span><span style="font-size: 9pt; font-family: 宋体">右击我的电脑属性</span></span></span><span style="font-size: 9pt; color: #222233; font-family: 宋体"><br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy4.jpg" border="0" /><br />
&nbsp; </p>
<p class="MsoNormal"><span style="font-size: 9pt; color: #222233; font-family: 宋体; mso-bidi-font-family: Tahoma; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma">点击高级选项</span><span lang="EN-US" style="font-size: 9pt; color: #222233; font-family: Tahoma"><o:p></o:p></span></p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy5.jpg" border="0" /><br />
&nbsp;
<p><span style="font-size: 9pt; color: #222233; font-family: 宋体"><span style="color: #008000">点击环境变量</span></span></p>
<p><span style="font-size: 9pt; color: #222233; font-family: 宋体"><span style="color: #008000">点击新建选项：</span></span></p>
<p><span style="font-size: 9pt; color: #222233; font-family: 宋体"><span style="color: #008000">具体设置</span></span></p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy6.jpg" border="0" /><br />
&nbsp;
<p class="MsoNormal"><span lang="EN-US" style="font-size: 9pt; color: #222233; font-family: Tahoma"><span style="color: #008000"><span lang="EN-US" style="font-size: 9pt; font-family: Tahoma">Path</span><span style="font-size: 9pt; font-family: 宋体; mso-bidi-font-family: Tahoma; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma">：</span></span></span></p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy7.jpg" border="0" /><br />
<span style="color: #008000">&nbsp; </span>
<p><span style="color: #008000"><span style="font-size: 9pt; color: #222233; font-family: 宋体">我用的</span><span style="font-size: 9pt; color: #222233; font-family: Tahoma">Jdk</span><span style="font-size: 9pt; color: #222233; font-family: 宋体">版本是</span><span style="font-size: 9pt; color: #222233; font-family: Tahoma">Jdk1.6</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">&#8226;</span>&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">运行安装文件。（更改安装路径到：</span>C:"Program Files"Java"jdk1.6.0<span style="font-family: 宋体">（版本号））</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">&#8226;</span>&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">设置</span>JAVA_HOME<span style="font-family: 宋体">环境变量（如我的</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">&#8226;</span>&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体">在系统</span>path<span style="font-family: 宋体">中增加：</span>%JAVA_HOME%"bin </span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">注：对于</span>1.1-rc-1<span style="font-family: 宋体">以上版本需要</span>JDK1.5<span style="font-family: 宋体">版或更高的版本。</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">点击自己下载的</span>Groovy windows</span><span style="font-family: 宋体"><span style="color: #008000">安装版本</span><img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy8.jpg" border="0" /><br />
&nbsp; </p>
<p><span style="color: #008000"><span style="font-family: 宋体">安装可以是默认的安装全点击下一步（</span>next<span style="font-family: 宋体">）：</span></span></p>
<p><span style="font-family: 宋体"><span style="color: #008000">安装就完成啦</span></span></p>
<p><span style="color: #008000">(Note: as an alternative to setting a system environment variable, you can create yourself a '.bat' or '.cmd' file which sets </span></p>
<p><span style="color: #008000">the variable. You then need to run that batch file in any console window in which you wish to run Java and double clicking on </span></p>
<span style="color: #008000">&nbsp; </span>
<p><span style="color: #008000">.bat' or '.cmd' files containing Java invocation instructions won't work. If you are unsure about what this means, follow </span></p>
<p><span style="color: #008000">the earlier instructions.)</span></p>
<p><span style="color: #008000">Note: JDK 1.5 is required for version 1.1-rc-1. In earlier versions of JDK (notably 1.4.2) the compiller throws an exception:</span></p>
<p><span style="color: #008000">*nested exception is org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.NoSuchMethodError: </span></p>
<p><span style="color: #008000">java.lang.String.replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;<br />
</span></p>
<p><span style="color: #008000">The method "replace" was introduced in JDK 1.5 and is not supportedin earlier versions. This is also a reason why GRails </span></p>
<p><span style="color: #008000">framework doesn't run on JRE 1.4 </span></p>
<p><span style="color: #008000">(1)<span style="font-family: 宋体">如果你是安装版本</span>Groovy<span style="font-family: 宋体">环境变量不需要我们设置，在安装的时候就自动设置好啦。</span></span></p>
<p><span style="color: #008000">(2)<span style="font-family: 宋体">如果不是，请自己尝试</span>Groovy<span style="font-family: 宋体">设置如下：</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">设置你的</span>Groovy<span style="font-family: 宋体">环境变量</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">从下载页面下载</span>Groovy<span style="font-family: 宋体">安装器或者二进制包，并且跟着介绍进行安装即可。（当前有一个问题，就是在</span>windows<span style="font-family: 宋体">下，你的安装路径不能含有空格</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">，即，要将其缺省的安装路径</span>"c:"Program Files"Groovy" <span style="font-family: 宋体">改成象</span>"c:"Groovy"<span style="font-family: 宋体">这样的路径）</span></span></p>
<p><span style="font-family: 宋体"><span style="color: #008000">或者这样</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">从站点上得到</span>Groovy<span style="font-family: 宋体">发行版的</span>copy,<span style="font-family: 宋体">并且</span>copy<span style="font-family: 宋体">它到你硬盘上的某个地方。</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">解压缩这个</span>groovy<span style="font-family: 宋体">包到你硬盘的某个空间，如我的在</span> C:"dev"groovy-1.0-jsr-06 </span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">设置</span>GROOVY_HOME<span style="font-family: 宋体">环境变量</span>. <span style="font-family: 宋体">在</span>Windows<span style="font-family: 宋体">下，作如下步骤</span>: </span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">添中新的系统环境变量</span>GROOVY_HOME <span style="font-family: 宋体">并且将值设为你的</span>groovy<span style="font-family: 宋体">安装的路径（</span> <span style="font-family: 宋体">我的是</span> C:"dev"groovy-1.0-jsr-06) </span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">打开命令行窗口，并且键入</span>"set" <span style="font-family: 宋体">然后打回车，查看你的环境变量设置是否已经正确。</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">可选的，你也可以添加</span> %GROOVY_HOME%"bin <span style="font-family: 宋体">到你的</span>PATH<span style="font-family: 宋体">环境变量中</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">通过双击试着运行</span>groovyConsole.bat<span style="font-family: 宋体">。如果它不能工作，打开一人命令行窗口，将目录改变到</span>bin<span style="font-family: 宋体">目录，并且运行它看他返回什么错误信息。</span></span></p>
<p><span style="color: #008000"><span style="font-family: 宋体">二：运行</span>groovy</span></p>
<p><span style="color: #008000">Groovy<span style="font-family: 宋体">安装：目录</span></span></p>
<img style="width: 633px; height: 472px" height="472" alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy9.jpg" width="633" border="0" /><br />
&nbsp;
<p><span style="color: #008000"><span style="font-family: 宋体">我们需要点击</span>groovyConsole.bat<span style="font-family: 宋体">文件：</span></span></p>
<p><span style="font-family: 宋体"><span style="color: #008000">文件详细内容如下：</span></span></p>
<table style="border-right: medium none; border-top: medium none; border-left: medium none; border-bottom: medium none; border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
    <tbody>
        <tr>
            <td style="border-right: windowtext 1pt solid; padding-right: 5.4pt; border-top: windowtext 1pt solid; padding-left: 5.4pt; padding-bottom: 0cm; border-left: windowtext 1pt solid; width: 426.1pt; color: #ff9900; padding-top: 0cm; border-bottom: windowtext 1pt solid" valign="top" width="568">
            <p><span style="color: #008000">@if "%DEBUG%" == "" @echo off</span></p>
            <p><span style="color: #008000">@rem </span></p>
            <p><span style="color: #008000">@rem $Revision: 2770 $ $Date: 2005-08-29 12:49:42 +0200 (Mo, 29. Aug 2005) $</span></p>
            <p><span style="color: #008000">@rem </span></p>
            <p><span style="color: #008000">@rem Set local scope for the variables with windows NT shell</span></p>
            <p><span style="color: #008000">if "%OS%"=="Windows_NT" setlocal</span></p>
            <p><span style="color: #008000">:begin</span></p>
            <p><span style="color: #008000">@rem Determine what directory it is in.</span></p>
            <p><span style="color: #008000">set DIRNAME=%~dp0</span></p>
            <p><span style="color: #008000">if "%DIRNAME%" == "" set DIRNAME=."</span></p>
            <p><span style="color: #008000">"%DIRNAME%"startGroovy.bat" "%DIRNAME%" groovy.ui.Console %*</span></p>
            <p><span style="color: #008000">@rem End local scope for the variables with windows NT shell</span></p>
            <p><span style="color: #008000">if "%OS%"=="Windows_NT" endlocal</span></p>
            </td>
        </tr>
    </tbody>
</table>
<p><span style="color: #008000"><span style="font-family: 宋体">安装完整无误的话</span> <span style="font-family: 宋体">运行</span>groovyConsole.bat<span style="font-family: 宋体">就会启动</span>groovyConsole.exe</span><span style="font-family: 宋体"><span style="color: #008000">，出来一个编辑框。<br />
</span></span></p>
<span style="font-size: 10.5pt; font-family: 'Times New Roman'"><img style="width: 579px; height: 327px" height="327" alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/gr10.jpg" width="579" border="0" />&nbsp;<br />
&nbsp;
<p class="MsoNormal"><span style="color: #008000"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上面的是文本输入框：根据</span><span lang="EN-US">groovy</span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的语法输入要显示的内容：</span></span></p>
<p class="MsoNormal"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><span style="color: #008000">下面的是内容输出框：显示上面的内容：</span></span></p>
<p class="MsoNormal"><span style="color: #008000"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">开始运行</span><span lang="EN-US">groovy</span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/gr11.jpg.jpg" border="0" /><br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/mikezeseler/groovy.jpg" border="0" /><br />
&nbsp; </p>
<p><span style="color: #ff9900"><span style="color: #008000">Hello, World</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000"><span style="font-family: 宋体">在</span> groovyConsole<span style="font-family: 宋体">运行窗口的顶部</span>,<span style="font-family: 宋体">键入</span>println&nbsp;"Hello, World!" </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000"><span style="font-family: 宋体">并且键入</span> &lt;CTRL-R&gt;.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000"><span style="font-family: 宋体">注意，在控制台窗口中（即</span> groovyConsole<span style="font-family: 宋体">窗口前面的黑色的那个），文体得到打印并且</span>&nbsp;groovyConsole<span style="font-family: 宋体">的下部显示</span> :</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">groovy&gt; println "Hello, World!"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">null </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">&nbsp;<span style="font-family: 宋体">以</span>"groovy&gt;"<span style="font-family: 宋体">开头的行正是控制台处理的文本</span>. "null" <span style="font-family: 宋体">是表达式的值</span>. <span style="font-family: 宋体">因为表达式没有任何值可以打印</span> <span style="font-family: 宋体">，所以</span>groovyConsole<span style="font-family: 宋体">打印为</span>"null"</span></span></p>
<p><span style="font-family: 宋体"><span style="color: #ff9900"><span style="color: #008000">接下来，再试一些实际的值，用下面的字符串来替换控制台里的文本：</span></span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">123+45*67 </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000"><span style="font-family: 宋体">或者你喜欢的任何表达式然后按</span>&lt;CTRL-R&gt; (I'm going to stop telling you to hit &lt;CTRL-R&gt;, I think you get the idea). <span style="font-family: 宋体">现在，</span> groovyConsole<span style="font-family: 宋体">下面打印的值有更多的含义</span>.</span></span></p>
<span style="color: #ff9900"><span style="color: #008000">&nbsp; </span></span>
<p><span style="color: #ff9900"><span style="color: #008000">Variables</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">You can assign values to variables for later use. Try the following:x = 1</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println x</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">x = new java.util.Date()</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println x</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">x = -3.1499392</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println x</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">x = false</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println x</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">x = "Hi"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println x </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Lists and Maps</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">The Groovy language has built-in support for two important data types, lists and maps (Lists can be operated as arrays in Java language). Lists are used to store ordered collections of data. For example an integer list of your favorite integers might look like this:myList = [1776, -1, 33, 99, 0, 928734928763]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">You can access a given item in the list with square bracket notation (indexes start at 0):</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println myList[0]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Should result in this output:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">1776 </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">You can get the length of the list with the "size" method:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println myList.size() </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Should print out:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">6 </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">But generally you shouldn't need the length, because unlike Java, the preferred method to loop over all the elements in an list is to use the "each" method, which is described below in the "Code as Data" section.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Another native data structure is called a map. A map is used to store "associative arrays" or "dictionaries". That is unordered collections of heterogeneous, named data. For example, let's say we wanted to store names with IQ scores we might have:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">scores = [ "Brett":100, "Pete":"Did not finish", "Andrew":86.87934 ] </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Note that each of the values stored in the map is of a different type. Brett's is an integer, Pete's is a string, and Andrew's is a floating point number. We can access the values in a map in two main ways:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println scores["Pete"]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println scores.Pete </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Should produce the output:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Did not finish</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Did not finish </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">To add data to a map, the syntax is similar to adding values to an list. For example, if Pete re-took the IQ test and got a 3, we might:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">scores["Pete"] = 3 </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Then later when we get the value back out, it will be 3.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println scores["Pete"]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">should print out 3.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Also as an aside, you can create an empty map or an empty list with the following:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">emptyMap = [:]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">emptyList = [] </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">To make sure the lists are empty, you can run the following lines:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println emptyMap.size()</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println emptyList.size() </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Should print a size of 0 for the List and the Map.</span></span></p>
<p><span style="font-family: 宋体"><span style="color: #ff9900"><span style="color: #008000">条件表达式</span></span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">One of the most important features of any programming language is the ability to execute different code under different conditions. The simplest way to do this is to use the '''if''' construct. For example:amPM = Calendar.getInstance().get(Calendar.AM_PM)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">if (amPM == Calendar.AM)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">{</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println("Good morning")</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">} else {</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println("Good evening")</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">} </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Don't worry too much about the first line, it's just some code to determine whether it is currently before noon or after. The rest of the code executes as follows: first it evaluates the expression in the parentheses, then depending on whether the result is '''true''' or '''false''' it executes the first or the second code block. See the section below on boolean expressions.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Note that the "else" block is not required, but the "then" block is:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">amPM = Calendar.getInstance().get(Calendar.AM_PM)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">if (amPM == Calendar.AM)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">{</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println("Have another cup of coffee.")</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">} </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Boolean<span style="font-family: 宋体">表达式</span></span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">There is a special data type in most programming languages that is used to represent truth values, '''true''' and '''false'''. The simplest boolean expression are simply those words. Boolean values can be stored in variables, just like any other data type:myBooleanVariable = true </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">A more complex boolean expression uses one of the boolean operators:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">== </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">!= </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">&gt; </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">&gt;= </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">&lt; </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">&lt;= </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Most of those are probably pretty intuitive. The equality operator is '''==''' to distinguish from the assignment operator '''='''. The opposite of equality is the '''!=''' operator, that is "not equal"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">So some examples:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice = 1234600000</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicDirector = "James Cameron" </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">trueLiesBoxOffice = 219000000</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">trueLiesDirector = "James Cameron"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">returnOfTheKingBoxOffice = 752200000</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">returnOfTheKingDirector = "Peter Jackson"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">theTwoTowersBoxOffice = 581200000</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">theTwoTowersDirector = "PeterJackson"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice &gt; returnOfTheKingBoxOffice // evaluates to true</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice &gt;= returnOfTheKingBoxOffice // evaluates to true</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice &gt;= titanicBoxOffice // evaulates to true</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice &gt; titanicBoxOffice // evaulates to false</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicBoxOffice + trueLiesBoxOffice &lt; returnOfTheKingBoxOffice + theTwoTowersBoxOffice // evaluates to false</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicDirector &gt; returnOfTheKingDirector // evaluates to false, because "J" is before "P"</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicDirector &lt; returnOfTheKingDirector // evaluates to true</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicDirector &gt;= "James Cameron" // evaluates to true</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">titanicDirector == "James Cameron" // evaluates to true </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Boolean expressions are especially useful when used in conjunction with the '''if''' construct. For example:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">if (titanicBoxOffice + trueLiesBoxOffice &gt; returnOfTheKingBoxOffice + theTwoTowersBoxOffice)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">{</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println(titanicDirector + " is a better director than " + returnOfTheKingDirector)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">} </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">An especially useful test is to test whether a variable or expression is null (has no value). For example let's say we want to see whether a given key is in a map:</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">suvMap = ["Acura MDX":""$36,700", "Ford Explorer":""$26,845"]</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">if (suvMap["Hummer H3"] != null)</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">{</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">println("A Hummer H3 will set you back "+suvMap["Hummer H3"]);</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">} </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Generally null is used to indicate the lack of a value in some location.</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Debugging and Troubleshooting Tips</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Print out the class of a variable that you're interested in with myVar.getClass(). Then look up the documentation for that class. </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">If you're having trouble with a complex expression, pare it down to a simpler expression and evaluate that. Then build up to your more complex expression. </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Try restarting the groovyConsole (this will clear out all the variables so you can start over. </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">Look for the topic you're interested in in the Groovy User Guide </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">If you are a Java developer</span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">you might want to check on the Differences from Java </span></span></p>
<p><span style="color: #ff9900"><span style="color: #008000">also there afew a few Things to remember </span></span></p>
<p><span style="color: #008000"><span style="color: #ff9900"><span style="color: #008000">Labels parameters&nbsp;&nbsp;</span></span>&nbsp;&nbsp; </span></p>
</span></span></span></span></o:lock></v:shapetype></span></span>
<img src ="http://www.blogjava.net/mikezeseler/aggbug/253772.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-02-08 12:20 <a href="http://www.blogjava.net/mikezeseler/archive/2009/02/08/mikezeseler.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>mike zeseler java学习</title><link>http://www.blogjava.net/mikezeseler/archive/2009/02/04/253272.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Wed, 04 Feb 2009 08:30:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/02/04/253272.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/253272.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/02/04/253272.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/253272.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/253272.html</trackback:ping><description><![CDATA[好的学习资料需要自己——Google^_^——mike zeseler<br />
pdf&nbsp; Search Engine<br />
http://www.pdf-search-engine.com/<br />
鲜果博客榜——搜罗好的blog很值得看看<br />
http://bang.xianguo.com<br />
Groovy是一个充满创新理念具有创新精神的项目<br />
<p><a href="http://jax.de/konferenzen/jax07/index_eng.php">JAX</a>&nbsp;是德国十分重要的Java技术会议（Java conference），每一年该组织都会召开<a href="http://jax-award.de/jax_award/index_eng.php">会议</a>评选<strong>最具创新精神的项目</strong>，评选委员会从<a href="http://jax-award.de/jax_award/proposal_ovw_eng.php">40个提名</a>项目中选择<a href="http://jax-award.de/jax_award/nominierung_eng.php">十个候选项目</a>，许多优秀项目如Matisse GUI builder（NetBeans的一个插件，用于构建GUI程序）、Nuxeo（企业级内容管理解决方案）等都入围候选，最后Groovy赢得了1等奖！这是一个崇高的荣誉，我们感到非常高兴，特别是和许多非常优秀的项目一起竞赛。另外该奖项的上一期胜出者是Spring framework。</p>
<p>还有，由Dierk K&#246;nig创作出版的畅销书------《Groovy in Action》，也会作为奖品赠予Groovy社团，随后JAX将单独设置Groovy主题的会议进行颁奖。<strong>这些奖项证明并肯定了Groovy的创新价值，并说明Groovy在Java社团有不小的影响力</strong>。 <br clear="all" />
<a href="http://groovy.codehaus.org/">http://groovy.codehaus.org</a><br />
mxjava<br />
http://www.mxjava.com/blog/<br />
</p>
<div class="blog_content">国外著名java技术资料网站 <br />
<br />
http://www.onjava.com <br />
<br />
&nbsp;&nbsp;&nbsp; O'Reilly的Java网站. 每周都有新文章 <br />
<br />
http://java.sun.com <br />
<br />
&nbsp;&nbsp;&nbsp; 官方的Java开发者网站 - 每周都有新文章发表 <br />
<br />
http://www.developer.com/java <br />
<br />
&nbsp;&nbsp;&nbsp; 由Gamelan.com 维护的Java技术文章网站 <br />
<br />
http://www.java.net <br />
<br />
&nbsp;&nbsp;&nbsp; Sun公司维护的一个Java社区网站 <br />
<br />
http://www.builder.com <br />
<br />
&nbsp;&nbsp;&nbsp; Cnet的Builder.com网站 - 所有的技术文章, 以Java为主. <br />
<br />
http://www.ibm.com/developerworks/java <br />
<br />
&nbsp;&nbsp;&nbsp; IBM的Developerworks技术网站; 这是其中的Java技术主页 <br />
<br />
http://www.javaworld.com <br />
<br />
&nbsp;&nbsp;&nbsp; 最早的一个Java站点. 每周更新Java技术文章 <br />
<br />
http://www.devx.com/java <br />
<br />
&nbsp;&nbsp;&nbsp; DevX维护的一个Java技术文章网站 <br />
<br />
http://www.fawcette.com/javapro <br />
<br />
&nbsp;&nbsp;&nbsp; JavaPro在线杂志网站. <br />
<br />
http://www.sys-con.com/java <br />
<br />
&nbsp;&nbsp;&nbsp; Java Developers Journal的在线杂志网站. <br />
<br />
http://www.javadesktop.org <br />
<br />
&nbsp;&nbsp;&nbsp; 位于Java.net的一个Java桌面技术社区网站. <br />
<br />
http://www.theserverside.com <br />
<br />
&nbsp;&nbsp;&nbsp; 这是一个讨论所有Java服务器端技术的网站. <br />
<br />
http://www.jars.com <br />
<br />
&nbsp;&nbsp;&nbsp; 提供Java评论服务. 包括各种framework和应用程序 <br />
<br />
http://www.jguru.com <br />
<br />
&nbsp;&nbsp;&nbsp; 一个非常棒的采用Q&amp;A形式的Java技术资源社区. <br />
<br />
http://www.javaranch.com <br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp; 一个论坛，得到Java问题答案的地方，初学者的好去处。 <br />
<br />
http://www.ibiblio.org/javafaq/javafaq.html <br />
<br />
&nbsp;&nbsp;&nbsp; comp.lang.java的FAQ站点 - 收集了来自comp.lang.java新闻组的问题和答案的分类目录. <br />
<br />
http://java.sun.com/docs/books/tutorial/ <br />
<br />
&nbsp;&nbsp;&nbsp; 来自SUN公司的官方Java指南 - 对于了解几乎所有的java技术特性非常有帮助. <br />
<br />
http://www.javablogs.com <br />
<br />
&nbsp;&nbsp;&nbsp; 互联网上最活跃的一个Java Blog网站. </div>
<img src ="http://www.blogjava.net/mikezeseler/aggbug/253272.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-02-04 16:30 <a href="http://www.blogjava.net/mikezeseler/archive/2009/02/04/253272.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java开源学习交流社区</title><link>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252749.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Fri, 30 Jan 2009 10:05:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252749.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/252749.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/252749.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/252749.html</trackback:ping><description><![CDATA[我的最爱&nbsp;code<br />
<a>http://www.java2s.com/Code/Java/CatalogJava.htm</a><br />
Open Source Software<br />
http://sourceforge.net/index.php<br />
IBMblog<br />
http://www.ibm.com/developerworks/blogs/<br />
Sun China<br />
http://developers.sun.com.cn<br />
开源中文文档<br />
<a href="http://ajava.org/">http://ajava.org/</a><br />
EXT<br />
http://www.easyjf.com/blog/index.html<br />
openABC<br />
http://www.openabc.org<br />
Sun<br />
http://java.sun.com/javaee/index.jsp<br />
javablogs<br />
<a href="http://www.javablogs.com">http://www.javablogs.com</a><br />
java开源<br />
http://<a href="http://www.open-open">www.open-open</a>.com<br />
开发文档：<br />
http://docviewer.net/<br />
JAVA中文世界社区<br />
http://bbs.chinajavaworld.com/<br />
http://blog.chinajavaworld.com/<br />
csdn<br />
http://blog.csdn.net/heiyeshuwu<br />
tarena<br />
http://bbs.tarena.com.cn<br />
转：<br />
<p>1.TheServerside.com&nbsp; 。</p>
<p>2.InfoQ.com Floyd Marinescu 在离开 TSS 后另起炉灶，2006年中最重要推荐。</p>
<p>视野不再局限于Java 而是包括Java,.Net, Ruby ,SOA, Agile方法等热门话题。</p>
<p>3.JDJ的电子杂志 在JDJ首页的最底处订阅，文章质量不低于5-7的传统三强。</p>
<p>4.SWik.net&nbsp; 收集了大量OpenSource Project的资源聚合。其中如Spring，</p>
<p>Hibernate的更新度非常高，出现什么和Spring有关的blog,article,project都会</p>
<p>马上被聚合。</p>
<p>5.IBM DeveloperWorks 传统、稳定的Java文章来源地。</p>
<p>6.JavaWorld 传统、稳定的Java文章来源地。</p>
<p>7.OnJava&nbsp; 传统、稳定的Java文章来源地。</p>
<p>8.Artima.com 类似于TSS而略逊，其中Spotlight 文章值得关注，而Java News是</p>
<p>聚合了所有其他Java站点的大聚合。</p>
<p>9.JavaLobby&nbsp; 站内的Announcements 是大大小小Java&nbsp; Project的发布声明区，</p>
<p>Trips and Tricks 有很多的Tips。</p>
<p>10. No Fluff Just Stuff 的Blogs 聚合 一直缺一个所有优秀Java Blogger的</p>
<p>rss总聚合，NFJS这里勉强算一个。<br />
</p>
<a title="国外10大收集Ajax/Javascript特效的站点" href="" rel="http://ajaxian.com/">Ajaxian</a></p>
<p>一个接近于门户类型的AJAX资源站点，包括Ajax示例收集，博客，论坛和教程等等。</p>
<p>5. <a href="http://www.dhtmlgoodies.com/">DHTML Goodies</a></p>
<p>6. <a href="http://www.javascriptkit.com/">Javascript Kit</a></p>
<p>7. <a href="http://www.dynamicdrive.com/">Dynamic Drive</a></p>
<p>8. <a href="http://www.dhtmlsite.com/">DHTML Site</a></p>
<p>9. <a href="http://ajax.solutoire.com/">Solutoire</a></p>
<p>10. <a href="http://www.devsnippets.com/">DevSnippets</a></p>
<a href="http://news.cnblogs.com/n/44303/">2008年国外最佳Web设计/开发技巧、脚本及资源</a><br />
<h3>工具&amp;Web应用</h3>
<p><a href="http://www.smashingapps.com/2008/11/27/13-most-essential-open-source-apps-that-you-probably-like-to-say-thank-you.html" target="_blank">13个可能会让你说&#8221;Thank You&#8221;的必不可少的开源应用</a></p>
<p><a href="http://www.conversion-rate-experts.com/articles/understanding-your-visitors/" target="_blank">14个免费工具让你了解为什么人们会放弃访问你的网站</a></p>
<p><a href="http://www.allwebdesignresources.com/webdesignblogs/graphics/40-css-generators-creators-and-makers/" target="_blank">40+CSS生成器</a></p>
<p><a href="http://speckyboy.com/2008/03/30/74-great-web-apps-for-web-designers-we-have-forgotten-about/" target="_blank">74个我们可能已经忘记的适合网页设计师的很棒的Web应用</a></p>
<p><a href="http://www.insidecrm.com/features/webmaster-turbo-kit-042108/" target="_blank">50+能提高你的网站速度和性能的技巧和资源</a></p>
<p><a href="http://sixrevisions.com/tools/tools_monitoring_website_popularity/" target="_blank">15个可以监视网站人气的工具</a></p>
<p><a href="http://blog.bingo929.com/20-free-page-seo-analysis-tools.html" target="_blank">20个免费的SEO网站分析工具</a>(已翻译成中文)</p>
<p><a href="http://www.jasonbartholme.com/11-powerful-firefox-3-add-ons-that-can-replace-standalone-applications/" target="_blank">11个功能强大甚至可以替代标准应用程序的Firefox3扩展插件</a></p>
<p><a href="http://www.hongkiat.com/blog/10-free-photo-managing-software-you-should-at-least-know/" target="_blank">10个你至少应该了解的免费照片管理软件</a></p>
<p><a href="http://webjackalope.com/15-things-every-web-developers-should-be-thankful-for/" target="_blank">作为Web前端开发工程师应到感谢的15件事</a></p>
<p><a href="http://blog.bingo929.com/15-bookmarklets.html" target="_blank">15个前端开发/网页设计师必备的Bookmarklet</a>(已翻译成中文)</p>
<p><a href="http://woork.blogspot.com/2008/11/20-great-php-framework-for-developers.html" target="_blank">20大的PHP开发框架</a></p>
<p><a href="http://www.divitodesign.com/2008/08/66-links-to-learn-the-webdesign-basics/" target="_blank">66个学习网页设计基础的链接</a></p>
<p><a href="http://mashable.com/2008/11/01/web-development-tools/" target="_blank">Web开发工具箱： 120 +Web开发新工具</a></p>
<h3>脚本、补丁及Hack</h3>
<p><a href="http://speckyboy.com/2008/02/10/the-top-40-free-ajax-javascript-code-for-web-designers/" target="_blank">40大免费Ajax及JavaScipt代码</a></p>
<p><a href="http://freelancefolder.com/15-top-site-elements/" target="_blank">所有顶级网站应有的15个关键元素</a></p>
<p><a href="http://designm.ag/resources/converting-psd-to-html/" target="_blank">将PSD效果图转换为HTML/CSS的10大教程</a></p>
<p><a href="http://dzineblog.com/2008/10/30-tooltips-scripts.html" target="_blank">30+JavaScript, Ajax &amp; CSS工具提示脚本</a></p>
<p><a href="http://www.hongkiat.com/blog/50-nice-clean-css-tab-based-navigation-scripts/" target="_blank">50+漂亮的基于纯CSS的导航脚本</a></p>
<p><a href="http://www.hongkiat.com/blog/40-most-wanted-wordpress-tricks-and-hacks/" target="_blank">40+最热门的wordpress秘诀和技巧</a>， <a href="http://www.hongkiat.com/blog/30-more-most-wanted-wordpress-tips-tricks-and-hacks/">30+ More</a></p>
<p><a href="http://nettuts.com/articles/web-roundups/30-eye-opening-web-development-screencasts/" target="_blank">30+让你大开眼界的Web前端开发视频教程</a></p>
<p><a href="http://www.designvitality.com/blog/2008/08/19-css-menu-tutorials-to-spice-up-your-web-designs/" target="_blank">19个CSS菜单教程来为你的网站添加更多趣味</a></p>
<p><a href="http://blog.bingo929.com/30-css-tec-examples.html" target="_blank">精选30个优秀的CSS技术和实例</a>(已翻译成中文)</p>
<p><a href="http://www.knowtebook.com/34-free-html-newsletter-templates-for-startups-899.htm" target="_blank">34+免费通讯(Email等)用HTML模板</a></p>
<p><a href="http://www.smashingmagazine.com/2008/10/16/50-excellent-ajax-tutorials/" target="_blank">50个优秀的Ajax教程</a></p>
<p><a href="http://blog.bingo929.com/12-javascript-browser-css-wrong.html" target="_blank">12种Javascript解决常见浏览器兼容问题的方法</a>(已翻译成中文)</p>
<p><a href="http://www.smashingmagazine.com/2008/11/18/15-helpful-in-browser-web-development-tools/" target="_blank">15个有帮助的基于浏览器的Web前端开发工具</a></p>
<p><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/" target="_blank">75个(真正的)很有帮助的JavaScipt技术</a></p>
<p><a href="http://speckyboy.com/2008/03/08/63-essential-wordpress-hacks-tutorials-help-files-and-cheats/" target="_blank">63个必不可少的Wordpress Hack、教程、帮助文件和手册</a></p>
<p><a href="http://speckyboy.com/2008/03/16/the-best-cheat-sheets-for-web-designers-and-developers-from-css-ajax-perl-vbscript/" target="_blank">Web设计/开发最佳使用手册(19)</a></p>
<p><a href="http://www.smashingmagazine.com/2008/12/02/10-useful-rss-hacks-for-wordpress/" target="_blank">10个针对Worpress有用的RSS技巧和Hack</a></p>
<p><a href="http://speckyboy.com/2008/10/26/20-amazing-javascript-prototype-scripts-elements-widgets-classes/" target="_blank">20个神奇的Javascipt脚本原型、元素、Widgets、类&#8230;</a></p>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/10-rare-but-clever-javascript-techniques/" target="_blank">10个聪明的JavaScipt技术用来提升你的UI界面</a></p>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/20-excellent-ajax-effects-you-should-know/" target="_blank">10个你必须知道的很棒的Ajax特效</a></p>
<p><a href="http://speckyboy.com/2008/10/19/35-easy-to-use-free-ajax-navigation-solutions/" target="_blank">35个使用简便的Ajax/JavaScipt导航解决方案</a></p>
<p><a href="http://www.catswhocode.com/blog/web-design/top-10-css-buttons-tutorial-list-29" target="_blank">10大CSS按钮教程列表</a></p>
<p><a href="http://webtecker.com/2008/06/12/10-free-chart-scripts/" target="_blank">10个免费图表脚本</a></p>
<h3>技巧</h3>
<p><a href="http://nettuts.com/tutorials/php/10-principles-of-the-php-masters/" target="_blank">10个精通PHP的原理</a></p>
<p><a href="http://nettuts.com/tutorials/html-css-techniques/6-easy-ways-to-improve-your-html-emails/" target="_blank">6个简单方法来改善您的HTML邮件</a></p>
<p><a href="http://www.smashingmagazine.com/2008/08/18/7-principles-of-clean-and-optimized-css-code/" target="_blank">整理及优化CSS代码的7个原则</a>(已翻译成中文)</p>
<p><a href="http://www.smashingmagazine.com/2008/11/12/12-principles-for-keeping-your-code-clean/" target="_blank">保持你的代码整洁的12个原则</a></p>
<p><a href="http://www.smashingmagazine.com/2008/11/18/10-advanced-php-tips-to-improve-your-progamming/" target="_blank">10个改善你编程的高级PHP技巧</a></p>
<p><a href="http://blog.bingo929.com/spice-up-your-images-with-css-5-way.html" target="_blank">使用CSS为图片添加更多趣味的5种方法</a>(已翻译成中文)</p>
<p><a href="http://www.prelovac.com/vladimir/wordpress-optimization-guide" target="_blank">10个优化技巧</a></p>
<p><a href="http://www.redswish.co.uk/10-seo-elements-all-websites-should-have/" target="_blank">所有网站都应具备的10个SEO元素</a></p>
<p><a href="http://www.leemunroe.com/10-web-app-tips-from-fowa-london/" target="_blank">来自8为极具灵感的演讲者的10个网络应用技巧</a></p>
<p><a href="http://www.equivalence.co.uk/archives/101" target="_blank">编写赏心悦目的代码的7种方法</a></p>
<p><a href="http://blog.bingo929.com/10-css-shorthand-tips.html" target="_blank">10个CSS简写技巧让你永远受用</a>(已翻译成中文)</p>
<p><a href="http://www.yongfook.com/items/view/81/10-dirty-little-web-development-tricks" target="_blank">10个Web开发小技巧</a></p>
<p><a href="http://blog.themeforest.net/general/15-css-tricks-that-must-be-learned/" target="_blank">15个必须学会的CSS技巧</a></p>
<p><a href="http://www.noupe.com/design/101-css-techniques-of-all-time-part-1.html" target="_blank">101个CSS技术-第一部分</a>,<a href="http://www.noupe.com/css/101-css-techniques-of-all-time-part2.html" target="_blank">第二部分</a></p>
<h3>资源</h3>
<p><a href="http://blog.bingo929.com/20-websites-web-design-usabillity.html" target="_blank">推荐20个关于网站可用性及界面设计的网站</a>(已翻译成中文)</p>
<p><a href="http://blog.bingo929.com/31-practical-web-interface-design-tutorials.html" target="_blank">精选31个网站界面设计实践教程</a>(已翻译成中文)</p>
<p><a href="http://speckyboy.com/2008/02/24/53-steps-to-follow-if-you-want-to-become-freelance-web-designerdeveloper-60-resources/" target="_blank">成为Web设计/开发自由职业者所要遵循了53个步(60+资源)</a></p>
<p><a href="http://speckyboy.com/2008/08/19/a-study-in-ajax-web-trends-what-are-the-best-free-ajax-resources-70-of-the-best-ajax-resources/" target="_blank">Ajax网页趋势研究，什么是最好的免费Ajax资源？(70+最佳Ajax资源)</a></p>
<p><a href="http://speckyboy.com/2008/04/27/155-wordpress-resources-tutorials-plugins-themes-ajax-podcastingwp-monster-list/" target="_blank">155个Wordpress资源、教程、插件、主题、Ajax、播客&#8230;庞大的WP列表</a></p>
<p><a href="http://blog.bingo929.com/10-sources-ajax-javascript.html" target="_blank">10个非常棒的Ajax及Javascript实例资源网站</a>(已翻译成中文)</p>
<p><a href="http://news.cnblogs.com/gifts-from-designers-to-you-best-of-2008.html">精选2008年最佳设计素材资源&amp;灵感</a> (已翻译成中文)</p>
<p><a href="http://blog.bingo929.com/10-ajax-effects-website-fanciness.html" target="_blank">10种JavaScript特效实例让你的网站更吸引人</a></p>
<p><a href="http://blog.bingo929.com/css-frameworks-15.html" target="_blank">精选15个国外CSS框架</a>(已翻译成中文)</p>
<p><a href="http://speckyboy.com/2008/04/09/41-of-the-best-mootools-ajax-example-downloads/" target="_blank">41个最佳Mootools Ajax实例下载</a></p>
<p><a href="http://blog.bingo929.com/20-websites-learn-css.html" target="_blank">推荐20个让你学习并精通CSS的网站</a>(已翻译成中文)</p>
<p><a href="http://speckyboy.com/2008/04/02/65-excellent-jquery-resources-tutorialscheat-sheetsebooksdemosplugins/" target="_blank">65个优秀的jQuery资源(教程、手册、电子书、demo、插件&#8230;)</a></p>
<p><a href="http://blog.bingo929.com/300-jquery-css-mootools-js-navigation-menus.html" target="_blank">300+Jquery, CSS, MooTools 和 JS的导航菜单资源</a>(已翻译成中文)</p>
<p><a href="http://news.cnblogs.com/12-free-text-editors-for-web-developer.html">推荐12款可用于前端开发的免费文本编辑器</a></p>
<p><a href="http://blog.bingo929.com/10-beautiful-icons-for-web.html" target="_blank">网页设计必备的10套漂亮图标集</a>(已翻译成中文)</p>
<h3>生成器</h3>
<p><a href="http://www.thewebsqueeze.com/articles/25-color-palette-generating-resources-for-web-designing.html" target="_blank">25个用于网页设计的颜色调色板生成器资源</a></p>
<p><a href="http://www.smashingapps.com/2008/10/21/13-free-online-tools-that-helps-you-to-create-and-host-your-website.html" target="_blank">12款免费在线工具帮助你创建和托管你的网站</a></p>
<p><a href="http://webtecker.com/2008/04/09/25-web-20-generators/" target="_blank">25款Web2.0生成器</a></p>
<h3>插件和主题</h3>
<p><a href="http://www.problogdesign.com/general-tips/10-best-plugins-to-get-more-comments/" target="_blank">10个用来得到更多评论的最棒的插件</a></p>
<p><a href="http://blogof.francescomugnai.com/2008/10/the-top-20-plugins-to-transform-wordpress-in-a-cms/" target="_blank">将Wordpress变为CMS系统的20大插件</a></p>
<p><a href="http://www.leemunroe.com/10-plugins-for-your-wordpress-theme-blog/" target="_blank">你会用在Wordpress主题或博客中的10款插件</a></p>
<p><a href="http://speckyboy.com/2008/11/09/10-wordpress-plugins-to-add-ratings-and-polls-to-your-blog/" target="_blank">10款用于评分和投票的Wordpress插件</a></p>
<p><a href="http://speckyboy.com/2008/01/26/top-30-wordpress-plugins-that-are-actually-useful/" target="_blank">30款确实有用的Wordpress插件</a></p>
<p><a href="http://www.1stwebdesigner.com/resources/130-wordpress-plugins-you-could-ever-need-the-best-of-part-1/" target="_blank">你早晚会用到的130款Wordpress插件-第一部分</a>-<a href="http://www.1stwebdesigner.com/resources/130-wordpress-plugins-you-could-ever-need-the-best-of-part-2/" target="_blank">第二部分</a></p>
<p><a href="http://speckyboy.com/2008/10/06/18-wordpress-plugins-to-add-professionalism-to-your-blog/" target="_blank">18个让你的博客更专业的Wordpress插件</a></p>
<p><a href="http://www.cssleak.com/news/7-Wordpress-Themes-To-Create-Your-Own-CSS-Gallery.html" target="_blank">7个创建你自己的CSS画廊的Wordpress主题</a></p>
<br />
<br />
and so on..........<br />
<br />
<img src ="http://www.blogjava.net/mikezeseler/aggbug/252749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-01-30 18:05 <a href="http://www.blogjava.net/mikezeseler/archive/2009/01/30/252749.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>中国java开源界</title><link>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252747.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Fri, 30 Jan 2009 09:59:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252747.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/252747.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/01/30/252747.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/252747.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/252747.html</trackback:ping><description><![CDATA[<span style="font-family: 楷体_GB2312">
<table style="font-family: " cellspacing="0" cellpadding="0" width="100%" border="0">
    <tbody style="font-family: ">
        <tr style="font-family: ">
            <td style="font-family: " valign="top" width="344">
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: ">1、&nbsp; Huihoo动力—当之无愧的老大</strong>&nbsp; </span></p>
            <p style="margin-left: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>龙辉</span>(Allen)<span style="font-size: 10pt; color: #cc0033; font-family: ">、</span><span style="font-family: ">程勇</span>(Peter)<span style="font-family: ">、杨泳</span>(Orbat)<span style="font-family: ">　</span> </span></p>
            <p style="margin-left: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>JFox<span style="font-family: ">等</span></span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.huihoo.org/" target="_blank"><span style="font-family: ">http://www.huihoo.org/</span></a></p>
            </td>
        </tr>
        <tr style="font-family: ">
            <td style="font-family: " colspan="2" height="20">
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>说到</span>java<span style="font-family: ">开源，大家不可能不知道</span>Huihoo<span style="font-family: ">，</span>Huihoo<span style="font-family: ">曾经创造了很多奇迹，不管是对是团队成员的技术水平还是开源理念、开源组织的管理等都可以说是最棒的，</span>JFox<span style="font-family: ">项目一直具有生命力，</span>huihoo<span style="font-family: ">这么多年了也一直具有生命力，</span>Allen<span style="font-family: ">、</span>Peter<span style="font-family: ">、</span>Orbat<span style="font-family: ">等对这个团队这么多年来的坚持及贡献，要选国内最值得推崇的开源团体，</span>huihoo排在第一位可以说是当之无愧。因此，他们是最可爱的人。<br style="font-family: " />
            </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">2<span style="font-family: ">、</span>Jdon<span style="font-family: ">—</span><span style="font-family: ">高处不胜寒</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表人物：</span></strong><span style="font-size: 9pt; font-family: ">彭晨阳</span><span style="font-size: 9pt; font-family: ">(</span><span style="font-size: 9pt; font-family: ">板桥里人</span><span style="font-size: 9pt; font-family: ">) </span></span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>jdonframework</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.jdon.com/" target="_blank"><span style="font-family: ">http://www.jdon.com/</span></a></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>作为国内第一个开源框架的发起人，作为国内第一个敢于与国外框架叫板的板桥里人，他曾经带给大家很多很多的欣喜及回忆，桥技术水平及造诣这里就更不用说了，他&#8220;</span> <span style="font-family: ">一个开源人的孤独告白&#8221;，有点沧桑，有点心寒，</span>jdon<span style="font-family: ">今天的现状，是中国对待技术人才的真实写照。无论如何，选中国</span>Java开源界最可爱的人，板桥当之无愧。<br style="font-family: " />
            </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">3<span style="font-family: ">、</span>Apusic OperaMasks<span style="font-family: ">—</span><span style="font-family: ">谁说开源不赚钱</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表人物：</span></strong><span style="font-family: ">袁红岗　张勇</span></span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>OperaMasks</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.operamasks.org/" target="_blank"><span style="font-family: ">http://www.operamasks.org/</span></a></p>
            <p style="font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">　　简评：</span></strong>1000<span style="font-family: ">万人民币的投入，一篇&#8220;勇敢者的新世界&#8221;也算是在中国开源界掀起了一阵波澜，产品发布会上那一份份合同，更是让同行的老总们有点眼红。除去商业因素不说，这两天</span>Check out<span style="font-family: ">了</span>OperaMasks<span style="font-family: ">的代码，也看了示例，表现非常不错，值得深层次的</span>java<span style="font-family: ">开发人员学习。老袁深厚的技术功底、老张卖力的全国路演，公司经营战略的成功，</span>OperaMasks能否发展成为一个最能适合中国国情的开源组织，让我们拭目以待。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="font-family: "><span style="font-family: "><span style="font-family: ">　　</span><strong style="font-family: ">4<span style="font-family: ">、</span>EasyJF<span style="font-family: ">—</span><span style="font-family: ">后生可畏</span></strong></span></p>
            <p style="font-family: "><span style="font-family: "><span style="font-family: ">　　<strong style="font-family: ">代表人物：</strong>蔡世友</span>(<span style="font-family: ">大峡</span>)<span style="font-family: ">、吴嘉俊</span>(stef_wu)<span style="font-family: ">、程强</span>(<span style="font-family: ">天一</span>)</span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>EasyJWeb</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.easyjf.com/" target="_blank"><span style="font-family: ">http://www.easyjf.com/</span></a></p>
            <p style="font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">　　简评：</strong>看了大峡小朋友的一些文章，</span> <span style="font-family: ">看到</span>EasyJF<span style="font-family: ">现在的发展，真真实实有一种后生可畏的感叹。他们有自己的专职团队，有网下办公室，还有硬件设施，还拥有一群有激情、好学的年轻小伙子们。虽然要得到中国人自己的认可是很不容易的事情，但搜索一下带是发现国内已经有不少网站在用</span>EasyJWeb做开发。因此，最可爱的人当他们莫属，衷心希望他们能成功。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="font-family: "><span style="font-family: "><span style="font-family: ">　　</span><strong style="font-family: ">5<span style="font-family: ">、</span>SpringSide<span style="font-family: ">—</span><span style="font-family: ">天才团队</span></strong></span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>肖桦</span>(<span style="font-family: ">江南白衣</span>)<span style="font-family: ">、<a style="font-family: " name="cac">陈俊</a></span>(cac)<span style="font-family: ">、田淼</span>(<span style="font-family: ">差沙</span>)</span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>SpringSide</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.springside.org.cn/" target="_blank"><span style="font-family: ">http://www.springside.org.cn/</span></a></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>虽然只是站在春天的傍边，但已经带给了整天忙于追逐新技术、新潮流的</span>Java<span style="font-family: ">程序员们很多极具参考价值的东西。江南白衣同学可以算是一个天才般的人物，技术的攻底、接受并译释新技术的速度、能力及水平，可以说是少数中的少数。因此，</span>SpringSide<span style="font-family: ">可以称得上最具有偶像潜质的团队，</span>Java开源界最可爱的人，他们当之无愧，希望他们能从&#8220;傍边&#8221;走到&#8220;中间&#8221;。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">6<span style="font-family: ">、</span>Buffalo<span style="font-family: ">社区</span><span style="font-family: ">—</span><span style="font-family: ">浓缩是精</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>陈金洲</span>(Michael Chen)</span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong> Buffalo </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span><a style="font-family: " href="http://buffalo.sourceforge.net/" target="_blank"><span style="font-family: ">http://buffalo.sourceforge.net/</span></a></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: ">简评：作为第一个国人开发的</span>Ajax<span style="font-family: ">框架，作为一个能把一直受</span>java<span style="font-family: ">大拿们岐视</span>javascript<span style="font-family: ">玩转得如何熟悉的项目，作为一个能几年坚持更新的开源项目，</span>Buffalo<span style="font-family: ">是成功的，</span>Michael Chen让我们体会到国内开源贡献者们执着与坚持。他是不是最可爱的人，谁是？<br style="font-family: " />
            &nbsp; <br style="font-family: " />
            </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">7<span style="font-family: ">、天乙社区</span><span style="font-family: ">—享受开源</span><span style="font-family: ">动力</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表人物：</span></strong>laoer</span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表项目：</strong>天乙开源社区</span></span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.laoer.com/" target="_blank"><span style="font-family: ">http://www.laoer.com/</span></a></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>有多少开源项目的产品发布到</span>8.0<span style="font-family: ">，从</span>jsp<span style="font-family: ">、</span>struts1<span style="font-family: ">到</span>struts2<span style="font-family: ">一路走来，一直能跟着新技术的步伐，不断改进及完善。因此，当之无愧</span>java开源界最可爱的人。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">8<span style="font-family: ">、</span>CowNew<span style="font-family: ">开源</span><span style="font-family: ">—</span><span style="font-family: ">真有一点牛</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>杨中科</span></span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>CowNewSQL</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span><a style="font-family: " href="http://www.cownew.com/" target="_blank"><span style="font-family: ">http://www.cownew.com/</span></a></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>看过杨中科同学的两篇文章，我觉得他是可爱的。多数据库翻译引擎</span>CowNewSQL<span style="font-family: ">的价值将在哪里体现？</span>CowNew能在何时给我们带来更多实用的东西，值得大家期待。无论如何，他们的进步是有目共睹。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: ">9<span style="font-family: ">、</span>CommonTemplate<span style="font-family: ">—</span><span style="font-family: ">值得期待</span></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>梁飞</span>(javatar)</span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: "><span style="font-family: ">代表项目：</span></strong>CommonTemplate</span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span><a style="font-family: " href="http://www.commontemplate.org/" target="_blank"><span style="font-family: ">http://www.commontemplate.org/</span></a></span></strong></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">简评：</strong>也许很多人不知道这个项目，但他确实是一个很不错的模板引擎，金子总有发光的</span><span style="font-family: ">时候</span>。只要坚持，相信有一天梁飞同学会给大家带来更多的惊喜。<br style="font-family: " />
            &nbsp; </span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><strong style="font-family: ">10、恩信—小公司也能开源<a href="http://www.blogjava.net/mikezeseler/">mike zeseler</a></strong><br style="font-family: " />
            </span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表人物：</strong>刘有涛</span></span></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: "><strong style="font-family: ">代表项目：</strong>恩信开源</span>ERP </span></p>
            <p style="text-indent: 21pt; font-family: "><strong style="font-family: "><span style="font-family: "><span style="font-family: ">官方网站：</span></span></strong><a style="font-family: " href="http://www.nseer.com/" target="_blank"><span style="font-family: ">http://www.nseer.com/</span></a></p>
            <p style="text-indent: 21pt; font-family: "><span style="font-family: "><span style="font-family: ">简评：听过刘总的演讲，从&#8220;捕鱼&#8221;到&#8220;</span><span style="font-family: ">授之以渔&#8221;，从刘总一系列运作手法，我觉得恩信可以成为很多追逐开源但又没有上千万资金来投入而总在为是否参加开源而徘徊的老总们的参考学习的案例。虽然没有技术牛人加盟，虽然还使用稍为古老的技术体系，但既然开源了，总能让我们学到很多东西。呵呵，所有最可爱的开源人中，刘总算是算是最年长的了，祝他们开源</span><span style="font-family: ">ERP</span>大卖</span></p>
            </td>
        </tr>
    </tbody>
</table>
</span>
<img src ="http://www.blogjava.net/mikezeseler/aggbug/252747.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-01-30 17:59 <a href="http://www.blogjava.net/mikezeseler/archive/2009/01/30/252747.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Hibernate入门</title><link>http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html</link><dc:creator>mike zeseler</dc:creator><author>mike zeseler</author><pubDate>Thu, 15 Jan 2009 11:49:00 GMT</pubDate><guid>http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html</guid><wfw:comment>http://www.blogjava.net/mikezeseler/comments/251491.html</wfw:comment><comments>http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/mikezeseler/comments/commentRss/251491.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/mikezeseler/services/trackbacks/251491.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 自己学软件编程不久，在学习中总结和记录啦一些学习的入门知识！有不足之处，请批评指正。&nbsp;&nbsp;&nbsp; Hibernate入门指南&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs...&nbsp;&nbsp;<a href='http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html'>阅读全文</a><img src ="http://www.blogjava.net/mikezeseler/aggbug/251491.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/mikezeseler/" target="_blank">mike zeseler</a> 2009-01-15 19:49 <a href="http://www.blogjava.net/mikezeseler/archive/2009/01/15/251491.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>