﻿<?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-jindw的blog</title><link>http://www.blogjava.net/jindw/</link><description>Java、XML、JavaScript、DHTML、
&lt;a href="http://www.xidea.org/project/jsi/"&gt;JSI&lt;/a&gt;、
&lt;a href="http://www.xidea.org/project/jsa/"&gt;JSA&lt;/a&gt;、
、Template
</description><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 14:32:27 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 14:32:27 GMT</pubDate><ttl>60</ttl><item><title>Java服务器每次请求创建的对象数</title><link>http://www.blogjava.net/jindw/archive/2008/03/11/185301.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Tue, 11 Mar 2008 03:35:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2008/03/11/185301.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/185301.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2008/03/11/185301.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/185301.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/185301.html</trackback:ping><description><![CDATA[改写了一下Java基类，添加了一个计数器。<br />
用tomcat测试了一下连续若干次请求时创建的对象个数。<br />
<br />
第【148259】个对象<br />
天哪，服务器启动开始就是14万个对象。<br />
<br />
第【148668】个对象<br />
第【149091】个对象<br />
第【149211】个对象<br />
第【149291】个对象<br />
第【149418】个对象<br />
第【149541】个对象<br />
第【149867】个对象<br />
第【149947】个对象<br />
<br />
回想一下以前人们为丑陋的struts1的单例Action的设计的辩护，真是可笑之极，哈哈哈哈
<img src ="http://www.blogjava.net/jindw/aggbug/185301.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2008-03-11 11:35 <a href="http://www.blogjava.net/jindw/archive/2008/03/11/185301.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>文言文版的编程之道【推荐】</title><link>http://www.blogjava.net/jindw/archive/2007/12/01/164502.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Sat, 01 Dec 2007 07:27:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/12/01/164502.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/164502.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/12/01/164502.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/164502.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/164502.html</trackback:ping><description><![CDATA[<div class="cnt">
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">无意间看到的一片趣文：<br />
</span></font></p>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">希望有一天能看到文言文版的国外图书翻译，真的比较有趣，还有，不懂的时候，也可以顺带看看英文原文，也好顺便学学英语，呵呵。</span></font></p>
<p class="MsoNormal"> </p>
<blockquote>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">引：<br />
</span></font></p>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">Thus spake the master programmer:  </span></font></p>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">"When you have learned to snatch the  error code from the trap frame, it will be time for you to leave."  </span></font></p>
<p class="MsoNormal"><font face="宋体" size="1"><span style="font-size: 9pt;">师曰：『惑中取错之日，可出山矣。』</span></font><font face="Arial" size="1"><span style="font-size: 9pt;"> </span></font></p>
</blockquote>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;">&#8230;..</span></font></p>
<p class="MsoNormal"><font face="Arial" size="1"><span style="font-size: 9pt;"> </span></font></p>
<p class="MsoNormal"><font face="宋体" size="1"><span style="font-size: 9pt;">全文见：</span></font></p>
<a target="_blank" href="http://livecn.huasing.org/tao_of_programming.htm"> http://livecn.huasing.org/tao_of_programming.htm</a></div>
<img src ="http://www.blogjava.net/jindw/aggbug/164502.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-12-01 15:27 <a href="http://www.blogjava.net/jindw/archive/2007/12/01/164502.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>挺一个中国程序员开发的漂亮的模板引擎：CommonTemplate</title><link>http://www.blogjava.net/jindw/archive/2007/11/29/164118.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Thu, 29 Nov 2007 13:28:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/11/29/164118.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/164118.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/11/29/164118.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/164118.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/164118.html</trackback:ping><description><![CDATA[我一直都想搞一个<a href="http://hi.baidu.com/jindw/blog/item/70380e17f5b107024a90a798.html">XML的模板引擎</a>，大凡非xml的模板风格，第一感觉就是那么的不爽。<br />
可是CommonTemplate例外。<br />
<br />
CommonTemplate处处为程序员考虑周到的漂亮的语法风格，确实非常诱人。<br />
具体的语法我就不一一列举了，大家可以到他的<a href="http://www.commontemplate.org/">官方网站</a>去翻阅。<br />
<br />
挑几个亮点介绍一下：<br />
<ol>
    <li>
    <h2>for循环的空处理，相信曾经麻烦了不少程序员吧。</h2>
    现在好了，CT支持如下语法：<br />
    <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
    <br />
    Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
    http://www.CodeHighlighter.com/<br />
    <br />
    --><span style="color: #000000;">&nbsp;&nbsp;&nbsp;$for{<img src="http://www.blogjava.net/Images/dot.gif" alt="" />}</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">1</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">2</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">3</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;$forelse</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td&nbsp;</span><span style="color: #ff0000;">colspan</span><span style="color: #0000ff;">="3"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">没有数据</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><br />
    <span style="color: #000000;">&nbsp;&nbsp;&nbsp;$end</span></div>
    <br />
    </li>
    <li>
    <h2>大胆的关键字利用。</h2>
    <br />
    <div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
    <br />
    Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
    http://www.CodeHighlighter.com/<br />
    <br />
    --><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">html</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">body</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$if{users&nbsp;!=&nbsp;null&nbsp;&amp;&amp;&nbsp;users.size&nbsp;&gt;&nbsp;0}<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">table&nbsp;</span><span style="color: #ff0000;">border</span><span style="color: #0000ff;">="1"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$for{user&nbsp;:&nbsp;users}<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">${for.index&nbsp;+&nbsp;1}</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">${user.name}</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">${user.coins}</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">td</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">tr</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$end<br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">table</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$end<br />
    &nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">body</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br />
    </span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">html</span><span style="color: #0000ff;">&gt;</span></div>
    <br />
    <br />
    大家看这段代码。一般来说，for这种常用关键字是不好用作id的，但是这里作为默认的循环状态对象的id。既解决了块对象存放的问题，又不会引起其他命名的冲突。一个字，妙！！！！<br />
    <br />
    </li>
    <li>
    <h2>其他漂亮的特征：</h2>
    <br />
    注释版语法外套，方便于测试数据填充及可视化编辑。<br />
    单一的语法规则，方便解析与扩展。<br />
    <br />
    等等。。。。<br />
    </li>
