我正在開發一個Web應用程序,使用Hibernate與Jboss 5.1上運行的Spring 2.5框架。我在春季使用hibernateTemplate執行休眠操作。部分處理過程需要多線程方法。因此,我已經使用TaskPoolExecutor實現了多線程。現在我希望生成的每個線程都與數據庫有新的連接(Sybase ASE)。Hibernate Spring Thread特定連接
如何在休眠中配置線程特定的連接?
在此先感謝!
乾杯, Dwarak
我正在開發一個Web應用程序,使用Hibernate與Jboss 5.1上運行的Spring 2.5框架。我在春季使用hibernateTemplate執行休眠操作。部分處理過程需要多線程方法。因此,我已經使用TaskPoolExecutor實現了多線程。現在我希望生成的每個線程都與數據庫有新的連接(Sybase ASE)。Hibernate Spring Thread特定連接
如何在休眠中配置線程特定的連接?
在此先感謝!
乾杯, Dwarak
會是什麼目的?如果出於性能方面的考慮,我建議使用連接池機制,並讓它爲您管理連接。在您使用JBoss時,您可以使用JNDI獲得託管連接。無論如何,只要記住你需要每個線程有一個會話。
使用SessionFactory.getCurrentSession
來訪問綁定到線程的Session
(和JDBC連接)。請參閱http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/orm.html#orm-hibernate-straight和http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#architecture-current-session
而您將如何在會話中設置連接?使用會話的`reconnect`方法?這是不推薦的,特別是因爲應該只通過doWork方法與Hibernate的連接進行交互。另外請注意,不建議使用`connection()`方法。 – jpkrohling 2011-02-01 18:03:09