<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>JavaEye论坛最新讨论</title>
    <description>JavaEye论坛最新讨论 - Java编程，Ruby编程，微软.net，AJAX，敏捷软件开发，综合软件技术</description>
    <link>http://www.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>大四学生，有作品，有简历，大家一起打击下</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://tianhaoleng.javaeye.com">tianhaoleng</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237898" style="color:red;">http://www.javaeye.com/topic/237898</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          废话少来，最新作品：<br /><span style="color: red"><br />声明：论坛、博客采用的是discuz，非我所写。</span><br /><a href="http://www.jdtqn.com" target="_blank">http://www.jdtqn.com</a><br /><br />本站程序编写花费21天。<br /><br />ui设计：我的搭档 segalove， 专科学历，现就读于安徽城市管理学院 园林艺术系<br /><br />看点：<br />1、性能 全站缓存+全站静态化+定时器<br />2、搜索 全站搜索+细粒度化的相关栏目搜索+全站缓存+相关文章查找算法<br />3、UI设计 JS的初步运用<br />4、权限 acegi做细致的权限控制<br /><br />大家给点意见。<br /><br /><br />半年前的技术水平：<br /><div class="quote_title">引用</div><div class="quote_div">学历：国家全日制本科（二本） <br /><br />出生：1987 <br /><br />英语水平：四级通过 （438） <br /><br /><br />目前技术状况: <br /><br />SSH搭建WEB管理系统基本掌握.（不敢说精通） <br /><br />较熟练使用struts <br /><br />较熟练使用hibernate,熟练使用one_one,One_many,较熟练使用many-many.熟练使用使用二级缓存.未使用过什么锁机制. <br /><br />较熟练使用spring ,熟练使用spring的ioc, 较熟练使用aop,主要是用aop做过事务管理，权限控制和方法返回集的缓存等。尚未用过spring提供的的MVC。 <br /><br />较熟练使用mysql,不会写存储过程. <br /><br />其他数据库一概不了解. <br /><br />比较了解设计模式,并能运用. <br /><br />了解领域驱动建模，并努力在项目中实现。 <br /><br />理解并使用web的四层架构搭建系统（dao层，服务层，控制层，表现层），并在层与层之间合适的地方做方法缓存以优化性能。 <br /><br />以上的缓存都是基于Ehcache实现。 <br /><br />习惯与使用开源项目解决问题（jxl,jfreechat,struts-menu等） <br /><br />安全会用acegi,但不精通,尚未尝试通过角色管理权限，对JAVA的安全性编程了解一点（主要是加密解密方面），ca则一点都不了解。 <br /><br />习惯查API，阅读thinking in java中文版两遍，java se基础不算差。</div><br /><br />半年后自我评价：<br /><br />1、系统架构技术有了较大进步，得益与不断的思考和重构代码<br />2、对js有了一定了解，对ajax有了一定了解<br />3、利用freemarker可完成全站静态化，并可较好的处理网页文件和数据库之间的同步<br />4、<br />5、较熟练的运用acegi<br />6、较熟练运用luncene，完成搜索任务，<br />7、对系统性能优化有了一定的认识，对hibernate二级缓存有一定使用经验，浅用oscache,encache。<br />8、对于消耗资源的操作，有了自己的一套处理方案。<br />9、对多用户系统架构有了一定经验，博客、论坛基本都可以实现。<br />10、学会了查api,查英文文档，这更是宝贵的习惯。
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237898" style="color:red;">已有 <strong>32</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 06 Sep 2008 15:13:20 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237898</link>
        <guid>http://www.javaeye.com/topic/237898</guid>
      </item>
      <item>
        <title>请教：spring中配置c3p0和mysql的数据源错误</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://gumeng000.javaeye.com">gumeng000</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238207" style="color:red;">http://www.javaeye.com/topic/238207</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          如题spring中配置了c3p0和mysql的数据源，系统启动时没有报错，但是在查询数据时回报下面错误，不知道为什么，用了dbcp还是包这样的错，怀疑是数据库的问题，请教下各位：下面是查询数据时的打印的异常：<br /><br /><pre name="code" class="java">[GraMind] 2008-09-07 23:21:25,093 - DEBUG org.springframework.orm.hibernate3.SessionFactoryUtils  : Opening Hibernate Session
[GraMind] 2008-09-07 23:21:25,203 - DEBUG org.hibernate.impl.SessionImpl  : opened session at timestamp: 12208008850
[GraMind] 2008-09-07 23:21:25,203 - DEBUG org.hibernate.engine.query.QueryPlanCache  : located HQL query plan in cache (select user.userName from User user)
[GraMind] 2008-09-07 23:21:25,265 - DEBUG org.hibernate.engine.query.QueryPlanCache  : located HQL query plan in cache (select user.userName from User user)
[GraMind] 2008-09-07 23:21:25,265 - DEBUG org.hibernate.engine.query.HQLQueryPlan  : find: select user.userName from User user
[GraMind] 2008-09-07 23:21:25,375 - DEBUG org.hibernate.engine.QueryParameters  : named parameters: {}
[GraMind] 2008-09-07 23:21:25,468 - DEBUG org.hibernate.jdbc.AbstractBatcher  : about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
[GraMind] 2008-09-07 23:21:25,468 - DEBUG org.hibernate.jdbc.ConnectionManager  : opening JDBC connection
[GraMind] 2008-09-07 23:21:25,531 - DEBUG com.mchange.v2.resourcepool.BasicResourcePool  : resource age is okay: com.mchange.v2.c3p0.impl.NewPooledConnection@e2f8c1 ---> age: 231797   max: 600000 [com.mchange.v2.resourcepool.BasicResourcePool@28bda]
[GraMind] 2008-09-07 23:21:25,531 - DEBUG com.mchange.v2.resourcepool.BasicResourcePool  : trace com.mchange.v2.resourcepool.BasicResourcePool@28bda [managed: 9, unused: 8, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@4ba4d6)
[GraMind] 2008-09-07 23:21:25,531 - DEBUG org.hibernate.SQL  : select user0_.UserName as col_0_0_ from gramind_bbs.bbscs_userinfo user0_
Hibernate: select user0_.UserName as col_0_0_ from gramind_bbs.bbscs_userinfo user0_
[GraMind] 2008-09-07 23:21:25,531 - DEBUG org.hibernate.jdbc.AbstractBatcher  : preparing statement
[GraMind] 2008-09-07 23:21:25,875 - DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  : cxnStmtMgr.statementSet( com.mysql.jdbc.Connection@10a59d2 ).size(): 1
[GraMind] 2008-09-07 23:21:25,875 - DEBUG com.mchange.v2.c3p0.stmt.GooGooStatementCache  : checkoutStatement: com.mchange.v2.c3p0.stmt.GlobalMaxOnlyStatementCache stats -- total size: 1; checked out: 1; num connections: 1; num keys: 1
[GraMind] 2008-09-07 23:21:26,484 - DEBUG org.hibernate.jdbc.AbstractBatcher  : about to open ResultSet (open ResultSets: 0, globally: 0)
[GraMind] 2008-09-07 23:21:26,500 - DEBUG org.hibernate.loader.Loader  : processing result set
[GraMind] 2008-09-07 23:21:26,578 - DEBUG com.mchange.v2.c3p0.impl.NewPooledConnection  : com.mchange.v2.c3p0.impl.NewPooledConnection@e2f8c1 handling a throwable.
java.sql.SQLException: The statement (1) has no open cursor.
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2901)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:773)
	at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1304)
	at com.mysql.jdbc.MysqlIO.fetchRowsViaCursor(MysqlIO.java:933)
	at com.mysql.jdbc.CursorRowProvider.fetchMoreRows(CursorRowProvider.java:357)
	at com.mysql.jdbc.CursorRowProvider.hasNext(CursorRowProvider.java:291)
	at com.mysql.jdbc.ResultSet.next(ResultSet.java:2834)
	at com.mchange.v2.c3p0.impl.NewProxyResultSet.next(NewProxyResultSet.java:3041)
	at org.hibernate.loader.Loader.doQuery(Loader.java:697)
	at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
	at org.hibernate.loader.Loader.doList(Loader.java:2220)
	at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
	at org.hibernate.loader.Loader.list(Loader.java:2099)
	at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
	at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
	at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
	at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
	at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
	at </pre><br /><br />请帮帮忙，谢谢
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238207" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 23:31:08 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238207</link>
        <guid>http://www.javaeye.com/topic/238207</guid>
      </item>
      <item>
        <title>我实现的一个dao助手类</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://donyee.javaeye.com">donyee</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238144" style="color:red;">http://www.javaeye.com/topic/238144</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;</p>
