??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品无码av人在线观看,免费亚洲视频在线观看,亚洲高清无在码在线无弹窗http://m.tkk7.com/goingmm/category/3787.html<!-- <table> <tr> <font color="red">共有<script src="http://fastonlineusers.com/online.php?d=goingmm.blogjava.net"></script>人正在阅?lt;/font> </tr> </table> --> zh-cnTue, 27 Feb 2007 12:33:03 GMTTue, 27 Feb 2007 12:33:03 GMT60是我折腾?jin)? 安装PMDhttp://m.tkk7.com/goingmm/archive/2006/08/31/66965.htmlGoingmmGoingmmThu, 31 Aug 2006 15:26:00 GMThttp://m.tkk7.com/goingmm/archive/2006/08/31/66965.htmlhttp://m.tkk7.com/goingmm/comments/66965.htmlhttp://m.tkk7.com/goingmm/archive/2006/08/31/66965.html#Feedback5http://m.tkk7.com/goingmm/comments/commentRss/66965.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/66965.html阅读全文

Goingmm 2006-08-31 23:26 发表评论
]]>
再回来改?tomcathttp://m.tkk7.com/goingmm/archive/2006/03/19/36013.htmlGoingmmGoingmmSat, 18 Mar 2006 22:33:00 GMThttp://m.tkk7.com/goingmm/archive/2006/03/19/36013.htmlhttp://m.tkk7.com/goingmm/comments/36013.htmlhttp://m.tkk7.com/goingmm/archive/2006/03/19/36013.html#Feedback4http://m.tkk7.com/goingmm/comments/commentRss/36013.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/36013.html阅读全文

Goingmm 2006-03-19 06:33 发表评论
]]>
DB2 Viper 一个能存储XML的关pL据库http://m.tkk7.com/goingmm/archive/2006/02/23/32065.htmlGoingmmGoingmmThu, 23 Feb 2006 01:56:00 GMThttp://m.tkk7.com/goingmm/archive/2006/02/23/32065.htmlhttp://m.tkk7.com/goingmm/comments/32065.htmlhttp://m.tkk7.com/goingmm/archive/2006/02/23/32065.html#Feedback0http://m.tkk7.com/goingmm/comments/commentRss/32065.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/32065.html阅读全文

Goingmm 2006-02-23 09:56 发表评论
]]>
再概念“类装蝲l节?/title><link>http://m.tkk7.com/goingmm/archive/2006/02/23/32063.html</link><dc:creator>Goingmm</dc:creator><author>Goingmm</author><pubDate>Thu, 23 Feb 2006 01:51:00 GMT</pubDate><guid>http://m.tkk7.com/goingmm/archive/2006/02/23/32063.html</guid><wfw:comment>http://m.tkk7.com/goingmm/comments/32063.html</wfw:comment><comments>http://m.tkk7.com/goingmm/archive/2006/02/23/32063.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/goingmm/comments/commentRss/32063.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/goingmm/services/trackbacks/32063.html</trackback:ping><description><![CDATA[     摘要: 再探c装载之U?..  <a href='http://m.tkk7.com/goingmm/archive/2006/02/23/32063.html'>阅读全文</a><img src ="http://m.tkk7.com/goingmm/aggbug/32063.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/goingmm/" target="_blank">Goingmm</a> 2006-02-23 09:51 <a href="http://m.tkk7.com/goingmm/archive/2006/02/23/32063.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2006 我们何M?/title><link>http://m.tkk7.com/goingmm/archive/2006/02/03/29489.html</link><dc:creator>Goingmm</dc:creator><author>Goingmm</author><pubDate>Fri, 03 Feb 2006 05:08:00 GMT</pubDate><guid>http://m.tkk7.com/goingmm/archive/2006/02/03/29489.html</guid><wfw:comment>http://m.tkk7.com/goingmm/comments/29489.html</wfw:comment><comments>http://m.tkk7.com/goingmm/archive/2006/02/03/29489.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://m.tkk7.com/goingmm/comments/commentRss/29489.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/goingmm/services/trackbacks/29489.html</trackback:ping><description><![CDATA[<P><BR><FONT size=2>凌晨Q看C个挺有趣的讨论[<A >JavaEye</A>]?006q_(d)Java界的主题是什么?</FONT></P> <P><FONT size=2>两年的开发经历,Ҏ(gu)技术的q逐与否我不敢妄自评论。茶余饭后无聊的思?BR>基础昄重要Q当C物能为我所用的时候,能快速应对,以<BR>不可否认Q新技术的出现,往往能成׃批热?j)追逐的人[只是部分,大部分属于随波逐流的困惑]</FONT></P> <P><FONT size=2>2000q?应用服务器年 <BR>       q一q_(d)Java应用服务器的需求成为各大公司的最大利益。谁不希望用“业界标准”来标榜自己呢!<BR>?nbsp; BEA公司的繁荣从此开?/FONT></P> <P><FONT size=2>2001q?EJBq?<BR>       q一q_(d)EJB2.0发布Q整个Java业界Z震动Q“牵强”的分布式架构,让EJB成了(jin)术词汇<BR>?nbsp; EJB成了(jin)高(sh)h(hun)企业软g的“文凭”。懂不懂EJB成ؓ(f)能不能拿到高薪的关键</FONT></P> <P><FONT size=2>2002q?设计模式q?<BR>       q一q_(d)大家开始发现EJB真TNND隄Q开始发现Java开发需要遵循某U规则,设计模式开始流行,<BR>       J2EE核心(j)模式也应q而生<BR>?nbsp;  <A >jdon</A>|站借着设计模式的热点一举成?/FONT></P> <P><FONT size=2>2003q?Hibernateq?<BR>       q一q_(d)大家开始否定EJBQ开始采用O/R MappingQHibernateq速流?BR>?nbsp; <A >JavaEye</A>׃颇有预见性的推广普及(qing)Hibernate而成为国内JavaC֌的亮?/FONT></P> <P><FONT size=2>2004q?Springq?nbsp;<BR>       q一q?EJB3规范和JDO2规范忙着打架Q但是真正的主角是SpringQSpring携着IoC和AOPq速占领J2EE的眼?<BR>?nbsp; 《Without EJB?成ؓ(f)大家背弃EJB2.0的宣a?/FONT></P> <P><FONT size=2>2005q?AJAXq?<BR>       q一q_(d)大部分时间大安在反思,或者是学习(fn)合适的应用E序架构。伴随着Google的GmailQ?BR>       Google Maps{一pdAJAX应用Q一个古老的XMLHTTPlg咔Rn。这个冬天终于找C(jin)主题-AJAX<BR>?nbsp; ?jing)傲的程序员回头x(chng)“用户体验?/FONT></P> <P><FONT size=2>2006q?XXq_(d) <BR>       q一q_(d)除了(jin)成名已久的EJB3.0值得期待Q我们还能看到出人意料的新名词吗Q?BR>       q一q_(d)会(x)是更深刻的反思年吗?[用已有的技术集合更完美的“用户体验”]<BR>       q一q_(d)我们何M从,我也说不清楚 <BR>       你呢Q?BR><BR> Goingmm  2006-02-03<BR></FONT></P><img src ="http://m.tkk7.com/goingmm/aggbug/29489.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/goingmm/" target="_blank">Goingmm</a> 2006-02-03 13:08 <a href="http://m.tkk7.com/goingmm/archive/2006/02/03/29489.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>WTP DEMO LOGhttp://m.tkk7.com/goingmm/archive/2006/01/02/26324.htmlGoingmmGoingmmMon, 02 Jan 2006 06:19:00 GMThttp://m.tkk7.com/goingmm/archive/2006/01/02/26324.htmlhttp://m.tkk7.com/goingmm/comments/26324.htmlhttp://m.tkk7.com/goingmm/archive/2006/01/02/26324.html#Feedback1http://m.tkk7.com/goingmm/comments/commentRss/26324.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/26324.html      
       WTPQWeb Tools PlatformQ?/FONT>是Eclipsel织的一个针对J2EE做的一个开发工hӞ是Eclipse下面的一个项?使用qWTP 0.7的用户都知道QW(xu)TP提供?jin)几乎完整的Web应用开发的工具支持.
      12?9日,Eclipse基金?x)发布?jin)WTP(Web Tool Project) 1.0rc版本.当天只发布了(jin)相关的插件包。我大概?5号从官方|站
