<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>广州JavaEyer饭局群</title>
    <description>广州工作的JavaEyer们，在一间兜帽的大排档，开着传说中的第N次大食会与技术研讨会.....</description>
    <link>http://gzer.group.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
          <item>
        <title>5.12大地震，我能做些什么？</title>
        <author>SwiftHorse</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://swifthorse.javaeye.com">SwiftHorse</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/192934" style="color:red;">http://gzer.group.javaeye.com/group/blog/192934</a>&nbsp;
          发表时间: 2008年05月14日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>看到那些被埋在废墟中的学生照片<br />我的眼眶都湿润了<br />我想起了&ldquo;那些花儿&rdquo;</p>
<p>&nbsp;</p>
<p>她们都老了吧?<br />她们在哪里呀?<br />我们就这样<br />各自奔天涯</p>
<p>&nbsp;</p>
<p>啦...想她<br />啦...她还在开吗?<br />啦...去呀!<br />她们已经被风吹走散落在天涯</p>
<p>&nbsp;</p>
<p>自然灾难让你突然绝别与我们了<br />这些花儿<br />花儿们<br />就这么随风散落了...</p>
<p>&nbsp;</p>
<p>只希望那些还未能脱离危险的人们平安!<br />汶川<br />我们永远和你在一起<br />此刻希望你不感到孤单</p>
<p>&nbsp;</p>
<p>5.12大地震<br />我能做些什么?<br />我不停的刷新着网页<br />不停的守着电视<br />默默的为灾区人民祝福</p>
<p>&nbsp;</p>
<p>今天一早我捐出了我的爱心款项<br />我希望那里的天空很快晴朗!</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/192934#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 14 May 2008 14:29:32 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/192934</link>
        <guid>http://gzer.group.javaeye.com/group/blog/192934</guid>
      </item>
          <item>
        <title>FB不仅仅是两三天，SOA同样也是，邀您加入Java2SOA革命大军，赢限量珍藏版纪念T恤</title>
        <author>YuLimin</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yulimin.javaeye.com">YuLimin</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/182359" style="color:red;">http://gzer.group.javaeye.com/group/blog/182359</a>&nbsp;
          发表时间: 2008年04月13日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          FB不仅仅是两三天，SOA同样也是，邀您加入Java2SOA革命大军，赢限量珍藏版纪念T恤<br /><br />翻开Blog的草稿箱，珍藏着一篇2007-03-12写的SOA与ESB一个似完非结的豆腐块，如下，今天就把它来见见光吧：<br /><br /><div class="quote_title">YuLimin 写道</div><div class="quote_div"><br />对分析人员来讲<br />1、SOA重点需要加强对业务服务的分析，细粒度的分析；各种不同的服务是SOA的重要基础；<br />2、ESB提供了一个舞台，让各种不同系统的业务服务在这里进行实际业务的展现、集成等。<br /><br />对开发人员来讲<br />1、如何更快速地创建出更稳定的业务服务组件是关键；<br />2、要更加深入领会与使用面向接口的组件化开发方式；<br />3、开发人员重点是保障服务的生命周期，其它的事情让业务开发人员来做。<br /><br />SOA的重点在于服务的重用，层次更高一级的重用，业务层次了。但是对于开发人员来说，重用的层次就要自己掌握了，代码、组件。。。<br /></div><br /><br />时间巨快，一年过去了。今年也在2008.2.29-3.2去海南三亚亚龙湾环球城大酒店参加了普元三亚SOA技术交流会《普元研发，SOA 实践之路：梦想照进现实之“天涯论剑”》<br /><br />论来论去，我还是想说一句话：<br /><div class="quote_title">YuLimin 写道</div><div class="quote_div"><br />那就是该干嘛还是干嘛，关键的一点是要脚踏实了地干，不要悬空了，同时注意SOA的陷井，注意哪些地方不要去SOA。<br /></div><br /><br />宣传一把即将进行的FB活动吧，希望有更多的人来FB，看看压力测试能够达到多大的性能指标，呵呵。。。<br /><br />一年一度的BEA Dev2Dev技术日又要来了，这次的主题是《邀您加入Java2SOA技术拓展新革命》，她也将在全国８个城市（北京，上海，南京，深圳，广州，成都，西安，大连）举行。<br /><br />这次活动的主题是将从SOA的参考架构入手，从连通层、业务流程层、服务中间层、表示层等方面来详细讨论，结合详细的示例，给听众直观的认识和感受。<br /><br />呵呵，里面有我感兴趣的将Flex扩展到SOA参考架构各层，看看是怎么个玩法。。。<br /><br />广州是安排在5月14日举行，在 <a href="http://www.gitic.com.cn/" target="_blank">广东国际大酒店</a> 三层国际宴会厅，地址：广东省广州市环市东路339号，电话：020-83311888<br /><br />除了活动中可以得到的技术交流与朋友间的相互认识之外，还可以得到此次活动的纪念T恤，先睹为快，图片有点大，实际的应当比这个好看些吧：）别这么黑不溜秋的，夏天到了，也不知道这班爷们怎么想的，整出一套黑色的T恤出来，真是晕了头了，搞件浅色的才适合于即将到来的夏天啊，真想骂句“XX省略”。。。<br /><br />详细的活动地址：<a href="http://dev2dev.bea.com.cn/minisite/dev2devtechdays2008/index.html" target="_blank">http://dev2dev.bea.com.cn/minisite/dev2devtechdays2008/index.html</a><br /><br />最后，每站活动有 5 名幸运者获赠 BEA Workshop Studio + Adobe Flex Builder 2，看我有没有运气整套正版的Flex Builder 2玩玩啊，呵呵。。。3都出来了，整个3多好呀。尽放些陈年旧货出来。。。哎。。。不过仍是有胜无。<br /><br /><img src="http://yulimin.javaeye.com/topics/download/d957a7c9-4285-34d0-a20e-1220f7a22571" />
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/182359#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 13 Apr 2008 19:05:57 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/182359</link>
        <guid>http://gzer.group.javaeye.com/group/blog/182359</guid>
      </item>
          <item>
        <title>色诱众生 舍我其谁_艾诺V2000SE-online080319</title>
        <author>sunny-chance</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://sunny-chance.javaeye.com">sunny-chance</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/177472" style="color:red;">http://gzer.group.javaeye.com/group/blog/177472</a>&nbsp;
          发表时间: 2008年03月28日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <a href="http://play3.pcauto.com.cn/online080319" target="_blank">游戏</a>规则：<br />1.游戏中翻到两张同样内容的牌，这两张牌会一起消失<br />2.不要乱猜，只能翻60次；不要反应太慢，时间限制2分钟！<br />3.每位会员最多只能玩5次，每提交一次成绩算一次<br />4.排行榜只显示前14名网友；所用时间越少，翻牌次数越少，排在越前<br />5.游戏完成后成绩要审核通过后才能显示在排行榜（后台可取消作弊会员成绩）<br /><br />现在的广告都比较喜欢用flash来吸引网友的眼球，而flash游戏上线后，加上丰厚的礼品，作弊者蜂拥而至，作弊手段也层出不穷。因此，本次活动的主要精力是放在防作弊上...<br /><br />了解到一些作弊手法后，我初步总结了几个应对措施：<br />1，服务端只接受POST请求，避免网友直接在Browser中输入分数<br /><pre name="code" class="java">
	if(!request.getMethod().equalsIgnoreCase("POST")){
		throw new RuntimeException("过滤");
	}</pre>2，检测提交分数请求的Referer<br /><pre name="code" class="java">
    String ref = request.getHeader("Referer");
    if(ref == null || !ref.equals("xxx/xxx.swf")) {
	   	throw new RuntimeException("过滤");
    }</pre>3，加密分数<br />比如说：A和B，A是原始积分，B是A加密后得到的验证信息。提交A的时候附带提交B，服务端验证A的合法性。因为B是由A计算得来的，就算作弊者修改了B，但是在服务端还是可以用A得出B。如果服务端得出的B和网友提交的B不一致，就可以视为作弊了。<br />4，C/S动态同步更新<br />把flash完全当作显示，就会比较安全。游戏的过程都是在服务端用其他语言实现，flash只是起调用数据、显示数据，以及提供玩家操作接口的作用。这样，不管flash怎么改，服务端的程序和数据是没变的。<br /><br />至于用到变速齿轮等工具作弊，还没有想到有效的解决方法<br />总之，只要游戏跟金钱扯上关系，作弊现象是不能杜绝的...
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/177472#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 28 Mar 2008 22:21:47 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/177472</link>
        <guid>http://gzer.group.javaeye.com/group/blog/177472</guid>
      </item>
          <item>
        <title>Azi博客，重新更新了Logo</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174708" style="color:red;">http://gzer.group.javaeye.com/group/blog/174708</a>&nbsp;
          发表时间: 2008年03月22日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>Azi博客，重新更新了Logo</p><p>&nbsp;</p><p>谢谢朋友们的关注</p><p>&nbsp;</p><p>访问总量已经达到2800次。</p><p>&nbsp;</p><p>我会继续努力。</p><p>&nbsp;</p><p>更新Logo，让大家更容易识别。</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174708#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 22 Mar 2008 00:46:45 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174708</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174708</guid>
      </item>
          <item>
        <title>Commons Pool的参数</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174701" style="color:red;">http://gzer.group.javaeye.com/group/blog/174701</a>&nbsp;
          发表时间: 2008年03月22日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>早期的一些记录，未必是正确，仅仅是为了删除硬盘上的N多文字。<br /><br /><br />maxActive：池中最多的对象实例，实际上用来限制调用makeObject方法的个数。<br />maxIdle:<br />&nbsp;&nbsp; 在borrowObject时有用。<br />&nbsp;&nbsp; 如果池的size超过了maxIdle，则应该释放对象了。<br />&nbsp;&nbsp; 如果池的size没有超过maxIdle，则把对象放到池中。<br />&nbsp;&nbsp; 如果是shouldDestroy，则调用destroyObject方法。<br />minIdle：<br />&nbsp;&nbsp; 是在驱逐线程在驱逐对象之后，应该添加多少个对象回去。但此时并没有调用makeObject。而是在borrow时认为还有对象，直接activeObject</p><p>maxWait:<br />&nbsp; 在WHEN_EXHAUSTED_BLOCK时：<br />&nbsp; 如果maxWait&lt;=0时，则borrowObject则会wait();如果大于0，则wait(_maxWait);</p><p>_minEvictableIdleTimeMillis：<br />&nbsp; 如果当前时间减去对象最后次使用的时间，如果超过了，则要removeObject.<br />_numTestsPerEvictionRun：<br />&nbsp; 用来Evictor线程，用来做evict操作时，循环多少次用来删除CursorableLinkedList中的对象。<br />_testWhileIdle：<br />&nbsp; 如果设置了testWhileIdle，首先会activateObject，然后validateObject，如果校验不通过，则passivateObject。</p><p><br />Evictor是个线程，里面的Thread.sleep的时间就是_timeBetweenEvictionRunsMillis。<br />returnObject实际上是addObjectToPool。<br />pool的数据结构是CursorableLinkedList。</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174701#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 22 Mar 2008 00:25:37 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174701</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174701</guid>
      </item>
          <item>
        <title>JBuilder的keytool的参数含义</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174700" style="color:red;">http://gzer.group.javaeye.com/group/blog/174700</a>&nbsp;
          发表时间: 2008年03月22日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>那么多参数，记录下<br />keytool 用法：<br /><br />-certreq&nbsp;&nbsp;&nbsp;&nbsp; [-v] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;alias&gt;] [-sigalg &lt;sigalg&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-file &lt;csr_file&gt;] [-keypass &lt;keypass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-changealias [-v] [-protected] -alias &lt;别名&gt; -destalias &lt;目标别名&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keypass &lt;keypass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-delete&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-v] [-protected] -alias &lt;alias&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-exportcert&nbsp; [-v] [-rfc] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;alias&gt;] [-file &lt;cert_file&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-genkeypair&nbsp; [-v] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;alias&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keyalg &lt;keyalg&gt;] [-keysize &lt;keysize&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-sigalg &lt;sigalg&gt;] [-dname &lt;dname&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-validity &lt;valDays&gt;] [-keypass &lt;keypass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-genseckey&nbsp;&nbsp; [-v] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;别名&gt;] [-keypass &lt;密钥库口令&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keyalg &lt;keyalg&gt;] [-keysize &lt;keysize&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-help</p><p>-importcert&nbsp; [-v] [-noprompt] [-trustcacerts] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;alias&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-file &lt;cert_file&gt;] [-keypass &lt;keypass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-importkeystore [-v]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srckeystore &lt;源密钥库&gt;] [-destkeystore &lt;目标密钥库&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srcstoretype &lt;源存储类型&gt;] [-deststoretype &lt;目标存储类型&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srcstorepass &lt;源存储库口令&gt;] [-deststorepass &lt;目标存储库口令&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srcprotected] [-destprotected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srcprovidername &lt;源提供方名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-destprovidername &lt;目标提供方名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srcalias &lt;源别名&gt; [-destalias &lt;目标别名&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-srckeypass &lt;源密钥库口令&gt;] [-destkeypass &lt;目标密钥库口令&gt;]]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-noprompt]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-keypasswd&nbsp;&nbsp; [-v] [-alias &lt;alias&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keypass &lt;old_keypass&gt;] [-new &lt;new_keypass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-list&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-v | -rfc] [-protected]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-alias &lt;alias&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p><p>-printcert&nbsp;&nbsp; [-v] [-file &lt;cert_file&gt;]</p><p>-storepasswd [-v] [-new &lt;new_storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-keystore &lt;keystore&gt;] [-storepass &lt;storepass&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-storetype &lt;存储类型&gt;] [-providername &lt;名称&gt;]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerclass &lt;提供方类名称&gt; [-providerarg &lt;参数&gt;]] ...<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [-providerpath &lt;路径列表&gt;]</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174700#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 22 Mar 2008 00:24:47 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174700</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174700</guid>
      </item>
          <item>
        <title>Java的空格问题</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174691" style="color:red;">http://gzer.group.javaeye.com/group/blog/174691</a>&nbsp;
          发表时间: 2008年03月22日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>1、isSpace<br /><br />已过时。 用 isWhitespace(char) 取代。 </p><p>确定指定字符是否为 ISO-LATIN-1 空白。该方法只对以下五个字符返回 true：<br />&nbsp;'\t' '\u0009' HORIZONTAL TABULATION 水平tab<br />'\n' '\u000A' NEW LINE&nbsp; 换行<br />'\f' '\u000C' FORM FEED <br />'\r' '\u000D' CARRIAGE RETURN <br />' ' '\u0020' SPACE&nbsp;<br /><br />这是ISO-8859-1所定义的空格，它跟ASCII定义的空格是一样的。<br /><br />2、isWhiteSpace<br /><br />确定指定字符依据 Java 标准是否为空白字符。当且仅当字符满足以下标准时，该字符才是一个 Java 空白字符： </p><ul><li>它是 Unicode 空格字符（<span style="font-family: Courier New">SPACE_SEPARATOR</span>、<span style="font-family: Courier New">LINE_SEPARATOR</span> 或 <span style="font-family: Courier New">PARAGRAPH_SEPARATOR</span>)，但不是非中断空格（<span style="font-family: Courier New">'\u00A0'</span>、<span style="font-family: Courier New">'\u2007'</span>、<span style="font-family: Courier New">'\u202F'</span>） </li><li>它是 <span style="font-family: Courier New">'\u0009'</span>，HORIZONTAL TABULATION </li><li>它是 <span style="font-family: Courier New">'\u000A'</span>，LINE FEED </li><li>它是 <span style="font-family: Courier New">'\u000B'</span>，VERTICAL TABULATION </li><li>它是 <span style="font-family: Courier New">'\u000C'</span>，FORM FEED </li><li>它是 <span style="font-family: Courier New">'\u000D'</span>，CARRIAGE RETURN </li><li>它是 <span style="font-family: Courier New">'\u001C'</span>，FILE SEPARATOR </li><li>它是 <span style="font-family: Courier New">'\u001D'</span>，GROUP SEPARATOR </li><li>它是 <span style="font-family: Courier New">'\u001E'</span>，RECORD SEPARATOR </li><li>它是 <span style="font-family: Courier New">'\u001F'</span>，UNIT SEPARATOR </li></ul><p><strong>注：</strong>此方法无法处理<a href="http://gceclub.sun.com.cn/download/Java_Docs/html/zh_CN/api/java/lang/Character.html#supplementary"><span style="color: #52096c">增补字符</span></a>。若要支持所有 Unicode 字符，包括增补字符，请使用 <a href="http://gceclub.sun.com.cn/download/Java_Docs/html/zh_CN/api/java/lang/Character.html#isWhitespace(int)"><span style="color: #52096c; font-family: Courier New">isWhitespace(int)</span></a> 方法。<br /><br />它应该是UTF-8的空格。包含ISO-8859-1定义的空格。除了Unicode空格外还有ISO-8859-1定义的空格.<br /><br />3、isSpaceChar<br />确定指定字符是否为 Unicode 空白字符。当且仅当根据 Unicode 标准将字符指定为空白字符时，才认为字符是一个空白字符。如果字符的常规类别的类型为以下类型中的任意一种，则该方法返回 true： </p><ul><li><span style="font-family: Courier New">SPACE_SEPARATOR</span> </li><li><span style="font-family: Courier New">LINE_SEPARATOR</span> </li><li><span style="font-family: Courier New">PARAGRAPH_SEPARATOR</span> </li></ul><p><strong>注：</strong>此方法无法处理<a href="http://gceclub.sun.com.cn/download/Java_Docs/html/zh_CN/api/java/lang/Character.html#supplementary"><span style="color: #52096c">增补字符</span></a>。若要支持所有 Unicode 字符，包括增补字符，请使用 <a href="http://gceclub.sun.com.cn/download/Java_Docs/html/zh_CN/api/java/lang/Character.html#isSpaceChar(int)"><span style="color: #52096c; font-family: Courier New">isSpaceChar(int)</span></a> 方法。<br /><br />这个是Unicode定义的空格。<br /><br /><br />不知道Sina的口字是否就是Unicode的空格呢？<br />中文的全角空格是否Unicode空格呢？</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174691#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 22 Mar 2008 00:15:13 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174691</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174691</guid>
      </item>
          <item>
        <title>经常忘记JBuilder如何打包Web应用程序</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174682" style="color:red;">http://gzer.group.javaeye.com/group/blog/174682</a>&nbsp;
          发表时间: 2008年03月22日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>用JBuilder编写好Web应用程序之后，如果打包，经常忘记。</p><p>用archieve的basic打包，结果打的是jar包。</p><p>可以使用下面方式：</p><p>在build中使用Export to Ant，按默认完成。</p><p>在导航中选中Export to Ant，然后单击make，生成build.xml文件，然后单击build.xml文件，单击make，即可生成war的包，注意：单击Export to Ant的make并没有打包，单击了build.xml之后才真正编译打包.</p><p>&nbsp;</p><p>&nbsp;</p><p>也是很早写的文章，2005年，备存一下。</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174682#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 22 Mar 2008 00:02:23 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174682</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174682</guid>
      </item>
          <item>
        <title>JBuilder制作可以run的jar</title>
        <author>Azi</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://azi.javaeye.com">Azi</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/174671" style="color:red;">http://gzer.group.javaeye.com/group/blog/174671</a>&nbsp;
          发表时间: 2008年03月21日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>要做一个可以run的jar呢，还是选择New -&gt; Archive -&gt; Application，而不是New -&gt; Archive -&gt;Basic，好像basic跟application的区别就是不能include 运行的配置。反正我只在Application中看到了selecｔ main class，此时就可以包含运行的configuration，不过还是看你的应用程序类型了。<br /><br />java中很多应用程序是基于container的，因此多数选择的是basic。<br /><br />制作了Application之后，可以制作Executable JAR了。<br /><br />此时会生成各种操作系统版本的exe文件，不过，我没有试成功。<br /><br />反正用java -jar xxx.jar能够run起来就可以了。</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/174671#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 21 Mar 2008 23:50:10 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/174671</link>
        <guid>http://gzer.group.javaeye.com/group/blog/174671</guid>
      </item>
          <item>
        <title>08北京车展参展美女投票-auto080228</title>
        <author>sunny-chance</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://sunny-chance.javaeye.com">sunny-chance</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/173691" style="color:red;">http://gzer.group.javaeye.com/group/blog/173691</a>&nbsp;
          发表时间: 2008年03月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          “<a href="http://play3.pcauto.com.cn/auto080228" target="_blank">08北京车展参展美女投票活动</a>”是我进入太平洋后的第一个project，代号为auto080228 <br />投票规则描述如下： <br />1.每个IP每天最多可以投出10票 <br />2.每个IP每天可以对同一个参展美女投多次票 <br />3.每个IP连续对同一个参展美女投票时，投票的时间间隔不得少于10秒 <br />其中，参展美女图片（分大图和小图两种格式）由编辑从后台上传，并设置与之相关的论坛地址 <br /><br />接到任务后，我迫不及待的把表设计出来了：Beauty(beauty_id,name,pic_url_big,pic_url_small,bbs_url,vote_count)，其中vote_count即标识参展美女所得票数 <br />后来team leader康哥指出这种设计不合理，“试考虑一下，用户每投一次票，vote_count就要加1，就要更新一次数据库！如果采用(JDO)缓存的话，由于数据更新了，缓存就会清除；每次读取数据的时候都要重新加载，缓存实际上不起作用了。” <br /><br />针对上面的问题，我乖乖的把Beauty拆分成了两个表 <br />Beauty(beauty_id,name,pic_url_big,pic_url_small,bbs_url,vote_counter_id)---更新少 <br />VoteCounter(vote_counter_id,vote_count) ---用户每投一票更新一次<br />Beauty表与VoteCounter表是一一对应的关系，在增加投票次数的时候只要更新VoteCounter表即可，不会影响到Beauty表，Beauty的缓存也就不会清除了 。<br /><br />但回过头来，问题依旧存在，就是写数据库的次数并没有降下来，每投一次票都要更新一次数据库。于是，我采用了缓存投票次数的方法，也就是等到一定的次数（如5次）才更新一次数据库，实现如下：<br /><pre name="code" class="java">
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;

