在Slick 3.0中关闭数据库连接

时间:2015-10-13 03:44:37

标签: database connection slick-3.0

我正在使用Slick 3.x和Play 2.3.9 而不用 play-slick,因为play-slick不支持这种组合。我读了

http://blog.knoldus.com/2015/03/03/play-with-reactive-slick-a-simple-crud-application-in-play-framework-using-slick-3-0/

它提到必须明确关闭数据库连接,即

db.close

我是否必须明确关闭连接,如文章中所述? {{1}}将关闭连接和池吗?因为,OTH,Slick 3.0文档中的示例并没有明确地关闭连接。我本可以误解这份文件。感谢

2 个答案:

答案 0 :(得分:2)

我检查了MySQL进程列表show processlist,发现应用程序没有连接超过应用程序设置中指定的内容,并继续接受超过允许的数据库连接的请求。这表明在每次请求之后,db连接都返回到db.run(...)内的池,并且不需要db.close。

答案 1 :(得分:2)

db.close关闭连接池。你可能不想这样做。 在处理数据库查询之前,它编写数据库的方式可能会关闭。

db.close不会关闭连接或语句。这是在db.run()子句

中自动完成的