http://download.eclipse.org/webtools/downloads/drops/R-1.0-200512210855/拿到?jin)全集成的版本(Eclipse Version: 3.1.1 Build id: M20050929-0840Q?BR>     用这个版本写?jin)一个DEMO。感觉是上手挺容易的。V1.0在V0.7的基上Fixed?jin)一些Bug。而且有些功能点简化了(jin)。做得更common一些。用过E遇C些问题,但我不肯定是不是对环境不够熟(zhn)造成的误解。比如修改一个JSP的名字,怎么发布都报错,只有x(chng)WTP重新Init一ơ。还有中文问题在q个环境中仍然存在。ؓ(f)?jin)不写Action和相关配|文Ӟ我用一个Servlet来控制{发的Q加上一句req.setCharacterEncoding("gb2312")搞定了(jin)?BR>
    列D主要使用q程Q?BR>
    ?Setup and configuration 
    ?Development basics       
    ?nbsp;JSP Editing                     
    ?nbsp; Servlets                         
    ?nbsp; Deployment descriptors  
    ?nbsp; Structure Source Editing (SSE) framework
    ?nbsp; Server
    ?nbsp; Running and debugging the web app

     准备放这个Demo的过E?和简单的代码。但是篇q原因,我就只能放一些零的囄。在q里没有打算告诉大家怎么d一个简单的Web应用。如果对WTP感兴的话,q里当是一些初U的?jin)解吧。有什么问?A href="goingmm@gmail.com">Ƣ迎讨论?BR>      
      WTP的基?jin)?PIC
      WTP-ProjectScopes.JPG

     WTP-Architecture.JPG

    基本配置 PIC
    Configuration-InstalledJRE.JPG

    Configuration-ServerRuntime.JPG

   关于DEMO PIC
   WTP-ProjectFileView.JPG

  d一个这L(fng)服务器很单。和W(xu)SAD差不?/FONT>WTP-ProjectStartServer.JPG

启动好的服务?BR>WTP-ServerStarted.JPG

q行JSP
WTP-ProjectRun.JPG

登陆面
WTP-ProjectLoginError.JPG

WTP-ProjectLogin.JPG

登陆成功
WTP-ProjectLoginSuccessful.JPG

中文h 演示
WTP-RequestZH.JPG

WTP-ResponseZH.JPG


END


goingmm 2006-01-02



Goingmm 2006-01-02 14:19 发表评论
]]>
看别异常处理http://m.tkk7.com/goingmm/archive/2005/12/17/24367.htmlGoingmmGoingmmSat, 17 Dec 2005 07:58:00 GMThttp://m.tkk7.com/goingmm/archive/2005/12/17/24367.htmlhttp://m.tkk7.com/goingmm/comments/24367.htmlhttp://m.tkk7.com/goingmm/archive/2005/12/17/24367.html#Feedback2http://m.tkk7.com/goingmm/comments/commentRss/24367.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/24367.html异常处理

       曄专门花时间研I过JAVA中“异常处理”。一直想写一文章。也一直没有找到合适的方式。概念书上都有,在这里我再重提又觉得对不起大家。最后就不了(jin)?jin)之?BR>       无意_(d)看到CSDN上有一文章写得不错。{l大家看看吧。作者给Z(jin)很标准的做法Q这里我加点?BR>      
       仅供参?
注:(x)所有徏议都不会(x)L疑和针对Q作者想要讲解的异常处理知识?/FONT>
     K?SPAN lang=EN-US> Source code的每一个角落都q样100%标准的去处理异常。会(x)一定程度的影响代码质量。不要相同的处理逻辑反复出现Q比如用Template模式化处理过E)(j)         
  
K?Ҏ(gu)自己的实际情况选择异常使用Q能不用异常处理的时候尽量不要用。有时候没有必?SPAN lang=EN-US>?/SPAN>强求?00%       
      
      转脓(chung)内容

      你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握?jin)Java的异常处理机Ӟ在下面这D代码中Q你能够q速找出异常处理的六个问题吗?
    

 11 OutputStreamWriter out =  
 22 java.sql.Connection conn =  
 33 try // ?nbsp;
 44  Statement stat = conn.createStatement(); 
 55  ResultSet rs = stat.executeQuery( 
 66   "select uid, name from user"); 
 77  while (rs.next()) 
 88  
 99   out.println("IDQ?/SPAN>" + rs.getString("uid"// ?nbsp;
1010    "Q姓名:(x)" + rs.getString("name")); 
1111  }
 
1212  conn.close(); // ?nbsp;
1313  out.close(); 
1414 }
 
1515 catch(Exception ex) // ?nbsp;
1616 
1717  ex.printStackTrace(); //_(d)?nbsp;
1818 }

