﻿<?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-缘来如此-随笔分类-ssh</title><link>http://www.blogjava.net/supperchen/category/30053.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 17 Jul 2010 14:47:22 GMT</lastBuildDate><pubDate>Sat, 17 Jul 2010 14:47:22 GMT</pubDate><ttl>60</ttl><item><title>使用ControllerClassNameHandlerMapping实现SpringMVC</title><link>http://www.blogjava.net/supperchen/archive/2010/07/17/326415.html</link><dc:creator>缘来如此</dc:creator><author>缘来如此</author><pubDate>Sat, 17 Jul 2010 10:29:00 GMT</pubDate><guid>http://www.blogjava.net/supperchen/archive/2010/07/17/326415.html</guid><wfw:comment>http://www.blogjava.net/supperchen/comments/326415.html</wfw:comment><comments>http://www.blogjava.net/supperchen/archive/2010/07/17/326415.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/supperchen/comments/commentRss/326415.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/supperchen/services/trackbacks/326415.html</trackback:ping><description><![CDATA[做为spring的新手，很愿意尝试这样的优秀框架，但最近做项目时，总是碰到恼人的问题<br />为了做到零配置用到了ControllerClassNameHandlerMapping，访问预先设定好的url，总会出现<font color="#ff3300">No mapping <span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">springT</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration.hr] in DispatcherServlet with name </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Dispatcher</span><span style="COLOR: #000000">'</span></font><br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      </span><span style="COLOR: #000000">&lt;!--</span><span style="COLOR: #000000"> SpringMVC相关Bean配置 </span><span style="COLOR: #000000">--&gt;</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">bean </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/&gt;</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #000000">&lt;!--</span><span style="COLOR: #000000"> 以下为Controller </span><span style="COLOR: #000000">--&gt;</span><span style="COLOR: #000000">  <br /></span><span style="COLOR: #008080">5</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">bean id</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">com.RegistrationController</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/&gt;</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">6</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />     </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">bean id</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">userController</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">com.UserController</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> scope</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">request</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">/&gt;</span></div><br /><p><strong>看似Controller都已经注入到Spring中：</strong></p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Registering Controller </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"> as handler </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> URL path [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration]<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Creating shared instance of singleton bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Creating instance of bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Eagerly caching bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"> to allow </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> resolving potential circular references<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Finished creating instance of bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Mapped URL path [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration] onto handler [com.RegistrationController@1a2af25]<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">48</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">23</span><span style="COLOR: #000000"> Registering Controller </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">userController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"> as handler </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> URL path [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">user]</span></div><p>访问debug错误信息如下：</p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">49</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">50</span><span style="COLOR: #000000"> Looking up handler </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration.hr]<br /></span><span style="COLOR: #008080">2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">15</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">49</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">50</span><span style="COLOR: #000000"> No mapping </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">springT</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration.hr] in DispatcherServlet with name </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Dispatcher</span><span style="COLOR: #000000">'</span></div><p>通过多方努力，同事的帮助下，发现是缺包spring-web.jar、spring-webmvc.jar，也真搞笑，缺两个包居然没有错误，特此记录</p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080">1</span><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Rejected bean name </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping#0</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">: no URL paths identified<br /></span><span style="COLOR: #008080">2</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Creating shared instance of singleton bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">3</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Creating instance of bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">4</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Eagerly caching bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"> to allow </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> resolving potential circular references<br /></span><span style="COLOR: #008080">5</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Finished creating instance of bean </span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">registrationController</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">6</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Mapped URL path [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">] onto handler [com.RegistrationController@4dc957]<br /></span><span style="COLOR: #008080">7</span><span style="COLOR: #000000"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: #000000">2010</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">07</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">17</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">16</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">55</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">00</span><span style="COLOR: #000000"> Mapped URL path [</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">user</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">] onto handler [userController]</span></div><br /><br />中间最大的差异就是<br /><strong>正确：<br /></strong>   Mapped URL path [<span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">] onto handler [com.RegistrationController@4dc957]<br /><strong>错误：<br /></strong>   Mapped URL path [<span style="COLOR: #000000">/</span><span style="COLOR: #000000">registration] onto handler [com.RegistrationController@1a2af25</span><br /></span><img src ="http://www.blogjava.net/supperchen/aggbug/326415.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/supperchen/" target="_blank">缘来如此</a> 2010-07-17 18:29 <a href="http://www.blogjava.net/supperchen/archive/2010/07/17/326415.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用OpenSessionInView模式时的一个异常问题解决方法 </title><link>http://www.blogjava.net/supperchen/archive/2007/11/02/157795.html</link><dc:creator>缘来如此</dc:creator><author>缘来如此</author><pubDate>Fri, 02 Nov 2007 09:12:00 GMT</pubDate><guid>http://www.blogjava.net/supperchen/archive/2007/11/02/157795.html</guid><wfw:comment>http://www.blogjava.net/supperchen/comments/157795.html</wfw:comment><comments>http://www.blogjava.net/supperchen/archive/2007/11/02/157795.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/supperchen/comments/commentRss/157795.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/supperchen/services/trackbacks/157795.html</trackback:ping><description><![CDATA[由于OpenSessionInViewFilter把session绑在当前线程上，导致session的生命周期比事务要长，这期间所有事务性操作都在复用这同一个session，由此产生了一些“怪问题”： <br />
1.<strong>出现如下错误</strong>： <br />
     org.<span class="me1">springframework</span>.<span class="me1">dao</span>.<span class="me1">InvalidDataAccessApiUsageException</span>: Write operations are not allowed in read-only mode <span class="br0"><font color="#663300">(</font></span>FlushMode.<span class="me1">NEVER</span><span class="br0"><font color="#663300">)</font></span> - turn your Session into FlushMode.<span class="me1">AUTO</span> or remove <span class="st0"><font color="#0000ff">'readOnly'</font></span> marker from transaction definition <br />
  <strong>分析原因</strong>：OpenSessionInViewFilter在把session绑在当前线程上的时候,会把session的flush mode 设为FlushMode.NEVER，因此，如果某个方法没有事务或者有只读事务，则不能对session做insert,update,delete操作，除非事先把session的flush mode手动设为auto
<div><div class="de1"><strong>方案：</strong><br />
1、将singleSession设为false，这样只要改web.xml，缺点是Hibernate Session的Instance可能会大增，使用的JDBC Connection量也会大增，如果Connection Pool的maxPoolSize设得太小，很容易就出问题。&lt;!-- singleSession默认为true,若设为false则等于没用<span class="me1">OpenSessionInView --&gt;<br /></span>2、在控制器中自行管理Session的FlushMode，麻烦的是每个有Modify的Method都要多几行程式</div><div class="de1"><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><span style="color: rgb(0, 0, 0);">session.setFlushMode(FlushMode.AUTO); <br />
  session.update(user); <br />
  session.flush(); </span></div></div><div class="de1">3、Extend OpenSessionInViewFilter，Override protected Session getSession(SessionFactory sessionFactory)，将FlushMode直接改为Auto。<br />
4、让方法受Spring的事务控制（service和配置文件对应）</div></div><img src ="http://www.blogjava.net/supperchen/aggbug/157795.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/supperchen/" target="_blank">缘来如此</a> 2007-11-02 17:12 <a href="http://www.blogjava.net/supperchen/archive/2007/11/02/157795.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>