<?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://yananay.javaeye.com">yananay</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214627" style="color:red;">http://www.javaeye.com/topic/214627</a>&nbsp;
          发表时间: 2008年07月14日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          提升网站性能的方式有很多，例如有效的使用缓存，生成静态页面等等。今天要说的就是生成静态页面的方式。<br /><br /><br />    什么叫生成静态页面呢？很简单，例如我们如果访问一个链接http://xyz.com/index.do，那么服务器就会解析这个请求，让特定的Action 去处理。这其中的缺点是显而易见的：如果访问的人，那么就会加重应用服务器的压力，最恶劣的后果就是应用服务器down 掉了。那么如何去避免呢？如果我们把对 index.do 请求后的结果保存成一个 html 文件，然后每次用户都去访问 http://xyz.com/index.html ，这样应用服务器的压力不就减少了？<br /><br /><br />    好吧，我已经学会如何生成静态页面了。打开我的浏览器，输入 http://xyz.com/index.do，然后再使用“另存为”功能保存一个html文件，然后上传到服务器，这样就ok了！<br /><br /><br />    我不能说这不是解决方案，但是我可以说这不是好的解决方案。我们需要的是自动的生成静态页面，当用户访问 http://xyz.com/index.do，会自动生成 index.html ，然后显示给用户。<br /><br /><span style="font-size: medium"><br />1、基础—URL Rewrite<br />2、基础—Servlet web.xml<br />3、谈谈方法<br />4、从一个简单的方式入手<br />5、请遵守访问方式？<br />6、为什么没有使用 URL Rewriter？<br />7、怎么刷新这些静态的html？<br /></span><br /><br /><br /><strong>具体内容请参考附件中的文件。希望能对大伙有所帮助。</strong>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214627#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 14 Jul 2008 16:50:41 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214627</link>
        <guid>http://www.javaeye.com/topic/214627</guid>
      </item>
      <item>
        <title>这样的薪金制度合理吗？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://coolmist.javaeye.com">coolmist</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216666" style="color:red;">http://www.javaeye.com/topic/216666</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>最近一直在找工作，本周收到一份offer，待遇一般但公司环境让我很喜欢。唯一感觉不爽的公司的薪金制度： 每月工资先发70%，其余的30%每个季度结束的时候按考核来发放。 <br />我只听说过一些公司在基本工资基础上有季度奖，项目奖，年终奖等等，但工资还没拿到就先扣了30%让人感觉挺不是滋味儿的。请问大家听说过这样的薪金制度吗？一般公司为了约束员工，都会用什么样的薪金制度来制约呢？</p>
<p>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216666#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</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, 20 Jul 2008 11:57:26 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216666</link>
        <guid>http://www.javaeye.com/topic/216666</guid>
      </item>
      <item>
        <title>海量数据统计的方法？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://quhuan1.javaeye.com">quhuan1</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215702" style="color:red;">http://www.javaeye.com/topic/215702</a>&nbsp;
          发表时间: 2008年07月17日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          举个例子，我现在有海量的数据（以词为例），我想统计每个词各自出现的次数，不知道用什么方法或结构速度最快。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215702#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 17 Jul 2008 11:19:35 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215702</link>
        <guid>http://www.javaeye.com/topic/215702</guid>
      </item>
      <item>
        <title>面向对象的概念是否被神化了？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://runthu.javaeye.com">runthu</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214489" style="color:red;">http://www.javaeye.com/topic/214489</a>&nbsp;
          发表时间: 2008年07月14日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          cuckoo framework 中的ajaxdatagrid<br /><br />&lt;cf:ajaxdatagrid sqlKey="getUserList" header="姓名,年龄,性别,成绩" /><br /><br />sqlKey指sql语句的代号，保存在xml文件中的。header是列头。<br /><br />这个tag很简单的数据库中的值给查询出来了。<br /><br />SQL能不能搞定业务？能！<br /><br />oracle提供很多功能，如存储过程，函数等等。<br /><br />我们可以利用存储过程和函数的作用，高效简单的实现业务逻辑。<br /><br />如果使用目前各式各样的持久层框架，就没有这么轻松了，劈里啪啦花几个小时写一堆所谓的面向对象的代码，最终的目的还是一个，把结果查询出来，说不定查询的速度还慢的要命。<br /><br />有时候感觉面向对象的概念被神化了，大师们在追捧，大拿们在鼓吹，老板们在赶时髦；其中的涉及的利益链很深，最倒霉的是程序员在疲于奔命的学习、加班。<br /><br />面向对象是一种想法，不知道程序员们有多少真正了解；老板问你会不会Hibernate，会就给高点工资，于是程序员在想Hibernate是必须要学的；大家应该都明白用简单的方法做好事情的道理，可到了代码开发，偏偏追求时髦，把简单的问题复杂化。<br /> <br />围绕关系数据库进行各式各样的业务应用，我们是否有更简单的方法？
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214489#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 14 Jul 2008 10:32:27 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214489</link>
        <guid>http://www.javaeye.com/topic/214489</guid>
      </item>
      <item>
        <title>DAO的一个讨论问题</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://wm920.javaeye.com">wm920</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215508" style="color:red;">http://www.javaeye.com/topic/215508</a>&nbsp;
          发表时间: 2008年07月16日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          总结：今天在对Action的业务类的方法实现时候，想了又想，为什么在一个Action里面写那么多实现方法对数据库的操作（select，update.....）而且每一个Action都要对应一个DAO的实现方法，每一个DAO的实现方法对对应的数据库的中唯一的一张表，为何不可把Action的对数据库的操作方法写在一个整合的DAO里面呢，在这个整合的DAO里面有的Action对数据库操作的各类的方法，而Action就做全面的数据的转发和JSP页面的跳转工作，当每次对JSP页面操作的时候，（select，update等）都会向整合的DAO执行操作，这个整合的DAO通过产生临时的ID字段负责的全程的对数据库的操作&lt;select，update等>,整合的DAO进行逻辑的判断，进行相关的业务操作，在向不同的DAO的转发，然后在通过不同的DAO对映的数据库表进行操作。请问有人想个这个方法么，就是多张表，每一张表对应的一个DAO的实现类，在通过一个整合DAO实现方法对每个DAO的实现方法的整合，也就是1：n的关系（dao对多个dao的整合）通过整合dao的进行判断执行相关的操作，假如是表关联的话，通过临时字段的ID号判断，要进行那个DAO的操作（表），这样从而减少了Action里面有很多的业务实现方法，对数据库而言，就只有一次性的操作。从而大大的提高数据库的性能效率，有人这样做过么·？ 请那个大人物指点下！谢谢
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215508#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 16 Jul 2008 17:49:55 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215508</link>
        <guid>http://www.javaeye.com/topic/215508</guid>
      </item>
      <item>
        <title>XML 基础之 XML 数据岛简介</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://zhaipuhong.javaeye.com">zhai puhong</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216713" style="color:red;">http://www.javaeye.com/topic/216713</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><em>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </em>自 Microsoft Internet Explorer 5.0&nbsp;起，Internet Explorer 有一个非标准特性称为 <em>XML 数据岛</em>，它允许使用非标准 HTML 标签 <code>&lt;xml&gt;</code> 在 HTML 文档中嵌入 XML。Mozilla 不支持 XML 数据岛，将其作为未知的 HTML 标签处理。所以，XML 数据岛只在 IE 浏览器中有效。现在的 web 应用客户端浏览器都要求支持多浏览器，这岂不是给我们出难题吗？ 幸好 IE 和 Mozilla 都支持 XML DOM，我们可以使用 JavaScript 结合&nbsp; XML DOM 来解析并显示 XML。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 什么是 <em>XML 数据岛</em>？ 数据岛就是被HTML页面引用或包含的XML数据，XML数据可以包含在HTML文件内，也可以包含在某外部文件内。就像 JavaScript 和 CSS 一样，你可以在 HTML 文挡中直接嵌入 XML 数据，也可以引用外部的 XML 数据。在把 XML 文档绑定到 HTML 文档中的一个 &lt;xml&gt; 标签。其id 属性为数据岛定义标识符，而其 src 属性指向 XML 文件。示例代码如下：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmldataisland.hmtl 文件</p>
