<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>伊苏园</title>
    <description></description>
    <link>http://david-lee.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>为广大程序员补课,有GF的没GF的,有LP的没LP的皆适,女人爱问的几个问题之标准答案</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/190152" style="color:red;">http://david-lee.javaeye.com/blog/190152</a>&nbsp;
          发表时间: 2008年05月06日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          女人爱问的几个问题之标准答案<br /><br />女人爱问的几个问题之标准答案问题一：你爱我吗？<br />错误答案A："爱。"<br />错误答案B："这还用问吗？"<br />错误答案C："你烦不烦啊？<br /><br />标准答案：目光怜爱的望着对方三秒，然后神情郑重的点一下头，同时发出"嗯"的声音，然后一把把她揽在怀里......<br />解析：答案A会让她觉得你太不严肃了，纯粹胡弄她；答案B会让她觉得你对她的爱不够坚定，而且她一定会喋喋不休的问到底，让你给她明确的答案，够你烦的；答案C过后一定是一顿大架或冷战。其实女人对男人是不是爱她这件事儿心里特有数，她这么问纯粹就是撒娇调情，你抱抱她亲亲她比回答什么都让她高兴。<br /><br /><br />问题二：你看我这件衣服好看吗？<br />错误答案A："挺好看的。"<br />错误答案B："还行。"<br />错误答案C："真好看，我老婆穿什么都好看。"<br /><br />标准答案：来来来，转一圈让我看看......"待她害羞的转完一圈后，把她拉过来，拉着她的手微笑的看着他说："真挺好看的。<br />解析：答案A会让她觉得你应付她；答案B会让她觉得没自信，在她心里她穿什么你都应该觉得好；可是如果真说好看，像答案C一样她又会觉得你花言巧语不真诚。所以啊，你要表示出对她提的这个问题的认真程度，必须要仔细的看看再说。<br /><br /><br />问题三：在她把她的闺蜜介绍给你认识之后，回到家她问："你觉得我这朋友怎么样啊？"<br />错误答案A："挺漂亮的。"<br />错误答案B："不怎么样，比你差远了。"<br />错误答案C："我都没怎么注意她。"<br /><br />标准答案：我觉得她对你挺真诚的，应该好好珍惜这样的朋友。<br />解析：答案A纯粹是没事儿找抽型的，女人是绝不能允许你在她面前说别的女人好的（当然，母亲除外。）；答案B听着就太假了；答案C你一定觉得回答得挺高明的吧，她压根儿就不会信，而且她会展开想像分析你为什么不愿意对她的朋友进行评价。所以，要避开问题，转个弯儿回答，让她觉得你一切都是为她着想，她会有被呵护照顾的感觉。<br /><br /><br />问题四：你觉得我胖了吗？<br />错误答案A："没胖。"<br />错误答案B："好像是胖了。"<br />错误答案C："呦，是不是最近太累啊，怎么都瘦成这样了？"<br /><br />标准答案：过来让我抱抱，等抱过之后你再说：我就喜欢你这样的，有点肉。<br />解析：答案A回答得太干脆了吧，她听着不过瘾。答案B纯属找骂，女孩子怎么能喜欢听别人说她胖呢？即使你再三强调你喜欢胖的，她还会不高兴；答案C听着都那么虚伪，现在的女人哪那么好蒙啊。其实，在女人的心里，她还是希望男人不在乎她的胖瘦，虽然嘴上说为了你减肥，其实是为了自己更漂亮，能穿更多好看的衣服。所以你用肢体语言表示出你喜欢她有点儿肉就可以了。<br /><br /><br />问题五：我和你前女友比起来，你更喜欢哪一个？<br />错误答案A："废话，当然是你了，要不然干吗跟你在一起。"<br />错误答案B："嗯，怎么说呢，如果让我说实话，各有千秋吧。"<br />错误答案C："她比你差远了。"<br />标准答案：狠狠的咬她一口或亲她一下或捏她的小脸蛋，等到她撒娇的嗷嗷叫的时候你就说："下次再问这种无聊的问题，还得这么惩罚你。"<br />解析：答案A也太生硬直接了吧，她接下来就会问："那你以后碰见比我好的是不是也得把我踹了啊？"答案B您就等着分手吧，忒实在了也。答案C听上去还不错，但你这不是抽自己嘴巴嘛，你说自己前女友不好会让女人很得意而降低了你自己的身价。其实在女人心里，她特别希望你的前女友是个特别优秀的女人，而偏偏是你不愿意跟她好了，这样女人心里会有成就感的。可是你又不能直接说前女友有多好，所以就用她喜欢的方式来回避问题吧（至于她是喜欢你捏她的脸蛋儿还是咬她一口我们就不知道了）。<br /><br />解析：答案A也太生硬直接了吧，她接下来就会问："那你以后碰见比我好的是不是也得把我踹了啊？"答案B您就等着分手吧，忒实在了也。答案C听上去还不错，但你这不是抽自己嘴巴嘛，你说自己前女友不好会让女人很得意而降低了你自己的身价。其实在女人心里，她特别希望你的前女友是个特别优秀的女人，而偏偏是你不愿意跟她好了，这样女人心里会有成就感的。可是你又不能直接说前女友有多好，所以就用她喜欢的方式来回避问题吧（至于她是喜欢你捏她的脸蛋儿还是咬她一口我们就不知道了）。<br /><br /><br />问题六：如果我和你妈妈同时掉进水里，你会救哪一个？<br />错误答案A："你有聊无聊啊？"<br />错误答案B："一块儿救。"<br />错误答案C："宝贝儿，别难为我，再说这种情况也不会发生的。"<br /><br />标准答案：哦，我没告诉你吧，我妈是游泳健将。<br />解析：虽说问这个问题确实很无聊但你也不能像答案A那样，这会引来喋喋不休的争吵；答案B她一定会不甘心的追问下去，你不想清静清静吗？答案C听上去还不错，但还是很牵强。不如就幽默一回，别让她一天到晚的老杞人忧天没事儿找事儿了。<br /><br /><br />问题七：如果我老了难看了你还会爱我吗？<br />错误答案A："不可能，你老了也好看。"<br />错误答案B："女人不同的年龄段有不同年龄段的魅力......"<br />错误答案C："没事儿，你老了我也好不到哪儿去，咱俩谁也别嫌弃谁。"<br /><br />标准答案：我巴不得你难看点儿老点儿呢，这样放在家里多放心啊。<br />解析：答案A她听着也高兴，但心里知道这是绝对不可能的；答案B就赶紧打住吧，唐僧来了；答案C不就说她老了肯定不好看了嘛，她怎么能接受呢？所以啊，最聪明的答案就是既让她打消顾虑又让她知道你特别在意她特别怕失去她。<br /><br />转贴的,我转的地方也是转贴,所以不知原著是哪里出的
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/190152#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 06 May 2008 13:03:38 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/190152</link>
        <guid>http://david-lee.javaeye.com/blog/190152</guid>
      </item>
      <item>
        <title>有符号的范围,-128~+127详解</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/189555" style="color:red;">http://david-lee.javaeye.com/blog/189555</a>&nbsp;
          发表时间: 2008年05月04日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          这是一个困惑了我几年的问题,它让我对现在的教科书和老师极其不满,从我N年前开始摸电脑时,就几乎在每一本C++教科书上都说,8位有符号的取值范围是-128~+127,为什么不是-127~+127呢,后来的java,int的聚值范围,再32位计算,-2^31 ~ +2^31-1,可是,却从来没有任何一本教科书或一个老师比我解释过这个问题<br />原因没有在工作上或者是什么地方直接遇到它,所以我也一直忽略它,但心里总是有一根刺.直到刚才!!!!<br />就是刚才,无聊之极,在看汇编的书时,又遇到它了,但一如以往,书上直接地,有心地,明显地绕过了这个问题,真是可恶啊<br />几经周折,终于把它搞清楚了:<br />其实,它是计算机底层为了实现数值运算而决定的,涉及非常非常基础的原码,反码,补码知识,一般(99.9999%)都不会用得上.<br />那0.0001%,估计也就是计算机考试了,<br />话说:<br />用2^8来表示无符号整数的话,全世界的理解都是0 - 255了,那么,有符号呢? 用最高位表示符号,0为+,1为-,那么,正常的理解就是 -127 至 +127 了.<br />这就是原码了,值得一提的是,原码的弱点,有2个0,即+0和-0,还有就是,进行异号相加或同号相减时,比较笨蛋,先要判断2个数的绝对值大小,然后进行加减操作,最后运算结果的符号还要与大的符号相同.<br />于是乎,反码产生了,原因....略,反正,没过多久,反码就成为了过滤产物,也就是,后来补码出现了.<br />补码的知识不说述,只说有关+127和-128的.<br />官方的定义 [-2^(n-1),2(n-1)-1],补码的0没有正负之分<br />原因呢?没有一本书上有说,这也是我这么火的原因,但通过思考,google,再思考,很快找到答案:<br />首先,难不免干点白痴般地事情,穷举一下...<br />正数,原码跟补码一样<br />+127, 0111 1111<br />+126, 0111 1110<br />+125, 0111 1101<br />+124, 0111 1100<br />+123, 0111 1011<br />+122, 0111 1010<br /> ...<br />  +4, 0000 0100<br />  +3, 0000 0011<br />  +2, 0000 0010<br />  +1, 0000 0001<br />   0, 0000 0000 (无正负之分)<br /><br />下面是负数了,值,原码,符号位不变其它取反,+1<br /><br />  -1, 1000 0001, 1111 1110, 1111 1111<br />  -2, 1000 0010, 1111 1101, 1111 1110<br />  -3, 1000 0011, 1111 1100, 1111 1101<br />  -4, 1000 0100, 1111 1011, 1111 1100<br />  -5, 1000 0101, 1111 1010, 1111 1011<br />  -6, 1000 0110, 1111 1001, 1111 1010<br />  -7, 1000 0111, 1111 1000, 1111 1001<br />  -8, 1000 1000, 1111 0111, 1111 1000<br />  -9, 1000 1001, 1111 0110, 1111 0111<br /> -10, 1000 1010, 1111 0101, 1111 0110<br /> -11, 1000 1011, 1111 0100, 1111 0101<br /> -12, 1000 1100, 1111 0011, 1111 0100<br /> -13, 1000 1101, 1111 0010, 1111 0011<br /> -14, 1000 1110, 1111 0001, 1111 0010<br /> -15, 1000 1111, 1111 0000, 1111 0001<br /> -16, 1001 0000, 1110 1111, 1111 0000<br /> -17, 1001 0001, 1110 1110, 1110 1111<br /> ...<br /> -24, 1001 1000, 1110 0111, 1110 1000<br /> ...<br /> -99, 1110 0011, 1001 1100, 1110 0100<br /> ...<br />-124, 1111 1100, 1000 0011, 1111 1101<br />-125, 1111 1101, 1000 0010, 1000 0011<br />-126, 1111 1110, 1000 0001, 1000 0010<br />-127, 1111 1111, 1000 0000, 1000 0001<br />看出点什么了没有?<br />如果没有,那么,给个提示, 再继续下去,下一个补码是什么呢?<br /><br />当然是<br />-128, 先略过,再略过, 1000 0000<br /><br />1000 0000,那么,它的原码是什么呢?<br />从补码求原码的方法跟原码求补码是一样的<br />先保留符号位其它求反:  1111 1111, 再加1:11000 0000, 超过了8位了<br />对,用8位数的原码在这里已经无法表示了<br />关键就在这里,补码 1000 0000 为 -128 是不用怀疑的(上面的穷举),<br />那么,回到原码处, 它的原码也是 1000 0000(超出的自动丢失),<br />1000 0000 在原码表示什么呢? -0, 但补码却规定0没有正负之分<br />转换一下思路,看看计算机里,是怎么运算的:<br />对于负数,先取绝对值,然后求反,加一<br />-128 -> 128 -> 1000 0000 -> 0111 1111 -> 1000 0000<br />现在明确了吧<br />所以, 8位有符号的整数取值范围的补码表示<br />1000 0000 到 0000 0000, 再到 0111 1111<br />即 -128 到 0, 再到 127<br />最终 -128 ~ +127<br />感谢google,感谢被我浏览过又关闭了还忘记了姓名的广大的blog们,CSDN(那上面也有些不错的东西)<br />over~
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/189555#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sun, 04 May 2008 23:35:44 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/189555</link>
        <guid>http://david-lee.javaeye.com/blog/189555</guid>
      </item>
      <item>
        <title>利用JS+CSS对数据进行分页</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/170020" style="color:red;">http://david-lee.javaeye.com/blog/170020</a>&nbsp;
          发表时间: 2008年03月11日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          看见许多关于分页的贴子,但始终没有找到一个自己喜欢的,也许是我没遇上,但不管怎么也好,自己动手写了一个,满足自己的需要.<br />个人习惯:<br />本人比较喜欢把分页分成2部分:后台数据源的部分,直接用procedure实现分页,这里不多说,另一部分就是前面WEB显示<br />实现思路:<br />见过比较多的做法是,把数据源load进session,然后给每页设定一个rowCount,再算出页数,然后生成页面和对应的数据.<br />本人比较懒,不喜欢那种老是点击页数提交的感觉,但也不喜欢用ajax来跟后台交互,把页面搞得太复杂了.<br />也不喜欢用控件,可能是之前.net的控件用不好的原因.剩下的,就是用js+css在一个页面实现分页了.<br />效果如下图:<br />....在最下面,是三个图片的合成<br />具体实现:<br />1.后台操作,把数据源request.setAttrib()<br />2.前面,在JSP里<br />先是获取数据<br /><pre name="code" class="java">