作ؓ(f)一个JavaE序员,你至应该能够找Z个问题。但是,如果你不能找出全部六个问题,L(fng)l阅L文?

  本文讨论的不是Java异常处理的一般性原则,因ؓ(f)q些原则已经被大多数人熟知。我们要做的是分析各U可UCؓ(f)“反例”(anti-patternQ的q背优秀~码规范的常见坏?fn)惯Q帮助读者熟(zhn)这些典型的反面例子Q从而能够在实际工作中敏锐地察觉和避免这些问题?

  反例之一Q丢弃异?

  代码Q?5?18行?

  q段代码捕获?jin)异常却不作M处理Q可以算得上Java~程中的杀手。从问题出现的频J程度和害E度来看Q它也许可以和C/C++E序的一个恶名远播的问题相提q论??不检查缓冲区是否已满。如果你看到?jin)这U丢弃(而不是抛出)(j)异常的情况,可以癑ֈ之九(ji)十九(ji)地肯定代码存在问题(在极数情况下,q段代码有存在的理由Q但最好加上完整的注释Q以免引起别解)(j)?

  q段代码的错误在于,异常Q几乎)(j)L意味着某些事情不对劲了(jin)Q或者说臛_发生?jin)某些不d的事情,我们不应该对E序发出的求救信号保持沉默和无动于衷。调用一下printStackTrace不上“处理异常”。不错,调用printStackTrace对调试程序有帮助Q但E序调试阶段l束之后QprintStackTrace׃应再在异常处理模块中担负主要责Q?jin)?

  丢弃异常的情形非常普遍。打开JDK的ThreadDeathcȝ文档Q可以看C面这D说明:(x)“特别地Q虽然出现ThreadDeath是一U‘正常的情Ş’,但ThreadDeathcLError而不是Exception的子c,因ؓ(f)许多应用?x)捕h有的Exception然后丢弃它不再理睬。”这D话的意思是Q虽然ThreadDeath代表的是一U普通的问题Q但鉴于许多应用?x)试图捕h有异常然后不予以适当的处理,所以JDK把ThreadDeath定义成了(jin)Error的子c,因ؓ(f)ErrorcM表的是一般的应用不应该去捕获的严重问题。可见,丢弃异常q一坏习(fn)惯是如此常见Q它甚至已经影响C(jin)Java本n的设计?

  那么Q应该怎样Ҏ(gu)呢?主要有四个选择Q?

  1、处理异常。针对该异常采取一些行动,例如修正问题、提醒某个h或进行其他一些处理,要根据具体的情Ş定应该采取的动作。再ơ说明,调用printStackTrace不上已l“处理好?jin)异常”?

  2、重新抛出异常。处理异常的代码在分析异怹后,认ؓ(f)自己不能处理它,重新抛出异常也不׃ؓ(f)一U选择?

  3、把该异常{换成另一U异常。大多数情况下,q是指把一个低U的异常转换成应用的异常(其含义更Ҏ(gu)被用户了(jin)解的异常Q?

  4、不要捕获异常?

  l论一Q既然捕获了(jin)异常Q就要对它进行适当的处理。不要捕获异怹后又把它丢弃Q不予理睬?

  反例之二Q不指定具体的异?

  代码Q?5行?

  许多时候h们会(x)被这样一U“美妙的”想法吸引:(x)用一个catch语句捕获所有的异常。最常见的情形就是用catch(Exception ex)语句。但实际上,在绝大多数情况下Q这U做法不值得提倡。ؓ(f)什么呢Q?

  要理解其原因Q我们必d一下catch语句的用途。catch语句表示我们预期?x)出现某U异常,而且希望能够处理该异常。异常类的作用就是告诉Java~译器我们想要处理的是哪一U异常。由于绝大多数异帔R直接或间接从java.lang.ExceptionzQcatch(Exception ex)q当于说我们想要处理几乎所有的异常?

  再来看看前面的代码例子。我们真正想要捕L(fng)异常是什么呢Q最明显的一个是SQLExceptionQ这是JDBC操作中常见的异常。另一个可能的异常是IOExceptionQ因为它要操作OutputStreamWriter。显?dng)在同一个catch块中处理q两U截然不同的异常是不合适的。如果用两个catch块分别捕获SQLException和IOExceptionp好多?jin)。这是_(d)catch语句应当量指定具体的异常类型,而不应该指定늛范围太广的ExceptioncR?

  另一斚wQ除?jin)这两个特定的异常,q有其他许多异常也可能出现。例如,如果׃某种原因QexecuteQueryq回?jin)nullQ该怎么办?{案是让它们l箋(hu)抛出Q即不必捕获也不必处理。实际上Q我们不能也不应该去捕获可能出现的所有异常,E序的其他地方还有捕获异常的Z(x)??直至最后由JVM处理?

  l论二:(x)在catch语句中尽可能指定具体的异常类型,必要时用多个catch。不要试囑֤理所有可能出现的异常?

  反例之三Q占用资源不释放

  代码Q??14行?

  异常改变?sh)(jin)程序正常的执行程。这个道理虽然简单,却常常被Z忽视。如果程序用C(jin)文g、Socket、JDBCq接之类的资源,即遇到?jin)异常,也要正确释放占用的资源。ؓ(f)此,Java提供?jin)一个简化这cL作的关键词finally?

  finally是样好东西:(x)不管是否出现?jin)异常,Finally保证在try/catch/finally块结束之前,执行清理d的代码L有机?x)执行。遗憄是有些h却不?fn)惯使用finally?

  当然Q编写finally块应当多加小?j),特别是要注意在finally块之内抛出的异常??q是执行清理d的最后机?x),量不要再有难以处理的错误?

  l论三:(x)保证所有资源都被正释放。充分运用finally关键词?

反例之四Q不说明异常的详l信?

  代码Q??18行?

  仔细观察q段代码Q如果@环内部出C(jin)异常Q会(x)发生什么事情?我们可以得到_的信息判断@环内部出错的原因吗?不能。我们只能知道当前正在处理的cd生了(jin)某种错误Q但却不能获得Q何信息判断导致当前错误的原因?

  printStackTrace的堆栈跟t功能显C出E序q行到当前类的执行流E,但只提供?jin)一些最基本的信息,未能说明实际D错误的原因,同时也不易解诅R?

  因此Q在出现异常Ӟ最好能够提供一些文字信息,例如当前正在执行的类、方法和其他状态信息,包括以一U更适合阅读的方式整理和l织printStackTrace提供的信息?

  l论四:(x)在异常处理模块中提供适量的错误原因信息,l织错误信息使其易于理解和阅诅R?

  反例之五Q过于庞大的try?

  代码Q??14行?

  l常可以看到有h把大量的代码攑օ单个try块,实际上这不是好习(fn)惯。这U现象之所以常见,原因在于有些h囄事,不愿花时间分析一大块代码中哪几行代码?x)抛出异常、异常的具体cd是什么。把大量的语句装入单个巨大的try块就象是出门旅游时把所有日常用品塞入一个大子Q虽然东西是带上?jin),但要扑և来可不容易?

  一些新手常常把大量的代码放入单个try块,然后再在catch语句中声明ExceptionQ而不是分d个可能出现异常的D落q分别捕获其异常。这U做法ؓ(f)分析E序抛出异常的原因带来了(jin)困难Q因Z大段代码中有太多的地方可能抛出Exception?

  l论五:(x)量减小try块的体积?

  反例之六Q输出数据不完整

  代码Q??11行?

  不完整的数据是JavaE序的隐形杀手。仔l观察这D代码,考虑一下如果@环的中间抛出?jin)异常,会(x)发生什么事情。@环的执行当然是要被打断的Q其ơ,catch块会(x)执行??p些,再也没有其他动作?jin)。已l输出的数据怎么办?使用q些数据的h或设备将收到一份不完整的(因而也是错误的Q数据,却得不到M有关q䆾数据是否完整的提C。对于有些系l来_(d)数据不完整可能比pȝ停止q行带来更大的损失?

  较ؓ(f)理想的处|办法是向输?gu)备写一些信息,声明数据的不完整性;另一U可能有效的办法是,先缓冲要输出的数据,准备好全部数据之后再一ơ性输出?

  l论六:(x)全面考虑可能出现的异总?qing)这些异常对执行程的?jing)响?BR>
          改写后的代码

 1OutputStreamWriter out =  
 2java.sql.Connection conn =  
 3try 
 4 Statement stat = conn.createStatement(); 
 5 ResultSet rs = stat.executeQuery( 
 6  "select uid, name from user"); 
 7 while (rs.next()) 
 8 
 9  out.println("IDQ?/SPAN>" + rs.getString("uid"+ "Q姓? " + rs.getString("name")); 
10 }
 
11}
 
12catch(SQLException sqlex) 
13
14 out.println("警告Q数据不完整"); 
15 throw new ApplicationException("d数据时出现SQL错误", sqlex); 
16}
 
17catch(IOException ioex) 
18
19 throw new ApplicationException("写入数据时出现IO错误", ioex); 
20}
 
21finally 
22
23 if (conn != null
24  try 
25   conn.close(); 
26  }
 
27  catch(SQLException sqlex2) 
28  
29   System.err(this.getClass().getName() + ".mymethod - 不能关闭数据库连? " + sqlex2.toString()); 
30  }
 
31 }
 
32
33 if (out != null
34  try 
35   out.close(); 
36  }
 
37  catch(IOException ioex2) 
38  
39   System.err(this.getClass().getName() + ".mymethod - 不能关闭输出文g" + ioex2.toString()); 
40  }
 
41 }
 
42}
 


         本文的结Z是放之四L(fng)准的教条Q有时常识和l验才是最好的老师。如果你对自q做法没有癑ֈ之百的信?j),务必加上详细、全面的注释?

  另一斚wQ不要笑话这些错误,不妨问问你自己是否真地彻底摆׃(jin)q些坏习(fn)惯。即使最有经验的E序员偶?dng)也会(x)误入歧途,原因很简单,因ؓ(f)它们确实实带来?jin)“方侎(k)。所有这些反例都可以看作Java~程世界的恶,它们丽动hQ无孔不入,时刻诱惑着你。也许有Z(x)认ؓ(f)q些都属于鸡皮蒜毛的事Q不x(chng)齿,但请CQ勿以恶而ؓ(f)之,勿以善小而不为?BR>
2005-12-17
Goingmm  Subscription



