??? 記得有一次在群里的一個朋友,問到了怎樣在Spring里控制Hibernate的Session,由于之前工作一直都比較緊張,所以現在才想起。呵呵。
??? Spring對Hibernate的Session管理是自動實現的,我們使用getHibernateTemplate()這個方法,對Session的打開,關閉都是由Spring來控制。結果有時候就會出現Session過早的關閉問題,對于這種情況,不知道大家是怎樣解決的呢?我之前也在網上看到一些說法,:hibernate的要點19,20這里,不過我測試之后好像還是會出現這個問題,可能是由于我比較菜吧。呵呵。大家也可以照hibernate要點的方法試試,成功的話分享一下。于是我就采用了比較笨的方法,寫了個ThreadLocalSession來自己控制處理,這樣做雖然是可以自己來控制,但對于Spring的事務管理就不支持了。我也是并不推薦的做法。呵呵。上次的朋友好像對這個ThreadLocalSession有興趣,今日就貼出來跟大家分享下了。大家可不要扔石頭啊。呵呵。
附件:ThreadLocalSession.rar