import javax.jdo.JDOHelper;

public class VoteCounter extends Sys.DataObject {
	private int cnt;// 票数

	private static final Map CNT_BUFFER = Collections
			.synchronizedMap(new LinkedHashMap(16, 0.75f, false));// 缓存票数

	public int getCnt() {
		return cnt + getBufferedCount();
	}

	public void setCnt(int cnt) {
		this.cnt = cnt;
	}

	/** 获取缓存中的票数 */
	public int getBufferedCount() {
		Object id = JDOHelper.getObjectId(this);
		Integer count = (Integer) CNT_BUFFER.get(id);
		return count != null ? count.intValue() : 0;
	}

	/** 缓存票值,每bufferSize票写一次数据库 */
	public int inc(int bufferSize) {
		int n = 1;// 点击1次加1票
		Object id = JDOHelper.getObjectId(this);

		int bufferedCount = getBufferedCount();
		bufferedCount += n;

		if (bufferedCount >= bufferSize) {
			Object tx = Sys.requireTx();
			cnt += bufferedCount;
			Sys.commit(tx);
			CNT_BUFFER.remove(id);
			return cnt;
		} else {
			CNT_BUFFER.put(id, new Integer(bufferedCount));
			return getCnt();
		}
	}

	/** 保存缓存票值计时任务 */
	static class SaveData extends java.util.TimerTask {
		public void run() {
			Env.log.debug("Running VoteCounter timer task.");
			if (!CNT_BUFFER.isEmpty()) {
				Object tx = Sys.requireTx();
				VoteCounter cnt = null;
				for (Iterator it = CNT_BUFFER.entrySet().iterator(); it
						.hasNext();) {
					Map.Entry me = (Map.Entry) it.next();
					cnt = (VoteCounter) Sys.pm().getObjectById(me.getKey(),
							true);
					cnt.setCnt(cnt.getCnt());
				}
				Sys.commit(tx);
				CNT_BUFFER.clear();
			}
		}
	}
}</pre> <br />这样一来，极大的缓解了数据库的压力。但缺点就是容易丢失投票次数，也会占用一些内存。<br />为了避免一些冷门的投票长时间占用缓存，后来我也加上了定时器，每隔一段时间把缓存的数据写入数据库...
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/173691#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 19 Mar 2008 11:53:39 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/173691</link>
        <guid>http://gzer.group.javaeye.com/group/blog/173691</guid>
      </item>
          <item>
        <title>项目中关于中文按拼音排序的处理</title>
        <author>LEICHAO</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://c-lei.javaeye.com">LEICHAO</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/170704" style="color:red;">http://gzer.group.javaeye.com/group/blog/170704</a>&nbsp;
          发表时间: 2008年03月13日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 针对<span style="font-size: small; color: #99ccff; font-family: 幼圆">User</span>实体中的姓名按拼音排序</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p><pre name="code" class="java">import java.text.Collator;