Goingmm 2005-12-17 15:58 发表评论
]]>
New Version(3.1) release - Hibernatehttp://m.tkk7.com/goingmm/archive/2005/12/13/23664.htmlGoingmmGoingmmTue, 13 Dec 2005 07:01:00 GMThttp://m.tkk7.com/goingmm/archive/2005/12/13/23664.htmlhttp://m.tkk7.com/goingmm/comments/23664.htmlhttp://m.tkk7.com/goingmm/archive/2005/12/13/23664.html#Feedback4http://m.tkk7.com/goingmm/comments/commentRss/23664.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/23664.html
几天没看新闻QHibernate已经发布3.1版本
http://sourceforge.net/project/showfiles.php?group_id=40712&package_id=127784&release_id=377721

Down下来单看?jin)看。初看,没多大变化嘛。但是关注一下Change Log.
感觉q个版本主要是Fixed 3.0的一些Bug

Change Log 部分引用

 1Changes in version 3.1  (12.12.2005)
 2-------------------------------------------
 3
 4** Bug
 5    * [HHH-849]   - Cartesian product + implicit joins
 6    * [HHH-1065] - user provided connection not usable by default due to agressive release changes
 7    * [HHH-1101] - associations join fetched in HQL without owner being selected
 8    * [HHH-1133] - Comparators, defined for collections in mapping files, are not set
 9    * [HHH-1149] - NPE flushing reattached entity  w/ non-mutable natural-id
10    * [HHH-1170] - HQL 'cast' function doesn't work with MySQL 4 when casting to string
11    * [HHH-1187] - Cannot delete a object having a delete-orphan collection when user_rollback_id is set
12    * [HHH-1191] - HQL fails backward compatibility using classic translator
13    * [HHH-1194] - hql delete statements with joined-subclass hierarchies with a mapped where attribute at the root
14    * [HHH-1206] - Mappings.TableDescription is not serializable
15    * [HHH-1212] - mismatch in entity-modes defined in DTD and EntityMode class
16    * [HHH-1227] - ClassCastException on DOM4J replicate of Calendar property
17    * [HHH-1239] - BinaryArithmeticOperatorNode.getDataType() does not properly handle date/time arithmetic
18    * [HHH-1240] - Track connection leakage in JDBCContext.afterTransactionCompletion()
19    * [HHH-1245] - Calling the Session should register it with the current JTA txn.
20    * [HHH-1254] - Serialization of Sessions using JDBCTransactions with auto-flush/auto-close
21
22** New Feature
23    * [HHH-1222] - Autodiscover scalar types in native-sql
24    * [HHH-1243] - allow placeholders to system properties in config properties
25    * [HHH-1244] - Support for MySQL5 stored procedures
26    * [HHH-1260] - Configuration.mergeProperties()
27
28** Task
29    * [HHH-1066] - Upgrade CGLIB to fix proxy memory leak
30    * [HHH-1242] - upgrade ANTLR to 2.7.6rc1
31
32** Improvement
33    * [HHH-860] - insert  select  and version numbers
34    * [HHH-926] - TypeDef should be global
35    * [HHH-1138] - No ConstraintName when using PostgreSQL
36    * [HHH-1144] - Implement naming convention for temporary test failures
37    * [HHH-1153] - PropertiesHelper fails reading primitive values from hibernate-mapping when doc has whitespace
38    * [HHH-1182] - Access to filter metadata
39    * [HHH-1183] - Getting sql "plan" for DML operations
40    * [HHH-1197] - Support for HQL delete on MaxDB
41    * [HHH-1198] - post-insert event pass the entity wo the id field filled when the generator is identity
42    * [HHH-1213] - make JACC event listeners auto configurable (through initialize(Configuration))
43    * [HHH-1215] - Added support for LVARCHAR in InformixDialect
44    * [HHH-1218] - Add concat() function support to SAPDBDialect
45    * [HHH-1255] - ThreadLocalSessionContext and Session serialization
46
47** Patch
48    * [HHH-967] - executeUpdate on StatelessSession
49    * [HHH-1172] - Missing configuration templates for the new MimerSQLDialect
50
51** Deprecation
52    * [HHH-1229] - deprecate ability for entities to not define identifier properties
53
54
55Changes in version 3.1 rc3  (17.11.2005)
56-------------------------------------------
57
58** Bug
59    * [HHH-755] - Setter / Getter for property gDate are wrong
60    * [HHH-764] - XML mapping
61    * [HHH-1034] - The connection is closed  *outside* the JTA transaction in TransactionHelper
62    * [HHH-1062] - java:comp/UserTransaction not correct for JBoss
63    * [HHH-1064] - Exception using JTATransaction in WebSphere 6
64    * [HHH-1069] - Unnecessary commas generated in select with left outer joins
65    * [HHH-1075] - New parser  "not exists" command bug
66    * [HHH-1077] - Typo in docs: "equiped"
67    * [HHH-1080] - HQL delete fails on entities with where-fragments using operators other than '='
68    * [HHH-1081] - missing parens in example code for Criteria Associations
69    * [HHH-1084] - incorrect method name "sql" in Restrictions example, should be "sqlRestriction"
70    * [HHH-1091] - Can't write transparent CurrentSessionContext for BMT
71    * [HHH-1098] - Patch for build.sh to be able to build latest version on linux
72    * [HHH-1106] - HQL "not in" generatad wrong SQL
73    * [HHH-1111] - JDBCTransaction.rollback() results in a call to Interceptor.beforeTransactionCompletion()
74    * [HHH-1128] - Column alias clashes under  certain circumstances
75    * [HHH-1146] - latest cvs(11/10/05)  hibernate3 issue with classic query
76    * [HHH-1156] - StatefulPersistenceContext not serializable when property-ref is used
77    * [HHH-1160] - Incorrect use of getGeneratedKey() for Oracle
78
79** New Feature
80    * [HHH-449] - korean hibernate reference manual
81    * [HHH-1129] - use expected-type in 'untyped' Query.setParameter()
82
83** Improvement
84    * [HHH-221] - Proxy for one-to-one with property-ref
85    * [HHH-844] - move parameter "bookkeeping" into QueryTranslator
86    * [HHH-1051] - "Compiled" native SQL queries are not cached
87    * [HHH-1061] - import.sql should allow more human readable and usable files
88    * [HHH-1078] - <dynamic-component> requires type on property
89    * [HHH-1120] - Make NamingStrategy to work nicely with HA and EJB3 naming strategy
90    * [HHH-1142] - added getSelectSequenceNextValString() and getCurrentTimestampSelectString() to TimesTenDialect
91
92** Patch
93    * [HHH-1063] - support for 'locate' function in SQLServer and Sybase dialects
94    * [HHH-1090] - Allow subqueries on criteria to obtain non-string results
95    * [HHH-1095] - Hibernate takes incorrect HasCode when a lot of CompositeKeys and Lazy loading is involved
96    * [HHH-1103] -  finalize method filter for proxies
97    * [HHH-1136] - more meaningful AssertionFailure message in org.hibernate.persister.entity.JoinedSubclassEntityPersister.getTableId()
98