<pre name="code" class="html">&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
	&lt;head&gt;
		&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312" /&gt;
	&lt;title&gt;xml data island&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
	&lt;xml id="employees"&gt; &lt;!-- 唯一 id --&gt;
		&lt;?xml version="1.0" encoding="utf-8" ?&gt;
		&lt;employees&gt;
			&lt;employee&gt;
				&lt;id&gt;1&lt;/id&gt;
				&lt;name&gt;zhaipuhong&lt;/name&gt;
				&lt;gender&gt;male&lt;/gender&gt;
				&lt;age&gt;28&lt;/age&gt;
			&lt;/employee&gt;
			&lt;employee&gt;
				&lt;id&gt;2&lt;/id&gt;
				&lt;name&gt;dingxia&lt;/name&gt;
				&lt;gender&gt;female&lt;/gender&gt;
				&lt;age&gt;25&lt;/age&gt;
			&lt;/employee&gt;
		&lt;/employees&gt;
	&lt;/xml&gt;
	
	
	&lt;xml id="majors" src="major.xml"&gt;&lt;/xml&gt;  &lt;!-- 唯一 id --&gt;
	
	&lt;table datasrc="#employees"&gt; &lt;!-- 请不要忘了符号 '#' --&gt;
		&lt;tr&gt;&lt;!--&lt;div&gt; 标签允许 datafld 属性引用要显示的 XML 元素--&gt;
			&lt;td&gt;&lt;div datafld="id"&gt;&lt;/div&gt;&lt;/td&gt;
			&lt;td&gt;&lt;div datafld="name"&gt;&lt;/div&gt;&lt;/td&gt;
			&lt;td&gt;&lt;div datafld="gender"&gt;&lt;/div&gt;&lt;/td&gt;
			&lt;td&gt;&lt;div datafld="age"&gt;&lt;/div&gt;&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt; 
	
	&lt;table datasrc="#majors"&gt; &lt;!-- 请不要忘了符号 '#' --&gt;
		&lt;tr&gt;&lt;!--&lt;span&gt; 标签允许 datafld 属性引用要显示的 XML 元素--&gt;
			&lt;td&gt;&lt;span datafld="name"&gt;&lt;/span&gt;&lt;/td&gt; 
			&lt;td&gt;&lt;span datafld="term"&gt;&lt;/span&gt;&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;
	
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; major.xml 文件</p>
<pre name="code" class="xml">&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;majors&gt;
	&lt;major&gt;
		&lt;name&gt;Information Technology&lt;/name&gt;
		&lt;term&gt;4 year&lt;/term&gt;
	&lt;/major&gt;
	&lt;major&gt;
		&lt;name&gt;mathimatics&lt;/name&gt;
		&lt;term&gt;4 year&lt;/term&gt;
	&lt;/major&gt;
&lt;/majors&gt;</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;table&gt; 标签的 datasrc 属性把 HTML 表格绑定到 XML 数据岛。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 运行结果如下：</p>
<pre name="code" class="html">1 zhaipuhong male 28 
2 dingxia female 25 
Information Technology 4 year 
mathimatics 4 year 
</pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 以上简单介绍了 IE 浏览器中使用&nbsp;<em>XML 数据岛</em> ，那么要跨浏览器使用&nbsp;<em>XML 数据岛 </em>则应该使用 XML DOM 解析器。它解析包含序列化 XML 文档的字符串并为解析后的 XML 生成文档。Mozilla 使用 <code>DOMParser</code> 类，它接受序列化字符串并用它创建 XML 文档。在 Internet Explorer 可用 ActiveX 实现同样的功能。下面简要学习一下。</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 微软的 XML 解析器内建于 Internet Explorer 5 以及更高的版本中，在 JavaScript 中创建并载入 xml 文件：</p>
<pre name="code" class="js">//创建一个空的微软 XML 文档对象
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";    //关闭异步加载
//解析器加载 XML 文档
xmlDoc.load("major.xml"); 
//若加载xml字符串而非XML文件,使用下面的语句
//xmlDoc.loadXML(xmlString);  //加载 xml 字符串（文本）,根据需要选用

//注意:loadXML() 方法用于加载字符串（文本），load() 用于加载文件
</pre>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在 Mozilla&nbsp;的&nbsp;Firefox 及其他浏览器中的 XML 解析器&nbsp;，示例如下：</p>
<pre name="code" class="js">//创建一个空的微软 XML 文档对象
var xmlDoc=document.implementation.createDocument("","",null);
xmlDoc.async="false";     //关闭异步加载

//加载 XML 文档
xmlDoc.load("major.xml");
  
//若加载xml字符串而非XML文件,使用下面的语句
var parser=new DOMParser();
var doc=parser.parseFromString(xmlString,"text/xml");</pre>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面给一个完整是浏览器兼容的示例：</p>
<pre name="code" class="html">&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt;
&lt;title&gt;浏览器兼容的 XML DOM 实例&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;

	&lt;script&gt;
	 	//一个浏览器兼容的实例
		var xmlDoc = null; 
		if(window.ActiveXObject){
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");  //Internet Explorer
		}else if(document.implementation.createDocument){
			xmlDoc = document.implementation.createDocument("","",null);   //Mozilla
		}
		
		xmlDoc.async=false;
        xmlDoc.load("major.xml");
		document.write(xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue);  		
	&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>&nbsp;</p>
<p>&nbsp; </p>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216713#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</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, 20 Jul 2008 17:59:36 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216713</link>
        <guid>http://www.javaeye.com/topic/216713</guid>
      </item>
      <item>
        <title>想询问下对日外包的工作</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://coreymylife.javaeye.com">coreymylife</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216699" style="color:red;">http://www.javaeye.com/topic/216699</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近在学习日语,不过在学习之前,先想来问问大牛们,<br />听说现在对日外包很火,我想问下待遇怎么样?如果学好日语,这方面的需求大不大<br />有没有前途,现在要这方面的人的公司多不多,主要在哪,薪筹怎么样,谢谢!
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216699#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</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, 20 Jul 2008 15:28:06 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216699</link>
        <guid>http://www.javaeye.com/topic/216699</guid>
      </item>
      <item>
        <title>仿造的acegi threadlocal</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xuliangyong.javaeye.com">xly_971223</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215723" style="color:red;">http://www.javaeye.com/topic/215723</a>&nbsp;
          发表时间: 2008年07月17日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          用过acegi的都知道acegi的用户登陆信息（用户id 角色）等放在threadLocal中<br />下面是自己土制的threadLocal 比acegi的简单很多，更容易明白它的原理<br />用过OpenSessionInView的就不用看了，原理完全一样<br />下面给出关键代码<br /><pre name="code" class="java">
//安全上下文，保存用户登陆数据
public class SecurityContext {
	public final static String SECURITY_CONTEXT_KEY = "cn.lottery.sale.security.securityContext";
	private Long userId;
	private String username;
	private List&lt;String> roles = new ArrayList&lt;String>();
}</pre><br /><pre name="code" class="java">LoginAction中的login方法
	public String login(){
		SecurityContext sc = new SecurityContext();
		sc.setUsername(username);
		getRequest().getSession().setAttribute(SecurityContext.SECURITY_CONTEXT_KEY, sc);
		return SUCCESS;
	}</pre><br /><br /><pre name="code" class="java">