import java.util.Comparator;
import java.util.Locale;
import java.util.Set;
import java.util.TreeSet;

public class User implements Comparable&lt;User&gt;{
	private String name;
	private int age;

	User(String name, int age) {
		this.name = name;
		this.age = age;
	}

	public String getName() {
		return this.name;
	}

	public int getAge() {
		return this.age;
	}
	@Override
	public int compareTo(User other) {
		if (other == null) {
			return 1;
		}
		Comparator comparator = Collator.getInstance(Locale.CHINA);
		return comparator.compare(name, other.getName());
	}
}</pre><p>接下来测试下：</p><pre name="code" class="java">public static void main(String[] args) {
	User user01 = new User(&quot;阿三&quot;, 18);
	User user02 = new User(&quot;段蕾&quot;, 19);
	User user03 = new User(&quot;长江&quot;, 11);
	User user04 = new User(&quot;版主&quot;, 25);

	Set&lt;User&gt; set = new TreeSet&lt;User&gt;();

	set.add(user01);
	set.add(user02);
	set.add(user03);
	set.add(user04);
	for (User user : set) {
		System.out.print(user.getName() + &quot;---&quot;);
	}
}</pre><p>&nbsp;</p>输出结果如下：<pre name="code" class="java">阿三---版主---长江---段蕾---</pre>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/170704#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 13 Mar 2008 08:12:45 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/170704</link>
        <guid>http://gzer.group.javaeye.com/group/blog/170704</guid>
      </item>
          <item>
        <title>有关压力的问题</title>
        <author>LEICHAO</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://c-lei.javaeye.com">LEICHAO</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/170558" style="color:red;">http://gzer.group.javaeye.com/group/blog/170558</a>&nbsp;
          发表时间: 2008年03月12日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近不知道为什么，感觉有压力，我自己想了下，可能最重要的问题是我对于自己的处境非常有危机感，因为自己实在是不怎么样，基本是没什么竞争力。所以最近一直都在拼命的看书，一点都没放松过。感觉自己一直处于高度运算的状态，一直都在思考。
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/170558#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 12 Mar 2008 15:55:22 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/170558</link>
        <guid>http://gzer.group.javaeye.com/group/blog/170558</guid>
      </item>
          <item>
        <title>上班了</title>
        <author>sunny-chance</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://sunny-chance.javaeye.com">sunny-chance</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/170068" style="color:red;">http://gzer.group.javaeye.com/group/blog/170068</a>&nbsp;
          发表时间: 2008年03月11日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          不知不觉自己已成为上班一族三星期了，每天8点起床->洗脸->吃早餐->赶地铁->8:5X打卡...<br />似乎大家都挺乐意分享自己的应聘历程，今天也该轮到我了吧：<br /><ul><li>12.11-品高软件开发有限公司</li><li>12.12-广东瑞图万方科技有限公司</li><li>12.20-友邦资讯科技（广州）有限公司</li><li>12.27-广州北大明天资源科技发展有限公司</li><li>1.3-广州网易互动娱乐有限公司</li><li>1.7-中国农业银行（中山）</li><li>1.8-广东易达建信科技有限公司</li><li>1.17-太平洋互联网信息服务有限公司</li></ul><strong>品高软件开发有限公司</strong><br />品高坐落于国家软件产业基地，这公司给人的第一感觉很好，员工的态度很友善，办公室的设计很舒服、空气很清新。当时是上午做题，下午面试（评题）。我还清楚的记得那时的题目，因为好些人都应聘过问过我要题。题目有部分是英语的，但都很基础，自问，也就是数据库做差了，但我却被当场bs掉了。说什么这次本是招非应届生的，没发现你是应届的把你叫过来了；就把这次当成是一次练习的机会也好啊；刚刚从象牙塔出来发现学校跟公司有很大区别吧...说了一大堆，说直接点嘛，我公司不要你，希望下次有机会再合作。Is it hart to say?我最讨厌推搪的话了!后来发现，我们学院还真没有一个同学合符他的心意...再后来，听说有几个同学锲而不舍，投了两次简历，考了两次同一份题，结果收到offer了，真TM的“牛B”!<br /><br /><strong>广东瑞图万方科技有限公司</strong><br />瑞图万方就在学校附近的华工科技园里。那天，懵懂无知的我随着电梯到了6楼，却发现那只有一间办公室和隔壁的一间会议室，前台极其隐蔽的隐藏在办公室一角，顿时让我产生了厌恶的情绪。后来在前台领了一份题，发现100%的题目都摘自网上的100题，用了不到1小时的时间把答案默写了一遍。接着一个行为猥琐的面试官跟我大谈特谈MVC，最后还称赞我基础扎实。走出门口后我也再没有接他的电话了...<br /><br /><strong>友邦资讯科技（广州）有限公司</strong><br />友邦那次纯粹是跟着同学去罢笔的，由于把英语搁置了好长一段时间，作文没写几句，于是乎，就这样没了...<br /><br /><strong>广州北大明天资源科技发展有限公司</strong><br />北大明天的题量可是非常人能应付得了，整整做了我三个小时。题目是什么大概都忘记了，只记得交卷的时候还有几题摸不着边际，脑子晃悠悠的，于是决定走路回家。我边走边想，里面的人应该很厉害吧，里面的人应该很能挨吧...里面的人应该很变态吧？然而，我只能确定最后一个问题的答案。<br /><br /><strong>广州网易互动娱乐有限公司</strong><br />网易那次听说是补招，至于是哪个职位我也说不清楚。对比8号的大型招聘，感觉那次的流程简单了许多，但我还是栽在逻辑题上了。题目是大家所熟悉的用一笔画4根直线，把3*3的九个点连接起来。因为太熟悉，所以一直没去想没去找答案，而且思维也不开阔，不会...后来在牛人阿清的指点下恍然大悟。再后来，听说她收到offer了，干拜下风啊...<br /><br /><strong>中国农业银行（中山）</strong><br />农行是老爸给我投的简历，自然是亲戚关照的。跟总行行长面试通过，打字速度测试通过，800字的作文也写了，听说最后一关是支行派遣然后跟支行的行长面试。但这也拖我太长时间了，等了三个多星期结果还没出来。虽然我已早早的决定不去农行了，因为那招的是柜台，不是我所向往的，但我也想知道凭借自己的能力能否通关。我等不来了，只好老老实实的给亲戚说明了情况...<br /><br /><strong>广东易达建信科技有限公司</strong><br />易达建信给我的记忆很模糊，只记得那天一早从中山赶回来，中午面试前心情也不好，面试官说的话也很难听，似乎把自己的员工描述得跟神一般，我也没反驳多少...<br /><br /><strong>太平洋互联网信息服务有限公司</strong><br />在易达建信后，我再也没有投简历，手机也放在一边了。然而我发现，太平洋是最持之以恒的，每天都连续响两三回电话，于是我在15号那天接了电话，通知我17号去面试。那天面试前心情也不好，随着电梯来到11楼前台，说了来由，等了一会，然后张小姐把我带到10楼，用白话跟叶总监谈了不到1小时。看他一直笑容满面的，心情也好了起来。然后又回到前台等了一会，张小姐又把我带到丛董那，气氛较严肃的谈了10多分钟，也就这样结束了。后来刚上地铁，电话就来了，待我回到宿舍才知道。后来回了电话，通知我2月18上班，也就答应了。
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/170068#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 11 Mar 2008 10:42:19 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/170068</link>
        <guid>http://gzer.group.javaeye.com/group/blog/170068</guid>
      </item>
          <item>
        <title>Oracle的优化器</title>
        <author>tantengfei</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://tantengfei.javaeye.com">tantengfei</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/169784" style="color:red;">http://gzer.group.javaeye.com/group/blog/169784</a>&nbsp;
          发表时间: 2008年03月10日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          Oracle的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization，简称为RBO)和基于代价的优化方式(Cost-Based Optimization，简称为CBO)，在Oracle8及以后的版本,Oracle强列推荐用CBO的方式 <br />    RBO方式：优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则。比如我们常见的，当一个where子句中的一列有索引时去走索引。<br /><br />    CBO方式：它是看语句的代价(Cost),这里的代价主要指Cpu和内存。优化器在判断是否用这种方式时,主要参照的是表及索引的统计信息。统计信息给出表的大小、有少行、每行的长度等信息。这些统计信息起初在库内是没有的，是做analyze后才出现的，很多的时侯过期统计信息会令优化器做出一个错误的执行计划,因些应及时更新这些信息。<br /><br />    注意：走索引不一定就是优的，比如一个表只有两行数据，一次IO就可以完成全表的检索,而此时走索引时则需要两次IO,这时全表扫描(full table scan)是最好<br /><br />    优化模式包括Rule、Choose、First rows、All rows四种方式：<br /><br />    Rule：基于规则的方式。<br /><br />    Choolse：默认的情况下Oracle用的便是这种方式。指的是当一个表或或索引有统计信息，则走CBO的方式，如果表或索引没统计信息，表又不是特别的小，而且相应的列有索引时，那么就走索引，走RBO的方式。<br /><br />    First Rows：它与Choose方式是类似的，所不同的是当一个表有统计信息时，它将是以最快的方式返回查询的最先的几行，从总体上减少了响应时间。<br /><br />    All Rows:也就是我们所说的Cost的方式，当一个表有统计信息时，它将以最快的方式返回表的所有的行，从总体上提高查询的吞吐量。没有统计信息则走RBO的方式。<br /><br />    设定选用哪种优化模式：<br /><br />    A、Instance级别我们可以通过在initSID.ora文件中设定OPTIMIZER_MODE=RULE/CHOOSE/FIRST_ROWS/ALL_ROWS如果没设定OPTIMIZER_MODE参数则默认用的是Choose方式。<br />    B、Sessions级别通过ALTER SESSION SET OPTIMIZER_MODE=RULE/CHOOSE/FIRST_ROWS/ALL_ROWS来设定。<br />    C、语句级别用Hint（/*+ ... */）来设定<br /><br />    为什么表的某个字段明明有索引，但执行计划却不走索引？<br /><br />    1、优化模式是all_rows的方式 <br />    2、表作过analyze，有统计信息<br />    3、表很小，上文提到过的，Oracle的优化器认为不值得走索引。
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/169784#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 10 Mar 2008 13:10:38 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/169784</link>
        <guid>http://gzer.group.javaeye.com/group/blog/169784</guid>
      </item>
          <item>
        <title>提供一个《在Tomcat部署和发布Web应用》的入门教程</title>
        <author>frankiehuang</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://frankiehuang.javaeye.com">frankiehuang</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/138180" style="color:red;">http://gzer.group.javaeye.com/group/blog/138180</a>&nbsp;
          发表时间: 2007年11月05日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近在培训一些新手做Java开发，发觉有些人的基础实在太差了，遂写了一个PowerPoint作为讲义。想到自己当初也是从新手过来的，发在这里给有需要的人士看看。
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/138180#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 05 Nov 2007 18:37:09 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/138180</link>
        <guid>http://gzer.group.javaeye.com/group/blog/138180</guid>
      </item>
          <item>
        <title>oracle导入数据</title>
        <author>tantengfei</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://tantengfei.javaeye.com">tantengfei</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/133505" style="color:red;">http://gzer.group.javaeye.com/group/blog/133505</a>&nbsp;
          发表时间: 2007年10月19日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件，imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库，一个用来测试，一个用来正式使用。 执行环境：可以在SQLPLUS.EXE或者DOS（命令行）中执行，<br />