Goingmm 2005-12-13 15:01 发表评论
]]>
Javac装载体pM的隔L??/title><link>http://m.tkk7.com/goingmm/archive/2005/12/09/23140.html</link><dc:creator>Goingmm</dc:creator><author>Goingmm</author><pubDate>Fri, 09 Dec 2005 06:58:00 GMT</pubDate><guid>http://m.tkk7.com/goingmm/archive/2005/12/09/23140.html</guid><wfw:comment>http://m.tkk7.com/goingmm/comments/23140.html</wfw:comment><comments>http://m.tkk7.com/goingmm/archive/2005/12/09/23140.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.tkk7.com/goingmm/comments/commentRss/23140.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/goingmm/services/trackbacks/23140.html</trackback:ping><description><![CDATA[<P class=normal> <FONT size=2>      在想Class.forName 和ClassLoader.loadClass 的区别的时候。找到的一好文章。给有兴的朋友推荐<BR>       <BR>引用Q?BR>        Java中类的查找与装蝲出现的问题L?x)时不时出现在JavaE序员面前,qƈ不是什么丢脸的事情Q相信没有一个JavaE序员没遇到qClassNotException,因此不要人瞅见自׃犯这L(fng)错误而觉得不自然Q但是在如果出现?jin)ClassNotFoundException后异常后一脸的茫然Q那我想你该?jin)解一下java的类装蝲的体制了(jin)Q同时ؓ(f)?jin)进行下面的关于c装载器之间的隔L的讨论Q我们先单介l一下类装蝲的体pȝ构?BR>      <BR>全文地址Q?A >http://gceclub.sun.com.cn/yuanchuang/week-9/classloader.html</A><BR><BR><BR>2005-12-09</FONT></P><img src ="http://m.tkk7.com/goingmm/aggbug/23140.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/goingmm/" target="_blank">Goingmm</a> 2005-12-09 14:58 <a href="http://m.tkk7.com/goingmm/archive/2005/12/09/23140.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Session和Transaction安全撤离现场http://m.tkk7.com/goingmm/archive/2005/12/07/22850.htmlGoingmmGoingmmWed, 07 Dec 2005 05:55:00 GMThttp://m.tkk7.com/goingmm/archive/2005/12/07/22850.htmlhttp://m.tkk7.com/goingmm/comments/22850.htmlhttp://m.tkk7.com/goingmm/archive/2005/12/07/22850.html#Feedback11http://m.tkk7.com/goingmm/comments/commentRss/22850.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/22850.html阅读全文

Goingmm 2005-12-07 13:55 发表评论
]]>
Hibernate Transactionhttp://m.tkk7.com/goingmm/archive/2005/11/28/21642.htmlGoingmmGoingmmMon, 28 Nov 2005 04:00:00 GMThttp://m.tkk7.com/goingmm/archive/2005/11/28/21642.htmlhttp://m.tkk7.com/goingmm/comments/21642.htmlhttp://m.tkk7.com/goingmm/archive/2005/11/28/21642.html#Feedback3http://m.tkk7.com/goingmm/comments/commentRss/21642.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/21642.html上个星期五,因ؓ(f)公司停电(sh)。所以休息了(jin)三天。一q前Q这个数字可能会(x)感觉太短。但是现在却是突然觉得连l三天不上班。不知道该干什么好?BR>   ?/SPAN>q样的话题,{以后想明白?jin)再说吧Q?SPAN lang=EN-US>~
  
因ؓ(f)我一直不是很喜欢看书。现在的书,写得好的不多Q但是h(hun)p늚。所以,有时候就?x)把一些疑惑的问题写在一张纸上。然后去|上先收集一些资料,再阅Lȝ?BR>   2004q?SPAN lang=EN-US>12?SPAN lang=EN-US>3?/st1:chsdate> Hibernate使用JDBC?SPAN lang=EN-US>JTA理事务有什么区别?d的问题。不如今天就聊聊q个话题吧!可能Q现在也?x)有人对q个问题感觉疑惑的?SPAN lang=EN-US>

 11)
 2<property name="hibernate.transaction.factory_class">
 3org.hibernate.transaction.JDBCTransactionFactory
 4</property>
 5
 62)   
 7<property name="hibernate.transaction.factory_class">
 8org.hibernate.transaction.JTATransactionFactory
 9</property>
10


分析和解{:(x)
   可以选择其他的事务管理方式。不q都?SPAN lang=EN-US>JTA的不同实现版本。这个目录下面有|列出来hibernate-3.0\src\org\hibernate\transaction。比如:(x)

1<property name="hibernate.transaction.manager_lookup_class">
2org.hibernate.transaction.WeblogicTransactionManagerLookup
3</property>
4

概念事务Q事务就是能以整体的原子操作形式完成的一pd操作?BR>至于事务Z么会(x)产生Q有什么基本特性?{等。。这些问题(sh)天不pl的|列?jin)。网l上有写得很好的文章?BR>?SPAN lang=EN-US>JDBC的轻量񔞮装。他本nq不具备事物理的能力。事务的理和调度将委托l?SPAN lang=EN-US>JDBC或?SPAN lang=EN-US>JTAd?SPAN lang=EN-US>

JDBC?/SPAN>    ;      <---   session = sf.openSession();//  false;

     <---   tx = session.beginTransactioin();                    <---   调用业务Ҏ(gu)

                 <---   tx.commit(); (                  <---   session.close();

?/SPAN>看看W二U?SPAN lang=EN-US>[JTA Transaction]有什么神奇的地方吧!

   JTA JTA的事务是要容器支持的Q即JTSQ用来分布式的要求比较多一些,比如像银行这U大pȝQ处理多个事务源的这些的?BR>   事务理则是?SPAN lang=EN-US>JTA容器实现。事务的生命周期完全由容器来l护。容器中可以有很?SPAN lang=EN-US>Connection。按照执行的序Q因该是串联的一?SPAN lang=EN-US>JDBC Connection事务链。所?SPAN lang=EN-US>JTA的事务周期可以跨多个JDBC Connection的生命周期。在Hibernate中这U事务周期也可以跨多?SPAN lang=EN-US>Session?BR>   例如 Q?o:p>

1class A 有一个方?nbsp;savePerson()
2class B 有一个方?nbsp;saveAddress()
3// Call A.savePerson() and B.saveAddress() Used JTATransaction
4class C 有一个方?nbsp;saveAll() 
5UserTransaction tx = (UserTransaction)(new InitialContext.lookup(“…?)
6A.savePerson();
7B.saveAddress();
8tx.commit();
9

 

1Transaction tx = session.beginTransaction();
2tx.commit();
3


׃能在class A ?SPAN lang=EN-US> class B 中出现?SPAN lang=EN-US>

如果目有用?SPAN lang=EN-US>Sessionbean.可能你会(x)疑问Q这时候由谁来理事务呢?

自己实现一?SPAN lang=EN-US>Servicec,来统一调用持久层的Ҏ(gu)。这样也能做到前后台的松耦合。但是这时候你?SPAN lang=EN-US>session?SPAN lang=EN-US>Transaction的处理就需要小?j)?jin)。如果系l考虑分布式就使用JTA否则?SPAN lang=EN-US>JDBC_。但q是有必要考虑pȝ的升U,变迁什么的。对session?SPAN lang=EN-US>Transaction的处理,最好不要放?SPAN lang=EN-US>DAO里面做。单独实C个模板类来统一做。具体的原因和做法,以后有时间再写出来?SPAN lang=EN-US>

所以关于这个问题的l论是Q?SPAN lang=EN-US>



Goingmm 2005-11-28 12:00 发表评论
]]>
Eclipse + Junit http://m.tkk7.com/goingmm/archive/2005/11/13/19590.htmlGoingmmGoingmmSun, 13 Nov 2005 05:45:00 GMThttp://m.tkk7.com/goingmm/archive/2005/11/13/19590.htmlhttp://m.tkk7.com/goingmm/comments/19590.htmlhttp://m.tkk7.com/goingmm/archive/2005/11/13/19590.html#Feedback1http://m.tkk7.com/goingmm/comments/commentRss/19590.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/19590.html------------------------------------------------------------------------------------------------
   Eclipse Platform
Version: 3.1.0 Build id: I20050219-1500

Version:3.8.1

Eclipse用一个最单的例子Q让q没有用过的朋友,有一个简单的认识。主要是发图玩玩

1Q看看完成后的效果图
Project.JPG

