﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-pear-随笔分类-心得体会</title><link>http://www.blogjava.net/pear/category/12088.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 27 Feb 2007 17:48:00 GMT</lastBuildDate><pubDate>Tue, 27 Feb 2007 17:48:00 GMT</pubDate><ttl>60</ttl><item><title>伤心太平洋，左连接和内联的区别</title><link>http://www.blogjava.net/pear/archive/2006/12/14/87812.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Thu, 14 Dec 2006 12:47:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/12/14/87812.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/87812.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/12/14/87812.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/87812.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/87812.html</trackback:ping><description><![CDATA[
		<dl>
				<dt class="indent">INNER 
</dt>
				<dd class="level2">指定返回所有相匹配的行对。废弃两个表中不匹配的行。如果未指定联接类型，则这是默认设置。<br /></dd>
				<dt class="indent">LEFT [OUTER] 
</dt>
				<dd class="level2">指定除所有由内联接返回的行外，所有来自左表的不符合指定条件的行也包含在结果集内。来自左表的输出列设置为 NULL。<br /></dd>
				<dt class="indent">RIGHT [OUTER] 
</dt>
				<dd class="level2">指定除所有由内联接返回的行外，所有来自右表的不符合指定条件的行也包含在结果集内。来自右表的输出列设置为 NULL。<br /></dd>
				<dt class="indent">FULL [OUTER] 
</dt>
				<dd class="level2">如果来自左表或右表的某行与选择准则不匹配，则指定在结果集内包含该行，并且将与另一个表对应的输出列设置为 NULL。除此之外，结果集中还包含通常由内联接返回的所有行。<br /></dd>
				<dt class="indent">&lt;join_hint&gt; 
</dt>
				<dd class="level2">指定联接提示或执行算法。如果指定了 &lt;join_hint&gt;，也必须明确指定 INNER、LEFT、RIGHT 或 FULL。有关联接提示的更多信息，请参见 <a href="mk:@MSITStore:C:\Program%20Files\Microsoft%20SQL%20Server\80\Tools\Books\tsqlref.chm::/ts_fa-fz_4ox9.htm">FROM</a>。<br /></dd>
				<dt class="indent">JOIN 
</dt>
				<dd class="level2">表示联接所指定的表或视图。 </dd>
		</dl>