&nbsp;DOS中可以执行时由于 在oracle 8i 中&nbsp; 安装目录\ora81\BIN被设置为全局路径，<br />
&nbsp;该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。<br />
&nbsp;oracle用java编写，SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。<br />
&nbsp;SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类，完成导入导出功能。下面介绍的是导入导出的实例。<br />
数据导出：<br />
&nbsp;1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中<br />
&nbsp; exp <a href="mailto:system/manager@TEST">system/manager@TEST</a> file=d:\daochu.dmp full=y<br />
&nbsp;2 将数据库中system用户与sys用户的表导出<br />
&nbsp; exp <a href="mailto:system/manager@TEST">system/manager@TEST</a> file=d:\daochu.dmp owner=(system,sys)<br />
&nbsp;3 将数据库中的表inner_notify、notify_staff_relat导出<br />
&nbsp; exp <a href="mailto:aichannel/aichannel@TESTDB2">aichannel/aichannel@TESTDB2</a> file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)<br />
&nbsp;4 将数据库中的表table1中的字段filed1以&quot;00&quot;打头的数据导出<br />
&nbsp; exp <a href="mailto:system/manager@TEST">system/manager@TEST</a> file=d:\daochu.dmp tables=(table1) query=\&quot; where filed1 like '00%'\&quot; 上面是常用的导出，对于压缩，既用winzip把dmp文件可以很好的压缩。<br />
&nbsp;也可以在上面命令后面 加上 compress=y 来实现。数据的导入<br />
&nbsp;1 将D:\daochu.dmp 中的数据导入 TEST数据库中。<br />
&nbsp; imp <a href="mailto:system/manager@TEST">system/manager@TEST</a>&nbsp; file=d:\daochu.dmp<br />
&nbsp; imp <a href="mailto:aichannel/aichannel@HUST">aichannel/aichannel@HUST</a> full=y&nbsp; file=file= d:\data\newsmgnt.dmp ignore=y<br />
&nbsp;上面可能有点问题，因为有的表已经存在，然后它就报错，对该表就不进行导入。<br />
&nbsp;在后面加上 ignore=y 就可以了。<br />
&nbsp;2 将d:\daochu.dmp中的表table1 导入<br />
&nbsp; imp <a href="mailto:system/manager@TEST">system/manager@TEST</a>&nbsp; file=d:\daochu.dmp&nbsp; tables=(table1)<br />
&nbsp;基本上上面的导入导出够用了。不少情况要先是将表彻底删除，然后导入。 注意：<br />
&nbsp;操作者要有足够的权限，权限不够它会提示。<br />
&nbsp;数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。<br />
附录一：<br />
&nbsp;给用户增加导入数据权限的操作<br />
&nbsp;第一,启动sql*puls<br />
&nbsp;第二，以system/manager登陆<br />
&nbsp;第三，create user 用户名 IDENTIFIED BY 密码（如果已经创建过用户，这步可以省略）<br />
&nbsp;第四，GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,<br />
&nbsp; DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,<br />
&nbsp; DBA,CONNECT,RESOURCE,CREATE SESSION&nbsp; TO 用户名字<br />
&nbsp;第五, 运行-cmd-进入dmp文件所在的目录,<br />
&nbsp; imp userid=system/manager full=y file=*.dmp<br />
&nbsp; 或者 imp userid=system/manager full=y file=filename.dmp<br />
&nbsp;执行示例:<br />
&nbsp;F:\Work\Oracle_Data\backup&gt;imp userid=test/test full=y file=inner_notify.dmp<br />
&nbsp;屏幕显示<br />
&nbsp;Import: Release 8.1.7.0.0 - Production on 星期四 2月 16 16:50:05 2006<br />
&nbsp;(c) Copyright 2000 Oracle Corporation.&nbsp; All rights reserved.<br />
&nbsp;连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production<br />
&nbsp;With the Partitioning option<br />
&nbsp;JServer Release 8.1.7.0.0 - Production<br />
&nbsp;经由常规路径导出由EXPORT:V08.01.07创建的文件<br />
&nbsp;已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入<br />
&nbsp;导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)<br />
&nbsp;. 正在将AICHANNEL的对象导入到 AICHANNEL<br />
&nbsp;. . 正在导入表&nbsp; &quot;INNER_NOTIFY&quot;&nbsp; 4行被导入<br />
&nbsp;准备启用约束条件...<br />
&nbsp;成功终止导入，但出现警告。附录二：<br />
&nbsp;Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.<br />
&nbsp;先建立import9.par,<br />
&nbsp;然后，使用时命令如下：imp parfile=/filepath/import9.par<br />
&nbsp;例 import9.par 内容如下：<br />
&nbsp;FROMUSER=TGPMS<br />
&nbsp;TOUSER=TGPMS2（注：把表的拥有者由FROMUSER改为TOUSER，FROMUSER和TOUSER的用户可以不同）<br />
&nbsp;ROWS=Y<br />
&nbsp;INDEXES=Y<br />
&nbsp;GRANTS=Y<br />
&nbsp;CONSTRAINTS=Y<br />
&nbsp;BUFFER=409600<br />
&nbsp;file==/backup/ctgpc_20030623.dmp<br />
&nbsp;log==/backup/import_20030623.log<br />
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/133505#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 19 Oct 2007 18:16:38 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/133505</link>
        <guid>http://gzer.group.javaeye.com/group/blog/133505</guid>
      </item>
          <item>
        <title>javaHTML页面解析的问题 </title>
        <author>robinjim</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://robinjim.javaeye.com">robinjim</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/117114" style="color:red;">http://gzer.group.javaeye.com/group/blog/117114</a>&nbsp;
          发表时间: 2007年08月27日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; 前一段时间工作需要要开发一个网站静态发布的项目，服务建立于weblogic服务器上，为了比较通用，较好的方法是解析html页面上的相关资源，而aspx有较好的domparser可以支持页面的解析，而java本省的dompaser仅仅能解析xml格式的流，网上搜索找到了一个比较好的java工具，CyberNeko HTML Parser，通过这个包可以顺利的解析出页面中的资源。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 项目需要以多站点发布的方式实现网站发布的功能，且不能依附其他的服务器实现。这样通用的很多门户网站的资源服务器方式的全路径资源发布这种解决方法无法满足。剩下方法只有解析html获取所需的相应资源。对比了现在比较流行的html解析工具。我们选择了CyberNeko HTML Parser。其实Swing只带有一个<font face="Arial">HTMLEditorKit，解析文本的能力还很强。但是CyberNeko 的纯xml解析方式正是我们需要的。可以方便的拿到页面相应节点的相应属性。相应的实现可以参考CyberNeko 的网站。基本可以拷下来重用。而拿到这些后，我们通过一个servlet实现对外的封装。这样只需传一个对应文章的id即可获取到这个文章相应资源的对应xml文件（用xmlbean实现）。核心代码如下：</font></p>