2Q?SPAN style="FONT: 7pt 'Times New Roman'">      
q行Eclipse。新Z?/SPAN>workplace目Q点?/SPAN> file->new->projectQ选择Java目Q点M一步。写一个项目名Uͼ例如UseJUnit。点?/SPAN>Finish。这样就完成新项目的建立。再来配|一?/SPAN>EclipseQ在构徏路径中添?/SPAN>JUnitcd。在工具条上点击目->属性,选择Java Build PathQLibrariesQ选择 Add external JARsQ浏?/SPAN>Junit被存储的目录Q选择junit.jarQ点?yn)L开。你会(x)看见JUnit出现在库的列表中。点ȝ定,?/SPAN>Eclipse重徏路径?BR>addJar.JPG

         

3Q新Z个Class Person
Person.JPG

4) 新徏一个Test Class TestCaseWithJunit
newJunit.JPG

代码如下Q?FONT color=#ff0000>public void testSay() Ҏ(gu)是我自己加进ȝ

TestCaseWithJunit.JPG

5) Run Test case
   runJunit.JPG

6) 看看试l果
      result-1.JPG

7Q修改一下测试代?BR>   modifiedcode.JPG

8Q再看测试结?BR>result-2.JPG

result-3.JPG



呵呵Q?W一ơ发图。如果上面的q程描述有什么不清楚的地斏V请与我联系

2005-11-13  听涛 H台




Goingmm 2005-11-13 13:45 发表评论
]]>MySQL-Front + MySQLhttp://m.tkk7.com/goingmm/archive/2005/11/05/18293.htmlGoingmmGoingmmSat, 05 Nov 2005 06:43:00 GMThttp://m.tkk7.com/goingmm/archive/2005/11/05/18293.htmlhttp://m.tkk7.com/goingmm/comments/18293.htmlhttp://m.tkk7.com/goingmm/archive/2005/11/05/18293.html#Feedback8http://m.tkk7.com/goingmm/comments/commentRss/18293.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/18293.html-------------------------------------------------------------------------------------------------
   MySQL-Front  V3.2 Build 6.25

   MySQL           V4.1

-------------------------------------------------------------------------------------------------

      
从名字看双胞(yu)胎一般的他们俩。是l配吗?我也不知道,有时候,MySQL-Front?x)告诉我Q“我不认?/SPAN>MySQL”。不要以为我和他有啥子关pR这是我今天要谈到的问题。因为刚?/SPAN>MySQL一D|间。不知道q有没有更好的组合式用法?/SPAN>

1Q用[MySQL Command Line Client]q入MySQL cmd操作模式

drop database dbName;

create database dbName;

use dbName;

2) 数据库徏立好以后开始徏立表

   drop table person;

      create table person (

         person_name varchar(16) not null primary key,

         person_pass varchar(32) not null,

         person_sex int(1) default '0' ,

         person_email varchar(30) default null,

         person_lastLogTime dateTime,

         active_status int(1) default '0'

);

3Q?SPAN style="FONT: 7pt 'Times New Roman'">  现在你可以插入一些数?/SPAN>

insert into person  values('goingmm','***','?/SPAN>', 'todogoingmm@163.com', '2005-11-5',1);

………?..........

4)  OK 现在可以查询出来看了(jin)

select * from person

 

H然感觉老在q里操作很是不方ѝ于是想起了(jin)MySQL-Front。打开看看Q咦Q没有找到数据库dbName。努力了(jin)1个小时。原因猜完,办法惛_?/SPAN>MySQL-Frontq是说我认识他,你不要搞我拉Q?/SPAN>~果然Q再?/SPAN> MySQL-FrontL拉。有个性?/SPAN>

后来把刚才做?/SPAN>1Q?/SPAN>2Q?/SPAN>3Q?/SPAN>4Q全部回滚。就是删掉数据库。在MySQL-Front里面先徏立一个数据库。然后去cmd建立表,插入数据。最后回?/SPAN>MySQL-Front。哈哈,q回看到刚刚建立的数据库?jin)?/SPAN>

不知道大家有没有遇到q这个问题。是MySQL-Front?/SPAN>bug吗?q有一?/SPAN>MySQL-Front很弱智的问题Q比?/SPAN>SQL~辑器。希望他的下一个版本不要这么粗p。毕?/SPAN>MySQL ?/SPAN>5.0?BR>

2005q?1??BR>
-----------------------------------------------------------------------------------------



Goingmm 2005-11-05 14:43 发表评论
]]>
Cognize Hibernate ... Thirdhttp://m.tkk7.com/goingmm/archive/2005/11/03/18032.htmlGoingmmGoingmmThu, 03 Nov 2005 15:16:00 GMThttp://m.tkk7.com/goingmm/archive/2005/11/03/18032.htmlhttp://m.tkk7.com/goingmm/comments/18032.htmlhttp://m.tkk7.com/goingmm/archive/2005/11/03/18032.html#Feedback21http://m.tkk7.com/goingmm/comments/commentRss/18032.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/18032.html
很不好意思,前三都q是概念?BR>
其一Q?我想归纳下来Q给自己以后看做一个备?BR>其二Q?现在真没旉d代码

目做完Q回到成都,在后面的文章中,我会(x)抽空写一些实际的例子


---------------------------------------------------------------------------------------------------------------------
   概念Hibernate中的接口
---------------------------------------------------------------------------------------------------------------------

大致分类Q?BR>

?SPAN style="FONT: 7pt 'Times New Roman'">     被用L(fng)应用E序调用的,用来完成基本的创建、读取、更新、删除操作以?qing)查询操作的接口。这些接口是Hibernate实现用户E序的商业逻辑的主要接口,它们包括Session?/SPAN>Transaction?/SPAN>Query

?SPAN style="FONT: 7pt 'Times New Roman'">     Hibernate用来d诸如映射表这c配|文件的接口Q典型的代表?/SPAN>Configurationc?/SPAN>

?SPAN style="FONT: 7pt 'Times New Roman'">     回调(Callback)接口。它允许应用E序能对一些事件的发生作出相应的操作,例如Interceptor?/SPAN>Lifecycle?/SPAN>Validatable都是q一cL?/SPAN>

?SPAN style="FONT: 7pt 'Times New Roman'">     一些可以用来扩?/SPAN>Hibernate的映机制的接口Q例?/SPAN>UserType?/SPAN>CompositeUserType?/SPAN>IdentifierGenerator。如果你认有必要的话这些接口可qL(fng)序来实现?/SPAN>

 

Session接口

       Session接口对于Hibernate开发h员来说是一个最重要的接口。然而在Hibernate中,实例化的Session是一个轻量的类Q创建和销毁它都不?x)占用很多资源。这在实际项目中实很重要,因ؓ(f)在客L(fng)序中Q可能会(x)不断地创Z?qing)销?/SPAN>Session对象Q如?/SPAN>Session的开销太大Q会(x)l系l带来不良媄(jing)响。但值得注意的是Session对象是非U程安全的,因此在你的设计中Q最好是一个线E只创徏一?/SPAN>Session对象?/SPAN>

       Hibernate的设计者将session看作介于数据q接与事务管理一U中间接口。我们可以将session惌成一个持久对象的~冲区,Hibernate能检到q些持久对象的改变,q及(qing)时刷新数据库。我们有时也U?/SPAN>Session是一个持久层理器,因ؓ(f)它包含这一些持久层相关的操作,诸如存储持久对象x(chng)据库Q以?qing)从数据库从获得它们。请注意Q?/SPAN>Hibernate ?/SPAN>session不同?/SPAN>JSP应用中的HttpSession。我们通常?x)?/SPAN>HttpSesion对象UCؓ(f)用户Session?/SPAN>

 

SessionFactory 接口

       他用C(jin)一个设计模?/SPAN>[工厂模式]Q用L(fng)序从工厂c?/SPAN>SessionFactory中取?/SPAN>Session的实例?/SPAN>

       但是误住,SessionFactoryq不是轻量的!实际上它的设计者的意图是让它能在整个应用中׃n。典型地来说Q一个项目通常只需要一?/SPAN>SessionFactory够?jin),但是当你的项目要操作多个数据库时Q那你必Mؓ(f)每个数据库指定一?/SPAN>SessionFactory?/SPAN>

 