//安全过滤器。绑定session中用户信息到threadLocal
public class SecurityFilter implements Filter {
	private final static Logger logger = LoggerFactory.getLogger(SecurityFilter.class);
	
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {
		
		HttpServletRequest req = (HttpServletRequest)request;
		HttpSession session = req.getSession();
		
		if(session != null){
			SecurityContext context = (SecurityContext)session.getAttribute(SecurityContext.SECURITY_CONTEXT_KEY);
			logger.debug("绑定用户信息到线程" + Thread.currentThread().getId());
			SecurityContextHolder.set(context);
		}
		try{
			chain.doFilter(request, response);
		}finally{
			logger.debug("删除绑定到当前线程的用户信息" + Thread.currentThread().getId());
			SecurityContextHolder.remove();
		}
		
	}
}</pre><br /><br /><pre name="code" class="java">
//逻辑类
public class LotteryManager {
	private final static Logger logger = LoggerFactory.getLogger(LotteryManager.class);
	private LotteryDAO lotteryDAO;
	
	@Transactional(readOnly = true)
	public List&lt;Lottery> findLotteryByName(String lotteryName){
		logger.debug( SecurityContextHolder.get().getUsername() ); //看这儿啦 获取用户名。省去传递参数哪么麻烦
		return lotteryDAO.findByProperty("shortName", lotteryName);
	}
	
}</pre>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215723#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 17 Jul 2008 11:39:24 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215723</link>
        <guid>http://www.javaeye.com/topic/215723</guid>
      </item>
      <item>
        <title>发布Ext中文文档：在线版与AIR打包绿色版alpha 0.1</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://sp42.javaeye.com">sp42</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216574" style="color:red;">http://www.javaeye.com/topic/216574</a>&nbsp;
          发表时间: 2008年07月19日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我们相信，开源如果没有良好的文档支持，创意再好，技术再先进的项目，也不会获得很大的成功。80后的中国人重理轻文，这种现象在软件行业也普遍存在。最直接的后果是，世界上很多很优秀的项目，由于缺乏良好的汉化文档支持，无人问津。本汉化文档的宗旨在于给ExtJS的中国用户多一些的文档支持，并且尽我们之能力提供相关咨询解答。<br /><br />关于ExtJS有不少争论，尤其是当把它和Dojo比较的时候，很多人会埋怨它加载的JS包文件太大。但正如C++之父 Bjarne Stroustrup 所说的，"世界上只有两种语言：一种是每个人都在抱怨的，一种是没有人用的。"埋怨也不全是坏事，至少有很多人在用，我们才会听到埋怨的声音。Dojo是个构建平台优秀的工具，尤其在全面要求Dhtml/Ajax开发，它异常强大。但是Ext关注的不仅仅是Ajax应用平台，它更是个HTML/CSS/JS为基础的最佳实践，除了构建UI元素，还能用以扩展自己的组件，以及复杂的排版布局。再者，当项目变得庞大的时候，遵循YUI/ExtJS（YUI/Ext一脉相承）的面向对象开发体系（OO Architecture）能帮你书写更清晰、可维护的代码。诚然，Ext的配置项略显复杂，按需加载也没有Dojo那么好，但在该领域没有出现更优秀的工具前，ExtJS还是您的首选。<br /><br />事实上Ext不仅仅是一个Ajax工具包，它更是一种先进的UI组件制作理念，其一是基于Java Swing的对象模型，只要你熟悉Swing，你可以节省很多时间，这一理念可以在Ext.Container/Layout中看到。其二是组件对象的统一模型，包括组件的创建、渲染、事件处理、状态管理和销毁这些框架Ext已经帮你定义好了，你只要稍作修改便能符合你的要求。<br /><br />如何尽量避免使用Ext可能遇到的问题，如何运用Ext的一些最佳实践，这是很多Ext用户最想知道的，在此，我们会提供力所能及的帮助。<br /><br />中国有大量的Ext用户，在更多人的努力下，我坚信这个队伍会不断壮大。<br /><br /><strong>预览：</strong> <a href="http://www.ajaxjs.com/docs/" target="_blank">http://www.ajaxjs.com/docs/</a><br /><strong>AIR版文档中心下载：</strong> <a href="http://www.ajaxjs.com/docs/Ext 2 API Documentation.zip" target="_blank">http://www.ajaxjs.com/docs/Ext 2 API Documentation.zip</a> ~3MB<br />要求：Adobe AIR虚拟机 v1.1或以上 <br />用法：直接打开2.1 API Documentation.exe<br /><br /><strong>完整任务进度表（包括了我们翻译小组的人员名单）：</strong><br /><a href="http://chineseext.googlecode.com/svn/trunk/list.htm" target="_blank"><img src="http://www.ajaxjs.com/docs/ad.gif" /></a><br /><a href="http://chineseext.googlecode.com/svn/trunk/list.htm" target="_blank">http://chineseext.googlecode.com/svn/trunk/list.htm</a>(取自SVN，需“另存为”后查看)<br /><br /><strong>log：</strong><br />1.此版本为公开测试版alpha 0.1 把我们当前已完成汉化的公开；<br />2.汉化工作持续进行中，有兴趣的朋友，不要犹豫了，<a href="http://jstang.5d6d.com/thread-90-1-2.html" target="_blank">加入我们翻译小组</a>；<br />3.版权协议为Creative Commons 署名-非商业性使用-禁止演绎 2.5<br /><a href="http://jstang.5d6d.com/thread-90-1-2.html" target="_blank"><img src="http://www.ajaxjs.com/docs/banner_3.gif" /></a>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216574#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 19 Jul 2008 21:03:47 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216574</link>
        <guid>http://www.javaeye.com/topic/216574</guid>
      </item>
      <item>
        <title>对象的串行化(Serialization)和反串行化(deserialization)</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xplq.javaeye.com">xplq</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216504" style="color:red;">http://www.javaeye.com/topic/216504</a>&nbsp;
          发表时间: 2008年07月19日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          串行化(serialization)是指将一个对象的当前状态转换成字节流(a stream of bytes)的过程，而反串行化(deserialization)则指串行化过程的逆过程，将字节流转换成一个对象，<span style="color: red">打回原形</span>。<br />一、串行化的意义：<br />1：解决Web应用程序的无状态弊端<br />一旦将某一对象串行化，得到的字节可以存储在文件、数据库，或内存中—— 只要是可以存储的任何地方。需要恢复对象时，仅仅只需从它存储的位置反串行化即可。对象固有的这种特性对于无状态的Web应用程序是非常重要的，因为它允许重要的状态信息可以在用户请求之间保留。<br />2：应用程序边界之间传递对象<br />串行化也允许对象在应用程序边界之间传递，编程人员可以将描述对象状态的字节流在网络上传递，并在另一端反串行化成一个匹配的对象。从本质上讲，串行化允许对象以“数值”的方式传递给另一个应用程序。<br />二：串行化对象<br />在java中串行化对象必须：<br />1、该对象的类必须实现Serializable接口<br />2、该对象的串行化成员必须是非静态成员变量，即不能保存任何的成员方法和静态的成员变量，而且串行化保存的只是变量的值，对于变量的任何修饰符，都不能保存。而对于某些类型的对象，其状态是瞬时的，这样的对象是无法保存其状态的，例如一个Thread对象，或一个FileInputStream对象，对于这些字段，我们必须用transient关键字标明 。<br /><span style="color: red">注：保存任何的成员方法和静态的成员变量没有任何的意义，因为，对象的类已经完整的保存了他们，如果再串行化他们还有什么意义呢？呵呵</span><br />3、要串行化一个对象，必须与一定的对象输入/输出流联系起来，通过对象输出流将对象状态保存下来，再通过对象输入流将对象状态恢复。 <br />三：具体实现<br />1、<span style="color: red">串行化的对象:Person类</span><br /><pre name="code" class="java">
import java.io.Serializable;
/*  
 * time:2008-07-19  
 * author:coke  
 */ 

/*
 *必须实现Serializable 
 */