<p class="MsoNormal" style="text-indent: 15.75pt;"><span style="font-family: 宋体;">这个类蛮实用的，我在几个项目中都使用。接口如下：</span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">public</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> </span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">interface</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> DaoHelper {</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">boolean</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> add(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">boolean</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> add(String sql, Connection conn, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">int</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> update(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">int</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> update(String sql, Connection conn, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">boolean</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> delete(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">boolean</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> delete(String sql, Connection conn, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
Object getObject(String sql, Class obj, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
Object getObject(String sql, Connection conn, Class obj,
Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
List&lt;Object&gt; getList(String sql, Class obj, Object...
args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
String queryForString(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
Long queryForLong(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
Boolean queryForBoolean(String sql, Object... args);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
Connection <span style="background: silver none repeat scroll 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;">getConn</span>
();</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">void</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> returnConnection(Connection conn);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" align="left" style="text-align: left;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"><span>&nbsp;&nbsp;&nbsp; </span>
</span>
<strong><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: #7f0055;">void</span>
</strong>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"> rollBack(Connection conn);</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;;"></span>
</p>
<p class="MsoNormal" style="text-indent: 15pt;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">}</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（1）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span style="font-family: 宋体;">第一个</span>
<span lang="EN-US">add</span>
<span style="font-family: 宋体;">方法用来执行</span>
<span lang="EN-US">insert</span>
<span style="font-family: 宋体;">语句，并且提交事务；</span>
<span lang="EN-US">sql</span>
<span style="font-family: 宋体;">为数据库语句，</span>
<span lang="EN-US">args</span>
<span style="font-family: 宋体;">为数据库参数，要和数据库语句里的&ldquo;？&rdquo;对应。</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（2）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span style="font-family: 宋体;">第二个</span>
<span lang="EN-US">add</span>
<span style="font-family: 宋体;">方法多了一个</span>
<span lang="EN-US">Connetion</span>
<span style="font-family: 宋体;">参数，该方法将使用这个</span>
<span lang="EN-US">Conn</span>
<span style="font-family: 宋体;">来创建</span>
<span lang="EN-US">PreparedStatement</span>
<span style="font-family: 宋体;">，但是执行结束后不提交，需要手动提交。</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（3）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span style="font-family: 宋体;">其他</span>
<span lang="EN-US">update</span>
<span style="font-family: 宋体;">、</span>
<span lang="EN-US">delete</span>
<span style="font-family: 宋体;">同上</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（4）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span lang="EN-US"><span>&nbsp;</span>
getObject</span>
<span style="font-family: 宋体;">方法返回一个</span>
<span lang="EN-US">bean</span>
<span style="font-family: 宋体;">，把</span>
<span lang="EN-US">ResultSet</span>
<span style="font-family: 宋体;">转化为</span>
<span lang="EN-US">Bean</span>
<span style="font-family: 宋体;">，</span>
<span lang="EN-US">bean</span>
<span style="font-family: 宋体;">的属性必须和数据库列名称相同。</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（5）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span lang="EN-US"><span>&nbsp;</span>
getList</span>
<span style="font-family: 宋体;">方法返回一个</span>
<span lang="EN-US">List</span>
<span style="font-family: 宋体;">，将</span>
<span lang="EN-US">ResultSet</span>
<span style="font-family: 宋体;">处理为一个</span>
<span lang="EN-US">List</span>
<span style="font-family: 宋体;">返回</span>
</p>
<p class="MsoNormal" style="margin-left: 51.75pt; text-indent: -36pt;"><!-- [if !supportLists]--><span lang="EN-US"><span>（6）<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>
</span>
</span>
<!-- [endif]--><span lang="EN-US"><span>&nbsp;</span>
queryForString</span>
<span style="font-family: 宋体;">，</span>
<span lang="EN-US">queryForLong</span>
<span style="font-family: 宋体;">，</span>
<span lang="EN-US">queryForBoolean</span>
<span style="font-family: 宋体;">将分别返回</span>
<span lang="EN-US">String</span>
<span style="font-family: 宋体;">、</span>
<span lang="EN-US">Long</span>
<span style="font-family: 宋体;">、</span>
<span lang="EN-US">Boolean</span>
<span style="font-family: 宋体;">结果。</span>
</p>
<p class="MsoNormal" style="margin-left: 15.75pt;"><span style="font-family: 宋体;">实现我使用了</span>
<span lang="EN-US">apache common</span>
<span style="font-family: 宋体;">里的</span>
<span lang="EN-US" style="background: silver none repeat scroll 0%; font-size: 10pt; font-family: &quot;Courier New&quot;; color: black; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;">dbutils</span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">包，另外由</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">DataSource</span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">提供数据库</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">Connection</span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">，我使用的是</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">c3p0</span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">的实现，用</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">spring bean set </span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">注入的。代码参考附件。</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"></span>
</p>
<p class="MsoNormal" style="margin-left: 15.75pt;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">&nbsp;</span>
</p>
<p class="MsoNormal" style="margin-left: 15.75pt;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">PS:</span>
<span style="font-size: 10pt; font-family: 宋体; color: black;">抛砖引玉，大家要是有更好的方法的话，可以拿出来共享一下，提高代码质量、加快开发速度。</span>
<span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;"></span>
</p>
<p class="MsoNormal" style="margin-left: 15.75pt;"><span lang="EN-US" style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">&nbsp;</span>
</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238144" style="color:red;">已有 <strong>3</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 19:41:12 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238144</link>
        <guid>http://www.javaeye.com/topic/238144</guid>
      </item>
      <item>
        <title>mysql查询索引优化</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuzongan.javaeye.com">liuzongan</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238001" style="color:red;">http://www.javaeye.com/topic/238001</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>最近在网上搜索了一下，当mysql什么时候利用索引，搜索到了一个mysql的PPT文件，讲的挺好了，现在就共享一了，<img src="../../images/smiles/icon_sad.gif" alt="" /><img src="../../images/smiles/icon_smile.gif" alt="" />，有不懂明白朋友可以下载参考</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238001" style="color:red;">已有 <strong>1</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 06 Sep 2008 20:46:31 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238001</link>
        <guid>http://www.javaeye.com/topic/238001</guid>
      </item>
      <item>
        <title>各位Javaeye的朋友帮我看下简历</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://oop-ming.javaeye.com">oop_ming</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237779" style="color:red;">http://www.javaeye.com/topic/237779</a>&nbsp;
          发表时间: 2008年09月05日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          麻烦各位帮我看下有什么需要修改的地方，还有觉得以我现在这么低的水平，在广州或者深圳能要求多少的薪水？<br />简历的内容如下：<br /><br /><br /><br />个人信息<br />姓    名：	×××	性    别：	×	 <br />出生年月：	××××	籍    贯：	××××	<br />联系电话：	×××× 	政治面貌：	预备党员	<br />E－Mail：	××××	邮    编：	××××<br />通讯地址：	××××<br /><br />求职意向<br />  软件开发工程师（Java）<br /><br />教育背景<br />  2005年9月－2009年6月    ××××         软件工程        本科<br /><br />专业核心课程:<br />  C语言程序设计、离散数学、数据结构、 ACM/ICPC程序设计方法学、<br />  计算机组成原理、面向对象程序设计(Java)、数据库原理、操作系统、<br />  ERP系统分析与设计、软件工程、编译原理、软件项目管理与文档编写、<br />  对象与组件技术（JavaEE）。<br />  计算机专业技术水平<br />  ■专业技能:<br />  1．良好的程序设计能力，扎实的Java基础；<br />  2．熟悉Struts，Hibernate，Spring等MVC框架；<br />  3．熟悉HTML、JSP、Servlet、JavaBean，了解JavaScript，CSS等相关技术；<br />  4．熟悉Sql Server/MySQL等数据库应用开发, 了解Oracle；<br />  5．熟悉UML，及Rose建模工具；<br />  6．有solaris 10g下开发经验。<br /><br />  ■专业资格考试：软件设计师<br /><br />实习经历<br />  实习时间：7.14－2008.9.1<br />  实习地点：××××有限公司<br />  实习职称：Java程序员<br />  实习描述：代码的规范化、高效化，掌握公司一些项目开发模版以及实际项目的开发。<br />  实习收获：认识了代码规范对于团队项目开发的重要性，增强团队开发意识和实际项目开发的能力。<br /><br />个人获奖情况<br />■2005－2006学年度：	<br />  ××××“优秀生”三等奖学金<br />  ××××“三好学生”<br />■2006－2007学年度：	<br />  ××××ACM程序设计大赛三等奖<br />  ××××“优秀团干”<br />■2007—2008学年度：	<br />  “高校杯软件设计大赛”校队队员<br />  ××××“优秀生”二等奖学金<br />  ××××“三好学生”<br /><br />自我评价<br />   热爱编程，性格开朗，具有良好的沟通能力、理解能力及团队精神。<br />项目开发经验<br />■项目名称：博客系统<br />  开发周期：6周 <br />  开发环境：JDK1.6/ Tomcat5.5/MySQL / MyEclipse/windowsXP <br />  使用技术：JSP+ Servlet +JavaScript+CSS<br />  负责模块：独立开发<br />■项目名称：office操作考试系统（邑大版）<br />  开发周期：8周<br />  开发环境：JDK1.6/ Tomcat5.5/Sql Server2000 / MyEclipse/ DreamWeaver/windowsXP <br />  使用技术：Struts+ Hibernate +JavaScript + CSS + JSP<br />  负责模块：独立开发<br />■项目名称：鸿捷信息系统（实习项目）<br />  开发周期：持续开发中<br />  开发环境：JDK1.6/ Tomcat5.5/Sql Server2000 / MyEclipse/ DreamWeaver/windowsXP <br />  使用技术：Struts+ Ajax + JavaScript + CSS + JSP<br />  负责模块：国外采购项目模块
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237779" style="color:red;">已有 <strong>20</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 05 Sep 2008 21:24:04 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237779</link>
        <guid>http://www.javaeye.com/topic/237779</guid>
      </item>
      <item>
        <title>在rails中优雅的进行模型校验</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuqiang.javaeye.com">liuqiang</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238160" style="color:red;">http://www.javaeye.com/topic/238160</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在用rails进行开发时，最常见的操作的是前台提交表单，后台保存相关的模型对象，对于一个复杂的表单，可能需要保存的模型对象不止一个，但这些对象在保存之前都是要经过合法性检验的，请看如下的场景，一个表单提交了订单信息、用户基本资料、用户所在地，那么后台需要对用户、订单、地点这3个对象进行校验并做相关处理，通常会用到error_messages_for做错误信息输出， 具体有以下3种做法:</p>
<p>&nbsp;</p>
<p>1 </p>
<p><code class="ruby"><span class="keywords">
<pre name="code" class="ruby">if @user.save &amp;&amp; @order.save &amp;&amp; @city.save
  #跳转到成功页面
  else
  #返回原来页面
end</pre>
<p>&nbsp;</p>
</span></code></p>
<p>&nbsp;&nbsp;&nbsp;这里存在的问题是，加入前两个模型合法性校验通过，但最后一个模型出现问题，那么原本3个对象都不该被保存，但前两个对象已经被保存，所以存在严重的脏数据问题</p>
<p>&nbsp;</p>
<p>2 </p>
<p>&nbsp;</p>
<pre name="code" class="ruby">if @user.valid? &amp;&amp; @order.valid? &amp;&amp; @city.valid?
  @user.save
  @order.save
  @city.save
  #跳转到成功页面
else
  #返回原页面
end</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这个方法倒是不存在脏数据问题，但是如果第一个模型对象出现合法性问题，那么程序将停止之后的合法性校验，所以显示返回页面的错误提示将不完整，严重影响了系统的用户体验。</p>
<p>&nbsp;</p>
<p>3 利用事务，基于第一种方法之上，如果任何一个模型合法性出现合法性问题，将采取数据库回滚操作，个人认为这种方法不仅复杂，性能也不高。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>那么以下有个比较简洁的方法解决这样的问题</p>
<p>&nbsp;</p>
<pre name="code" class="ruby">  def new
    @users = User.new
    @city = City.new
    @order = Order.new
  end
  
  def create
    @city = City.new params[:city]
    
    @user = User.new params[:user]
    @user.city = @city
    
    @order = Order.new params[:order]
    @order.user = @user

    unless [@user, @city, @order].map(&amp;:valid?).include?(false)
      @user.save
      @city.save
      @order.save
      redirect_to "/main/new"
    else
      render :action =&gt; "new"
    end
  end</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;关键在于这句：</p>
<p>&nbsp;</p>
<pre><code class="ruby"><span class="keywords"><span style="font-family: Verdana;"> unless [@user, @city, @order].map(&amp;:valid?).include?(false)</span></span></code> </pre>
<p>&nbsp;</p>
<p>在保存之前就遍历各个模型，并运行valid?方法，之后判断结果列表中是否包括false，以此作为判断合法性的依据，并且不会造成脏数据的问题。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>相关的view如下所示，关于错误汉化这里不做讨论</p>
<p>&nbsp;</p>
<pre name="code" class="ruby">&lt;%= error_messages_for :user %&gt; 
&lt;%= error_messages_for :city %&gt; 
&lt;%= error_messages_for :order %&gt; 

&lt;% form_for :user, :url =&gt; "/main/create" do |f| %&gt; 
  &lt;fieldset&gt;     
    &lt;legend&gt;用户信息&lt;/legend&gt;     
    &lt;ol&gt;       
      &lt;li&gt;        
        &lt;%= f.label :name %&gt;        
        &lt;%= f.text_field :name %&gt;      
      &lt;/li&gt;     
    &lt;/ol&gt;  
  &lt;/fieldset&gt;   
  &lt;% fields_for :city do |city| %&gt;     
    &lt;fieldset&gt;       
      &lt;legend&gt;地点信息&lt;/legend&gt;      
      &lt;ol&gt;     
        &lt;li&gt;      
          &lt;%= city.label :code %&gt;   
          &lt;%= city.text_field :code %&gt;       
        &lt;/li&gt;       
      &lt;/ol&gt;     
    &lt;/fieldset&gt;   
  &lt;% end %&gt; 

  &lt;% fields_for :order do |order| %&gt;  
    &lt;fieldset&gt;       
      &lt;legend&gt;订单信息&lt;/legend&gt;     
      &lt;ol&gt;      
        &lt;li&gt;           
          &lt;%= order.label :price %&gt;          
          &lt;%= order.text_field :price %&gt;        
        &lt;/li&gt;    
      &lt;/ol&gt;     
    &lt;/fieldset&gt;
  &lt;% end %&gt;
  &lt;%= f.submit '提交' %&gt; 
&lt;% end %&gt;


</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238160" style="color:red;">已有 <strong>16</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 20:53:11 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238160</link>
        <guid>http://www.javaeye.com/topic/238160</guid>
      </item>
      <item>
        <title>一个非常奇怪的js和css加载问题</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://ferreousbox.javaeye.com">ferreousbox</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238128" style="color:red;">http://www.javaeye.com/topic/238128</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp; 今天在弄以前的框架的时候发现一个非常奇怪的js和css的加载问题，平常我们一般写js和css的load脚本如下：</p>
<p>&nbsp;</p>
<p><span style="color: #ff0000;">&lt;script language="javascript" src="/js/test.js"&gt;&lt;/script&gt;</span></p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp; 这样的加载是没有问题，<strong><span style="color: #990000;">但是如果将src改为：//js/test.js后就出现无法加载的问题了</span></strong>！我目前在本机的IE和FF下都测试过，都存在这样的问题，不知道是规范如此，还是本机的测试环境有问题？不解&hellip;&hellip;</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238128" style="color:red;">已有 <strong>1</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 17:49:32 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238128</link>
        <guid>http://www.javaeye.com/topic/238128</guid>
      </item>
      <item>
        <title>互联网创业与软件开发</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://liuqiang.javaeye.com">liuqiang</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237211" style="color:red;">http://www.javaeye.com/topic/237211</a>&nbsp;
          发表时间: 2008年09月04日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p style="text-indent: 24pt; mso-char-indent-count: 2.0;"><span style="font-size: small;"><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">最近与一位创业公司的朋友私下交流了一些项目管理和软件开发的心得，是互联网创业型公司，通过几次的交流，加深了我对互联网创业的一些感悟，本来不太想拿到桌面上说，但实在忍不住，还是想拿出来和希望创业的朋友讨论下。</span></span></span></p>
<p style="text-indent: 24pt; mso-char-indent-count: 2.0;"><span style="font-size: small;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">那么我对互联网公司的比较感兴趣的地方主要体现在软件质量和技术管理方面，以下</span></span><span style="color: #000000; font-family: Verdana;">2</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">点可以作为讨论的提纲：</span></span></span></p>
<p><span style="font-size: small;"><span style="color: #000000; font-family: Verdana;">&nbsp;&nbsp;&nbsp;&nbsp; 1 </span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">软件质量，尽管质量是我们嘴边经常挂念的一个词，但不少创业型公司的投机心理太重，在与这些负责人的交流中发现，谈论的更多的是新想法、新概念，有非常重的商业气息，当然这没什么不好，但我看了他们的一些产品后发现，他们所做的产品用户体验非常糟糕，就拿界面来说，非常的粗糙，由于有家公司做的产品和易趣类似，我特意打开</span></span><span style="color: #000000; font-family: Verdana;">2</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">个窗口对比一下，总觉得易趣的看起来比较舒服，他们整体布局倒模仿易趣倒挺像，但问题就体现在细节上，图片失真严重、字体风格不一致、细节处理的不到位。好了，那就凑合着看吧，发现该产品的功能非常的多，但让人郁闷的是，很多功能是有问题的，比如明明提示我系统给偶发了个邮件，但就是找不到，有时候提交表单是可以的，有时候见到一堆</span></span><span style="color: #000000; font-family: Verdana;">java</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">异常错误。所以我觉得这就是典型的追求功能的庞大而导致质量的缩水。</span></span></span></p>
<p><span style="font-size: small;"><span style="color: #000000; font-family: Verdana;">&nbsp;&nbsp;&nbsp;&nbsp;<span style="mso-spacerun: yes;">&nbsp;</span></span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">其实自从豆瓣开始流行后，大家都意识到功能做的简洁原来是有好处的，有不少创业者声称自己要向豆瓣看齐，鄙视</span></span><span style="color: #000000; font-family: Verdana;">csdn</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">，坚决走简洁之路，但让我纳闷的是，很少有人真正的坚持下去，我有个同学</span></span><span style="color: #000000; font-family: Verdana;">06</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">年底曾在一家创业公司玩过</span></span><span style="color: #000000; font-family: Verdana;">python</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">，准备做一个很有趣的网站，叫做抱怨网，其实是蛮有创意的，不久前</span></span><span style="color: #000000; font-family: Verdana;">JE</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">不是有个哥们在四处发帖说我爱我家黑中介的事，其实本来这个网站就是干这个事的，专门揭不良企业底的，但做着做着，成了巨无霸，开始是把大众点评网的功能加进去，接着又开始融进赶集网的分类信息功能，最后有把智联招聘的招聘功能加上了，结局就是</span></span><span style="color: #000000; font-family: Verdana;">1</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">年不到，网站不出意料的死掉了，原因就是用户体验差，根本不感兴趣！最后我替他们老板做了下反思，其实说实话，我还是很理解创业人的心，看到好东西都想要，而且之前几年在互联网圈钱谁都眼红。另外，他们的功能尽管是抄袭别人的，但还是有一定的特色与盈利模式，并且各个功能分的也蛮清的。</span></span><span style="color: #000000; font-family: Verdana;"> </span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">所以我觉得失败的原因不能简单的归结为功能太多，而是质量，小公司也就那几号人，作为开发人员，面对这么多的需求，只有拼命的赶进度，丫还有时间考虑质量或者用户体验吗？所以没有一定的资本与一批强有力的管理和开发人员，切勿贪大求全，否则很可能就是在生产垃圾。其实质量这个东西从高的层面上说就是用户体验的好坏，</span></span><span style="color: #000000; font-family: Verdana;">bug</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">少不见得质量高，但用户体验差的东西绝对就是垃圾。</span></span></span></p>
<p><span style="font-size: small;"><span style="color: #000000; font-family: Verdana;">&nbsp;&nbsp; <span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp;</span></span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">最近市面上有个说法有个说法是</span></span><span style="color: #000000; font-family: Verdana;">30w</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">足以模仿个淘宝，我认为就是扯淡，误导了很多创业者，认为花点银子，雇几个人，就可以轻松抄袭淘宝了，咱先不说市场投资，只谈技术，表面上看淘宝，丫就是一个破网站，但背后的技术你看的见吗？稳定性、性能、维护、可扩展性，这些都和软件质量息息相关，直接影响着用户的满意度，你确定真的做到了吗？淘宝的架构师一年的薪水也</span></span><span style="color: #000000; font-family: Verdana;">30w</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">了。所以我觉得创业者要领悟毛泽东思想，采用各个击破的战术，在有限的资源下约束的自己产品的功能，做到小而美。</span></span></span></p>
<p style="text-indent: 24pt; mso-char-indent-count: 2.0;"><span style="font-size: small;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">这里举个正面的例子，有家位于芝加哥、名为</span></span><span style="color: #000000; font-family: Verdana;">37 Signals</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">的小公司，正是这种拥抱限制的方式之代表者。</span></span><span style="color: #000000; font-family: Verdana;">37 Signals</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">最初是一家网页设计资讯公司，后来为了满足自身需求而将业务扩展到软件开发领域。他们编写了一些用于项目管理的内部工具。为了和客户沟通，</span></span><span style="color: #000000; font-family: Verdana;"> </span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">就向客户开放了部分系统。公司创始人和总裁杰森</span></span><span style="color: #000000; font-family: Verdana;">&bull;</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">弗瑞德（</span></span><span style="color: #000000; font-family: Verdana;">Jason Fried</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">）解释说，在他们自己意识到之前，已经做出了一套基于网页的应用。又做了</span></span><span style="color: #000000; font-family: Verdana;">4</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">个月，他们把软件转换为称作</span></span><span style="color: #000000; font-family: Verdana;">Basecamp</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">的服务。</span></span><span style="color: #000000; font-family: Verdana;"> <span lang="EN-US">Basecamp</span></span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">发布于</span></span><span style="color: #000000; font-family: Verdana;">2004</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">年</span></span><span style="color: #000000; font-family: Verdana;">2</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">月，很快在类似</span></span><span style="color: #000000; font-family: Verdana;">Flickr</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">和</span></span><span style="color: #000000; font-family: Verdana;">Google</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">的</span></span><span style="color: #000000; font-family: Verdana;">Gmail</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">等新</span></span><span style="color: #000000; font-family: Verdana;">Web</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">富应用天堂中名列前茅。</span></span></span></p>
<p><span style="font-size: small;"><span style="color: #000000; font-family: Verdana;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Basecamp</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">只是这家公司花一年多时间投入少量程序员做出来的一系列值得注意的小而精的产品之一。</span></span><span style="color: #000000; font-family: Verdana;">Basecamp</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">之后是</span></span><span style="color: #000000; font-family: Verdana;">Ta-da List</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">，用于保存和共享待办事项（及类似事项）列表。几个月后推出了</span></span><span style="color: #000000; font-family: Verdana;">Backpack</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">，它允许用户保存和共享便签及文件。每种产品都可靠并易于使用，而</span></span><span style="color: #000000; font-family: Verdana;"> </span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">且都是精心设计的。每种产品通常也都只包括少量新特性。例如，</span></span><span style="color: #000000; font-family: Verdana;">Basecamp</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">就有一些精巧的电子邮件功能：和其他服务和程序一样，也可以设置邮件到达提醒</span></span><span style="color: #000000; font-family: Verdana;">&mdash;&mdash;</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">还可以从另外的计算机或手机等移动设备向</span></span><span style="color: #000000; font-family: Verdana;">Backpack</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">网页发送邮件，邮件文本就会在页面上显示出来。</span></span></span></p>
<p><span style="color: #000000; font-family: Verdana;"><span style="font-size: small;">&nbsp;</span></span></p>
<p><span style="font-size: small;"><span style="color: #000000; font-family: Verdana;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2 </span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">技术管理，你会发现很多公司的负责人不是很懂技术，但却是负责技术的，丫今天听到</span></span><span style="color: #000000; font-family: Verdana;">SOA</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">是个好东西，号令纷纷</span></span><span style="color: #000000; font-family: Verdana;">SOA</span><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;"><span style="font-family: 宋体;">，反正大家都不理解这个含糊不清的东西，做呗，看谁能忽悠的过谁，一般来讲，创业型公司为了节约成本，不会预留专门的</span></span><span style="color: #000000; font-family: Verdana;">QA</span><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">，有专门的测试人员就不错了，所以缺乏一个质量保证的环节，遇到问题怎么办？谁做的谁改，改成什么样没人关心，只要负责人看到问题解决了就可以了，但，我想问的是，不良代码背后的隐患你知道吗？结果就是你咬牙给开发人员开工资，开发人员假装帮你实现梦想，或者说造就一批划水的人。其实很多东西不是钱的问题，也不要以为多开点薪水就可以留住人心。另外我觉得很多技术负责人喜欢把东西模糊化，比如把软件即服务的理念挂在嘴边，但做起来是另一码子事，我觉得作为一个技术负责人自己就要身先士卒，至少在创业公司是这样，这样才更有说服力，遇到问题自己应当第一个冲上去，拿出具体的解决方案，对代码应当做到精细管理，做到心中有数。说到底，创业公司得有一个技术核心，一个真正能实现你的想法的人，一个可以让大家凝聚起来的人，不至于让大家划水的人。</span></span></span></p>
<p><span style="color: #000000; font-family: Verdana;"><span style="font-size: small;">&nbsp;</span></span></p>
<p><span style="font-size: small;"><span style="font-family: 宋体;"><span style="color: #000000; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana;">好了，先说那么多，希望各位准备创业的同仁能真正的树立精品意识，打造精品，实现梦想</span></span></span></p>
<p><span style="color: #000000; font-family: Verdana;"><span style="font-size: small;">&nbsp;</span></span></p>
<p><span style="color: #000000; font-family: Verdana;"><span style="font-size: small;">&nbsp;</span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt;"><span lang="EN-US" style="font-size: 12pt;"><span style="font-family: Times New Roman;">&nbsp;</span></span></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237211" style="color:red;">已有 <strong>26</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 04 Sep 2008 22:57:54 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237211</link>
        <guid>http://www.javaeye.com/topic/237211</guid>
      </item>
      <item>
        <title>IT开发人员职业现状</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://zcm7512.javaeye.com">zcm7512</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/236352" style="color:red;">http://www.javaeye.com/topic/236352</a>&nbsp;
          发表时间: 2008年09月03日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          你好！<br />我老婆的毕业论文《IT研发人员职业现状的研究》的问卷调查，<br />请同行们帮忙填一下。谢谢啊！！<img src="/images/smiles/icon_smile.gif"/><br /><br /><a href="http://www.psyabc.cn" target="_blank">IT研发人员-职业问卷</a><br /><br /><img src="/images/smiles/icon_arrow.gif"/><img src="/images/smiles/icon_arrow.gif"/>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/236352" style="color:red;">已有 <strong>43</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 03 Sep 2008 23:20:26 +0800</pubDate>
        <link>http://www.javaeye.com/topic/236352</link>
        <guid>http://www.javaeye.com/topic/236352</guid>
      </item>
      <item>
        <title>快要找工作了，突然觉得很没底</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://jjz.javaeye.com">姜太公</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/236346" style="color:red;">http://www.javaeye.com/topic/236346</a>&nbsp;
          发表时间: 2008年09月03日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          以前总觉得自己的水平还凑合，至少和周围其他人相比还凑合。终于到了要找工作的时候，这才发现，原来我没有能拿得出手的东西，或者说，我觉得有些东西我不知道如何在简历上表达出来。先晒晒简历吧，这是用JE的简历功能直接生成的(请BS别人晒简历的达人们别BS的太厉害)。<br /><br />姓名：姜继忠<br />性别：男<br />出生年月：87年10月<br />教育程度：本科<br /><br /><strong>自 我 评 价</strong><br />熟悉java，j2ee和常用java开源框架。<br />熟悉OO思想，设计模式，<strong>注重所写代码的可读性，可维护性。</strong><br />具有<strong>较好的算法功底和计算机基础知识</strong>。<br />有一定的项目设计和开发经验。<strong>英语能力较好</strong>，工作认真，责任心强。<br /><br />爱好技术，痴迷编程，立志做一名好的程序员。<br />待人诚恳，注重团队协作。<br /><br /><strong>工 作 经 验</strong><br />06年7月——08年7月：合肥工业大学网络中心。<br />职位：网站工作室成员。<br />负责网站开发维护和服务器维护。<br /><br />项目：新闻中心<br />项目描述：基本新闻系统的CRUD，支持二级分类和专题。支持通过RSS定时获取外部新闻。可定制需要静态化的页面。具有良好的用户体验。先后完成3个版本。<br />使用技术：struts+ibatis<br /><br />项目：网店<br />项目描述：基本网店功能。用户体验较好。<br />使用技术：spring+struts+hibernate<br /><br />项目：SnailFTP<br />项目描述：Swing GUI实现的FTP客户端，采用MVC模式，具有良好的设计。支持基本FTP功能。支持站点管理，反空闲等工具功能。<br /><br />项目：校园网短信保修平台<br />项目描述：使用短信方式管理网络故障保修的系统。提供数据查询、打印、分类统计和备份等功能。<br />本人负责短信收发处理。<br /><br /><strong>教 育 与 培 训 经 历</strong><br />05年9月——08年7月：合肥工业大学电子信息科学与技术专业。<br /><br /><strong>IT 技 能 与 语 言</strong><br />Java精通<br />EJB/J2EE良好<br />C/C++良好<br />JavaScript/AJAX良好<br />ruby/rails一般<br />数据库良好<br />开源框架Hibernate/Spring等良好<br />项目管理/敏捷开发/UML良好<br />操作系统Linux/Unix等良好<br />计算机硬件维护一般<br />英语良好<br />软件测试一般<br /><br />越看越觉得心里发虚。<br />但我总觉得有很多东西我想表达而没有表达出来，比如我对软件设计思想的认识和见解，对于J2EE系统架构的认识，对OOD的掌握都没有表达出来。上面的项目除了最后一个都是我自己完成的(两个web项目的美工不是我做的)，做的时候我想的最多的时如何设计的更优雅，更能适应变化。不过似乎很难在简历上表达出来，比如SnailFTP这个项目，我不能在简历上画一幅类图吧。另外，所做的东西不止这几个，比如曾做过一个在线读书的网站(jsp的，处女作)，用Lucene做的校园网搜索引擎，一股脑都写上去吗？<br /><br />说了这么多废话就是想问一句：如何能在简历上尽可能多的表达信息。
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/236346" style="color:red;">已有 <strong>15</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 03 Sep 2008 22:57:25 +0800</pubDate>
        <link>http://www.javaeye.com/topic/236346</link>
        <guid>http://www.javaeye.com/topic/236346</guid>
      </item>
      <item>
        <title>爽，谷歌Chrome，应该可以解决Extjs内存泄漏和速度慢的问题</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xlongbuilder.javaeye.com">xlongbuilder</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/236168" style="color:red;">http://www.javaeye.com/topic/236168</a>&nbsp;
          发表时间: 2008年09月03日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          一直在为速度和内存发愁，有了chrome 估计一切ok了<br />第一时间下载了谷歌的Chrome浏览器<br />测试发现内存基本在80m以内，速度也大幅度提高了<br />我们是用的全ext多为弹出窗口，但不是one page one application<br />因为是客户定制，因此可以给客户安装该浏览器<br /><br />测试后发现绝大多数都没有问题<br />只是window窗口，按Esc不能关闭了<br /><br />感谢google
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/236168" style="color:red;">已有 <strong>17</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 03 Sep 2008 15:19:30 +0800</pubDate>
        <link>http://www.javaeye.com/topic/236168</link>
        <guid>http://www.javaeye.com/topic/236168</guid>
      </item>
      <item>
        <title>[选译]ICE异步调用的两种方式</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://zsp.javaeye.com">zuroc</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237783" style="color:red;">http://www.javaeye.com/topic/237783</a>&nbsp;
          发表时间: 2008年09月05日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <span style="font-size: large"><br />目前正在研读ICE异步调用的章节,下面抢鲜分享一小段<br />http://www.zeroc.com/doc/Ice-3.3.0/manual/Async.html#22064<br /><br />此外ICE还有网格计算,和Map reduce有些仿佛.<br />http://www.zeroc.com/doc/Ice-3.3.0/manual/IceGrid.html#22064<br /><br />_______________________________________________________<br /> 29.2.1 Asynchronous Method Invocation<br />异步方法调用<br /><br />Asynchronous Method Invocation (AMI) is the term used to describe the<br />client-side support for the asynchronous programming model.<br /><br />AMI supports both oneway(不需要返回值) and twoway(需要返回值) requests, but<br />unlike their synchronous counterparts, AMI requests never block the<br />calling thread.<br /><br />When a client issues an AMI request, the Ice run time hands the<br />message off to the local transport buffer or, if the buffer is<br />currently full, queues the request for later delivery.<br /><br />当客户端发起一个异步方法调用(AMI)的请求,Ice运行环境将其从本地的传输缓存(如果缓存已经满了,放入队列,过一会再发)发出这个消息.<br /><br />The application can then continue its activities and, in the case of a<br />twoway invocation, is notified when the reply eventually arrives.<br /><br />程序可以干继续它的活.<br />如果是一个双向的调用(zsp注:可以理解为需要回调),当回应到达时,会发出一个通知.<br /><br />Notification occurs via a callback to an application-supplied<br />programming-language object1.<br /><br />下面还有服务器端异步分派任务<br /><br />29.2.2 Asynchronous Method Dispatch<br /><br />The number of simultaneous synchronous requests a server is capable of<br />supporting is determined by the server's concurrency model (see<br />Section 28.9). If all of the threads are busy dispatching long-running<br />operations, then no threads are available to process new requests and<br />therefore clients may experience an unacceptable lack of<br />responsiveness.<br /><br />Asynchronous Method Dispatch (AMD), the server-side equivalent of AMI,<br />addresses this scalability issue. Using AMD, a server can receive a<br />request but then suspend its processing in order to release the<br />dispatch thread as soon as possible.<br /><br />从广义的说,异步的任务分配(AMD)的服务器端的(AMI).<br />一个服务器可以接受一个请求,但推迟处理直到分配线程可用.<br /><br />When processing resumes and the results are available, the server<br />sends a response explicitly using a callback object provided by the<br />Ice run time.<br /><br />当进程继续,结果可用时.服务器产生一个回应,并回调Ice运行环境提供回调对象<br /><br />In practical terms, an AMD operation typically queues the request data<br />(i.e., the callback object and operation arguments) for later<br />processing by an application thread (or thread pool).<br /><br />在实际的项目中,AMD操作一般将request data存入队列(比如,需要回调的对象和参数),让应用的线程(或线程池)稍后处理.<br /><br />In this way, the server minimizes the use of dispatch threads and<br />becomes capable of efficiently supporting thousands of simultaneous<br />clients.<br /><br />这样,服务器就可以节省分配线程,所有可以高效同时支持上千个客户端.<br /><br />An alternate use case for AMD is an operation that requires further<br />processing after completing the client's request. In order to minimize<br />the client's delay, the operation returns the results while still in<br />the dispatch thread, and then continues using the dispatch thread for<br />additional work.<br /><br />另外一种AMD的用途是当客户请求结束后需要继续处理.为了最小客户端的时延,当操作还再分配的时候就立即返回,然后用分派线程去干其他的事情<br /><br />最后推荐以前的一篇ICE枪手文:&lt;&lt; ICE专题：反叛之冰 Internet Communications Engine  >><br />http://www.cnblogs.com/SGSoft/archive/2007/05/03/735218.html</span>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237783" style="color:red;">已有 <strong>2</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 05 Sep 2008 21:50:51 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237783</link>
        <guid>http://www.javaeye.com/topic/237783</guid>
      </item>
      <item>
        <title>给H2这样的内存数据实现类似于memcached这样缓存失效算法！</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://arden.javaeye.com">Arden</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238129" style="color:red;">http://www.javaeye.com/topic/238129</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          这段时间参考了memcached/h2等这样的缓存框架，可是发现很多时候他们各有各的优势，比如：用memcached实现<br /><br />session存储的话不能很好的实现遍历及在线用户统计，但是可以很好的实现session失效处理。而用h2的话可以很好<br /><br />的实现session遍历和在线用户统计，但是在处理session失效的话还要自己写个后台线程来专门扫描所有的元素看哪<br /><br />些session已经过期，这样很不方便。能不能有好的办法把两者结合起来，就是能否做在h2的基础上对指定的内存表加<br /><br />上类似于memcached的过期元素处理的缓存算法？
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238129" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 18:13:27 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238129</link>
        <guid>http://www.javaeye.com/topic/238129</guid>
      </item>
      <item>
        <title>{求职}11年求职</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://wolfsquare.javaeye.com">wolfsquare</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237732" style="color:red;">http://www.javaeye.com/topic/237732</a>&nbsp;
          发表时间: 2008年09月05日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          看到那么多人求职，俺也厚着脸皮来，简单说一下<br />1 8年java开发经验，擅长swing。<br />2 管理过中小型团队<br />3 目前在甲方做外包管理<br />俺现在觉得薪水太少了，年薪14万，看看能否有更好的机会，索要简历可以PM我
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237732" style="color:red;">已有 <strong>5</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 05 Sep 2008 17:39:37 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237732</link>
        <guid>http://www.javaeye.com/topic/237732</guid>
      </item>
      <item>
        <title>北京地区，发简历，找工作！</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://zhangxi123.javaeye.com">zhangxi123</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238107" style="color:red;">http://www.javaeye.com/topic/238107</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          求职意向：J2EE程序员<br />个 人 简 历<br /><br />个人信息:<br /><br />姓名： 张德晨		性别：	男		   年龄：22<br />工作经验:一年                      现住:北京海淀区<br />电话：15001122744     邮箱：zhang_xi2006@126.com<br /><br />IT技能:<br /><br />	精通基于MVC模式的jsp+servlet+javabean开发。<br />	精通Struts，熟悉 Hibernate，Spring架构。<br />	熟练使用JavaScript,Ajax(dwr) ,jQuery并能在程序中灵活运用；<br />	了解,Oracle ，精通SQLServer2000数据库,能对其进行维护；<br />	熟悉Tomcat服务器。<br />	能熟练使用div+css制作HTML网页<br />	项目及工作经验:<br /><br />青岛搜房网（基于MVC 框架的jsp+servlet）<br />主要功能包括：房屋的出租出售，求购求租，会员中心。<br />会员可以发布出租出售求购求租信息。还可以对自己发布的信息进行修改，删除。<br />后台；实现了可以对前台各个模块的管理<br />采用技术：JE22结合SQLServer数据库和Eclipse3.2<br />网上书店系统（个人开发周期：1月）<br />功能实现：主要有在线购物，购物车，当前公告，订单查询，用户中心 <br />采用技术:使用J2EE结合SQLServer2000数据库和Dreamweaver工具。<br />工作经验：	<br />上海优目网络传媒有限公司（完成优目教育信息网）；网址：http://www.uaim.cn/<br />青岛竣通（参于Haier 厨房家具管理系统）<br />工作时间 1年；<br />自我评价：<br /><br />勇于接受新事物新技能,接受挑战,具有良好的沟通能力和团队协作精神,自<br />学能力较强, ,有较强的动手实践能力，有良好的人际沟通能力，能较好的<br />处理同事之间的关系。<br /><br />PS:工资要求4500+  。
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238107" style="color:red;">已有 <strong>2</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 16:53:27 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238107</link>
        <guid>http://www.javaeye.com/topic/238107</guid>
      </item>
      <item>
        <title>不换工作不行了，大家帮看下简历~~</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://shitou251314.javaeye.com">shitou251314</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238009" style="color:red;">http://www.javaeye.com/topic/238009</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          不潜水了，发下简历，想换工作了...<br /><br />教育：<br />XX, 男, 24岁<br />南京林业大学毕业，信息管理与信息系统专业，本科<br />四级524<br /><br />技能：<br />精通Linux系统管理, 以及各种网络服务的安装维护和运行，有三年Linux操作系统使用经验，<br />精通Shell编程,<br />熟悉TCP/IP工作原理,<br />熟悉Linux集群架构, LVS,HA等技术,<br />熟练MySQL数据库的应用以及数据库复制，数据库HA等技术,<br />熟悉LAMP环境的架构和维护,<br />熟悉网络和系统监控，对基于Linux平台的服务器安全监控有深入的了解；<br /><br />精通Ruby, Ruby on Rails编程，<br />熟练CSS, JavaScript语言，<br />熟练PHP网络编程, <br />熟练Ajax应用, jQuery, Prototype, Scriptaculous Ajax框架的使用，<br />精通Photoshop；<br /><br />能够熟练阅读英文技术文档。<br /><br />个人能力：<br />1.对系统整体环境的架构有一定规划能力，很据不同应用需求设计不同的方案，并付诸实施。<br />2.对服务器数据数据备份有深入的理解，可根据不同情况指定和开发不通的备份策略<br />3.对WEB架构有比较深入的学习，可指定不通的服务器端策略实现WEB的页面缓存，内存缓存，以及缓存集群。<br />4.管理任务自动化，擅长编写shell，ruby脚本进行系统管理；将管理和开发相结合。<br />5.能与客户进行很好的沟通；能够从最通俗的层面解释解释复杂的技术原理。<br /><br />工作经历：<br />2006.7 – 2006.9 XX市医院机房 系统架构<br />构建LVS负载均衡，采用DR模式<br />构建Heartbeat高可用集群，实现业务持续不中断<br />制定集群环境监控方案<br />使用shell脚本实现LVS节点故障自动屏蔽<br /><br />2006.9 - 2007 南京林业大学网络中心 系统架构<br />负责Linux服务器的构建，设置和维护<br />LAMP web环境的搭建，虚拟主机的设置管理<br /><br />2007 - 2008 中国XX在线 系统管理员<br />负责内网和外网的服务器的架构和维护<br />开发shell脚本对各服务器日志进行监控<br />开发脚本对IDC机房中的服务器进行远程自动增量备份<br />开发脚本对系统文件完整性进行图形化监控和远程用户登录图形监控<br />相关技术，程序文档和手册的编写<br />对系统的架构，升级提供建议和方案<br /><br />2008 - now 江苏XX系统集成有限公司 技术经理<br />负责公司各项技术的实施制定方案和标准<br />与客户沟通挖掘客户需求，制定实施方案<br />构建公司机房，包括firewall(iptables), mail, web, samba<br />管理基于apache,lighttpd的虚拟主机，以及对web服务器的优化设置<br />开发脚本实现虚拟主机空间，数据库空间使用监控<br />使用php结合iptables、ulogd和mysql开发图像化网络数据监控<br /><br />项目<br />2006年<br />1.负责某市医院架构维护服务器；环境为LAMP，以及内网代理服务器squid的安装和维护。<br />2.独立开发校院教务管理系统，以及校社团网站，开发所采用的技术为PHP和MySQL，以及学校院服务器架构与维护，环境为LAMP。<br />3.参与南京XXXX网站的改版和升级项目。<br /><br />2007年：<br />1.在中国XX在线公司工作，对其对外服务器实施从windows到linux迁移项目，并进行安全加固和进行长期维护。<br />2.独立开发过一大型在线上商城系统，系统采用PHP, MySQL,和AjAX技术，。<br />2008年：<br />1.参与开发一大型SNS网站，采用Ruby on Rails，Ajax和MySQL技术<br />2.独立开发一微博客网站，技术采用Ruby on Rails，Ajax和MySQL技术，后端采用memcached和文件缓存技术。<br />3.为江苏XX公司架构内网服务器，包括基于Linux的iptables防火墙，WEB服务器(lighttpd), 邮件服务器(postfix+anti-virus+anti-spam)和文件服务器(samba)。<br />4.独立开发苏州XX公司网站。<br />5.参与开发江苏张家港XX公司对外网站和对内政务管理系统，技术采用Ruby on Rails和MySQL，并制作项目方案。<br /><br />自我评价：<br />本人有较强的自学能力，对Linux和开源技术有强烈的爱好和兴趣，热爱钻研新知识和新技术，不断克服困难。为人和善，有较强的沟通能力和语言表达能力，能与客户进行良好的沟通，注重团队的力量，曾带领过4人的团队共同学习和开发项目。立志为开源领域贡献自己的一份力量。<br /><br /><br />证书：<br />曾参加华为网络工程师(HCNE), 高级网络工程师(HCSE)培训,<br />拥有HCNE认证证书；<br /><br /><br />____________________________________________________________________________<br /><br />大家帮看下，简历写的那些地方还不足，，，还有大概俺能卖多少钱,<br />不要骂啊...谢谢
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238009" style="color:red;">已有 <strong>5</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 06 Sep 2008 21:26:51 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238009</link>
        <guid>http://www.javaeye.com/topic/238009</guid>
      </item>
      <item>
        <title>针对应届生，这几份工作你会要吗?</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://collonn.javaeye.com">collonn</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238018" style="color:red;">http://www.javaeye.com/topic/238018</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>本科院校的毕业生，在北京找2个月工作(致力于Java Web)了，面试了有20家，有高兴时，也有不高兴时，但有一个信念--实力+自信 = 我行</p>
<p><span style="color: #0000ff;">先说最终的结果</span>：一家网络工司，以系统集成为主，软件开发占公司业务的20%，今年下半年没有开发任务，只是一个CMS(php版)系统的对网站的管理，是不需要了解php知识的，有大量的空闲时间可以用来学习其它(我肯定学java web)，有什么考试通过公司还报销费用，工资在3100/月，有饭补，周一到周五，朝9晚5：30，如果求职者换成你，你会要这份工作吗(注意，可没有Coding Crazily的工作，只是网站的简单维护，而且是php的)？</p>
<p>本人对编程是疯狂的，08年开始致力于Java Web开发，很是想搞开发，就是疯狂的Coding，很简单，从基础做起，一步步提高，但两个月的求职生活，使我做出了一些让步，但我学习Java Web的热情是不会有一点的降温，每天公交车上都看书(坐在最后一排的)</p>
<p><span style="color: #0000ff;">第二份工作</span>：长信通工司，搞民生银行的升级工作，周一到周六，朝9晚9，2700/月(Java Web)</p>
<p><span style="color: #0000ff;">第三份工作</span>：中科软集团，要求能出差(才则一月，频率也高)，多半是需求分析，也有Coding工作，3000/月(Java Web)</p>
<p><span style="color: #0000ff;">第四份工作</span>：网上短信业务，离家远，单程1小时50分以上，可以考虑换地方租着住，2800/月(Java Web)</p>
<p>二(工作强度太大)，三(不想出差)，四(太远，又不想换地方住)，我都没去，求职者换成你，对于这四份工作，你会选择??? ???</p>
<p>也请大家对我现任的工作发表一下意见，对致力于在Java Web上有所成就的我</p>
<p><strong>来拍几砖吧--- ----</strong></p>
<p><strong>请大虾们 手下留情(@_@)</strong></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238018" style="color:red;">已有 <strong>6</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 06 Sep 2008 22:37:17 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238018</link>
        <guid>http://www.javaeye.com/topic/238018</guid>
      </item>
      <item>
        <title>blazeds简单例子</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://wangchao-17915566.javaeye.com">wangchao_17915566</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238127" style="color:red;">http://www.javaeye.com/topic/238127</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>已经在早前就听说了，Adobe公司的开源项目bazeds，可是当时做flash，用到了openamf，所以没有在意，但是现在觉得flex开发应用软件更具有杀伤力，所以准备研究flex。折腾了一周的时间想做个flex+java的helloworld例子，可是怎么都运行不出来，今天终于运行出来了。</p>
<p>总结，共有一下几种方法：</p>
<p>1，flex项目和web项目在同一项目。</p>
<p>2，flex项目和web项目为两个项目，进行交互。</p>
<p>个人认为，第二种比较好，这样可以完全将flex卡发和web业务开发分开。我这里也介绍第二种方法。</p>
<p>下面介绍我的hello小程序。</p>
<p>首先，开发环境</p>
<p>1,eclipse3.2+myeclipse5.1,不多说</p>
<p>2,eclipse的flex插件：FB3_WWEJ_Plugin.exe</p>
<p>3,必须得到blazeds.war，网上很多，可以进行下载(附件中配备)</p>
<p>下来，演示例子。</p>
<p>1，创建web项目：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 我的项目是hello</p>
<p>2，将blazeds.war放入tomcat中，启动，将blazeds.war项目中的，WebConten/Web-Inf复制</p>
<p>3，替换hello项目（用刚才复制的将此项目（hello）中的替换）</p>
<p>4，在web项目中建立java类</p>
<p>&nbsp;</p>
<pre name="code" class="java">package com.demo;

public class HelloWorld {

    public String sayHello(String name) {
        
        System.out.println(name);
        return"hello," + name;

    }

}</pre>
<p>&nbsp;5,在刚才复制的flex目录下打开remoting-config.xml,写入一下代码</p>
<pre name="code" class="xml">&lt;destination id="Hello"&gt;
       &lt;properties&gt;
           &lt;source&gt;com.demo.HelloWorld&lt;/source&gt;
       &lt;/properties&gt;
    &lt;/destination&gt;</pre>
<p>&nbsp;</p>
<p>6，发布此项目。</p>
<p>以上是web项目中的内容，下来看看flex项目</p>
<p>1，创建flex项目,flexTest，<span style="FONT-SIZE: 10.5pt"><span style="font-size: x-small;">application type 选择 web application, server technology 选择none，点next，output folder 中选择你上面建立web工程的目录(这里就是hello)，很多地方都说选择j2ee，这个是建立集成项目时候选择的。</span></span></p>
<p>2,写入mxml</p>
<pre name="code" class="html">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"&gt;
&lt;mx:Script &gt;      
&lt;![CDATA[ import mx.rpc.events.FaultEvent;    
   import mx.rpc.events.ResultEvent;    
      [Bindable]    
      private var helloResult:String;   
      
      private function sayHello():void {    
        ro.sayHello(inputText.text);    
        }    
        
       private function resultHandler(event:ResultEvent):void {    
          helloResult = event.result as String;    
       } 
       
   ]]&gt;   
&lt;/mx:Script &gt;
&lt;mx:RemoteObject id="ro" destination="Hello" result="resultHandler(event)" endpoint="/Hello/messagebroker/amf"/&gt;
&lt;mx:HBox x="0" y="10" width="100%"&gt;
   &lt;mx:Label text="Name:" id="nameLabel"/&gt;
   &lt;mx:TextInput id="inputText"/&gt;
   &lt;mx:Button label="say Hello" id="nameButton" click="sayHello()"/&gt;
   &lt;mx:Label id="resultLabel" text="{helloResult}"/&gt;
&lt;/mx:HBox&gt;

&lt;/mx:Application&gt;
</pre>
<p>&nbsp;</p>
<p>3,最重要的endpoint="/Hello/messagebroker/amf"/，这个一定要写对，别把我的文件复制过去，hello是你自己的web项目。</p>
<p>&nbsp;</p>
<p>这样就完成了，你启动tomcat，自己测试，这样做的好处是，flex保存后，web项目会自动同步flex内容。</p>
<p>讲得不清楚，我会带上一个项目的附件，提供下载。</p>
<p>&nbsp;</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238127" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 17:43:27 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238127</link>
        <guid>http://www.javaeye.com/topic/238127</guid>
      </item>
      <item>
        <title>监控mysql服务器状态</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://galaxystar.javaeye.com">galaxystar</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238112" style="color:red;">http://www.javaeye.com/topic/238112</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><span style="font-family: Arial; font-size: 13px;"><span style="font-weight: bold;"><span style="font-weight: normal;"><span id="nl-g" style="font-weight: bold;">监控mysql状态,有两种方式:</span>
<div id="nf3-" style="margin-top: 0px; margin-bottom: 0px;">1, 进入mysql服务器, 执行 show status 命令查看mysql当前运行的状态.</div>
<div id="nf3-0" style="margin-top: 0px; margin-bottom: 0px;">2, 使用 mysqlreport 工具, 更条理化地查看mysql状态, 基于 show status.</div>
<div id="bscp" style="margin-top: 0px; margin-bottom: 0px;"><br id="bscp0" /></div>
<div id="bscp1" style="margin-top: 0px; margin-bottom: 0px;">第一种方式,是mysql原生支持的.使用起来比较方便.<br id="co1w" />缺点是, 数据零散, 没有百分比和统计, 难理解, 可读性差.</div>
<div id="unpi" style="margin-top: 0px; margin-bottom: 0px;"><br id="unpi0" /></div>
<div id="unpi1" style="margin-top: 0px; margin-bottom: 0px;">第二种方式, 相对来说就好很多.本身就是个报表, 统计数据看起来比较舒服.</div>
<div id="n-i_" style="margin-top: 0px; margin-bottom: 0px;">这里也着重讨论mysqlreport.</div>
<div id="lmif" style="margin-top: 0px; margin-bottom: 0px;"><br id="lmif0" /></div>
<div id="n9gq" style="margin-top: 0px; margin-bottom: 0px;">一篇介绍 mysqlreport 工具使用相关的中文教程.</div>
<div id="w2oh" style="margin-top: 0px; margin-bottom: 0px;"><a href="http://www.phpv.net/html/1566.html" id="w2oh0" style="color: #551a8b;">http://www.phpv.net/html/1566.html</a></div>
<div id="w2oh1" style="margin-top: 0px; margin-bottom: 0px;"><br id="w2oh2" /></div>
<div id="w2oh3" style="margin-top: 0px; margin-bottom: 0px;"><span id="nl-g0" style="font-weight: bold;">mysqlreport实用功能:</span></div>
<div id="pz_y" style="margin-top: 0px; margin-bottom: 0px;">1, 通过 show status 格式的文件, 直接导出报表.</div>
<div id="boz9" style="margin-top: 0px; margin-bottom: 0px;">mysqlreport支持导入历史的 show status 数据文件来生成报表, 但前提是, 之前你已经用将 show status 打印出来的数据导出到文件里.</div>
<div id="vwmw2" style="margin-top: 0px; margin-bottom: 0px;">mysqlreport --user root --password&nbsp;<span id="he1r" style="color: #cc0000;">--infile&nbsp;filename</span></div>
<div id="wdc0" style="margin-top: 0px; margin-bottom: 0px;"><br id="wdc00" /></div>
<div id="xgu5" style="margin-top: 0px; margin-bottom: 0px;">2, 直接将报表输出到文件里.</div>
<div id="gq25" style="margin-top: 0px; margin-bottom: 0px;">mysqlreport --user root --password&nbsp;<span id="he1r0" style="color: #cc0000;">--outfile&nbsp;filename</span></div>
<div id="k8.x" style="margin-top: 0px; margin-bottom: 0px;"><span id="k8.x0" style="color: #cc0000;"><br id="k8.x1" /></span></div>
<div id="k8.x2" style="margin-top: 0px; margin-bottom: 0px;">3, 周期生成报表.</div>
<div id="gptr" style="margin-top: 0px; margin-bottom: 0px;">mysqlreport --user root --password&nbsp;<span id="fc54" style="color: #cc0000;">--relative 60 --report-count 100 -detach --outfile reportfile</span><br id="n4lp" />间隔60秒生成一次报表,并写入 reportfile 文件, 一共生成100次.&nbsp;<br id="t3gl" />文件里会列出报表的执行次序和时间.</div>
<div id="gzra" style="margin-top: 0px; margin-bottom: 0px;"><br id="gzra0" /></div>
<div id="gzra1" style="margin-top: 0px; margin-bottom: 0px;">4, 指定要输出哪些内容的报表.</div>
<div id="gzra2" style="margin-top: 0px; margin-bottom: 0px;">包括 dtq, dms, sas,&nbsp;<span id="i2:s" style="font-family: Tahoma; font-size: 12px;">qcache,&nbsp;tab, innodb 等.不过默认不设置, 是all.</span></div>
<div id="pcff" style="margin-top: 0px; margin-bottom: 0px;"><span id="pcff0" style="font-family: Tahoma; font-size: 12px;"><br id="pcff1" /></span></div>
<div id="pcff2" style="margin-top: 0px; margin-bottom: 0px;"><span id="a.x4" style="font-family: Tahoma; font-size: 12px;"><span id="a.x40" style="font-weight: bold;">报表内容的解释:</span></span></div>
<div id="m7is" style="margin-top: 0px; margin-bottom: 0px;"><span id="m7is0" style="font-family: Tahoma; font-size: 12px; font-weight: bold;"><span id="m7is1" style="font-weight: normal;">官方原文在这里:&nbsp;<span id="r5cg" style="font-family: Arial; font-size: 13px;"><a href="http://hackmysql.com/mysqlreportguide" id="r5cg0" style="color: #551a8b;">http://hackmysql.com/mysqlreportguide</a></span></span></span></div>
<div id="a.x41" style="margin-top: 0px; margin-bottom: 0px;"><span id="a.x42" style="font-family: Tahoma; font-size: 12px;">一篇台湾作者汉化的文章:&nbsp;<span id="rgfz" style="font-family: Arial; font-size: 13px;"><a href="http://forum.slime.com.tw/thread208416.html" id="rgfz0" style="color: #551a8b;">http://forum.slime.com.tw/thread208416.html</a></span></span></div>
<div id="q8pc" style="margin-top: 0px; margin-bottom: 0px;"><br id="q8pc0" /></div>
<div id="q8pc1" style="margin-top: 0px; margin-bottom: 0px;">下面是性能测试时, 我比较关注的几个参数:</div>
<div id="fo06" style="margin-top: 0px; margin-bottom: 0px;">uptime, 服务器负载.</div>
<div id="zkh0" style="margin-top: 0px; margin-bottom: 0px;"><br id="zkh00" /></div>
<div id="awuh" style="margin-top: 0px; margin-bottom: 0px;">read ratio, 从索引读取, 走磁盘的比率.如果这个大于 0.01, 说明,你的缓存设得还不够大.</div>
<div id="fckf" style="margin-top: 0px; margin-bottom: 0px;"><br id="zg8w" /></div>
<div id="v5e6" style="margin-top: 0px; margin-bottom: 0px;">Question -&gt; Slow, 这个值,表示sql执行时间超过预期(long_query_time系统变量可以设置)的次数.这个值最好是0, 如果大于0, 说明,sql需要进行优化.</div>
<div id="s7r8" style="margin-top: 0px; margin-bottom: 0px;"><br id="s7r80" /></div>
<div id="s7r81" style="margin-top: 0px; margin-bottom: 0px;">Query cache -&gt; hits, Inserts,&nbsp;Prunes, 这三个值,代表了走缓存的比率.&nbsp;</div>
<div id="hald" style="margin-top: 0px; margin-bottom: 0px;"><br id="hald0" /></div>
<div id="p53m" style="margin-top: 0px; margin-bottom: 0px;">Connections, 数据库连接占用情况,如果连接全部占满,将意味着,接下来要读取数据库的应用,会报 cannot get connection 异常.</div>
<div id="skst" style="margin-top: 0px; margin-bottom: 0px;"><br id="xosr" /></div>
<div id="izbx" style="margin-top: 0px; margin-bottom: 0px;">以上参数,不代表生产环境.</div>
<div id="i_9j" style="margin-top: 0px; margin-bottom: 0px;">生产环境, 还是需要靠监控中心或时刻关注全报表, 来保障mysql健康.</div>
</span></span>
</span></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238112" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 17:21:03 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238112</link>
        <guid>http://www.javaeye.com/topic/238112</guid>
      </item>
      <item>
        <title>FCKeditor-2.3中文化问题解决补充</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://songxh2.javaeye.com">songxh2</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237511" style="color:red;">http://www.javaeye.com/topic/237511</a>&nbsp;
          发表时间: 2008年09月05日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>为了整合FCKeditor到我的项目中去,对FCKeditor做了些研究.<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 我的web服务器是tomcat4.1.34,而最新FCKeditor-java-2.4的版本需要servlet2.4及jsp2.0以上支持,也就是说FCKeditor-java-2.4版本只适合tomcat5.0以上.后来发现有2.3的版本,下下来试了下.参考了网络上已有的一些文章<a href="http://gemini.javaeye.com/blog/135858"><span style="color: #006600;"><span class="hilite1"><span style="background-color: #ffff00;">FCKeditor</span></span><span class="hilite2"><span style="background-color: #55ff55;">中文</span></span>乱码及上传</span></a>&nbsp;然后自己整理,发现在上传文件及上传目录创建时出现中文问题.根据参考文章,涉及到中文目录问题时,需要修改tomcat的conf文件server.xml文件的url中文编码设置,我觉得这种办法虽然解决了FCKeditor中文问题,但会给软件其他部分带来编码问题,所以我想应该可以找出不修改server.xml配置文件的办法来.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; 经过测试,解决中文问题总体来讲需要修改一下FCKeditor-java-2.3的服务器端代码.修改如下:</p>
<p>&nbsp;</p>
<p>1.创建及浏览中文目录问题,修改ConnectorServlet.java文件:</p>
<p>&nbsp;</p>
<p>&nbsp; (原)</p>
<p>&nbsp;&nbsp;<span style="background-color: #c0c0c0;">String currentFolderStr=request.getParameter("CurrentFolder");</span>&nbsp; </p>
<p>&nbsp;</p>
<p>修改为</p>
<p>&nbsp;&nbsp;(新)</p>
<p><span style="background-color: #ffff99;">&nbsp;&nbsp;String currentFolderStr=null;</span></p>
<p><span style="background-color: #ffff99;">&nbsp;&nbsp;try {<br />&nbsp;&nbsp;&nbsp;currentFolderStr=new String(request.getParameter("CurrentFolder").getBytes("iso-8859-1"),"utf-8");<br />&nbsp;&nbsp;} catch (RuntimeException e) {}</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp; (原)</p>
<p>&nbsp;&nbsp;<span style="background-color: #ffff99;">String newFolderStr=request.getParameter("newFolderStr");</span>&nbsp; </p>
<p>&nbsp;</p>
<p>修改为</p>
<p>&nbsp;&nbsp;(新)</p>
<p><span style="background-color: #ffff99;">&nbsp;&nbsp;&nbsp;String newFolderStr=null;<br />&nbsp;&nbsp;&nbsp;try {<br />&nbsp;&nbsp;&nbsp;&nbsp;newFolderStr=new String(request.getParameter("NewFolderName").getBytes("iso-8859-1"),"utf-8");<br />&nbsp;&nbsp;&nbsp;} catch (RuntimeException e) {}</span></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237511" style="color:red;">已有 <strong>3</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 05 Sep 2008 12:49:11 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237511</link>
        <guid>http://www.javaeye.com/topic/237511</guid>
      </item>
      <item>
        <title>dwr2.0.5的Reverse Ajax问题</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://jerquer.javaeye.com">jerquer</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238103" style="color:red;">http://www.javaeye.com/topic/238103</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我想使用dwr的Reverse Ajax功能，并且下载了2.0.5版本。根据官方网站提供的文档，我知道了反转ajax有三种方法，其中Comet是我想用的。<br />现在的问题是，主动反转的模式中 Early Closing Mode 是否已经使用了 Jetty 的 Continuations 机制？<br />我可以在项目中直接使用dwr 2.0.5框架，然后在Tomcat上直接部署使用吗？需不需要 Jetty 的什么组件？
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238103" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 15:57:32 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238103</link>
        <guid>http://www.javaeye.com/topic/238103</guid>
      </item>
      <item>
        <title>[分享]选课系统 (EXT+hibernate+dwr)</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://wdp.javaeye.com">wdp</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/235894" style="color:red;">http://www.javaeye.com/topic/235894</a>&nbsp;
          发表时间: 2008年09月02日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>周未闲着无聊,做了一个很简单的选课系统,具体看demo吧<br /><br /><a href="http://rs.xmedu.gov.cn/elective/index.jsp" target="_blank">http://rs.xmedu.gov.cn/elective/index.jsp</a><br />管理员<br />U:admin<br />P:admin<br /><br />学生<br />U:wangdiping<br />P:123456<br /><br />程序下载地址<br /><a href="http://rs.xmedu.gov.cn/elective/elective.war" target="_blank">http://rs.xmedu.gov.cn/elective/elective.war</a><br />数据库在elective.war里的database</p>
<p>总感觉后台那样写很土,希望大家多提些建议</p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/235894" style="color:red;">已有 <strong>7</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 02 Sep 2008 20:57:20 +0800</pubDate>
        <link>http://www.javaeye.com/topic/235894</link>
        <guid>http://www.javaeye.com/topic/235894</guid>
      </item>
      <item>
        <title>javaMail 群发探讨</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://tou3921.javaeye.com">tou3921</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/236255" style="color:red;">http://www.javaeye.com/topic/236255</a>&nbsp;
          发表时间: 2008年09月03日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近才接触到邮件群发，用于包揽公司的海量客户。<br />现在遇到了几个问题:<br />1:邮件地址无效，并非格式无效，会导致错误之后的其他地址发送不成功。<br />2：smtp服务器有限制。<br /><br />第一个经过努力已经基本解决，可以捕获一个SendFailedException 异常，从异常类中获取然：e.getValidUnsentAddresses()，之后递归一下。<br /><br />第二个问题是存在的，并且我反复检查程序也没发现什么问题，每次密抄15个，20秒执行一次，根据服务提供的信息，应该不会受到smtp服务器限制。可还是发上14左右后就抛异常了。<br /><br /><pre name="code" class="java">javax.mail.MessagingException: 451 Out of recipients limit for this sender  .......</pre><br />有时抛socket 异常。<br /><br />有经验的分享下，一起探讨探讨。
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/236255" style="color:red;">已有 <strong>7</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 03 Sep 2008 17:20:37 +0800</pubDate>
        <link>http://www.javaeye.com/topic/236255</link>
        <guid>http://www.javaeye.com/topic/236255</guid>
      </item>
      <item>
        <title>[发布] GT-Grid 1.12 版 (080904发布) ★</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://fins.javaeye.com">fins</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/236025" style="color:red;">http://www.javaeye.com/topic/236025</a>&nbsp;
          发表时间: 2008年09月03日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          GT-Grid 1.12版 说明文档.<br /><br />这篇文档主要说明一些这个版本的变化(新增功能 新特性)<br /><br /><br />========================================<br /><br />首先来说一下关于列表的创建函数.<br /><br />在以前的示例中, 有这样的代码:<br /><pre name="code" class="javascript">
GT.Utils.onLoad( GT.Grid.render(mygrid) );
</pre><br /><br />它的意思是 在页面载入时 创建列表. 但是由于我设计上的失误,导致这个示例很容易误导大家.<br />让开发人员以为 GT.Grid.render(mygrid) 是用来创建列表的.<br /><br />其实不是, GT.Grid.render 的结果是返回一个函数 这个函数才是用来创建表格的.<br />这里比较绕,所以 我决定反对使用  GT.Grid.render函数.<br /><br /><br />如果要在页面载入时创建表格 请使用下面的代码<br /><pre name="code" class="javascript">
GT.Utils.onLoad( function(){
	mygrid.render();
} );
</pre><br /><br /><br /><br />如果想在其他时机 (如按某个按钮之后)创建 那么就在相应的时机调用<br />"mygrid.render();" 即可.<br /><br />另外再重申一下函数 GT.$grid("你的grid的id") ,这个函数是通过id取得列表对象.<br /><br /><br /><br />==============================<br /><br /><br /><br />新增属性:<br />grid.selectRowByCheck : false/true ;<br /><br />当列中有checkBox列时, 如果selectRowByCheck==true ,那么选中一行的效果将通过选择checkBox来实现.<br /><br /><br />新增方法<br />grid.getSelectedRecords()<br />取得所有选中行对应的记录.<br /><br /><br /><br />==============================<br /><br /><br />column.renderer 支持字符串模板<br />column.renderer 除了可以是一个函数之外, 还可以是一个字符串模板.例如 <br /><br />renderer : "@{age}岁"<br />那么这列数据 就会变为 "相应记录的age字段的值 + '岁'<br /><br /><pre name="code" class="javascript">

renderer : "@{age}岁"  
相当于

renderer : function(value,record){
	return record['age']+'岁';
}
</pre><br /><br /><br /><br />==============================<br /><br />exception回调函数 : <br />在执行load 和save 操作后, 处理服务端返回的异常的函数如下:<br /><br /><pre name="code" class="javascript">

// grid.loadFailure(responseJson)

	// 默认函数实现
	loadFailure : function(respD){
		alert(' LOAD Failed! '+'\n Exception : \n'+(respD[this.CONST.exception]||''));
	},

// grid.saveFailure(responseJson)

	// 默认函数实现
	saveFailure : function(respD){
				alert(' SAVE Failed! '+'\n Exception : \n'+(respD[this.CONST.exception]||''));
	}

</pre><br /><br />responseJson为服务端返回的json对象.<br /><br /><br />大家可以通过重写这两个方法 来实现自己的对异常信息的处理.<br /><br /><br /><br /><br />==============================<br /><br />工具栏上的简单按钮  现在支持 自定义.<br /><br />自定义的方法是,首先是定义按钮并注册 然后在toolbarContent里面设置即可.<br /><br />定义并注册按钮的方式如下:<br /><br /><pre name="code" class="javascript">

GT.ToolFactroy.register(
	'mybutton',  //按钮的标识 (请使用全小写字母)
	{
		// cls 为按钮的样式,目前只支持简单按钮,简单按钮的样式请这样写:
		// .mybutton-cls { 
		//		background : url(./mybutton.png) no-repeat center center; 
		// }
		cls : 'mybutton-cls',  
		// 按钮的提示信息
		toolTip : '自定义按钮:显示列表的id',
		
		// 点击按钮时 执行的动作
		action : function(event,grid) {  alert( 'The id of this grid is  '+grid.id)  }
	}
);
</pre><br /><br />按钮定义的形式 如上面代码中的注释所示, 就不再多说了.<br />GT.ToolFactroy.register( key , options)<br />这个函数 负责将 定义的按钮以 key的名字注册<br /><br /><br />然后就可以在 toolbarContent 中来指定在什么位置显示这个自定义按钮了.<br /><br /><br />==============================<br /><br /><br />以上的说明不是很详细, 建议大家结合 mydemo_for_1.12.html 这个示例来看一下.<br /><br /><br /><br />==============================<br /><br /><br />关于GT的更多介绍可以参加下面两个地址<br /><br />具体文档请参见下面地址:<br /><a href="http://fins.javaeye.com/blog/214290" target="_blank">列表组件 GT-Grid 最新版本 & 教程</a><br /><br />与服务端结合的例子(8月3日版本)<br /><a href="http://fins.javaeye.com/blog/219217" target="_blank">与服务端结合的例子</a><br />========================================
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/236025" style="color:red;">已有 <strong>42</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 03 Sep 2008 11:02:23 +0800</pubDate>
        <link>http://www.javaeye.com/topic/236025</link>
        <guid>http://www.javaeye.com/topic/236025</guid>
      </item>
      <item>
        <title>liferay5.0  如何实现用户默认登陆页有多个页面？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://jianren0518.javaeye.com">jianren0518</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/238091" style="color:red;">http://www.javaeye.com/topic/238091</a>&nbsp;
          发表时间: 2008年09月07日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          在portal.properties 里可以配置用户的登陆默认私有公有页面，但都只能配置一页，如何使新用户第一次登录就出现多个私有或公有页面？？
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/238091" style="color:red;">已有 <strong>0</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 07 Sep 2008 14:51:18 +0800</pubDate>
        <link>http://www.javaeye.com/topic/238091</link>
        <guid>http://www.javaeye.com/topic/238091</guid>
      </item>
      <item>
        <title>Google 动画菜单效果实现</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://meanboy.javaeye.com">meanboy</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237937" style="color:red;">http://www.javaeye.com/topic/237937</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 相信很多朋友第一次见到Google的动画导航条，都误以为是Flash吧？（这其中也包括了我o(&cap;_&cap;)o...）仅仅使用了一张背景图片就做出了这么漂亮的导航条，Google的创意总是让人兴奋不已。也许不久的将来，这个小技巧会在更多的网页中得到应用。</p>
<p><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 既然思路很简单，那就没有必要去翻Google的实现代码了。自己动手写一个吧。有必要提一下的是在写这个脚本的时候，遇到了一个IE6的BUG，Google搜索了一下，发现是IE6的背景图片加载机制有问题。IE6每次都优先从服务器重新请求背景图片，而不是从缓存里加载（汗啊&hellip;&hellip;）。解决方法如下：</p>
<p>&nbsp;</p>
<pre name="code" class="html">if(!!(window.attachEvent &amp;&amp; !window.opera)) {
	document.execCommand("BackgroundImageCache",false,true);
}
</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 脚本的代码是公开的，有兴趣的朋友可以下载查看一下效果，但是请遵守MIT协议<img src="../../../images/smiles/icon_smile.gif" alt="" /></p>
          <br/><br/>
          <span style="color:red;">
            <a href="http://lishali12345.javaeye.com/topic/237937" style="color:red;">已有 <strong>1</strong> 人发表回复，猛击-&gt;&gt;<strong>这里</strong>&lt;&lt;-参与讨论</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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 06 Sep 2008 17:52:12 +0800</pubDate>
        <link>http://www.javaeye.com/topic/237937</link>
        <guid>http://www.javaeye.com/topic/237937</guid>
      </item>
      <item>
        <title>jCT 在实战中洗礼,jCT要成为终极的javascript前台模板</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://achun.javaeye.com">achun</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/237848" style="color:red;">http://www.javaeye.com/topic/237848</a>&nbsp;
          发表时间: 2008年09月06日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><span style="font-size: small;"><strong>说在前面</strong>
</span>
:</p>
<p style="padding-left: 30px;">由于目前正在用jCT的第三版实作项目,在项目中发现,应用了<span style="color: #993300;"><strong>嵌入式javascript语法</strong>
</span>
模板思想后的jct,</p>
<p style="padding-left: 30px;"><span style="font-size: medium;"><strong><span style="color: #800000;">还可以更简单</span>
</strong>
</