Configuration 接口

       Configuration接口的作用是?/SPAN>Hibernateq行配置Q以?qing)对它进行启动。在Hibernate的启动过E中Q?/SPAN>Configurationcȝ实例首先定位映射文档的位|,dq些配置Q然后创Z?/SPAN>SessionFactory对象?/SPAN>

 

Transaction 接口

       Transaction接口是一个可选的APIQ你可以选择不用这个接口,取而代之的?/SPAN>Hibernate的设计者自己写的底层事务处理代码?/SPAN> Transaction接口是对实际事务实现的一个抽象,q些实现包括JDBC的事务?/SPAN>JTA中的UserTransaction、甚臛_以是CORBA事务?BR>Z么要q样设计呢?因ؓ(f)q样使开发者能够用一个统一事务的操作界面,使得自己的项目可以在不同的环境和容器之间方便地移倹{?/SPAN>

 

Query?/SPAN>Criteria接口

       Query接口让你方便地对数据库及(qing)持久对象q行查询Q它可以有两U表达方式:(x)HQL语言或本地数据库?/SPAN>SQL语句?/SPAN>Queryl常被用来绑定查询参数、限制查询记录数量,q最l执行查询操?/SPAN>

 

Callback 接口

       当一些有用的事g发生时。例如持久对象的载入、存储、删除时Q?/SPAN>Callback接口?x)通知HibernateL收一个通知消息。一般而言Q?/SPAN>Callback接口在用L(fng)序中q不是必ȝQ但你要在你的项目中创徏审计日志Ӟ你可能会(x)用到它?BR>

2005q?1???nbsp; 阴天 温度偏低

听涛[601]?nbsp;H台



Goingmm 2005-11-03 23:16 发表评论
]]>
Cognize Hibernate ... Secondhttp://m.tkk7.com/goingmm/archive/2005/10/22/16448.htmlGoingmmGoingmmSat, 22 Oct 2005 14:11:00 GMThttp://m.tkk7.com/goingmm/archive/2005/10/22/16448.htmlhttp://m.tkk7.com/goingmm/comments/16448.htmlhttp://m.tkk7.com/goingmm/archive/2005/10/22/16448.html#Feedback1http://m.tkk7.com/goingmm/comments/commentRss/16448.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/16448.html
    学习(fn)Hibernate之前Q需要理?对象持箋(hu)性和对象-关系映射 的核?j)问?/P>

  【概c(din)?/FONT>
        1QHibernate是一个面向java环境的对?关系数据库映?ORM)工具?BR>        2QORM 表示一U技术,用来把对象模型表C的对象映射到基于SQL的关pL型中厅R?/P>

  【目标?/FONT> 
       对于开发者通常的数据持久化的编EQ务。解攑օ中的95%Q成为Java理持箋(hu)性数据问题的一U完整的解决Ҏ(gu)
 
  【体现?/FONT>
      他协调应用与关系数据库的交互Q让开发者解攑և来专注于手中的业务问题。他是一U非性的解决Ҏ(gu)

  【运行Hibernate需要的W三方库?BR>       dom4j (必需Q?   Hibernate在解析XML配置和XML映射元文件时需要用dom4j?BR>       CGLIB (必需Q?  Hibernate在运行时使用q个代码生成库强化类Q与Java反射机制联合使用Q?nbsp;
       Commons Collections and Commons Logging (必需Q? Hibernat使用Apache Jakarta Commons目提供的多个工L(fng)?BR>       ODMG4 (必需) : Hibernate提供?jin)一个可选的ODMG兼容持久化管理界面。如果你需要映集合,你就需要这个类库,
                                     q你不是ؓ(f)?jin)用ODMG API Q注意:(x)Z么在Hibernate 3.0 没有这个jar?jin)?Q?BR>       Log4j (可选)(j)QLog4j 是一ƾ优U的Debug工具Q具体用方式网l上有很多介l?/P>

Goingmm 2005-10-22 22:11 发表评论
]]>
Cognize Hibernate ... Firsthttp://m.tkk7.com/goingmm/archive/2005/10/22/16444.htmlGoingmmGoingmmSat, 22 Oct 2005 13:52:00 GMThttp://m.tkk7.com/goingmm/archive/2005/10/22/16444.htmlhttp://m.tkk7.com/goingmm/comments/16444.htmlhttp://m.tkk7.com/goingmm/archive/2005/10/22/16444.html#Feedback1http://m.tkk7.com/goingmm/comments/commentRss/16444.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/16444.html       几个月前目中用qhibernate。但是突d的学?fn)过E。现在回惌v来,q真是没能留下什么痕qV?BR>今天开始,我将?x)在I闲旉写下对Hibernate的一些认识。就当是一?"认知" 的过E?BR>
       Web应用框架(Jakarta Struts ?WebWork)QGUIlg框架QSwing ?SWTQ,或模版工PJSP ?
VelocityQ。每一U相互竞争的解决Ҏ(gu)都有其优~点Q但它们臛_都共享了(jin)相同的范围与M的方法?BR>不幸的是Q这q(sh)是持l性技术的情ŞQ对持箋(hu)性技术相同的问题有许多不同的混ؕ的解x(chng)案?BR>     
      前面q段话,意味深长。这是对"持箋(hu)性技?现状的一个概括?BR>      本着q种现状d?fn)和研?持箋(hu)性技?Q把C熟?zhn)?持箋(hu)性技?q行Ҏ(gu)式的学习(fn)。寻求框?BR>的处理思\。分析他们的优点Q缺?..

  先思考几个问?/P>

 1Q数据持久到底有那些成熟的方式? 
    ?直接使用SQL和JDBCq行工作 也可以结合DAO模式
    ?序列化持l性机?他提供了(jin)对象图Q应用状态)(j)写到字节中的能力,然后它可能被持箋(hu)化到文g或数据库中?BR>         他也被Java的远E方法调用(RMIQ用来为复杂对象传递D义。他的另一U用法是在机器集中跨节点复制应
         用状态?BR>    ?EJB实体Bean
    ?JDO
    ?ORM  对象-关系映射Q中间的短线?jin)当q两个领域相撞时出现的不匹配问?BR>    ?XML持箋(hu)?XML持箋(hu)层是序列化模式的变种?BR>    ?存储q程

 2QORM解决Ҏ(gu)有那些组成部分?
    ?在持l类的对象上执行基本的CRUD操作的一lAPI?BR>    ?用于指定查询的一U语a或一lAPIQ这些查询会(x)引用cdcd性?BR>    ?用于指定映射元数据的工具?BR>    ?实现ORM的一Ҏ(gu)术,用来与事务对象交互以完成脏检查、懒兌存取和其它优化功能?/P>

 3Q实现ORM的有那些不同的方式?
    ?U关p?
    ?轻量对象映射
    ?中等对象映射
    ?完全对象映射

 4Q相关的ORM有那些问题?
    ?持箋(hu)cd什么?它们是细_度的JavaBean吗?或者它们是一些类gEJB的组件模型的实例吗?持箋(hu)性工h多么
         透明Q我们需要ؓ(f)业务领域的类采用一U编E模型或一些规范吗Q?BR>    ?映射元数据是如何定义的?因ؓ(f)对象-关系转换完全由元数据控制Q这些元数据的格式和定义是重要的核心(j)问题?BR>         ORM工具应该提供一个图形化处理元数据的GUI吗?或者有定义元数据的更好的方法吗Q?BR>    ?我们应该映射cȝl承层次吗?q有几种标准{略。多态关联、抽象类和接口怎么映射呢?
    ?对象同一性和相等性如何关联到数据库同一性(主键Q?我们如何特定类的实例映到特定表的行?BR>    ?在运行时持箋(hu)性逻辑如何与业务域对象交互Q这是一个普通的~程问题Q有许多的解x(chng)案包括源代码生成、运行时
         反射、运行时字节码生成和~译时字节码增强。这个问题的解决Ҏ(gu)可能影响C的构E(但宁可如此,你也?BR>         愿受到其它像用户那样的媄(jing)响)(j)
    ?持箋(hu)性对象的生命周期是什么样的?有些对象的生命周期依赖于其它兌对象的生命周期吗Q?BR>         我们如何一个对象的生命周期转化为数据库行的生命周期Q?BR>    ?为排序、检索和合计提供?jin)什么样的工P应用可以在内存(sh)处理其中的一些事情。但Z(jin)有效C用关pL术有?BR>         需要通过数据库完成这些工?BR>    ?如何有效地取出关联数据?对关pL据的有效讉K通常通过表连接实现。面向对象的应用通常通过D对象图访问数
         据可能的话,两种数据讉K模式应该避免n+1ơ选择的问题,以及(qing)它的补充W卡?dng)积的问题(在一ơ查询中取出q多?BR>         数据)

  5Q所有数据访问技术都不得不面对的问题有那些?
    ?事务和ƈ发?BR>    ?~存理Q和q发性)(j)