<img src ="http://www.blogjava.net/pear/aggbug/87812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-12-14 20:47 <a href="http://www.blogjava.net/pear/archive/2006/12/14/87812.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>重新学习 Hibernate fetch lazy cascade inverse 关键字 </title><link>http://www.blogjava.net/pear/archive/2006/11/05/79251.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Sun, 05 Nov 2006 12:04:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/11/05/79251.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/79251.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/11/05/79251.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/79251.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/79251.html</trackback:ping><description><![CDATA[
		<p>Hibernate最让人头大的就是对集合的加载形式。<br />书看了N次了，还是没有真正理解Hibernate。所以下午专门做了下测试，对配置文件的意思加深了认识。<br /><br />假设有两个表，Photos(一）  ---  picture(多）Photo包含picture集合<br /><br />结论1： HQL代码 &gt; fetch（配置） &gt; lazy （配置）<br />结论2： 默认 lazy="true"<br />结论3： fetch 和 lazy 主要是用来级联查询的，   而 cascade 和 inverse 主要是用来级联插入和修改的<br />结论4： 如果你是用spring来帮你管理你的session, 并且是自动提交，延迟加载就等于没加载~_~(当然<br />                除非你手动重新打开session然后手动Hibernate.initialize(set);然后关闭session.<br />结论5:     cascade主要是简化了在代码中的级联更新和删除。<br />j结论6：老爸可以有多个孩子，一个孩子不能有多个老爸，而且老爸说的算, 孩子围着老爸转。<br />               所以Photos老爸要有权力所以 cascade 这个关键子都是送给老爸的， 也就是级联更新，<br />               老爸改姓了，儿子也得跟着改，呵呵。“不然，就没有零花钱咯”。<br />                而Picture儿子整体挨骂，但是还是要维护父子之间良好的关系，对老爸百依百顺，所<br />               以老爸就说，儿子，“关系，由你来维护（inverse="true") ，不然就不给零花钱。呵。”。<br />               &lt;set name="pictures" inverse="true" cascade="all"&gt;<br />                    &lt;key&gt;<br />                       &lt;column name="photosid" not-null="true" /&gt;<br />                    &lt;/key&gt;<br />                 &lt;one-to-many class="girl.domain.Picture" /&gt;<br />             &lt;/set&gt;<br />               <br />测试代码：<br /><br />   Photos p = ps.getById(1);<br />  Set&lt;Picture&gt; set = p.getPictures();<br />  for(Picture pic : set){<br />     System.out.println(pic.getId());<br />  }<br /><br />  配置文件的一部分：<br />       &lt;set name="pictures" inverse="true" cascade="all" &gt;<br />            &lt;key&gt;<br />                &lt;column name="photosid" not-null="true" /&gt;<br />            &lt;/key&gt;<br />            &lt;one-to-many class="girl.domain.Picture" /&gt;<br />        &lt;/set&gt;<br /><br />测试过程会对配置文件不断修改：并且从来不曾手动重新打开session<br /><br />测试结构：<br /><br />当配置条件为 lazy=true 一句查询 测试代码中没有调用getPicture()  正常 <br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>lazy=true 一句查询 有getPicture()<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>
				<br />lazy=true 一句查询  有getPicture() 并且访问了里面的元数Picture 且有异常抛出<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>
				<br />lazy="false" 两句查询  肯定没问题，因为全部数据都个查了出来 所以怎么调用都正常<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?<br />Hibernate: select pictures0_.photosid as photosid1_, pictures0_.id as id1_, pictures0_.id as id2_0_, pictures0_.photosid as photosid2_0_, pictures0_.name as name2_0_, pictures0_.clicked as clicked2_0_, pictures0_.uploaddate as uploaddate2_0_, pictures0_.size as size2_0_, pictures0_.description as descript7_2_0_, pictures0_.uri as uri2_0_ from super.picture pictures0_ where pictures0_.photosid=?</p>
		<p>
				<br />fetch="join"  一句查询  效果 ＝＝ lazy="false" 呵呵，哪个效率高，我就不知道了。。。。。。。。。。。<br />Hibernate: select photos0_.id as id0_1_, photos0_.userid as userid0_1_, photos0_.typeid as typeid0_1_, photos0_.name as name0_1_, photos0_.createtime as createtime0_1_, photos0_.description as descript6_0_1_, photos0_.faceid as faceid0_1_, photos0_.uri as uri0_1_, pictures1_.photosid as photosid3_, pictures1_.id as id3_, pictures1_.id as id2_0_, pictures1_.photosid as photosid2_0_, pictures1_.name as name2_0_, pictures1_.clicked as clicked2_0_, pictures1_.uploaddate as uploaddate2_0_, pictures1_.size as size2_0_, pictures1_.description as descript7_2_0_, pictures1_.uri as uri2_0_ from super.photos photos0_ left outer join super.picture pictures1_ on photos0_.id=pictures1_.photosid where photos0_.id=?</p>
		<p>不加fetch＝"join" 一句查询  没有getPicture() 正常<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>不加fetch＝"join" 一句查询  有getPicture() 正常<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>不加fetch＝"join" 一句查询 有getPicture() 并且访问里面的元素Picture的ID 有异常抛出<br />Hibernate: select photos0_.id as id0_0_, photos0_.userid as userid0_0_, photos0_.typeid as typeid0_0_, photos0_.name as name0_0_, photos0_.createtime as createtime0_0_, photos0_.description as descript6_0_0_, photos0_.faceid as faceid0_0_, photos0_.uri as uri0_0_ from super.photos photos0_ where photos0_.id=?</p>
		<p>来个两兵交战 fetch="join" lazy="true"  呵呵 结果，一句查询， 结构正常 所以就当lazy不存在好了。 看来fetch 是老大。、、、、、、、、、、、、、<br />Hibernate: select photos0_.id as id0_1_, photos0_.userid as userid0_1_, photos0_.typeid as typeid0_1_, photos0_.name as name0_1_, photos0_.createtime as createtime0_1_, photos0_.description as descript6_0_1_, photos0_.faceid as faceid0_1_, photos0_.uri as uri0_1_, pictures1_.photosid as photosid3_, pictures1_.id as id3_, pictures1_.id as id2_0_, pictures1_.photosid as photosid2_0_, pictures1_.name as name2_0_, pictures1_.clicked as clicked2_0_, pictures1_.uploaddate as uploaddate2_0_, pictures1_.size as size2_0_, pictures1_.description as descript7_2_0_, pictures1_.uri as uri2_0_ from super.photos photos0_ left outer join super.picture pictures1_ on photos0_.id=pictures1_.photosid where photos0_.id=?</p>
<img src ="http://www.blogjava.net/pear/aggbug/79251.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-11-05 20:04 <a href="http://www.blogjava.net/pear/archive/2006/11/05/79251.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>js 天气预报，蒙了我好久。</title><link>http://www.blogjava.net/pear/archive/2006/11/03/78939.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Fri, 03 Nov 2006 08:07:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/11/03/78939.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/78939.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/11/03/78939.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/78939.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/78939.html</trackback:ping><description><![CDATA[
		<p>1。代码<br />&lt;IFRAME ID='ifm2' WIDTH='189' HEIGHT='190' ALIGN='CENTER' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' SRC='http://weather.qq.com/inc/ss258.htm'&gt;&lt;/IFRAME&gt;<br />&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</p>
		<p>&lt;iframe width="145" height="130" border="0" align="center" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no" src="<a href="http://minisite.qq.com/Weather/news_new.html">http://minisite.qq.com/Weather/news_new.html</a>" allowTransparency="true"&gt;&lt;/iframe&gt;<br />&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</p>
		<p>&lt;iframe ALIGN='center' src="<a href="http://weather.265.com/weather.htm">http://weather.265.com/weather.htm</a>" width="168" height="54" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no"&gt;&lt;/iframe&gt;<br />&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</p>
		<p>&lt;IFRAME ID='ifm1' WIDTH='405' HEIGHT='332' ALIGN='center' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' SRC="<a href="http://weather.qq.com/24.htm&quot;&gt;&lt;/IFRAME">http://weather.qq.com/24.htm"&gt;&lt;/IFRAME</a>&gt; <br />&lt;br&gt;&lt;br&gt;&lt;br&gt;</p>
		<p>&lt;iframe width=160 height=230 frameborder=0 ALIGN='center' scrolling=NO src=http://appnews.qq.com/cgi-bin/news_qq_search?city=广州&gt;&lt;/iframe&gt; <br />&lt;br&gt;&lt;br&gt;&lt;br&gt;</p>
		<p>&lt;iframe width="469" height="218" border="0" align="center" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no" src="<a href="http://appnews.qq.com/cgi-bin/news_weather_search?city">http://appnews.qq.com/cgi-bin/news_weather_search?city</a>=广州" allowTransparency="true"&gt;&lt;/iframe&gt;<br />&lt;br&gt;&lt;br&gt;<br />&lt;IFRAME ID='ifm1' WIDTH='260' HEIGHT='70' ALIGN='CENTER' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' src="<a href="http://news.sina.com.cn/iframe/weather/440101.html&quot;&gt;&lt;/iframe">http://news.sina.com.cn/iframe/weather/440101.html"&gt;&lt;/iframe</a>&gt;</p>
		<p>效果如下：<br /><br /><br /><iframe id="ifm20" align="center" marginwidth="0" marginheight="0" src="http://weather.qq.com/inc/ss258.htm" frameborder="0" width="189" scrolling="no" height="190"></iframe><br /><br /><br /><br /><iframe border="0" align="center" marginwidth="0" marginheight="0" src="http://minisite.qq.com/Weather/news_new.html" frameborder="0" width="145" scrolling="no" height="130" allowtransparency=""></iframe><br /><br /><br /><br /><iframe border="0" align="center" marginwidth="0" marginheight="0" src="http://weather.265.com/weather.htm" frameborder="no" width="168" scrolling="no" height="54"></iframe><br /><br /><br /><br /><iframe id="ifm1" align="center" marginwidth="0" marginheight="0" src="http://weather.qq.com/24.htm" frameborder="0" width="405" scrolling="no" height="332"></iframe><br /><br /><br /><iframe align="center" src="http://appnews.qq.com/cgi-bin/news_qq_search?city=广州" frameborder="0" width="160" scrolling="no" height="230"></iframe><br /><br /><br /><iframe border="0" align="center" marginwidth="0" marginheight="0" src="http://appnews.qq.com/cgi-bin/news_weather_search?city=广州" frameborder="0" width="469" scrolling="no" height="218" allowtransparency=""></iframe><br /><br /><iframe id="ifm10" align="center" marginwidth="0" marginheight="0" src="http://news.sina.com.cn/iframe/weather/440101.html" frameborder="0" width="260" scrolling="no" height="70"></iframe></p>
<img src ="http://www.blogjava.net/pear/aggbug/78939.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-11-03 16:07 <a href="http://www.blogjava.net/pear/archive/2006/11/03/78939.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用Sun creator创建的 jsf 项目部署到其他服务器的问题： </title><link>http://www.blogjava.net/pear/archive/2006/10/02/73182.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Mon, 02 Oct 2006 02:59:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/10/02/73182.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/73182.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/10/02/73182.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/73182.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/73182.html</trackback:ping><description><![CDATA[
		<p>用Sun creator创建的 jsf 项目部署到其他服务器的问题： </p>
		<p>对jsf项目的支持，sun creator 无疑给人一种 耳目一新的感觉：<br />他对可视化开发的支持真的开始可以和.Net较劲了。</p>
		<p>但是 creator 有个问题就是可以把项目部署到 sun app server的项目部署到其他服务器老是出同样的问题：<br /> <br />下面总结一下：</p>
		<p>步骤一:  把项目导出成 *.war文件<br />步骤二:  把*.war拷贝到其他服务器的部署目录<br />         比如 tomcat/resin 的 webapp下<br />步骤三:  运行服务器(tomcat/resin) 问题来了,出现异常<br />[10:41:34.828] java.lang.NullPointerException<br />[10:41:34.828]  at javax.faces.webapp.FacesServlet.init(FacesServlet.java:144)<br />[10:41:34.828]  at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:646)<br />[10:41:34.828]  at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:587)</p>
		<p>看到这个"FacesServlet.java:144" 开始我怀疑是sun 的包的问题, 网上google和baidu了一下,没搜到相关问题的解决办法. <br />    最后在一个朋友的帮助下在web.xml文件里加了个Listener:<br />      &lt;listener&gt;<br />        &lt;listener-class&gt;com.sun.faces.config.ConfigureListener&lt;/listener-class&gt;<br />     &lt;/listener&gt;<br />嘿,还真行.</p>
		<p>心得如下:<br />     在用workshop或者myeclipse用myfaces包建jsf项目时,我们不会碰到类似的问题.<br />因为工具已经在web.xml里面加了listener:<br /> &lt;listener&gt;<br />  &lt;!-- Listener, that does all the startup work (configuration, init). --&gt;<br />  &lt;listener-class&gt;org.apache.myfaces.webapp.StartupServletContextListener    &lt;/listener-class&gt;<br /> &lt;/listener&gt;<br />但是如果用这些工具用 sun jsf 包时就要手动listerner.(如:步骤三)<br /></p>
		<p>给大家个连接: sun creator的教程,从这里开始学jsf感觉比较全面:<br /><a href="http://gceclub.sun.com.cn/prodtech/javatools/jscreator/learning/tutorials/index.html">http://gceclub.sun.com.cn/prodtech/javatools/jscreator/learning/tutorials/index.html</a></p>