public class Person implements Serializable {
	private static final long serialVersionUID = 1L;
	private int age; // will persist
	private String name; // will persist
	// transient 为Java保留字，告诉JVM以transient宣告的基本型态(primitive type)或物
	// 件(object)变量不要序列化，例如敏感性数据像是密码等。
	private transient String pwd; // will not persist
	public Person() {
	}

	public Person(int age, String name,String pwd) {
		this.age = age;
		this.name = name;
		this.pwd=pwd;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getPwd() {
		return pwd;
	}

	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
}
</pre><br />2、<span style="color: red">串行化和反串行化</span><br /><pre name="code" class="java">
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.File;
/*
 * time:2008-07-19
 * author:coke
 */
public class TestSerializable {
	private static File f = null;

	//串行化
	public static void serialization() {
		f = new File("D://t.m");
		try {
			if (f.exists())
				f.delete();
			f.createNewFile();

		} catch (IOException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		Person p = new Person(10, "xplq", "123456");
		try {
			ObjectOutputStream out = new ObjectOutputStream(
					new FileOutputStream(f));
			out.writeObject(p);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	//反串行化
	public static void deserialization() {
		if (!f.exists())
			return;
		try {
			ObjectInputStream input = new ObjectInputStream(
					new FileInputStream(f.getPath()));
			try {
				Person p = (Person) input.readObject();
				System.out.println(p.getName());
				System.out.println(p.getAge());
				System.out.println(p.getPwd());
			} catch (ClassNotFoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	//测试
	public static void main(String[] args) {
		TestSerializable.serialization();
		TestSerializable.deserialization();
	}

}
</pre><br />3.测试结果<br />xplq<br />10<br />null<br />因为pwd transient ,不能被串行化
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216504#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</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, 19 Jul 2008 15:05:04 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216504</link>
        <guid>http://www.javaeye.com/topic/216504</guid>
      </item>
      <item>
        <title>spring AOP能否从session取数据</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://eseking.javaeye.com">eseking</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216653" style="color:red;">http://www.javaeye.com/topic/216653</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          大家好，对于spring 我只会基本的应用，这几天碰到这个需求不知道自己的思路是否正确。<br />spring aop目前我只是用它的事务管理器而已，会跑个简单的AOP。现在做一个小的权限系统，比如我的切面是叫做<br />PermissionManager,  调用的是我的 ACLManager中的 hasPermission(int userID,String sn)这个方法来判断某个用户对某个模块是否有操作权限。在不改变原有代码的基础上，我试着拦截所有的ADD方法，通过这个permissionManager 来实现拦截，没有权限就把异常向上抛出。<br />     现在的问题是，我用某个用户登陆，我发现我的切面不能获取当前登陆用户的ID，也就是说，我不知道使用AOP的时候怎么跟WEB交互。一个service 类怎么去获取session 对象。查了点资料，还是没有什么头绪。但是我觉得这个需求应该很多人都碰到过吧。希望大家指点 。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216653#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 20 Jul 2008 09:49:52 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216653</link>
        <guid>http://www.javaeye.com/topic/216653</guid>
      </item>
      <item>
        <title>要开发一个产品,,,请问选用jdk1.4好呢,还是1.5呢?目前1.5..</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://monicanian.javaeye.com">monicanian</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214653" style="color:red;">http://www.javaeye.com/topic/214653</a>&nbsp;
          发表时间: 2008年07月14日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          要开发一个产品,,,请问选用jdk1.4好呢,还是1.5呢?目前1.5是不是在大部份的应用服务器里可用了?
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214653#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 14 Jul 2008 17:59:46 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214653</link>
        <guid>http://www.javaeye.com/topic/214653</guid>
      </item>
      <item>
        <title>提高javaReflecton的性能</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://pxb1988.javaeye.com">pxb1988</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216703" style="color:red;">http://www.javaeye.com/topic/216703</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我最近一段时间在研究java字节码,弄出来两个东西,<br />一个是ioc框架<br /><a href="http://code.google.com/p/pxbioc" target="_blank">http://code.google.com/p/pxbioc</a><br />另一个是今天要发的FastReflection<br /><a href="http://code.google.com/p/fast-reflection/" target="_blank">http://code.google.com/p/fast-reflection/</a><br /><br />假设我们有这样一个类<br /><pre name="code" class="java">
public class Test
{
   private int id;
   public int getId()
   {return id;}
   public void setId(int id)
   { this.id=id;}
}
</pre><br />我们现在要为一个构造一个Test类的实例,并且把他的id设置为一<br />用java Reflection API,我们可以这样<br /><pre name="code" class="java">
Class testClass=Test.class;
Constructor constructor=testClass.getConstructors()[0];
Method method=testClass.getMethod("setId",new Class[] { int.class });
Test test=constructor.newInstance();
method.invoke(test,1);
</pre><br />如果只构造一次那点时间可以忽略,但是如果构造100,000,000呢?<br />这个代价有点大了<br />现在我们有了FastReflection<br /><pre name="code" class="java">
FastReflect fastReflect = new FastReflect();
Class testClass=Test.class;
Constructor constructor=testClass.getConstructors()[0];
FastConstructor fConstructor=fastReflect.getFastConstructor(constructor);
Method method=testClass.getMethod("setId",new Class[] { int.class });
FastMethod fMethod=fastReflect.getFastMethod(method);
Test test=fConstructor.newInstance();
fMethod.invoke(test,1);
</pre><br />速度就快多了,[在我的另一个测试里面FastReflectionMethod所花的时间是JavaReflectionAPI的10%左右,见附件]<br /><br />为什么呢?<br />其实在FastReflection中我定义了一个接口<br /><pre name="code" class="java">
public interface FastMethod{
public Object invoke(Object object,Object ... args);
}
</pre><br />如果Test.setId()方法对应的一个FastMethod实现为<br /><pre name="code" class="java">
public class Test_setId_FastMethod implements FastMethod{
public Object invoke(Object object,Object ... args)
{
   ((Test)object).setId(args[0]);
   return null;
}
}
</pre><br />那我们只要构造一个 Test_setId_FastMethod 类的实例,<br />然后调用它的invoke方法就能绕过javaReflection而用直接代码调用Test.setId()<br />速度肯定能够提高<br /><br />至于如何得到这个 Test_setId_FastMethod 类我们有两种方法,<br />一种是生成一个Test_setId_FastMethod.java文件,然后调用javac编译,再加载,最后执行<br />另外一种是用字节码工具直接生成,跳过上一种方法的生成文件和编译部分,<br />因为编译要付出巨大的代价,我准备用第二种方法<br />字节码工具有很多javaassist,asm...<br />我选asm,asm的优点请大家到网上找<br />至于如何生成,因为代码太多了,我就不分析了,大家可以看FastReflect里的注释<br /><br />希望大家多多指教<br /><br />参考<br /><br />用代码生成取代反射<a href="http://www.ibm.com/developerworks/cn/java/j-dyn0610/" target="_blank">http://www.ibm.com/developerworks/cn/java/j-dyn0610/</a>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216703#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 20 Jul 2008 16:01:46 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216703</link>
        <guid>http://www.javaeye.com/topic/216703</guid>
      </item>
      <item>
        <title>Rails中如何更加优雅的处理文件上传</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://woody-420420.javaeye.com">woody_420420</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216582" style="color:red;">http://www.javaeye.com/topic/216582</a>&nbsp;
          发表时间: 2008年07月19日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>&nbsp; 通常，在rails中处理文件上传，我们会这么做，在view中生成相应html tag：</p>
<pre name="code" class="html">&lt;input name="my_uploaded_file" type="file"&gt;</pre>
<p>&nbsp; 然后，在controller中，我们可以通过params[:my_uploaded_file]得到上传文件，进行相应处理。<br />&nbsp; 假如，现在作为controller的开发人员，我不知道view开发人员将input的name设置成什么？那应该如何处理呢？可能这个例子有些极端，绝大部分时候不存在这个问题。那再假如，现在我们要利用rails实现一个api，该api的功能是实现文件上传，rails后台得到该文件，并进行处理。由于这是一个开放api，用户可能通过jsp，rails，php，甚至桌面程序等来访问我们的api，这个时候又该如何处理呢？（当然，你可以在api specification中定死，说，我的地盘我做主，你们要使用我的api上传文件，form-data的name必须是XXX！）<br />&nbsp; 在asp.net中倒是可以很简单的解决这个问题，我记得asp.net中的form提供了一个参数，开发人员可以直接访问该参数得到此form中所有上传的文件，而不必管name是什么。但是在rails中，似乎没有这一机制（如果是我疏忽，望知情同学告知！）。不过，现在稍加修改，rails也同样能象asp.net那样处理上传文件。<br />&nbsp; 首先，我先贴出解决方案，为方便起见，在environment.rb中加入如下代码：</p>
<pre name="code" class="ruby">module ActionController
  class AbstractRequest
    class &lt;&lt; self
      alias_method :_original_read_multipart_, :read_multipart
      
      def read_multipart(body, boundary, content_length, env)
        params = _original_read_multipart_(body, boundary, content_length, env)
        file_data = params.values.dup.flatten.select do |form_data| 
          form_data.respond_to?(:original_path) &amp;&amp; !form_data.original_path.blank?
        end
        params.merge!({"file_data[]" =&gt; file_data})
      end
      
      private :_original_read_multipart_, :read_multipart
    end
  end
end</pre>
&nbsp;
<p>&nbsp; 我先大致解释下这段代码：在view中的某个form中，当你加入{:multipart =&gt; true}参数，rails会调用AbstractRequest中的私有类方法read_multipart，得到form中所有的参数。所以，我的解决方案就是截获此方法，调用原始版本后，遍历form中的所有值，将所有上传的文件放到一个file_data中去，塞回params中。这样，在controller中，就可以通过params[:file_data]得到form中所有上传文件进行处理，而并不用理会input的name到底是什么。这样做，我们甚至可以处理这种情况：</p>
<pre name="code" class="html">&lt;input name="same_name" type="file"&gt;
&lt;input name="same_name" type="file"&gt;</pre>
&nbsp;
<p>&nbsp; 就算这两个input的名字相同，通过file_data，仍然可以得到两个文件。这样，controller得到上传文件的代码便独立了，和view没有任何关系，你爱咋写name都行。另外，这行代码有两个地方值得注意：</p>
<pre name="code" class="ruby">params.merge!({"file_data[]" =&gt; file_data})</pre>
<p>&nbsp; 1. 关于key，不能想当然的用:file_data[]。因为rails内部处理参数的时候，调用了key.include?，所以，使用Symbol必然出错。<br />&nbsp; 2. [] 是必须的，否则rails不能将所有的上传文件塞到一个数组中去，这样，在controller中，你将只能通过file_data得到其中一个文件。<br />&nbsp; 另外，上述代码是基于rails 2.0.2。加入你目前正在使用rails 1.*。则可以使用如下代码实现相同的功能：</p>
<pre name="code" class="ruby">class CGI #:nodoc:
  module QueryExtension
    
    alias_method :_original_read_multipart_, :read_multipart
    def read_multipart(boundary, content_length)
      params = _original_read_multipart_(boundary, content_length)
      file_data = params.values.dup.flatten.select do |form_data| 
        form_data.respond_to?(:original_path) &amp;&amp; !form_data.original_path.blank?
      end
      params.merge!({"file_data[]" =&gt; file_data})
    end

    private :_original_read_multipart_, :read_multipart
  end
end</pre>
&nbsp;
<p>&nbsp; 2008.7.19&nbsp; 22:22&nbsp; 星期六</p>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216582#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 19 Jul 2008 22:23:01 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216582</link>
        <guid>http://www.javaeye.com/topic/216582</guid>
      </item>
      <item>
        <title>硕士快毕业了,前途很迷茫.</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xs1064.javaeye.com">xs1064</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214385" style="color:red;">http://www.javaeye.com/topic/214385</a>&nbsp;
          发表时间: 2008年07月13日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <strong><span style="font-size: large">小弟在北京一个二流读的计算机研究生,2年半学制,下半年就可以找工作了,现在很迷茫.<br /><br />  在学校的研究方向是人工智能(不是自己想学,没有办法,被分到的这个导师就是搞这个的),天天就在实验室做理论研究,仿真,写论文.<br /><br />  快毕业了,找工作自己感觉什么都不会,什么项目都没有做过,编程语言比如C,JAVA都是了解,并不是很精通.看到招聘信息,都要求有项目经验的,但是我在研究生这2年也没有接触过这些东西,我该找什么样的工作好呢.<br /><br />  前途很迷茫............</span></strong>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214385#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 13 Jul 2008 20:26:53 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214385</link>
        <guid>http://www.javaeye.com/topic/214385</guid>
      </item>
      <item>
        <title>如何对没有任何项目经验的学生进行培训？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://for-cyan.javaeye.com">for_cyan</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216566" style="color:red;">http://www.javaeye.com/topic/216566</a>&nbsp;
          发表时间: 2008年07月19日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近要带一批学生做一个项目，B/S结构，用java平台进行开发，10几个人，几乎都没有任何基础，甚至连Java基础都不牢固，他们以前学的方向都不一样有的是美工，有的是动漫设计，只有2，3个是web方向，却是.NET的。<br />  问题是如何让他们在短期内能够进入角色能同步进行项目开发呢？目前技术选型采用struts1.3+spring2.0+hibernate3.0结构，前台可能采用ext，和prototype。估计javascript他们是更不了解<br />这种情况下要如何进行培训呢，而且培训的周期很短，只有一周。<br />  唉，头都大了。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216566#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 19 Jul 2008 19:41:01 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216566</link>
        <guid>http://www.javaeye.com/topic/216566</guid>
      </item>
      <item>
        <title>面试遇到问你sql优化问题</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://longbiezai.javaeye.com">longbiezai</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215083" style="color:red;">http://www.javaeye.com/topic/215083</a>&nbsp;
          发表时间: 2008年07月15日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我感觉每次面试都要问我sql优化啊 设计数据库啊 什么的。<br /> <br /> 我一个小小java工程师哪能懂那么多啊。。我承认我很菜喷我。。。<br /><br /> 大虾啊。能否将你认为OK的答案。。或者能争取到高薪的答案公布于世啊！<br /><br /> 呵呵。偶也好沾沾光<img src="/images/smiles/icon_redface.gif"/><br /><br /> （就当你自己是面试官 自问自答 ）
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215083#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 15 Jul 2008 18:04:40 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215083</link>
        <guid>http://www.javaeye.com/topic/215083</guid>
      </item>
      <item>
        <title>mootools 1.2 参考文档 中文版翻译完成</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://zarknight.javaeye.com">zarknight</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216675" style="color:red;">http://www.javaeye.com/topic/216675</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>参考文档翻译成中文, 虽然觉得不是非常必要, 但是还是能帮助不少人减少想学习和使用mootools的语言和心理障碍.</p>
<p>&nbsp;</p>
<p>欢迎大家积极勘误或提供更加详实的示例代码, 在后续的版本中将修改/加入进去.</p>
<p>&nbsp;</p>
<p>本文档的google code project地址: http://code.google.com/p/mootools-doc-cn/</p>
<p>&nbsp;</p>
<p>以后的最新版可以去那里下载:)</p>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216675#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</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, 20 Jul 2008 13:34:24 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216675</link>
        <guid>http://www.javaeye.com/topic/216675</guid>
      </item>
      <item>
        <title>怎样才能提高在公司的工资水平</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://guoshiguan.javaeye.com">guoshiguan</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216054" style="color:red;">http://www.javaeye.com/topic/216054</a>&nbsp;
          发表时间: 2008年07月18日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          在公司工作，近五年工作经验了。<br />hibernate spring struts dwr 都能熟练的应用。<br />精通javascript,写过类似dojo的javascript脚本框架。<br />曾经精通 xslt,xml,xpath,jsf,sybase,css等，一两年没用了。<br />做了一两年的tl和web架构师。<br />我在厦门，可是工作是3.2K，我可以走，而且走后的工资绝对比这里高多了，可以，我喜欢这里的工作环境，喜欢这里的同事，所以我没有走。但有时觉得，这个工资水平实在有点对不起自己。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216054#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 18 Jul 2008 11:10:08 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216054</link>
        <guid>http://www.javaeye.com/topic/216054</guid>
      </item>
      <item>
        <title>iBatis自动生成的主键 (Oracle,Sql Server,Mysql)</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://snowolf.javaeye.com">snowolf</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215571" style="color:red;">http://www.javaeye.com/topic/215571</a>&nbsp;
          发表时间: 2008年07月16日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          iBatis的sqlMap配置文件的selectKey元素有个<strong>type</strong>属性，可以指定<strong>pre</strong>或者<strong>post</strong>表示前生成还是后生成。<br /><pre name="code" class="xml">
&lt;!-- Oracle SEQUENCE --> 
&lt;insert id="insertProduct-ORACLE" parameterClass="com.domain.Product"> 
&lt;selectKey resultClass="int" keyProperty="id" type="pre"> 
&lt;![CDATA[SELECT STOCKIDSEQUENCE.NEXTVAL AS ID FROM DUAL]]&gt; 
&lt;/selectKey> 
&lt;![CDATA[insert into PRODUCT (PRD_ID,PRD_DESCRIPTION) values #id#,#description#)]]&gt; 
&lt;/insert> 

&lt;!-- Microsoft SQL Server IDENTITY Column --> 
&lt;insert id="insertProduct-MS-SQL" parameterClass="com.domain.Product"> 
&lt;![CDATA[insert into PRODUCT (PRD_DESCRIPTION) values (#description#) ]]&gt; 
&lt;selectKey resultClass="int" keyProperty="id" type="post"> 
&lt;![CDATA[SELECT @@IDENTITY AS ID ]]&gt; &lt;!-- 该方法不安全 应当用SCOPE_IDENTITY() 但这个函数属于域函数，需要在一个语句块中执行。 -->
&lt;/selectKey> 
&lt;/insert>

&lt;!-- Microsoft SQL Server IDENTITY Column 改进--> 
&lt;insert id="insertProduct-MS-SQL" parameterClass="com.domain.Product"> 
&lt;selectKey resultClass="int" keyProperty="id"> 
&lt;![CDATA[insert into PRODUCT (PRD_DESCRIPTION) values (#description#)
    SELECT SCOPE_IDENTITY() AS ID ]]&gt;
&lt;/selectKey> 
&lt;/insert>

&lt;!-- Mysql Last Insert Id -->
&lt;insert id="insertProduct-Mysql" parameterClass="com.domain.Product">
&lt;![CDATA[insert into PRODUCT(PRD_DESCRIPTION) values (#description#)]]&gt; 
&lt;selectKey resultClass="int" keyProperty="id">
&lt;![CDATA[SELECT LAST_INSERT_ID() AS ID ]]&gt; &lt;!-- 该方法LAST_INSERT_ID()与数据库连接绑定，不会发生上述MS SQL Server的函数问题。 -->
&lt;/selectKey>
&lt;/insert>
</pre><br /><br />通过以上方式，可以最大程度上确保插入数据的时候获得当前自增主键。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215571#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 16 Jul 2008 22:10:19 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215571</link>
        <guid>http://www.javaeye.com/topic/215571</guid>
      </item>
      <item>
        <title>配置WebLogic Server 10集群(与apache没有关系)</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://runthu.javaeye.com">runthu</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216665" style="color:red;">http://www.javaeye.com/topic/216665</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          电信，银行一些个有钱单位，使用weblogic还是很多的。<br /><br /><br />用word编辑的，还是给个地址吧，一张张传图片太麻烦了。<br /><br /><a href="http://www.cuckoosoft.com/book/weblogic/wls10集群配置.htm" target="_blank">http://www.cuckoosoft.com/book/weblogic/wls10集群配置.htm</a>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216665#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 20 Jul 2008 11:54:49 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216665</link>
        <guid>http://www.javaeye.com/topic/216665</guid>
      </item>
      <item>
        <title>工作四年了,不知道工资该要多少</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://shashoutonghua.javaeye.com">gaofuqiang_2001</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215619" style="color:red;">http://www.javaeye.com/topic/215619</a>&nbsp;
          发表时间: 2008年07月17日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我已经工作四年了,第一年在国内小公司干了一年;第二年在一家日本公司工作了一年,做一个大型系统的维护工作;目前在中关村一家私人公司做java开发已经两年了,什么spring struts hibernate ajax 用的都不想用了,现在工资不知道该要多少?<br /><br />(补充一下:我所说spring struts hibernate ajax 用的都不想用了,意思是这些技术用的很熟了,没有什么挑战性了,上面提到这些主要是自己有点儿不自信)
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215619#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 17 Jul 2008 08:28:00 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215619</link>
        <guid>http://www.javaeye.com/topic/215619</guid>
      </item>
      <item>
        <title>我对二元分词的构想与实践</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xieye.javaeye.com">xieye</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215441" style="color:red;">http://www.javaeye.com/topic/215441</a>&nbsp;
          发表时间: 2008年07月16日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          表只有一个，记录词和新闻记录的对应关系<br />另外应该还有一个新闻表，就不列了。<br /><br />CREATE TABLE IF NOT EXISTS fenci (<br />  word      int not null default 0 comment '词的unicode码组合',<br />  news_id   int not null default 0 comment '新闻的id',<br />  news_type int not null default 0 comment '新闻的类型',<br />  primary key (word, news_id, news_type)<br />) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='分词表';<br />注意表的3联合主键可以避免重复的数据。<br /><br /><br />这里重要的是把一个词如“你好”转成一个数字，<br />我采用的方法：<br />"你"的十六进制4f60 十进制20320<br />"好"的十六进制597d 十进制22909<br />你好就编码成4f60597d十六进制对应的这个十进制数1331714429。<br /><br />下面是把一句话分解成若干个词，可指定参数，限制长短，如30，<br />方法如下，<br />第一个字符和第二个字符组词，序号是0，<br />第二个字符和第三个字符组测，序号是1，<br />。。。直到序号29(包括在内)，<br />总共30个词，包含了31个字符。<br /><br />对于每个词，首先正则判断是否每个字都是汉字，网上的例子多的很，什么数字，字母，标点都不要，必须<br />两个字都是汉字。<br /><br />这样筛了一遍后，<br /><br />还可以再筛一遍，把包含如下字(应该有更多)：“了”“吧”“吗”。“一”。。的词再筛掉。<br />然后去掉重复的词,<br /><br />对于剩下的每个词，先转成数字，往表插数据，word，新闻id，新闻类型。最好能屏蔽数据库错误，<br />因为表有主键约束。<br /><br /><br />当用户提交查询数据时，获取其查询的前两个汉字，转成数字，到表中查<br /><br />至于分词,可以在服务器空闲的时候做.<br />附件是二元分词的类。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215441#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</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, 16 Jul 2008 15:35:13 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215441</link>
        <guid>http://www.javaeye.com/topic/215441</guid>
      </item>
      <item>
        <title>继承的尴尬，我该如何避免？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://nighthawk.javaeye.com">nighthawk</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215653" style="color:red;">http://www.javaeye.com/topic/215653</a>&nbsp;
          发表时间: 2008年07月17日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>来看一个很简单的场景，比如说有一个实体叫做计划。计划分为已执行的，和未完成的(貌视马丁大叔的分析模式第8章也有这样的概念)。在此我想到了继承，图如下： <p><br />
<img src="../../../../upload/attachment/31347/da550862-5ef2-3c7c-9198-09d23bce2212-thumb.jpg?1216259634 " height="160" alt="" width="160" /><br />为了简便起见，我使用了Hibernate中叫做table per class hierarchy的方案来实现，那么自然对应的数据库当中，我使用了一张表，结构如下： </p>
<p><img src="../../../../upload/attachment/31349/1a9a490f-91c4-3c4b-9951-c0bcd9a36d3d-thumb.jpg?1216259637" height="150" alt="" width="115" />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;</p>
<p>体系中的继承类都用一个表保存，通过一个字段（discriminator column）的值进行区分。计划表对应的PO配置文件如下： </p>
<pre name="code" class="xml">&lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" &gt;
&lt;hibernate-mapping&gt;
	&lt;class name="Planning" table="PLANNING"&gt;
		&lt;id name="planId" type="java.lang.Integer" column="PLAN_ID"&gt;
			&lt;generator class="sequence"&gt;
				&lt;param name="sequence"&gt;SEQ_PLANNING&lt;/param&gt;
			&lt;/generator&gt;
		&lt;/id&gt;
		&lt;discriminator column="STATE" type="java.lang.String" /&gt;
		&lt;property name="planContent" type="java.lang.String" column="PLAN_CONTENT" length="1000"&gt;&lt;/property&gt;
		&lt;property name="startTime" type="java.sql.Timestamp" column="START_TIME" length="7"&gt;&lt;/property&gt;
		&lt;property name="endTime" type="java.sql.Timestamp" column="END_TIME" length="7"&gt;&lt;/property&gt;
		&lt;property name="createTime" type="java.sql.Timestamp" column="CREATE_TIME" length="7"&gt;&lt;/property&gt;

		&lt;subclass name="ProposedPlan" discriminator-value="2"&gt;
			&lt;property name="currentProgress" type="java.lang.String" column="CURRENT_PROGRESS" length="22"&gt;&lt;/property&gt;
		&lt;/subclass&gt;
		&lt;subclass name="CompletedPlan" discriminator-value="1"&gt;
			&lt;property name="planResult" type="java.lang.String" column="PLAN_RESULT" length="22"&gt;&lt;/property&gt;
		&lt;/subclass&gt;
	&lt;/class&gt;
&lt;/hibernate-mapping&gt; </pre>
<p>&nbsp;<br />针对单独的已执行和未完成计划操作，都没有问题，一切顺利。但是接下来问题来了，在需要把未完成变成已完成的时候，我一下陷入了麻烦了，<br />在继承的关系下，我如何来实现子类之间状态的互相转变？</p></p>
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215653#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 17 Jul 2008 09:53:52 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215653</link>
        <guid>http://www.javaeye.com/topic/215653</guid>
      </item>
      <item>
        <title>新手该怎么走第一步？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://yxbwzx.javaeye.com">yxbwzx</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216646" style="color:red;">http://www.javaeye.com/topic/216646</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          算算时间，我已经离开学校1年了吧，现在感觉自己跟刚毕业的差不多，甚至还不如应届的毕业生。至少他们比我年轻一岁，而我却没有什么像样的工作经历。<br />    我原来在北京一所重点大学学的机械的，但几年的时间完全让丧失了对本专业的兴趣，很多的时间都和自己的电脑呆在一起了，成绩也比较差，除了对计算机方面比较了解，对自己的本专业知识真不感恭维，还好有计算机的优势，我制图比较在行，找了个小企业，很多东西都需要自己独立完成，但不是很忙，可以说有点闲。我不喜欢这种生活，但又无力拒绝，所以最终决定转行，最终征得家人的支持，选择了java这行，由此找了个培训机构，学了4个多月，确实知道了很多知识，但似乎离工作的要求还有一段距离，前些天投的简历也都石沉大海，好像工作经验+学历是必须满足的条件，突然觉得自己的路很难走，想起了以前在学校做过的一道英语题：Everyone can not get a job without experience, and every can not get experience without a job.现实如此，尤其是中国的现实更是如此。<br />    但是我也必须面对现实，像每个人一样在网上开始投自己的简历，写的规规矩矩，什么熟练Servlet/jsp,什么熟悉JavaScript/css,了解Ajax,什么熟悉struts，webwork，spring，hibernate之类的话了，还有大家都常说的Tomcat，oracle。后来看了很多，似乎大家简历都写的内容都差不多（对于新手来说），不同的就是所谓工作经历，你有几年？没有经历的基本可以被忽略掉了。。。于是有很多人都说，不写精通，基本没机会接到笔试或面试的机会，说实话，对于我这个新手来说，说上面的熟练啦熟悉啦我已经脸红了，虽然我学习的时候做过几个练习式的小项目，但我很清楚都是上不了台面的东西。依照我的个性，我可能就干脆一句话：知道编程，了解Java，熟悉J2EE，精通ssh。这样才符合一个真正的程序员成长历程（自嘲一下吧）。<br />    不过，我也并非一直悲观，我始终遵守着我的做人原则，我不想欺骗谁，不想隐瞒什么，我只是一直朝我的目标努力迈进，不管别人怎么说。但我还是想问各位一个问题，真的是像某些人说的，不管用什么办法，先死皮赖脸的混一年经验再说？一年的经验是最低的筹码？我可不想用“混”这个字眼的说。。。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216646#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</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, 20 Jul 2008 03:10:01 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216646</link>
        <guid>http://www.javaeye.com/topic/216646</guid>
      </item>
      <item>
        <title>北京:建龙钢铁控股有限公司诚聘开发人员</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://jobhunter.javaeye.com">JavaEye猎头</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214813" style="color:red;">http://www.javaeye.com/topic/214813</a>&nbsp;
          发表时间: 2008年07月15日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          建龙钢铁控股有限公司是一家集资源开采、钢铁冶炼、船舶与装备制造于一体的大型企业集团。集团创建于1999年，到2007年底，共拥有控股子公司10家，总资产达到280.16亿元；参股子公司3家，参股总资产达到420.33亿元。企业遍布河北、黑龙江、吉林、辽宁、山东、浙江、北京、湖北等省市。成立九年来，建龙集团凭着“只争第一，点滴做起”的企业精神，秉承“诚信、规则、创新、高效、共赢”的经营理念，大胆创新，以自主研发技术改造，带动规模扩大和产品结构优化升级；把握机遇，通过企业购并重组和行业拓展，实现集团裂变式发展。2006年，建龙钢铁名列中国企业500强第214位，中国盈利企业500强第78位，中国钢铁企业第17位，全球钢铁第49位，2006年度中国最具社会责任20强。2007年，建龙集团名列中国企业500强第168位。<br />建龙钢铁坚持以人为本，强调“尊重员工需要、培养员工能力、激励员工进步、成就员工价值”的人才理念，吸引了大批精英良才，汇集了全国一流的技术人员和管理人员。目前控股企业共有员工25000余人，其中博士19、硕士124人、本专科3994人、中高级职称1112人。2003年经国家人事部批准，设立了“博士后工作站”。我们将薪酬作为拓展人力资源的重要杠杆，为员工提供了极具竞争力的薪酬福利体系。<br />建龙控股有限公司信息化部是集团信息化、自动化的规划和实施部门，为钢铁、造船、矿业各子公司提供信息化规划，系统开发和实施服务，下设需求与实施、设计、开发、测试、运维、自动化等处室，建立了规范的软件开发流程，现有人员70人，因业务发展需要，现招聘以下人员：<br />Java开发工程师 4人 <br />【工作地点】:北京   <br />【职位要求】 <br />1.熟悉JEE技术体系，有Spring, Hibernate开发经验者优先; <br />2.具备B/S开发经验，熟悉HTML和HTTP; <br />3.具备AJAX开发经验，熟悉Ext者优先;<br />4.具备良好的代码习惯及较强的文档编写能力; <br />5.熟练使用Eclipse或netBeans之一; <br />6.熟悉数据库设计与开发，至少熟悉DB2、Oracle或SQL Server之一; <br />7.英文读写优秀。 <br />8.计算机及相关专业毕业，2年以上工作经验 <br /><br />Java设计工程师 6人 <br />【工作地点】北京<br />【职位要求】<br />1、良好的面向对象思想，具有较强的OO分析、设计能力； <br />2、具有较强的企业应用系统设计、架构经验； <br />3、精通JAVA编程语言； <br />4、精通JEE技术体系，熟练使用Spring、Hibernate等； <br />5、良好的沟通能力和团队协作能力，英文读写优秀。<br />6、计算机及相关专业毕业，3年以上工作经验<br /><br />系统管理工程师  2人<br />【工作地点】北京  <br />【职位要求】<br />1.	计算机相关专业，本科以上学历;<br />2.	熟悉数据库的结构设计和性能调优，精通SQL的编写和优化，熟悉DB2者优先；  <br />3.	精通数据的备份与恢复，并有丰富灾难恢复经验，能处理数据库突发故障； <br />4.	熟悉Linux和Windows平台，熟悉tomcat；<br />5.	在企业数据中心有实际工作经验者优先；<br />6.	具有良好的文字表达能力，良好的团队合作精神，良好的英语读写能力。<br /> <br />测试工程师   1人<br />【工作地点】北京 <br />【职位要求】<br />1.	计算机相关专业，本科以上学历；<br />2.	熟悉Java或C++的编程；<br />3.	有良好的数据库/数据结构/软件工程基础，有良好的计算机网络或者通讯基础； <br />4.	1年以上软件测试工作经验，熟练使用各种测试工具，并有志从事软件测试工作；<br />5.	熟悉Linux和Windows平台，熟悉比较常用的硬件设备；<br />6.	具有良好的文字表达能力，良好的团队合作精神，良好的英语读写能力。<br /><br />需求分析工程师   3人<br />【工作地点】北京 <br />【职位要求】<br />1.  本科及以上学历；<br />2.  计算机相关专业毕业；<br />3.  有OA产品开发经验者、具备钢铁行业MES系统建设经验或有成本系统开发或实施工作经验者优先考虑。<br /><br /><br />1、请将个人简历发邮件至jlzp@ejianlong.com邮箱，标明主题－－报名；<br />2、联系人及电话：阴丹琳 010-83627029<br />   请注明你所要申请的职位。<br />   请将你的简历写好后拷贝/粘贴到你的 E-mail 中。<br />   不要在 E-mail 后附带任何文件。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214813#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 15 Jul 2008 10:19:13 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214813</link>
        <guid>http://www.javaeye.com/topic/214813</guid>
      </item>
      <item>
        <title>2年J2EE开发经验，各位觉得我开价6k高么？</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://billedx.javaeye.com">billedx</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/215018" style="color:red;">http://www.javaeye.com/topic/215018</a>&nbsp;
          发表时间: 2008年07月15日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          熟练使用Tomcat，熟悉Oracle As、Weblogic等应用服务器；<br />熟练掌握几种开发框架（Struts、Hibernate、Spring等）；<br />熟练掌握软件设计模式、分析设计方法；<br />熟练掌握基于oracle/sqlserver的数据库编程；<br />上海，难道这样价格还高？
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/215018#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 15 Jul 2008 16:05:37 +0800</pubDate>
        <link>http://www.javaeye.com/topic/215018</link>
        <guid>http://www.javaeye.com/topic/215018</guid>
      </item>
      <item>
        <title>工作四年</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://guzen.javaeye.com">guzen</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216622" style="color:red;">http://www.javaeye.com/topic/216622</a>&nbsp;
          发表时间: 2008年07月20日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          我（在大连）从事Java开发四年，精通struts，EJB，Ajax。英语熟练。有一年的项目管理经验，一路走来在工作的道路上顺风顺水，但是突然有一天，项目结束，自己失业了。<br />参加各种面试，被各种不同的理由拒绝，待业超过两个月，对自己的将来失去了信心。请大家给点建议。
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216622#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 20 Jul 2008 00:21:54 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216622</link>
        <guid>http://www.javaeye.com/topic/216622</guid>
      </item>
      <item>
        <title>如何减少日志记录占用的系统资源</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://johnnylzb.javaeye.com">johnnylzb</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/214978" style="color:red;">http://www.javaeye.com/topic/214978</a>&nbsp;
          发表时间: 2008年07月15日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          最近我在负责公司各项目的通用日志组件的设计和开发，而各项目组考虑得最多的一个问题是性能问题。抽象来看，日志处理分为：日志收集、日志保存、日志查询、日志分析几个主要部分。日志收集必须由应用程序完成，这部分工作可以使用AOP来减少对应用逻辑的干扰，但问题是：日志收集和日志保存都需要损耗系统资源，让系统变得更慢，某些情况下，对于一些简单的业务操作，日志处理所占用的时间可能比业务操作占用的时间更长。所以，最大限度的减少日志处理对应用程序的性能损耗是日志组件需要解决的一个重要问题。<br /><br />我曾经想过利用JMS把日志信息发送到另外一台服务器，由专门的日志服务器来负责日志信息的持久化（注：对比日志信息收集逻辑，日志信息持久化通常占用了更多的系统资源），通过这种分布式运算来减轻应用程序服务器的负担。但这样做始终存在一个问题：如果日志信息要与业务操作保持一致（即只要业务操作被提交，日志信息必须保证被成功记录下来），那么就必须保证日志信息与业务操作的事务一致性，如果选择在等等JMS服务器答复之后才提交业务操作事务，这种方案是不能被接受的，因为无法预知JMS服务器答复的时间，而如果不采用这种方案，则日志信息在发送到JMS服务器到JMS服务器给出答复这段时间，必须在本地进行持久化，直到JMS服务器确认信息已经被成功接收，本地的日志记录才能被移除，而这样一来，实际上日志信息还是必须在本地被持久化一次，而且将来应用程序服务器还必须分心去完成JMS的回复处理和本地日志信息的清理，事实上没有达到分布式运算的目的。<br /><br />请问大家有没有什么比较好的建议，谢谢！
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/214978#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 15 Jul 2008 14:50:30 +0800</pubDate>
        <link>http://www.javaeye.com/topic/214978</link>
        <guid>http://www.javaeye.com/topic/214978</guid>
      </item>
      <item>
        <title>EXT2 各种皮肤共享，希望大家有的，一起共享</title>
        <author>JavaEye网站</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://xiexueze.javaeye.com">xiexueze</a>&nbsp;
          链接：<a href="http://www.javaeye.com/topic/216240" style="color:red;">http://www.javaeye.com/topic/216240</a>&nbsp;
          发表时间: 2008年07月18日
          <br/>
          声明：本文系JavaEye网站发布的原创文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          这里是我从各个地方搜集到的十二种EXT2的皮肤，其中有些很接近，在此上传给大家，希望大家有的，也上传上来一起共享！！！<br /><br />使用方法：<br />修改各个css文件里的images目录图片位置<br />然后在页面上引用这些CSS文件既可
          <br/>
          <span style="color:red;">
            <a href="http://cpp-circle.group.javaeye.com/topic/216240#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/106' target='_blank'><span style="color:blue;font-weight:bold;">JavaEye问答大赛开始了！ 从6月23日 至 7月6日，奖品丰厚 ！</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/92' target='_blank'><span style="color:red;font-weight:bold;">快来参加7月17日在成都举行的SOA中国技术论坛</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 18 Jul 2008 16:22:08 +0800</pubDate>
        <link>http://www.javaeye.com/topic/216240</link>
        <guid>http://www.javaeye.com/topic/216240</guid>
      </item>
  </channel>
</rss>