<div class="code_title">java 代码</div>
<div class="dp-highlighter">
<div class="bar"></div>
<ol class="dp-j">
    <li class="alt"><span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;ResovlehtmlTag(Node&nbsp;node,&nbsp;</span><span class="keyword">boolean</span><span>&nbsp;isgetfile)&nbsp;</span><span class="keyword">throws</span><span>&nbsp;Exception&nbsp;{ &nbsp;&nbsp;</span></span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;tags&nbsp;={</span><span class="string">&quot;img&quot;</span><span>,</span><span class="string">&quot;table&quot;</span><span>};</span><span class="comment">//关注的资源节点 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String[]&nbsp;fileds&nbsp;=&nbsp;{</span><span class="string">&quot;src&quot;</span><span>,</span><span class="string">&quot;backgroud&quot;</span><span>};</span><span class="comment">//关注的属性 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;col&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;col&nbsp;&lt;&nbsp;tags.length;&nbsp;col++)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(tags[col].equalsIgnoreCase(node.getNodeName()))&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StringBuffer&nbsp;linkText&nbsp;=&nbsp;</span><span class="keyword">new</span><span>&nbsp;StringBuffer(); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getText(linkText,&nbsp;node); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NamedNodeMap&nbsp;attrs&nbsp;=&nbsp;node.getAttributes(); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;target&nbsp;=&nbsp;</span><span class="keyword">null</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;i&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;i&nbsp;&lt;&nbsp;attrs.getLength();&nbsp;i++)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(fileds[col].equalsIgnoreCase(attrs.item(i) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&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;.getNodeName()))&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//&nbsp;在DOM树中，属性是一个结点。 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;target&nbsp;=&nbsp;attrs.item(i).getNodeValue(); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;target=</span><span class="keyword">new</span><span>&nbsp;String(target.getBytes(</span><span class="string">&quot;ISO8859-1&quot;</span><span>),</span><span class="string">&quot;GBK&quot;</span><span>); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FilterResourcesrc(target,&nbsp;isgetfile); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">break</span><span>; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(target&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>) &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(target); &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">static</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;getText(StringBuffer&nbsp;sb,&nbsp;Node&nbsp;node)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(node.getNodeType()&nbsp;==&nbsp;Node.TEXT_NODE)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//&nbsp;取得结点值，即开始与结束标签之间的信息 </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.append(node.getNodeValue()); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NodeList&nbsp;children&nbsp;=&nbsp;node.getChildNodes(); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">if</span><span>&nbsp;(children&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">int</span><span>&nbsp;len&nbsp;=&nbsp;children.getLength(); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(</span><span class="keyword">int</span><span>&nbsp;i&nbsp;=&nbsp;</span><span class="number">0</span><span>;&nbsp;i&nbsp;&lt;&nbsp;len;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getText(sb,&nbsp;children.item(i));</span><span class="comment">//&nbsp;递归遍历DOM树 </span><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">private</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;getResourceValue(Node&nbsp;node,&nbsp;</span><span class="keyword">boolean</span><span>&nbsp;isgetfile) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">throws</span><span>&nbsp;Exception&nbsp;{ &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//if&nbsp;(node.getNodeType()&nbsp;==&nbsp;Node.ELEMENT_NODE) </span><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ResovlehtmlTag(node,&nbsp;isgetfile); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">for</span><span>&nbsp;(Node&nbsp;child&nbsp;=&nbsp;node.getFirstChild();&nbsp;child&nbsp;!=&nbsp;</span><span class="keyword">null</span><span>;&nbsp;child&nbsp;=&nbsp;child &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getNextSibling()) &nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getResourceValue(child,&nbsp;isgetfile); &nbsp;&nbsp;</span></li>
    <li class=""><span>&nbsp;&nbsp;</span></li>
    <li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li>
</ol>
</div>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/117114#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 27 Aug 2007 10:57:37 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/117114</link>
        <guid>http://gzer.group.javaeye.com/group/blog/117114</guid>
      </item>
          <item>
        <title>使用控件IdHttp遇到的奇怪现象</title>
        <author>SwiftHorse</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://swifthorse.javaeye.com">SwiftHorse</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/99523" style="color:red;">http://gzer.group.javaeye.com/group/blog/99523</a>&nbsp;
          发表时间: 2007年07月10日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">今天为了实现论坛自动登录发贴，作了如下尝试：</font></p>
<p><font face="Arial">asp代码说明：<br />
登录页面为:login.asp<br />
要提交的表单两个：txt_user,txt_password</font></p>
<p><font face="Arial">登录后提交的页面是：login_check.asp,该页面我的测试代码简单的只有以下：<br />
username=trim(Request.Form(&quot;txt_user&quot;))<br />
&nbsp; response.write &quot;username=&quot; &amp; username</font></p>
<p><font face="Arial">password=trim(Request.Form(&quot;txt_password&quot;))<br />
&nbsp; response.write &quot;password=&quot; &amp; password</font></p>
<p><font face="Arial">--------------------------DELPHI代码如下（希望通过IDHTTP的POST方法实现自动登录）----------------------<br />
procedure TForm1.Button2Click(Sender: TObject);<br />
const<br />
&nbsp; BaseURL&nbsp; = 'http://192.168.2.25/test/';&nbsp;&nbsp;&nbsp;&nbsp; //论坛所在地址<br />
&nbsp; UserName = 'sa';&nbsp;&nbsp;&nbsp; //登录用户名<br />
&nbsp; Password = '123';&nbsp;&nbsp;&nbsp; //登录密码<br />
var<br />
&nbsp; Params: TStrings;<br />
&nbsp; HTML: String;<br />
&nbsp; MD5Pass: String;<br />
&nbsp; ret:tstringstream;<br />
begin<br />
&nbsp; Params:=TStringList.Create;<br />
&nbsp; ret:=TStringStream.Create('');<br />
&nbsp; try<br />
&nbsp;&nbsp;&nbsp; Params.Clear;<br />
&nbsp;&nbsp;&nbsp; Params.add('txt_user='+UserName);<br />
&nbsp;&nbsp;&nbsp; Params.Add('txt_password='+Password);</font></p>
<p><font face="Arial">&nbsp;&nbsp;&nbsp; IDHttp.HandleRedirects := true;<br />
&nbsp;&nbsp;&nbsp; IdHTTP.request.contenttype:='application/x-www-form-urlencoded';&nbsp; </font></p>
<p><font face="Arial">&nbsp;&nbsp;&nbsp; IdHTTP.Request.Referer := BaseURL + 'login.asp';<br />
&nbsp;&nbsp;&nbsp; IdHTTP.Post(BaseURL+'login_check.asp',Params,ret);</font></p>
<p><font face="Arial">&nbsp;&nbsp;&nbsp; HTML:=ret.datastring;<br />
&nbsp;&nbsp;&nbsp; Memo1.Lines.Text := HTML;<br />
&nbsp;&nbsp;&nbsp; if Pos(BASEURL+cars.asp',HTML)=0 then&nbsp; //cars.asp是登录成功后会转向的页面<br />
&nbsp;&nbsp;&nbsp; begin<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ShowMessage('登录失败');<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Exit;<br />
&nbsp;&nbsp;&nbsp; end;<br />
&nbsp; finally<br />
&nbsp;&nbsp;&nbsp; Params.Free;<br />
&nbsp; end;<br />
end;</font></p>
<p><font face="Arial">------------------</font></p>
<p><font face="Arial">问题：按正常ASP应该是得到如下内容<br />
　　　　　　　　　username=sa<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; password=123</font></p>
<p><font face="Arial">但实际遇到的问题是username=satxt_password=123<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; password=</font></p>
<p><font face="Arial">不解！！！！！！为什么我传的是两个参数，但程序却把两个参数当作了一个参数是不是IDHTTP控件有BUG？<br />
清醒一下，写篇博客再思考问题可能出在哪里。</font></p>
<p><font face="Arial"></font>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/99523#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 10 Jul 2007 00:02:37 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/99523</link>
        <guid>http://gzer.group.javaeye.com/group/blog/99523</guid>
      </item>
          <item>
        <title>多年后我又在同一个地方犯了小错误</title>
        <author>SwiftHorse</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://swifthorse.javaeye.com">SwiftHorse</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/99341" style="color:red;">http://gzer.group.javaeye.com/group/blog/99341</a>&nbsp;
          发表时间: 2007年07月09日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">　　今天一早在sql server 中修改存储过程中,执行远程数据操作,提示：&ldquo;发生异常错误 7405: 异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这些选项，然后重新发出查询。&rdquo;</font></p>
<font face="Arial">
<p><br />
　　这个问题不是第一次碰见，多年以前碰到过，看错误信息感觉应该简单，可以马上处理，我在存储过程中加上了：</p>
<p>　　set ANSI_NULLS ON<br />
　　set ANSI_WARNINGS ON</p>
<p>&nbsp;&nbsp;&nbsp; /*中间为自己的存储过程处理信息*/</p>
<p>　　set ANSI_NULLS OFF<br />
　　set ANSI_WARNINGS OFF</p>
<p>　　但重新执行，结果还是一样报错，既然不是这样处理？</p>
<p>　　被这问题折腾了半个小时后找到了解决方法，最后解决的方法是：<br />
　　1、删除原存储过程；<br />
　　2、在查询分析器中重新生成该存储过程，不过在Create前加了以下一句：</p>
<p>&nbsp;&nbsp;&nbsp; set ansi_nulls on <br />
　　Go</p>
<p>　　Create proc myself_Store<br />
　　as</p>
<p>　　set nocount on<br />
　　set&nbsp; ansi_warnings on</p>
<p>&nbsp;&nbsp;&nbsp; /*中间为自己的存储过程处理信息*/<br />
　　Go</p>
<p>　　不要再在同一个地方浪费时间，呵呵。</p>
</font>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/99341#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 09 Jul 2007 10:13:33 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/99341</link>
        <guid>http://gzer.group.javaeye.com/group/blog/99341</guid>
      </item>
          <item>
        <title>欢迎参加本周六BEA广州用户组活动--Portal技术最新动态与企业门户开发经验交流</title>
        <author>YuLimin</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yulimin.javaeye.com">YuLimin</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/66731" style="color:red;">http://gzer.group.javaeye.com/group/blog/66731</a>&nbsp;
          发表时间: 2007年03月30日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">主 题：Portal技术最新动态与企业门户开发经验交流<br />
时 间：2007年4月7日下午1：00到6：00<br />
详细地点：广州天河北路468号 嘉逸国际酒店（百佳超市对面）三楼嘉逸宴会厅<br />
乘车指南：乘公交车到龙口西路站 (体育中心可坐78,130,813等公交车到龙口西路)<br />
联 系 人：Martin Liu (martindpliu@gmail.com)<br />
报名链接：<a href="http://dev2dev.bea.com.cn/usergroup/ug-Portal-070330.html">http://dev2dev.bea.com.cn/usergroup/ug-Portal-070330.html</a></font></p>
<p><font face="Arial">Leader 手札 <br />
活动掠影 <br />
讲义下载 <br />
参与讨论 <br />
活动介绍：</font></p>
<p><font face="Arial">　　随着信息化建设的逐渐深入，软件技术的不断创新，Portal技术已经成为企业信息化建设的一个重要组成部分。Portal是企业现有应用与新应用的集成节点，使用户能够与人员（People）、内容（content）、应用（Application）和流程（Processes）进行个性化的、安全的、单点式的互动交流。Portal现在已经成为企业最关注的领域之一，是实现企业整合的第一步。</font></p>
<p><font face="Arial">　　我们非常荣幸的邀请到来自广州,深圳两地的四位资深的技术专家来到BEA广州UserGroup活动现场，与开发者畅谈Portal技术最新动态，共同交流企业门户开发经验。</font></p>
<p><font face="Arial">具体内容：</font></p>
<p><font face="Arial">1、BEA WebLogic Portal技术最新动态 （陈渚先生, BEA公司的高级技术顾问）</font></p>
<p><font face="Arial">　　将结合BEA WebLogic Portal重点讨论门户企业架构, 表示服务, 联合结构, 企业集成等最新技术动态, 以及门户生命期管理，门户业务服务等最新发展。其中涉及远程Portlet的Web服务（Web Services for Remote Portlets，WSRP），Ajax技术与Portal集成应用等技术。</font></p>
<p><font face="Arial">2、Portal技术在税务行业的应用 （陶宇先生, 方欣科技税务行业部技术总监）</font></p>
<p><font face="Arial">　　将结合国内典型的行业门户需求特点，讨论行业Portal的架构设计，Portlet的设计和开发，以及Portal后期的运维管理等经验。</font></p>
<p><font face="Arial">3、单点登录实现技术探讨 (张年胜先生, Portal爱好者(www.portalfan.com)网站版主)</font></p>
<p><font face="Arial">　　重点讨论企业信息化系统的单点登录需求与方案, 单点登录相关技术, 以及在Portal中实现单点登录的经验交流。</font></p>
<p><font face="Arial">4、企业信息门户的建设思考 (郑裕显先生, Portal爱好者(www.portalfan.com)网站版主)</font></p>
<p><font face="Arial">　　讨论企业信息门户(EIP)的技术发展，EIP建设中常见的误区，以及使用BEA WebLogic Portal建设 EIP的开发经验分享。</font></p>
<p><font face="Arial">　　这是企业门户新技术的体验大会，这是企业门户开发实战经验的分享盛宴，请不要错过与Portal技术专家亲密接触的机会，立即加入BEA广州UserGroup活动。</font></p>
<p><font face="Arial">日程安排:<br />
1:00-1:15 登记入场<br />
1:15-1:30 UserGroup Leader致词<br />
1:30-2:15 陈渚《BEA WebLogic Portal技术最新动态》 <br />
2:15-2:30 休息/提问 <br />
2:30-3:15 陶宇《Portal技术在税务行业的应用》 <br />
3:15-3:35 休息/网友交流/有奖提问 <br />
3:35-4:20 张年胜《单点登录实现技术探讨》 <br />
4:20-4:35 休息/提问 <br />
4:35-5:20 郑裕显《企业信息门户的建设思考》 <br />
5:20-5:35 休息/提问 <br />
5:35-6:00 线下活动,拍照,分区讨论, 现场答疑 </font></p>
<font face="Arial">
<p><br />
特邀嘉宾(speaker)：<br />
陈渚：BEA高级技术顾问， 拥有BEA相关行业的丰富背景和大型项目的实施经验。在企业门户方面有深入的研究。</p>
<p>陶宇：现任职于广州市方欣科技有限公司，税务行业部技术总监。7年的软件研发经验，参与多个省一级税务信息门户的架构设计和实施。</p>
<p>张年胜：Portal爱好者(www.portalfan.com)网站版主。 从2001年开始研究ibm portal4.0，到目前为止一直从事portal项目开发和实施工作，有六年的portal经验。负责实施的项目包括美的MIP、上海通用门户平台、某政府门户网站等等。</p>
<p>郑裕显：Portal爱好者(www.portalfan.com)网站版主。 现任职于深圳康拓普信息技术有限公司系统分析师，参加过多个门户项目的开发与实施， 对企业信息门户的建设具有浓厚的兴趣，熟悉BEA weblogic及IBM websphere的Portal的开发。</p>
</font>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/66731#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 30 Mar 2007 20:24:55 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/66731</link>
        <guid>http://gzer.group.javaeye.com/group/blog/66731</guid>
      </item>
          <item>
        <title>莲花山一日游</title>
        <author>wuhua</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://wuhua.javaeye.com">wuhua</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/65873" style="color:red;">http://gzer.group.javaeye.com/group/blog/65873</a>&nbsp;
          发表时间: 2007年03月27日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>原文地址</p>
<p><a href="http://googledev.blog.hexun.com/8455601_d.html">http://googledev.blog.hexun.com/8455601_d.html</a><br />
</p>
<p>上个礼拜天，跟高中同学去了莲花山，山还是那个山，不过带了点佛教的东西在里面，此山就非彼山了。</p>
<p>里面的望海观音跟大雄宝殿很是出名，也很是雄伟。</p>
<p>去了莲花山不可不去石场看下。我在那里可算是感受到了，什么就巧夺天工。</p>
<p>等下得等我把相片拿到手里，上传上来。</p>
<p><a target="_blank" href="http://googledev.photo.hexun.com/17134452_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85672/b_42F5A7B2C84EB8AE1291C94CB2FC865B.jpg" alt="查看更多精彩图片" /></a><br />
<br />
<a target="_blank" href="http://googledev.photo.hexun.com/17134413_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85672/b_EC181E922082A9CEB107EE56F43AAAFA.jpg" alt="查看更多精彩图片" /></a><br />
</p>
<p><a target="_blank" href="http://googledev.photo.hexun.com/17134429_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85672/b_4D758DB153BB8AFD58F97BF6C15A8A1D.jpg" alt="查看更多精彩图片" /></a><br />
</p>
<p><a target="_blank" href="http://googledev.photo.hexun.com/17147147_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85735/b_A75AF32285F3ED73E91C5F075574385D.jpg" alt="查看更多精彩图片" /></a><br />
<br />
<a target="_blank" href="http://googledev.photo.hexun.com/17147204_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85736/b_FCD133A9C33B29146080F9801BBC7D3A.jpg" alt="查看更多精彩图片" /></a><br />
<br />
<a target="_blank" href="http://googledev.photo.hexun.com/17147168_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85735/b_161F1CC4202F587B83F0472CA253D72C.jpg" alt="查看更多精彩图片" /></a><br />
<br />
<a target="_blank" href="http://googledev.photo.hexun.com/17147160_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85735/b_6D5FE066655715825BDF3D847DF05BF1.jpg" alt="查看更多精彩图片" /></a><br />
<br />
<a target="_blank" href="http://googledev.photo.hexun.com/17147238_d.html"><img border="0" onload="var image=new Image();image.src=this.src;if(image.width&gt;0 &amp;&amp; image.height&gt;0){if(image.width&gt;=510){this.width=510;this.height=image.height*510/image.width;}}" src="http://photo5.hexun.com/p/2007/0327/85736/b_E6465BCACA71618D5611804AA776CFEF.jpg" alt="查看更多精彩图片" /></a><br />
</p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/65873#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 27 Mar 2007 19:51:22 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/65873</link>
        <guid>http://gzer.group.javaeye.com/group/blog/65873</guid>
      </item>
          <item>
        <title>求职Java开发工程师</title>
        <author>Arden</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://arden.javaeye.com">Arden</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/58054" style="color:red;">http://gzer.group.javaeye.com/group/blog/58054</a>&nbsp;
          发表时间: 2007年03月07日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p align="center"><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman" size="5"><span><span><strong>个人简历</strong></span></span></font></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman"><span><span><strong>联系方式<font size="5">:&nbsp;</font></strong></span></span></font></span><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman"><strong>&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; </strong></font></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"></span><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman"></font></span></p>
<blockquote>
<p><font size="2"><span lang="EN-US"><strong>手机:</strong> 0086-</span><span lang="EN-US" style="FONT-SIZE: 12pt">13590309275</span></font><span lang="EN-US" style="FONT-SIZE: 12pt"><br />
<font size="2"><strong>MSN:</strong> </font></span><span lang="EN-US"><a href="mailto:ardenemily@msn.com"><font color="#0066ff" size="2">ardenemily@msn.com</font></a><span lang="EN-US" style="FONT-SIZE: 12pt"><br />
</span><font size="2"><strong>Email:</strong> </font><span lang="EN-US"><a href="mailto:ardenemily@msn.com"><font color="#0066ff" size="2">arden.emily@gmail.com</font></a><span lang="EN-US" style="FONT-SIZE: 12pt"><br />
</span></span></span><font size="2"><span lang="EN-US"><span lang="EN-US"><strong>QQ:</strong>&nbsp;83058327 / 445125569 / 103099587&nbsp;<br />
</span></span><span lang="EN-US"><strong>个人主页:</strong>&nbsp;<span>&nbsp;</span><a href="http://www.ugole.com/"><font color="#5b9eff">http://www.ugole.com</font></a> </span><span lang="EN-US"></span></font><span lang="EN-US"><br />
<font size="2"><strong>现居住地:</strong> 广东深圳</font></span></p>
</blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt" align="left"><span lang="EN-US"></span></p>
<p>&nbsp;<span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman"><strong>基本资料:&nbsp;</strong></font></span></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt" align="left"><font face="Times New Roman"><strong><span lang="EN-US">姓名:</span></strong><span lang="EN-US"> <span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'"><a target="_blank" href="http://www.google.com/search?q=%E6%9B%B9%E6%B1%9F%E5%8D%8E&amp;hl=zh-CN&amp;lr=&amp;nxpt=20.636424464726055136556">曹江华</a>（<a target="_blank" href="http://www.google.com/search?hl=zh-CN&amp;newwindow=1&amp;q=%E5%A4%AA%E9%98%B3%E9%87%8C%E7%9A%84%E9%9B%AA&amp;lr=">太阳里的雪</a>）</span></span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt" align="left"><font face="Times New Roman"><span lang="EN-US"><span lang="EN-US" style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'"><span lang="EN-US"><font size="2"><strong>英文名:</strong> Arden</font></span></span></span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><span><strong>年龄:</strong> 26</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">婚姻:</span></strong><span lang="EN-US"> 单身</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">籍贯:</span></strong><span lang="EN-US"> 湖南</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">语言能力:</span></strong><span lang="EN-US"> 中文&amp;英文</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">学历:</span></strong><span lang="EN-US"> 大专</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">专业:</span></strong><span lang="EN-US">&nbsp;计算机应用 </span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><span lang="EN-US"><strong>毕业院校: </strong><a target="_blank" href="http://www.chinaloveweb.com/">长沙民政职业技术学院</a></span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">求职意向:</span></strong><span lang="EN-US"> Java开发工程师</span></font></p>
</blockquote>
<p><span lang="EN-US"></span><span lang="EN-US"><strong><span lang="EN-US" style="FONT-SIZE: 14pt"></span></strong></span><span lang="EN-US"><strong><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman">工作经历：<br />
1,</font></span></strong></span></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">时间</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">2005年05月 - 2006年09月 (1年4个月)</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">公司</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">深圳宜搜科技有限公司</font></span><span style="FONT-FAMILY: 宋体">（</span><span lang="EN-US"><a href="http://www.easou.com/"><font face="Times New Roman" color="#0066ff">http://www.easou.com</font></a><span><font face="Times New Roman">&nbsp; </font></span></span><span style="FONT-FAMILY: 宋体">）</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">职位</font></strong>：Java项目开发组长</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">职责</font></span></strong><span style="FONT-FAMILY: 宋体">：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体">1、负责Wap娱乐门户网站（http://wap.easou.com）的系统架构设计与开发。<br />
2、负责Wap联盟管理平台的系统架构设计与程序开发。<br />
3、负责Wap门户网站数据统计平台的系统设计与程序开发。<br />
4、基于Linux服务器的MySql的安装与配置，Resin服务器软件的配置与调优。<br />
5、Subversion源代码管理的安装与配置，源代码的管理与分配。<br />
6、Wap push推广平台的程序开发及运营管理。<br />
7、手机邮箱的第二次开发，负责油箱项目的对外商务的沟通与协调。</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">技术平台</span></strong><span lang="EN-US">: Resin</span></font><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Oracle</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Linux</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">MySQL</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Subversion<span>&nbsp;&nbsp; </span>/<span>&nbsp;&nbsp; </span>Spring</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Webwork</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Hibernate</font></span></p>
</blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"></span></p>
<p><strong><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman">2,</font></span></strong></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">时间</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">2004年04月 - 2005年05月 (1年1个月) </font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">公司</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">深圳乐酷信息技术有限公司</font></span><span style="FONT-FAMILY: 宋体">（</span><span lang="EN-US"><a href="http://www.anymusic.com.cn/"><font face="Times New Roman" color="#0066ff">http://www.anymusic.com.cn</font></a><font face="Times New Roman"> </font></span><span style="FONT-FAMILY: 宋体">）</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">职位</font></span></strong><span style="FONT-FAMILY: 宋体">：Java</span><span lang="EN-US"><font face="Times New Roman">高级软件工程师</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">职责</font></span></strong><span style="FONT-FAMILY: 宋体">：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体">1、负责公司基于梦网平台的图铃资讯、游戏等Wap收费业务的开发。<br />
2、负责公司图铃资讯后台管理平台及数据分析后台的程序开发</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">技术平台</font></strong>：</span><span lang="EN-US"><font face="Times New Roman">Weblogic</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Oracle</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Linux</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">CVS<span>&nbsp;&nbsp; </span>/<span>&nbsp; </span>Spring</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Webwork</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Hibernate</font></span></p>
</blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"></span></p>
<p><strong><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman">3,</font></span></strong></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">时间:</span></strong><span lang="EN-US"> 2003年07月 - 2004年04月 (9个月) </span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">公司:</span></strong><span lang="EN-US"> 深圳索尼爱立信数据中心</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">职位</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">Java软件开发工程师</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">职责</font></strong>：</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体">1、Web网站的开发。<br />
2、基于SGIP协议的短信网关程序的开发与设计。<br />
3、短信娱乐互动游戏的程序开发。</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">技术平台</font></strong>：</span><span lang="EN-US"><font face="Times New Roman">Windows2000</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Tomcat</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">SQLServer2000<span>&nbsp;&nbsp; </span>/<span>&nbsp;&nbsp; </span>JSP</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Servlet</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">JSTL</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">XML</font></span></p>
</blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"></span></p>
<p><strong><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman">4,</font></span></strong></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">时间</font></strong>：</span><span lang="EN-US"><font face="Times New Roman">Sep,2002 </font></span><span style="FONT-FAMILY: 宋体">&ndash;</span><span lang="EN-US"><font face="Times New Roman"> Jun, 2003 (9 months)</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span lang="EN-US"><font face="Times New Roman">公司</font></span></strong><span style="FONT-FAMILY: 宋体">：</span><span lang="EN-US"><font face="Times New Roman">Shenzhen Excenon Technology Co., Ltd</font></span><span style="FONT-FAMILY: 宋体">（</span><span lang="EN-US"><a href="http://www.excenon.com/"><font face="Times New Roman" color="#0066ff">http://www.excenon.com</font></a><font face="Times New Roman"> </font></span><span style="FONT-FAMILY: 宋体">）</span><span lang="EN-US"><font face="Times New Roman"> </font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">职位</span></strong><span lang="EN-US"><span style="FONT-FAMILY: 宋体">：</span>Java software engineer</span></font></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 宋体"><strong><font face="Times New Roman">职责</font></strong>：负责公司主打产品EBSeries企业信息化管理软件的程序开发。</span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><strong><span style="FONT-FAMILY: 宋体"><font face="Times New Roman">演示地址</font>：</span></strong><span lang="EN-US"><a href="http://202.105.139.204:38080/ebseries/ebif/login.jsp"><font face="Times New Roman" color="#5b9eff">http://202.105.139.204:38080/ebseries/ebif/login.jsp</font></a><font face="Times New Roman"> </font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><font face="Times New Roman"><strong><span lang="EN-US">技术平台: </span></strong><span lang="EN-US">JBoss</span></font><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Tomcat</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Linux</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Oracle</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">MySQL</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">SQLServer</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">CVS<span>&nbsp; </span>/<span>&nbsp; </span>JSP</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Servlet</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">JSTL</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">XML</font></span></p>
</blockquote>
<p><span lang="EN-US"></span><span lang="EN-US"><strong><span lang="EN-US" style="FONT-SIZE: 14pt"><font face="Times New Roman">专业技能：</font></span></strong></span></p>
<blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">1</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">MySQL</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Oracle</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">2</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Spring</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Struts2.0</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Webwork</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Hibernate</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">IBatis</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">JBoss Seam</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">JSTL、AJAX</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">3</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Resin</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Tomcat</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Weblogic</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">4</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Linux</font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">5</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">CVS</font></span><span style="FONT-FAMILY: 宋体">、</span><span lang="EN-US"><font face="Times New Roman">Subversion</font></span></p>
</blockquote>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">Word版本下载地址：<a target="_blank" href="http://www.ugole.com/profile/resume.doc"><font color="#5b9eff">http://www.ugole.com/profile/resume.doc</font></a></font></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"><span lang="EN-US"><font face="Times New Roman">英文版下载地址：<font face="Arial"><a href="http://www.ugole.com/blog/?p=347">http://www.ugole.com/blog/?p=347</a></font></font></span></p>
          <br/>
          <span style="color:red;">
            <a href="http://gzer.group.javaeye.com/group/blog/58054#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/70' target='_blank'><span style="color:red;font-weight:bold;">第二届网络工程师侠客行大会5月24日杭州举行</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 07 Mar 2007 19:34:19 +0800</pubDate>
        <link>http://gzer.group.javaeye.com/group/blog/58054</link>
        <guid>http://gzer.group.javaeye.com/group/blog/58054</guid>
      </item>
          <item>
        <title>类与类关系的UML图与代码表现</title>
        <author>seagar</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://seagar.javaeye.com">seagar</a>&nbsp;
                    链接：<a href="http://gzer.group.javaeye.com/group/blog/37302" style="color:red;">http://gzer.group.javaeye.com/group/blog/37302</a>&nbsp;
          发表时间: 2006年12月06日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><font face="Arial">类与类之间的关系对于理解面向对象具有很重要的作用，以前在面试的时候也经常被问到这个问题，在这里我就介绍一下。<br />
类与类之间存在以下关系:<br />
<strong><font color="#3366ff">(1)泛化(Generalization)<br />
(2)关联(Association)<br />
(3)依赖(Dependency)<br />
(4)聚合(Aggregation)</font></strong></font></p>
<p><font face="Arial"><strong>UML图与应用代码例子:</strong><br />
<strong><font color="#ff9900" size="4"><font color="#3366ff">1.泛化(Generalization)</font><br />
</font><font color="#339966" size="3">[泛化]</font><br />
</strong>表示类与类之间的继承关系，接口与接口之间的继承关系，或类对接口的实现关系。一般化的关系是从子类指向父类的，与继承或实现的方法相反。<br />
<font color="#339966" size="3"><strong>[具体表现]<br />
</strong></font><font color="#ff0000">父类</font> 父类实例＝new <font color="#ff0000">子类</font>()<br />
<strong><font color="#339966" size="3">[UML图](图1.1)<br />
</font><img alt="" src="http://seagar.javaeye.com/upload/picture/pic/1320/10bfdb9d-ed2d-4226-bab2-f814d2e10a82.jpg " /><br />
</strong><font face="Arial"><font color="#339966"><strong>图1.1</strong></font> <strong>Animal类与Tiger类,Dog类的泛化关系<br />
</strong></font><br />
<strong><font color="#339966" size="3">[代码表现]</font><br />
<br />
</strong></font></p>
<div class="dp-highlighter">
<div class="bar"><strong></strong></div>
<ol class="dp-j">
    <li class="alt"><span><span class="keyword">class</span><span><strong>&nbsp;Animal{} &nbsp;&nbsp;</strong></span></span><strong> </strong></li>
    <li class=""><span></span><span class="keyword">class</span><strong><span>&nbsp;Tiger&nbsp;</span><span class="keyword">extends</span><span>&nbsp;Animal{} &nbsp;&nbsp;</span> </strong></li>
    <li class="alt"><span></span><span class="keyword">public</span><strong><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;Test &nbsp;&nbsp;</span> </strong></li>
    <li class=""><strong><span>{ &nbsp;&nbsp;</span> </strong></li>
    <li class="alt"><strong><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword">public</span><span>&nbsp;</span><span class="keyword">void</span><span>&nbsp;test() &nbsp;&nbsp;</span> </strong></li>
    <li class=""><strong><span>&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;</span> </strong></li>
    <li class="alt"><strong><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Animal&nbsp;a=</span><span class="keyword">new</span><span>&nbsp;Tiger(); &nbsp;&nbsp;</span> </strong></li>
    <li class=""><strong><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span> </strong></li>
    <li class="alt"><strong><span>}&nbsp;&nbsp;</span> </strong></li>
</ol>
</div>
<br />
<font face="Arial"><strong><font color="#3366ff" size="4">2.依赖(Dependency)</font><br />
</strong><font color="#339966" size="3"><strong>[依赖]<br />
</strong></font>对于两个相对独立的对象，当一个对象负责构造另一个对象的实例，或者依赖另一个对象的服务时，这两个对象之间主要体现为依赖关系。<br />
<font color="#339966" size="3"><strong>[具体表现]<br />
</strong></font>依赖关系表现在<font color="#ff0000">局部变量</font>，<font color="#ff0000">方法的参数</font>，以及对<font color="#ff0000">静态方法的调用</font><br />
<font color="#339966" size="3"><strong>[现实例子]<br />
</strong></font>比如说你要去拧螺丝，你是不是要借助(也就是依赖)螺丝刀(Screwdriver)来帮助你完成拧螺丝(screw)的工作<br />
<font color="#339966" size="3"><strong>[UML表现](图1.2)</strong></font><br />
<p align="left"><strong><img alt="" src="http://seagar.javaeye.com/upload/picture/pic/1319/ec7bca6c-c01a-4772-a91b-3a695773ddfb.jpg " /></strong></p>
<p align="left"><br />
<font face="Arial"><strong><font color="#339966">图1.2 </font>Person类与Screwdriver类的依赖关系</strong><br />
<font face="Arial"><font color="#339966" size="3"><strong><br />
[代码表现] </strong></font></font></font></p>
<div class="dp-highlighter">
<div class="bar"><strong></strong></div>
<ol class="dp-j">
    <li class="alt"><span><span class="keyword">public</span><strong><span>&nbsp;</span><span class="keyword">class</span><span>&nbsp;Person{ &nbsp;&nb