List list=null;
list=(LinkedList)request.getAttribute("list");
if(list==null){
	list=new LinkedList();
}
</pre><br />然后是生成表格<br /><pre name="code" class="java">
&lt;form action="" method="post">
					&lt;input type="hidden" name="referenceno" />
					&lt;div id="data">
					&lt;%
					String pages="";
					int count=list.size();
					int p=0;
					int pageItemCount=20;
					int pageCount=count/pageItemCount+1;
					for(int n=0;n&lt;count;n+=pageItemCount){
					%>
					&lt;div id="&lt;%="div"+p %>">
						&lt;table>
							&lt;tr class="title">
								&lt;td>REFNO&lt;/td>
								&lt;td>JOBNO&lt;/td>
								&lt;td>VENDER&lt;/td>
								&lt;td>ORDER BY&lt;/td>
								&lt;td>DATE&lt;/td>
								&lt;td>HANGTAG&lt;/td>
								&lt;td>LABEL&lt;/td>
								&lt;td>DETAIL&lt;/td>
								&lt;td>PROCESS&lt;/td>
							&lt;/tr>
							&lt;%
							out.println();
							String order[];
							for(int i=n;i&lt;n+pageItemCount&&i&lt;count;i++){
								//declare temp variant
								String refno="";
								String jobno="";
								String orderman="";
								String vender="";
								String orderdate=""; 
								String ht="";
								String lbl="";
								String alternate="";
								//set alternate row style of class
								if(i%2==0)
									alternate="";
								else
									alternate=" class=\"alternate\"";
								
								order=(String[])list.get(i);
								//string[]:0-referenceno,1-jobno,2-name(orderman),
								//3-vender,4-status,5-orderdate,6-ht,7-lbl
								if(order[0]!=null && ! "null".equals(order[0])) refno=order[0];
								if(order[1]!=null && ! "null".equals(order[1]) && order[1].length()>3 && !"temp".equals(order[1].substring(0,4))) jobno=order[1];
								if(order[2]!=null && ! "null".equals(order[2])) orderman=order[2];
								if(order[3]!=null && ! "null".equals(order[3])) vender=order[3];
								if(order[5]!=null && ! "null".equals(order[5])) orderdate=order[5];
								if(order[6]!=null && ! "null".equals(order[6])) ht=order[6];
								if(order[7]!=null && ! "null".equals(order[7])) lbl=order[7];
								out.println("								"
								+"&lt;tr"+alternate+">"
								+"&lt;td>"+ refno +"&lt;/td>"
								+"&lt;td>"+ jobno +"&lt;/td>"
								+"&lt;td>"+ vender +"&lt;/td>"
								+"&lt;td>"+ orderman +"&lt;/td>"
								+"&lt;td>"+ orderdate +"&lt;/td>" 
								+"&lt;td>"+ ht +"&lt;/td>"
								+"&lt;td>"+ lbl +"&lt;/td>"
								+"&lt;td>&lt;input type='button' value='DETAIL' class='btn' onclick='orderDetail(\""+refno+"\")'>&lt;/td>"
								+"&lt;td>&lt;input type='button' value='PROCESS' class='btn' onclick='processOrder(\""+refno+"\")'>&lt;/td>"
								+"&lt;/tr>"
								);
							}
							pages+=" &lt;a style='cursor:pointer;' onclick='setPage("+(p++)+","+pageCount+")',>"+p+"&lt;/a>";
							%>
						&lt;/table>
					&lt;/div>
					&lt;%} %>
					&lt;/div>
					Page: &lt;%=(pages.length()>0)?pages.substring(1):"" %>
					&lt;script type="text/javascript">setPage(0,&lt;%=pageCount%>);&lt;/script>
				&lt;/form>
