2015-08-09 72 views
2

準備語句在下面的代碼:創建參數化用油滑

val users = TableQuery[Users] 
def getUserById(id:Int) = db(users.filter(_.id === id).result) 

據我瞭解,getUserById將創建一個事先準備好的聲明每次的getUserById被執行,然後丟棄。有沒有辦法緩存準備好的語句,以便它只創建一次並多次調用。

回答

3

documentation for Slick表示您需要在連接池配置上啓用預準備語句緩存。

這裏還有quite a good article就可以了。

總之,Slick似乎緩存用於準備實際語句的字符串,但委託將實際準備的語句緩存到底層連接池實現。