<img src ="http://www.blogjava.net/pear/aggbug/73182.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-10-02 10:59 <a href="http://www.blogjava.net/pear/archive/2006/10/02/73182.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>BBS中的一个查询问题（原创） </title><link>http://www.blogjava.net/pear/archive/2006/09/28/72654.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Thu, 28 Sep 2006 10:49:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/09/28/72654.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/72654.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/09/28/72654.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/72654.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/72654.html</trackback:ping><description><![CDATA[
		<p>问题：<br />在BBS中，content 和  review 两张表，其中content 记录的是 帖子信息（topic_id,topic_title,topic_content等字段），review 表中记录的是回帖的信息，(review_id,topic_id等字段)在 求一SQL语句，其中topic_id和review_id都是自动增加，现在要求查询出有最新回复的帖子的信息，同时要求有多个回复的一个帖子的主题只能显示一次，能用一个SQL语句搞定吗？数据库是MYSQL 求高手指点下 <br /><br />回答：<br />select t.id,t.title,t.content,r.newposttime from topic as t inner join (select max(posttime) as newposttime, topicid from review group by topicid) as r on t.id=r.topicid<br /> <br />//测试<br />create table topic(<br />  id int primary key identity(1,1),<br />  title varchar(128),<br />  content text<br />)</p>
		<p>insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')<br />insert into topic(title,content) values('title1','content1')</p>
		<p>
				<br />create table review(<br />  id int primary key identity(1,1),<br />  topicid int references topic(id),<br />  content text,<br />  posttime datetime default getdate()<br />)</p>
		<p>insert into review(topicid,content) values(1,'reice1')<br />insert into review(topicid,content) values(1,'reice1')<br />insert into review(topicid,content) values(2,'reice1')<br />insert into review(topicid,content) values(2,'reice1')<br />insert into review(topicid,content) values(2,'reice1')<br />insert into review(topicid,content) values(3,'reice1')<br />insert into review(topicid,content) values(3,'reice1')<br />insert into review(topicid,content) values(3,'reice1')<br />insert into review(topicid,content) values(3,'reice1')<br />insert into review(topicid,content) values(4,'reice1')</p>
		<p>select t.id,t.title,t.content,r.newposttime from topic as t inner join (select max(posttime) as newposttime, topicid from review group by topicid) as r on t.id=r.topicid</p>
		<p>这些是测试数据,sqlserver2000测试通过 </p>
