Playframework 重头戏2.4-如何避免在代码更改后重新创建数据库池连接?

Playframework 重头戏2.4-如何避免在代码更改后重新创建数据库池连接?,playframework,playframework-2.0,playframework-2.4,Playframework,Playframework 2.0,Playframework 2.4,在代码更改后重新加载时,是否有方法避免重新创建到内存中数据库的连接池 [info] - application - Shutting down connection pool. [info] - application - Creating Pool for datasource 'default' [info] - play.api.db.DefaultDBApi - Database [default] connected at jdbc:h2:mem:play 即使您修改了与数据库无关的

在代码更改后重新加载时,是否有方法避免重新创建到内存中数据库的连接池

[info] - application - Shutting down connection pool.
[info] - application - Creating Pool for datasource 'default'
[info] - play.api.db.DefaultDBApi - Database [default] connected at jdbc:h2:mem:play
即使您修改了与数据库无关的内容,Play也会关闭连接池,然后立即重新创建连接池。必须有充分的理由,如果没有的话,还有一个变通办法


感谢您的帮助。

这是开发模式的正常行为。我只能在请求后添加播放重新加载代码(如果代码已更改)。所有应用程序都会重新加载,因此连接拉取也会重新创建(如果是由play创建的,则会重新创建内存中的数据库实例):

如果要将数据持久化到内存中的数据库中,则需要单独运行该数据库或使用具有持久化功能的数据库:


我想你用的是。唯一的方法是关闭此模式,因为每次源文件更改时,应用程序都会重新生成并重新启动。@Zernike我相信OP是在谈论游戏自身的连续重新编译,不确定这是基于SBT还是完全不同。它,“这是基于sbt自定义任务的。@托马斯邮件列表中的人一直指点我使用
@Singleton
并注入它。。。但是我还没有完全开发我的应用程序。。我希望我们能解决这个问题!很明显,这是可能的,因为Netty在编译之间不睡觉。连接池的关闭是真正的问题吗?问题是否可能是您丢失了测试数据,必须重新开始?在这种情况下,这可能会有所帮助