</pre><br />生成HTML后的结构如图:<br />...在最下面<br />如结构图所示,在最终的HTML里,有一个div,里面包括了3页的数据,分别存在3个div里,然后利用js+css的把对应id的div的display属性来控制显示哪1页的数据<br />js代码<br /><pre name="code" class="java">
/*
 * control the div display or not
 * @param cur the div which want to display
 * @param sum div count (page count)
 */
function setPage(cur,sum){
		for(var i=0;i&lt;sum;i++){
			var d=document.getElementById('div'+i);
			d.style.display="none";
		}
		var d=document.getElementById('div'+cur);
		d.style.display="block";
	}
</pre><br />css代码<br /><pre name="code" class="java">
&lt;style type="text/css">
	form div {display:none;}
	form #data {height:530px;display:block;}
	form table {border-collapse:collapse;table-layout:fixed;font-size:9pt;text-align:center;}
	form tr.title {background-color:#aeaeae;font-weight:bold;}
	form tr.alternate {background-color:#d7d7d7;}
	form td {border:1px solid #777;}
	form td input.btn {width:60px;font-size:9pt;}
	form input.date {width:80px;}
	form a {text-decoration:underline;}
&lt;/style>
</pre><br />最后,弱弱地问一下,还有没有人用java直接写jsp的吗?个人感觉用控件生成的HTML代码太难读了
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/170020#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Tue, 11 Mar 2008 09:14:27 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/170020</link>
        <guid>http://david-lee.javaeye.com/blog/170020</guid>
      </item>
      <item>
        <title>伟大建筑巡礼•日本明石海峡大桥,开拓程序员的思维,观念和视野</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/153250" style="color:red;">http://david-lee.javaeye.com/blog/153250</a>&nbsp;
          发表时间: 2008年01月05日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          伟大建筑巡礼•日本明石海峡大桥<br />正巧看见这个节目,就看电视做笔记,我认为里面有很多开拓思想,打破常规的东西,有很多值得我们学习的东西<br />再者,设计模式也是由建筑学里发展过来的,所以,就边看边记下来了(可能有点乱哦,记不够快啊)<br />世界上最长的悬索桥(中心跨度长2km,比第二的长500m),<br />世界上最贵的桥(造价43亿美元),<br />桥塔跟法国埃非尔铁塔一样高<br />建造前,花了30年时间研究技术,海峡深100米,海峡定期有台风光顾,最高风速280KM/小时<br />91%承载自身重量,9%承载交通<br />1955年计划<br />1988年工程开始<br />2个桥基用了一年时间在陆地上建造,然后12条拖船拖着150000吨的桥基模型到海面上的准确位置,历时38小时<br />然后往模型中注水,使桥基沉入海底,每个桥基需要2.5万亿吨水,最后落地跟预定的位置偏差10CM,<br />再注入26.5万亿吨水中变硬的超级混凝土(建造这座桥时开发出来的),以上是预备工作,历时4年<br />大桥计划使用200年,并对抗里氏8.5级地震<br />第二阶段<br />桥塔如果偏移水平线一个拇指(2.5cm)的距离(建桥工程史上的奇迹),整个桥就会崩塌,每个桥塔需要90个160吨的钢块,70万个螺钉,283米高<br />第三阶段<br />1993年11月,主钢缆,3万吨,泰坦尼克号的3倍,每条钢缆由3.7万概钢丝组成,创造出世界上强度最高的钢缆,主钢缆长4km,<br />建造钢缆时不能关闭海航线,所以在空中施工,直升机总共在空中飞行了2万公里<br />第四阶段<br />桥身,最关键,最复杂,最危险的阶段,桥梁建筑最怕风,美国塔科玛大桥,1940年11月,60公里的风速毁灭了这座桥,这是桥梁建筑的一个转折点,人民发现了风是大型建筑杀手,明石海峡正好位于日本台风的中心,可以把大树连根拨起,为了战胜台风,工程师们设计出用数千根钢梁,以三角型的形状建造桥身,就在这种时候,1995年1月17日5:47,日本神户发生里氏7.2级地震,10万栋建筑被毁,高速公路塌陷,震中距神户20km,距明石海峡大桥4km,工程师来到大桥后发现,整座大桥一切完好,桥身,钢塔仍在原位,再进行仔细勘测,发现海底的2个桥塔间出现裂,隙,把桥基移动了近1米,桥塔中间,全世界能在这种地震下抵卸的大桥,仅此一座,为了弥补移动的一米,明石海峡大桥必需再长1米,桥身,桥塔,钢缆必须重新设计,但幸运的是,工程只停滞了一个月<br />最后的决定性阶段<br />1995年6月,为了在海上组装290块钢梁,设计出世界上在最强力海上起重机<br />施工期间,没有一个人死亡<br />1998年4月5日,一个民族的骄傲<br />乘车通过只需5分钟,乘船要40分钟<br />设计可以使用200年,但每天都需要精心维护<br />后记,意大得,墨西拿大桥准备挑战这个长度,新技术解决了材料的重量问题<br />下期:中国伟大的桥梁
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/153250#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 05 Jan 2008 01:20:13 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/153250</link>
        <guid>http://david-lee.javaeye.com/blog/153250</guid>
      </item>
      <item>
        <title>从manageOrder和OrderManager的命名演译面向对象思想</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/147383" style="color:red;">http://david-lee.javaeye.com/blog/147383</a>&nbsp;
          发表时间: 2007年12月10日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          相信接触过订单系统的朋友对这2个词都不陌生,在写程序中,你是否遇到这样的困惑:给页面命名ordermanager还是manageorder,或者给按钮命名,给方法命名,又或者是ordersearch?还是searchorder?在烦恼应该用哪个名字之余,不妨另个思维去看看,order - manager 订单管理器, manage - order 管理订单, 是不是有点苗头了?对,一个是名词,一个是动词,再来看,对象!方法,不错,我们可以从面向对象的思想去思考它,订单管理器,有一个管理订单的方法,然后我们就可以把,搜索订单的方法都封装在一个叫订单管理器的类里,然后,怎么处理ordersearch还是searchorder呢? 先来个假设,我喜欢把搜索写在同一个类里,那么,应该是 ordersearch() ?还是 searchorder()?你会怎么命名? 首先,IDE会明确地提示你,方法的第一个字母是小写,所以,就有了orderSearch() 或 searchOrder(),然后,再从OOP的思想考虑,方法,应该是一种动作,所以,searchOrder()比较合理,当然了,你也可以直接search(),都是表示一种动作<br />网页呢?网页也是一种对象,所以,个人推荐ordermanager.jsp<br />另外,从window3.X刚出来时,不知大家有没有留意,我们用得最多的东西的命名:文档管理器 Document Manager!<br />再有就是,无聊的朋友可以打开java的IDE看一下,java无数的类库里的方法,看看它们的命名<br />OOP最基本的东西:对象,方法,属性
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/147383#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 10 Dec 2007 20:19:30 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/147383</link>
        <guid>http://david-lee.javaeye.com/blog/147383</guid>
      </item>
      <item>
        <title>在非软件公司里,IT人的路在何方</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/146751" style="color:red;">http://david-lee.javaeye.com/blog/146751</a>&nbsp;
          发表时间: 2007年12月07日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          历史(前言或闲耻):<br />专科非计算机专业,出来社会混了4年,其中的后2年,利用在上一家公司打杂之余,读了个软件工程师,就是ACCP的,贵啊,心疼,在毕业前的半年正好合同期到,就没有续约,然后在家里当了6个月的败家仔,其间简历发了无数,一概没有回复,气啊<br />比较搞笑的是找到现在这份工作的过程,8月中名的一个星期一,突然有家合资的条码印刷公司公司打电话让我面试,然后面试的技术主管一见面就对着我的简历(他们从网上下载的)说:哪有人像你这么写简历的,简单像在玩,如果不是公司极度缺人,我是肯定不会招你的,但以上是我的个人想法,不影响公司对你的招骋,面试结束后,星期二给我电话,让我星期三再去复试,复试是香港的BOSS,然后星期四就通知我下星期一上班,香港人的效率有够简洁的.....<br /><br />然后就是现况了(正题):<br />来了现在这里,IT部分就3个人,我,刚本科毕业的菜鸟程序员,香港的主管(java方面连菜鸟都不如,但还是能让我尊重的技术主管),我理所当然地成为了这里的主力程序员了,目前做的项目,是为公司的一些大客户做工web ordering网站和提高customer service工作效率的东西,所谓的东西,就是指:可能把程序就写在2,3张网页里,也可能就是一个excel的marco,嘿嘿,由于本人是转行D,所以,没有非要把任何东西都做成完成项目的思想,能好好解决问题的东西就是好东西,现在几个月下来,摸熟了公司的情况了,作出来的程序,主管和美国的boss(出差来香港时看见的)也很满意,主管交下来的任务,基本就不用他再操心了,剩下的,就是个人的路了,<br /><br />就是在<strong>非软件公司里,IT人的出路问题</strong><br />香港人喜欢把搞软件的叫"IT人"....(请用广东话读)<br /><br />年纪不小了,假设不跑去"正规"的软件公司:<br />从程序员当起是不现实,我个人也很难接受,但在这里,估计近1年内是不会出现比我强(在软件方面)的人了,好在这里,有需求,可以让我通过解决这些需求提高自己,也能主动的发现公司里可以用软件升值的地方,比如能为公司做一个全面的管理系统,我的想法是,边做边自己学,可能学出来的软件工程知识跟软件公司的"正规"有差别,写的项目文档不"正规",但绝对是为这家公司量身制定的,<br />但担心的是:这样锻炼出来的能力,日后换工作后,能得到认可?<br /><br />另一条路就是,去正规的软件公司,从一般的软件工程师做起,然后的路....不知道了<br /><br />其实我是不喜欢跳槽的,而且现在这家公司的规模也在扩大,生产车间从20人扩到30个,产品是出口美国,香港的,车间的工人,工作都很安逸,没有被解雇的压力,可以的话,我最希望能在公司壮大后,成为IT部的头,公司核心系统的设计者,从能力方面,我对自己是有信心的,但就不知道往后的发展是不是真能像我想象的方向<br /><br />希望过来人能给些忠告<br />PS:本人是很有主见的,不会因为别人的意见而做出让自己后悔的事
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/146751#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 07 Dec 2007 17:32:19 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/146751</link>
        <guid>http://david-lee.javaeye.com/blog/146751</guid>
      </item>
      <item>
        <title>偶在项目中用hibernate居然从能清空了的数据库里查询到数据?</title>
        <author>reno_k</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://david-lee.javaeye.com">reno_k</a>&nbsp;
          链接：<a href="http://david-lee.javaeye.com/blog/145315" style="color:red;">http://david-lee.javaeye.com/blog/145315</a>&nbsp;
          发表时间: 2007年12月01日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          本人在为公司的一个大客户做web ordering系统,其中遇到了一些hibernate的问题,蛮有意思的,虽然我已经用别的方法解决,但对存在的问题一直没有根本的理解,放在这里来,跟大家一起分享一下,能解决就解决,不能解决的就给别人当个提醒,绕开这个错误<br />环境:tomcat+mysql<br />问题一:<br />清空数据库后还能查询到数据<br />对一个数据库里的4个表,每个表有10000+条数据,直接用JDBC来一次性全部删除(爽啊),从数据库里查询也是已经清空了,连auto_increment也重置为0了,但奇怪的是,在接着的导入模块里,用hibernate的session.get(class,pkid)还是能查询到删除的数据,晕死了,4个表加起来是4W多条数据啊<br />偶的解决办法:用hibernate来清空数据,<br />疑惑:为什么用JDBC就是不行呢???<br />问题二:<br />hibernatefactory类,用myeclipse插件生成的这个类,是蛮方便的,hibernatefactory.getsession()就能获取session了,方便啊,但它似乎经不起时间的考验,系统跑了1,2天后,就再也不能正常连接到数据库里了<br />偶的解决办法:才才实实起自己new config,再从自己new 的config里getsession<br />疑惑:为什么hibernatefactory会靠不住呢?
          <br/>
          <span style="color:red;">
            <a href="http://david-lee.javaeye.com/blog/145315#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></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 01 Dec 2007 17:10:48 +0800</pubDate>
        <link>http://david-lee.javaeye.com/blog/145315</link>
        <guid>http://david-lee.javaeye.com/blog/145315</guid>
      </item>
  </channel>
</rss>