<img src ="http://www.blogjava.net/pear/aggbug/72654.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-09-28 18:49 <a href="http://www.blogjava.net/pear/archive/2006/09/28/72654.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>AJAX传参从失败到成功小结:</title><link>http://www.blogjava.net/pear/archive/2006/08/13/63342.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Sun, 13 Aug 2006 09:36:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/08/13/63342.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/63342.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/08/13/63342.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/63342.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/63342.html</trackback:ping><description><![CDATA[
		<p>AJAX传参从失败到成功小结:</p>
		<p>看了AJAX基础教程,感觉不错,但是在向服务器传递参数的时候总是会有让我感到苦恼的问题,<br />比如下面的代码:<br />&lt;SCRIPT type="text/javascript"&gt;<br />   function createXMLHttpRequest(){<br />      if(window.ActiveXObject){<br />         xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");      <br />      }else if(window.XMLHttpRequest){<br />         xmlHttp = new XMLHttpRequest();<br />      }<br />   }<br />   function startRequest(Sid){<br />      createXMLHttpRequest();<br />      xmlHttp.open("GET","/CountServlet?Sid="+Sid,true);<br />      xmlHttp.send(null);<br />   }<br />&lt;/SCRIPT&gt;<br />在服务端的CountServlet的doGet()方法在多次请求之间只会被调用一次,痛苦!!!(难道是异步的问题...)<br /><br />于是我又改了一下xmlHttp的open方法的参数如下,<br />xmlHttp.open("POST","/CountServlet,true)<br />xmlHttp.send("Sid="+Sid);<br />结果在服务器端的doPost()方法在每次请求都会被正常调用,但是,request.getPrameter("Sid")方法就是怎么也获得不到参数Sid,</p>
		<p>在高手的帮助下,我又再次改了代码,如下:<br />xmlHttp.open("POST","/CountServlet?Sid="+Sid,false);<br />xmlHttp.send(null);<br />嘿,还真的,牙好,胃口就好,入口见效,doPost()方法能正常被调用,参数也传得到,具体是什么原因,我还在学习之中...<br /><br />8.19日加：<br />解决办法：<br />除了高手回复的方法,还有一种解决办法就是:<br />xmlHttp.open("GET","/CountServlet?Sid="+Sid+"&amp;timeStamp="+new Date().getTime(),false);<br />xmlHttp.send(null);<br />同样是解决缓存的问题..</p>
<img src ="http://www.blogjava.net/pear/aggbug/63342.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-08-13 17:36 <a href="http://www.blogjava.net/pear/archive/2006/08/13/63342.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ServiceLocator 中一般包含static方法</title><link>http://www.blogjava.net/pear/archive/2006/07/10/57503.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Mon, 10 Jul 2006 06:53:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/07/10/57503.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/57503.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/07/10/57503.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/57503.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/57503.html</trackback:ping><description><![CDATA[1。ServiceLocator 中一般包含static方法<br />2。ServiceLocator角色  如果让TopBaseAction承担（可以非静态，也很方便）<br />3。ServiceLocator的角色和SessionFactory有些类似（都是用工厂模式）<br /><br />10月5日，今天玩了一下把 Service层的实力注入到Action里面,我的ServiceLocator类也终于可以睡觉去了.<img src ="http://www.blogjava.net/pear/aggbug/57503.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-07-10 14:53 <a href="http://www.blogjava.net/pear/archive/2006/07/10/57503.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaMail中文附件处理(转载) </title><link>http://www.blogjava.net/pear/archive/2006/06/16/53387.html</link><dc:creator>pear</dc:creator><author>pear</author><pubDate>Fri, 16 Jun 2006 12:12:00 GMT</pubDate><guid>http://www.blogjava.net/pear/archive/2006/06/16/53387.html</guid><wfw:comment>http://www.blogjava.net/pear/comments/53387.html</wfw:comment><comments>http://www.blogjava.net/pear/archive/2006/06/16/53387.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pear/comments/commentRss/53387.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pear/services/trackbacks/53387.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: //SendMail.java																																												import						 javax.mail.						*														;						import						 javax.mail.internet.						*											...&nbsp;&nbsp;<a href='http://www.blogjava.net/pear/archive/2006/06/16/53387.html'>阅读全文</a><img src ="http://www.blogjava.net/pear/aggbug/53387.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pear/" target="_blank">pear</a> 2006-06-16 20:12 <a href="http://www.blogjava.net/pear/archive/2006/06/16/53387.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>