【发布时间】:2016-06-02 17:36:21
【问题描述】:
在 Grails 中,我可以通过 2 种方式创建 Sql 对象:
def sql = new Sql(sessionFactory.currentSession.connection())
def sql = new Sql(dataSource)
我在 Stackoverflow 上读过这个帖子:Getting the SessionFactory for a particular Datasource in Grails ...其中一个答案是 dataSource “...吞噬过多的连接以更好地使用 sessionFactory.currentSession.connection()”
这个建议是否正确,这两者有什么区别?
当检查创建的对象时,我可以看到它们几乎相同,只有 2 个属性不同: dataSource 和 useConnection。
对于 dataSource,它是 dataSource=TransactionAwareDataSourceProxy 和 useConnection=null,而对于 sessionFactory,它是 dataSource=null 和useConnection=$Proxy 36.
为什么这与“地精连接过多”的后果有所不同?
【问题讨论】:
标签: grails datasource sessionfactory