Goingmm 2005-10-22 21:52 发表评论
]]>
P2P JBuilder 2006 TOP New Functionhttp://m.tkk7.com/goingmm/archive/2005/10/21/16196.htmlGoingmmGoingmmThu, 20 Oct 2005 16:15:00 GMThttp://m.tkk7.com/goingmm/archive/2005/10/21/16196.htmlhttp://m.tkk7.com/goingmm/comments/16196.htmlhttp://m.tkk7.com/goingmm/archive/2005/10/21/16196.html#Feedback2http://m.tkk7.com/goingmm/comments/commentRss/16196.htmlhttp://m.tkk7.com/goingmm/services/trackbacks/16196.html       谈不上JBuilder的忠实用P只是到现在还?sh)持着对他的那份亲切?9?日发布的Borland JBuilder 2006 首先在界面上变得更加单,直接Q咋看少?jin)几分商业?BR>      他创造性引入P2P对等协作功能Q开发团队能够跨地域的限制q行x(chng)交互(chatting, editing, designing, and debugging)Q实现虚拟化团队~程(Virtual Peer Programming)?BR>       详细介绍Q?A >http://dev.yesky.com/279/2157279_2.shtml
 



Goingmm 2005-10-21 00:15 发表评论
]]>
常见 HTTP 响应状态代?/title><link>http://m.tkk7.com/goingmm/archive/2005/10/10/15111.html</link><dc:creator>Goingmm</dc:creator><author>Goingmm</author><pubDate>Mon, 10 Oct 2005 02:58:00 GMT</pubDate><guid>http://m.tkk7.com/goingmm/archive/2005/10/10/15111.html</guid><wfw:comment>http://m.tkk7.com/goingmm/comments/15111.html</wfw:comment><comments>http://m.tkk7.com/goingmm/archive/2005/10/10/15111.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.tkk7.com/goingmm/comments/commentRss/15111.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/goingmm/services/trackbacks/15111.html</trackback:ping><description><![CDATA[<FONT size=2><BR>初期接触webE序开发的时候,遇到出错一定会(x)抱怨错误提CZ准确Q不具体Q不直观...<BR>记录Q?STRONG>常见的HTTP 响应状态代码.</STRONG>能帮助理解出错的原因Q?BR><BR><BR>  代码       含义                               2005q?0?0?BR>Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-<BR>         200                              成功         Q请求成功.<BR>  302       临时UdQ请求消息(f)?nbsp;ȝ在不同的URI.如果ȝ位置是新的URI,则响应中的Location题头?BR>                                                                  ?x)给出新的URI. 当客L(fng)被重新定向时Q通常使用此代码.<BR>  400       不良hQ由于语法错误而导致服务器无法理解h信息Q?BR>  401       未授权 Q请求要求n份验证或授权Q?BR>  403       止  Q服务器理解?jin)请求,但是Z某种原因却拒l处理请求.服务器可能会(x)揭示拒绝?BR>                                                                  因,?nbsp;可能不揭C.<BR>  404       未发现 Q服务器未发ChURI相匹配的内容Q?BR>  500       内部服务器错误:(x)服务器遇C(jin)未预期的情况Q它无法处理请求.          <BR>Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-  </FONT><img src ="http://m.tkk7.com/goingmm/aggbug/15111.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/goingmm/" target="_blank">Goingmm</a> 2005-10-10 10:58 <a href="http://m.tkk7.com/goingmm/archive/2005/10/10/15111.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://m.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://zjyxc.com" target="_blank">ѵƵ</a>| <a href="http://gylscm.com" target="_blank">þ91Ƶۿվ</a>| <a href="http://fz166.com" target="_blank">һƵѹۿ</a>| <a href="http://singbomb.com" target="_blank">avר߹ۿ</a>| <a href="http://vo168.com" target="_blank">Ƶվ</a>| <a href="http://yisousou.com" target="_blank">޳츾߳XXXXX</a>| <a href="http://zgxxx.com" target="_blank">Ƶ</a>| <a href="http://hzkjjy.com" target="_blank">޷ŮһŶ</a>| <a href="http://am3736.com" target="_blank">պӰ߹ۿƵ</a>| <a href="http://mychjp.com" target="_blank">avһ </a>| <a href="http://440878.com" target="_blank">߹ۿ</a>| <a href="http://321fafa.com" target="_blank">ѹƵ</a>| <a href="http://5gz0z.com" target="_blank">Ůվ</a>| <a href="http://bogygames.com" target="_blank">޾Ʒtvþþþ</a>| <a href="http://yuyang0752.com" target="_blank">պŷƵ</a>| <a href="http://pohezi.com" target="_blank">޾ƷĻþò</a>| <a href="http://sxgzjssb.com" target="_blank">þѸƵ</a>| <a href="http://25v8.com" target="_blank">ѿ߾Ʒһ</a>| <a href="http://zhhy68.com" target="_blank">ձַȫ߹ۿ</a>| <a href="http://hbqueena.com" target="_blank">AVպۺһ</a>| <a href="http://yw756.com" target="_blank">Ʒ99þ</a>| <a href="http://6atb.com" target="_blank">պƷƵ߹ۿ</a>| <a href="http://wuiso.com" target="_blank">޾Ʒ</a>| <a href="http://wwwpaogou123.com" target="_blank">AV߲</a>| <a href="http://www664660a.com" target="_blank">þþþAVר</a>| <a href="http://www137av.com" target="_blank">91վѹۿ</a>| <a href="http://kanzhelu23.com" target="_blank">ŷۺϾþþ</a>| <a href="http://448tk.com" target="_blank">avר߹ۿ</a>| <a href="http://jl910.com" target="_blank">Ʒһ </a>| <a href="http://zs0451.com" target="_blank">Ʒð׽Ƶ</a>| <a href="http://86trader.com" target="_blank">һësuvÿĹվ</a>| <a href="http://ywgj50225.com" target="_blank">þӰԺһ</a>| <a href="http://mcjc1.com" target="_blank">պavþþƷ</a>| <a href="http://www-774220.com" target="_blank">޹Ʒþҹ</a>| <a href="http://333uy.com" target="_blank">쿴Ƭˬ_Ѳ</a>| <a href="http://www-qwh.com" target="_blank">˾ҹƷƵ</a>| <a href="http://gdjiayou.com" target="_blank">ձvaƵۿ</a>| <a href="http://pjwys.com" target="_blank">99Ʒѹۿ</a>| <a href="http://t66p.com" target="_blank">޾Ʒ͵Բ</a>| <a href="http://www676617.com" target="_blank">ۺ</a>| <a href="http://fenxue520.com" target="_blank">AAAձ߲ѹۿ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>