</ol>
<br />
<br />
好了，赞叹之余还是给出一点点遗憾：<br />
<br />
boolean 运算有点丑陋。<br />
我个人更期望 js的boolean运算风格，没有必要一碰到boolean 运算就返回true ？ false<br />
我们完全可以返回一个更有意义的值，比如，我更期望这个语句能如我所愿的执行。<br />
&nbsp;<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">${&nbsp;variable||&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">默认值</span><span style="color: #000000;">"</span><span style="color: #000000;">}</span></div>
<br />
当能，如上支持，CT是有的，它的写法是 <br />
&nbsp;<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">${&nbsp;variable | </span><span style="color: #000000;">"</span><span style="color: #000000;">默认值</span><span style="color: #000000;">"</span><span style="color: #000000;">}</span></div>
<br />
但是，我感觉，这个语法就有点复杂了，也不那么直观。<br />
一般来说| 是按位取或，是位运算符，这里这个用法，跳跃的确实有点大，较难接受的。<br />
<img src ="http://www.blogjava.net/jindw/aggbug/164118.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-11-29 21:28 <a href="http://www.blogjava.net/jindw/archive/2007/11/29/164118.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>eclipse正则表达式在编码过程中的运用</title><link>http://www.blogjava.net/jindw/archive/2007/11/10/159598.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Sat, 10 Nov 2007 10:17:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/11/10/159598.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/159598.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/11/10/159598.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/159598.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/159598.html</trackback:ping><description><![CDATA[刚刚经历的一点小技巧，共享一下。<br />
<br />
1。给代理函数加上空判断<br />
<br />
一个组合模式的运用。代码如下：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;Composite&nbsp;impliments&nbsp;IF1,IF2,IF3{<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF1&nbsp;if1;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;Composite&nbsp;(if1,if2,if3){<br />
&nbsp;&nbsp;&nbsp;}<br />
}</span></div>
<br />
eclipse 生成指代方法&gt;&gt;&gt;&gt;<br />
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;Composite&nbsp;impliments&nbsp;IF1,IF2,IF3{<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF1&nbsp;if1;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;Composite&nbsp;(if1,if2,if3){<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;method1(){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if1.method1();<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.<br />
}</span></div>
<br />
//正则表达式 <br />
// (\w+method\d)(\..*)              if($1!=null){$0}<br />
//&gt;&gt;&gt;<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;Composite&nbsp;impliments&nbsp;IF1,IF2,IF3{<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF1&nbsp;if1;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">private</span><span style="color: #000000;">&nbsp;IF2&nbsp;if2;<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;Composite&nbsp;(if1,if2,if3){<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;method1(){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(if1</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">null</span><span style="color: #000000;">){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if1.method1();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.<br />
}</span></div>
<br />
//还有一个构造函数里的属性赋值：<br />
// (\w+)        &nbsp;&nbsp;   &nbsp;&nbsp;   this.$1=$1<br />
<br />
结果，略<br />
<br />
触类旁通，更多新的用法待你去发掘^_^<br />
<img src ="http://www.blogjava.net/jindw/aggbug/159598.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-11-10 18:17 <a href="http://www.blogjava.net/jindw/archive/2007/11/10/159598.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>这是hsqldb的bug？还是自己的用法不对。</title><link>http://www.blogjava.net/jindw/archive/2007/10/18/154012.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Thu, 18 Oct 2007 14:31:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/10/18/154012.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/154012.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/10/18/154012.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/154012.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/154012.html</trackback:ping><description><![CDATA[被一个貌似hsqldb bug的问题折磨了好几个小时。<br />
把经过帖出来，大家帮我看看。<br />
<br />
习惯把hql都写成预定义的形式，同时又为了避免过多的hql定义，我的惯用伎俩：通过如下方式定义hql。<br />
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">from</span><span style="color: #000000;">&nbsp;Message<br />
&nbsp;&nbsp;</span><span style="color: #0000ff;">where</span><span style="color: #000000;">&nbsp;packageKey</span><span style="color: #808080;">=</span><span style="color: #000000;">:packageKey<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #808080;">and</span><span style="color: #000000;">&nbsp;(<strong>&nbsp;</strong></span><strong><span style="color: #0000ff;">null</span><span style="color: #000000;">&nbsp;</span><span style="color: #808080;">=</span></strong><span style="color: #000000;"><strong>&nbsp;&nbsp;:fileKey</strong>&nbsp;</span><span style="color: #808080;">or</span><span style="color: #000000;">&nbsp;fileKey&nbsp;</span><span style="color: #808080;">=</span><span style="color: #000000;">&nbsp;:fileKey)<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #808080;">and</span><span style="color: #000000;">&nbsp;(<strong> </strong></span><strong><span style="color: #0000ff;">null</span><span style="color: #000000;">&nbsp;</span><span style="color: #808080;">=</span></strong><span style="color: #000000;"><strong>&nbsp;:objectKey</strong>&nbsp;</span><span style="color: #808080;">or</span><span style="color: #000000;">&nbsp;objectKey</span><span style="color: #808080;">=</span><span style="color: #000000;">&nbsp;:objectKey)<br />
&nbsp;&nbsp;&nbsp;</span><span style="color: #808080;">and</span><span style="color: #000000;">&nbsp;(</span><strong><span style="color: #0000ff;"> null</span><span style="color: #000000;">&nbsp;</span><span style="color: #808080;">=</span></strong><span style="color: #000000;"><strong>&nbsp;:memberKeys</strong>&nbsp;</span><span style="color: #808080;">or</span><span style="color: #000000;">&nbsp;memberKey&nbsp;</span><span style="color: #808080;">in</span><span style="color: #000000;">&nbsp;(&nbsp;:memberKeys))&nbsp; <br />
</span></div>
<br />
<br />
但是。今天在hqldb上测试时发现，在任何情况下 （null = ?）&nbsp; 都为真！！！<br />
非常奇怪，害我调试了老半天，后来把数据库换成了mysql，ok！！<br />
<br />
非常奇怪啊。<br />
不过，上面的写法（<span><strong><span class="op">null</span></strong><span><strong>&nbsp;=&nbsp;&nbsp;:fileKey</strong></span></span>）也有点怪怪的。
<img src ="http://www.blogjava.net/jindw/aggbug/154012.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-10-18 22:31 <a href="http://www.blogjava.net/jindw/archive/2007/10/18/154012.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>运动曲线研究(缓动效果)</title><link>http://www.blogjava.net/jindw/archive/2007/10/14/152793.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Sun, 14 Oct 2007 13:14:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/10/14/152793.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/152793.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/10/14/152793.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/152793.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/152793.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 刚刚学习了一下网页动画中上的缓动效果，分享一下学习心得。缓动曲线的概念：缓动曲线是一个0为起点的连续函数曲线，x轴表示时间变化，y轴表示位移变化。曲线的斜率反映出运动的数度。缓动效果在Flash动画中比较常见，用于模拟一些现实中常见的运动轨迹，或者制造一些超绚的效果。而且新版本的Flash中，内置了一些常用的缓动曲线函数。可惜,Flash的这些曲线函数不是开源的...&nbsp;&nbsp;<a href='http://www.blogjava.net/jindw/archive/2007/10/14/152793.html'>阅读全文</a><img src ="http://www.blogjava.net/jindw/aggbug/152793.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-10-14 21:14 <a href="http://www.blogjava.net/jindw/archive/2007/10/14/152793.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>目前为止，JSA依然是最强大的脚本压缩工具。</title><link>http://www.blogjava.net/jindw/archive/2007/09/29/149564.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Sat, 29 Sep 2007 06:04:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/09/29/149564.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/149564.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/09/29/149564.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/149564.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/149564.html</trackback:ping><description><![CDATA[目前为止，JSA依然是最强大的脚本压缩工具。<br />
As i know,JSA is the most powerfull compressor for javascript.<br />
<br />
for jquery1.2.1 (80,469 byte;)<br />
<br />
<table border="0" cellpadding="2" cellspacing="2" width="500">
    <tbody>
        <tr>
            <td>&nbsp;Compressor</td>
            <td>&nbsp;beforegzip</td>
            <td>&nbsp;aftergzip</td>
        </tr>
        <tr>
            <td>&nbsp;
            source:</td>
            <td>&nbsp;80,469;</td>
            <td>&nbsp;24,975;</td>
        </tr>
        <tr>
            <td>&nbsp;jquery default:</td>
            <td>&nbsp;46,437;</td>
            <td>&nbsp;14,641;</td>
        </tr>
        <tr align="left" valign="middle">
            <td>&nbsp;yuicomressor</td>
            <td>&nbsp;46,210;</td>
            <td>&nbsp;14,452;</td>
        </tr>
        <tr align="left" valign="middle">
            <td>&nbsp;
            JSA(without eval)</td>
            <td>&nbsp;40,704;</td>
            <td>&nbsp;13,604;</td>
        </tr>
        <tr>
            <td>&nbsp;
            JSA(with eval): <br />
            </td>
            <td>&nbsp;26,157;&nbsp;&nbsp;&nbsp; <br />
            </td>
            <td>&nbsp;13,549;</td>
        </tr>
    </tbody>
</table>
&nbsp;  <br />
<br />
JSA(webstart): <a href="http://www.xidea.org/webstart/JSA.jnlp">http://www.xidea.org/webstart/JSA.jnlp</a><br />
<img src ="http://www.blogjava.net/jindw/aggbug/149564.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-09-29 14:04 <a href="http://www.blogjava.net/jindw/archive/2007/09/29/149564.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> JSA在线压缩程序发布</title><link>http://www.blogjava.net/jindw/archive/2007/08/22/138646.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Wed, 22 Aug 2007 08:28:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/08/22/138646.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/138646.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/08/22/138646.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/138646.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/138646.html</trackback:ping><description><![CDATA[<p><a href="http://www.xidea.org/project/jsa/" target="blank">JSA</a>这个压缩工具，是java编写的，需要安装java运行环境。
<br>这多少给一些非jav程序员带来点不便。</p>
<p>现在我们发布servlet在线压缩版本。无需安装，在线压缩，给非Java用户一个更加便捷的使用方式。</p>
<p>项目主页：<a href="http://www.xidea.org/project/jsa/" target="blank">http://www.xidea.org/project/jsa/</a>
<br>现在的在线压缩服务器由<a href="http://blog.eaxi.com/" target="blank">Seaprince</a>提供。
<br>欢迎更多有空闲服务器资源的朋友安装JSA在线服务，我将在jsa项目主页提供链接，方便大家使用。</p>
<p>仍外，为了避免服务器资源被恶意滥用，我们默认启用了图片验证，服务频率限制等保护设置。
<br>给用户带来些不便，敬请谅解。</p>
<br><img src ="http://www.blogjava.net/jindw/aggbug/138646.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-08-22 16:28 <a href="http://www.blogjava.net/jindw/archive/2007/08/22/138646.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>脚本装载时一个似乎应该有所重视的问题。 </title><link>http://www.blogjava.net/jindw/archive/2007/08/12/136244.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Sun, 12 Aug 2007 14:22:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/08/12/136244.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/136244.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/08/12/136244.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/136244.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/136244.html</trackback:ping><description><![CDATA[<p>今天无意间打开了一个CSDN上的个人blog，发现窗口无法拖动，Firefox的标签页也无法切换。</p>
<p>查看代码：
<br>
</p>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span><span style="color: #0000ff;">&gt;</span><span style="background-color: #f5f5f5; color: #000000;">Include(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">Csdn.Blog.UserOnline</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span><span style="color: #0000ff;">&gt;</span><span style="background-color: #f5f5f5; color: #000000;">Include(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">Csdn.Blog.ShowmeDataDeal</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span></div>
<p>&#160;</p>
<script>render_code();</script>
看到Include函数，马上可以想到，它很可能使用了动态包含脚本的设计。
<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008000;">//</span><span style="color: #008000;">http://blog.csdn.net/scripts/jsframework.js&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">window.Include</span><span style="color: #000000;">=</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(namespace,&nbsp;path)&nbsp;&nbsp;<br>{&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif">..&nbsp;&nbsp;<br>};&nbsp;&nbsp;<br>S.load</span><span style="color: #000000;">=</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(namespace,&nbsp;path)&nbsp;&nbsp;<br>{&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"><img src="http://www.blogjava.net/Images/dot.gif">&nbsp;&nbsp;<br>}&nbsp;&nbsp;</span></div>
<br><script>render_code();</script>
<p>仔细阅读这两个函数代码，发现它是通过XMLHttpRequest对象同步装载脚本资源的（对IE，它采用userdata缓存优化）。而这必将导致一种完全阻塞问题（这种问题我在仍外一篇blog上描述过：<a href="http://jindw.javaeye.com/blog/66702" target="blank">http://jindw.javaeye.com/blog/66702</a>）。</p>
<p><strong style="color: red;">说到阻塞问题，我想大家可能会以为只是一种下载延迟，其实不然。</strong><span style="color: red;">
</span><br>下载延迟不是完全阻塞，浏览器依然可以响应用户事件。而同步XHR请求阻塞是一种完全的阻塞。
<br>浏览器在脚本运行与事件响应共用同一个线程（我的猜测）。任何脚本尚在运行时（包括被同步XHR请求阻塞的时间），浏览器将无法响应任何用户事件（无法拖放窗口、切换标签、重画页面等等，就像程序死了一样）。与普通的下载延迟造成的阻塞，感觉明显不同。</p>
<p>我对这个问题可以说深有体会，起初，在构建JSI1的项目站点时。因为网站放在sourceforge上，访问数度不是一般的慢，几个简单的例子，浏览器就要完全阻塞好几妙钟。正是厌恶这种完全阻塞的现象，我才开发了JSI2。</p>
<p>事实上，现在的一堆堆js框架中，采用XHR同步装载资源的有不少，JSVM、dojo、a9engine、hax的pies；其中JSVM，
dojo都提供打包工具，将可能装载的脚本打包到启动文件中，所以也可以避免XHR同步请求。不过这样也就失去了部分动态装载的意义了。</p>
<p>总之，我非常讨厌这种完全阻塞现象，认为这个严重影响用户体验。
<br>可能也有些主观因素把，希望听听大家的看法。
</p>
<br> <img src ="http://www.blogjava.net/jindw/aggbug/136244.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-08-12 22:22 <a href="http://www.blogjava.net/jindw/archive/2007/08/12/136244.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一篇可能是误认子弟的言论</title><link>http://www.blogjava.net/jindw/archive/2007/07/30/133214.html</link><dc:creator>金大为</dc:creator><author>金大为</author><pubDate>Mon, 30 Jul 2007 00:29:00 GMT</pubDate><guid>http://www.blogjava.net/jindw/archive/2007/07/30/133214.html</guid><wfw:comment>http://www.blogjava.net/jindw/comments/133214.html</wfw:comment><comments>http://www.blogjava.net/jindw/archive/2007/07/30/133214.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.blogjava.net/jindw/comments/commentRss/133214.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jindw/services/trackbacks/133214.html</trackback:ping><description><![CDATA[最近看见一个JavaEye上关于Java基本类型编译优化的帖子。<br>貌似高深莫测，其实疑点重重。吧内容转贴过来，希望在这里找到更合理的解释。<br><fieldset><legend>引用</legend>网上看得一些文章
<p>　int a = 3;
<br>　int b = 3；   </p>
<p>　　编译器先处理int a =
3；首先它会在栈中创建一个变量为a的引用，然后查找有没有字面值为3的地址，没找到，就开辟一个存放3这个字面值的地址，然后将a指向3的地址。接着处
理int b = 3；在创建完b的引用变量后，由于在栈中已经有3这个字面值，便将b直接指向3的地址。这样，就出现了a与b同时均指向3的情况。</p>
<p>    再令a=4；那么，b不会等于4，还是等于3。在编译器内部，遇到a=4；时，它就会重新搜索栈中是否有4的字面值，如果没有，重新开辟地址存放4的值；如果已经有了，则直接将a指向这个地址。因此a值的改变不会影响到b的值</p>
<p>不知道真正的原理是不是那样的？</p>
<p>如果是的话能证明吗？</p>
</fieldset>
<p>这些描述我也看过，很是不解。</p>
<p>如果说这种基本类型也需要用这种指针的风格，还要共享数据，那么后续的操作处理起来不是更麻烦吗？
<br>每次写操作都要查找已有常量。甚至开辟新的空间存储新值。
<br>再说这个指针怎么的也要个32位吧。为什么就不能直接吧值放进去，硬是要通过指针跳来跳去的，有意义吗？
<br>这优化了吗？</p>
<p><strong>反正在我看来，这是不可能的。</strong></p>
<p>希望有高手出来澄清一下，给个合理的解释。</p>
<p>如果是对的，那也应该给出有点说服力的证据。
<br>如果是错的，那么建议大家吧这篇文章的源头揪出来，这个确实误人不浅。</p>
<p>不过java对 String 这类不可变对象的处理，编译器确实有类似优化，不过也只是编译期。
<br>这种系统类库受到点编译器的特别关注倒是很合理的。</p>
<br><br>  <img src ="http://www.blogjava.net/jindw/aggbug/133214.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jindw/" target="_blank">金大为</a> 2007-07-30 08:29 <a href="http://www.blogjava.net/jindw/archive/2007/07/30/133214.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>