Có cách nào dễ dàng để sử dụng hồ bơi kết nối DB với số Slick của scala không?Kết nối tổng hợp trong bóng bẩy?
Trả lời
Tôi sử dụng Apache Commons DBCP
cho việc này. Về cơ bản, bạn chỉ cần tạo một DataSource
, mà gói gọn các chi tiết tổng hợp, và thông qua đó DataSource
để Slick:
import org.apache.commons.dbcp.BasicDataSource
val dataSource: DataSource = {
val ds = new BasicDataSource
ds.setDriverClassName("org.hsqldb.jdbc.JDBCDriver")
ds.setUsername("SA")
ds.setPassword("")
ds.setMaxActive(20);
ds.setMaxIdle(10);
ds.setInitialSize(10);
ds.setValidationQuery("SELECT 1 FROM INFORMATION_SCHEMA.SYSTEM_USERS")
new java.io.File("target").mkdirs // ensure that folder for database exists
ds.setUrl("jdbc:hsqldb:file:target/db/db")
ds
}
// test the data source validity
dataSource.getConnection().close()
// get the Slick database that uses the pooled connection
val database = Database.forDataSource(dataSource)
Ví dụ này sử HSQLDB, nhưng có thể dễ dàng thích nghi với bất kỳ cơ sở dữ liệu khác.
Ví dụ đầy đủ là here (bạn có thể sao chép dự án và chạy sbt run
trong thư mục/thang máy để xem nó hoạt động).
Đối với hoàn tôi đã kết thúc viết một bài viết trên blog về vấn đề này:
http://fernandezpablo85.github.io/2013/04/07/slick_connection_pooling.html
Cảm ơn Pablo, bài viết trên blog đó rất hữu ích. – JMac
Bất cứ lúc nào! Nó đã được đóng góp cho các ví dụ trơn (https://github.com/slick/slick-examples) bằng cách này –
Có vẻ như phiên bản sau này của các kết nối cấu hình hồ bơi chơi - xem http://www.playframework.com/documentation/2.0.1/SettingsJDBC
Chơi 2.4 bây giờ sử dụng HikariCP mà trông rất đẹp: https://brettwooldridge.github.io/HikariCP/ https://www.playframework.com/documentation/2.4.x/SettingsJDBC
- 1. kết nối eclipselink tổng hợp
- 2. Kết nối tổng hợp mongodb
- 3. Kết nối tổng hợp trong PHP
- 4. MySQL - kết nối liên tục vs kết nối tổng hợp
- 5. mongodb và php: kết nối tổng hợp
- 6. Kết nối tổng hợp trong .NET/SQL Server?
- 7. Khuôn khổ thực thể và kết nối tổng hợp
- 8. Kết nối tổng hợp với cơ sở dữ liệu Access
- 9. Làm thế nào để quyết định số lượng kết nối cần thiết trong kết nối tổng hợp?
- 10. Truy vấn tổng hợp và không tổng hợp kết hợp trong SQL
- 11. Tổng phí tạo kết nối TCP
- 12. tổng hợp/tổng hợp với ggplot
- 13. Kết nối tổng hợp trong nút-mongodb-native, khi nào nên gọi db.open và db.close
- 14. kết nối tổng hợp và các câu lệnh chuẩn bị với groovy.sql.Sql hoặc JDBC trong Grails
- 15. Kết nối Perl Kết nối
- 16. Bảng tổng hợp không có tổng hợp?
- 17. Kết nối cơ sở dữ liệu tổng hợp với dịch vụ đa luồng
- 18. Tại sao chúng ta cần kết nối tổng hợp cho JDBC?
- 19. MongoDB: Kết nối tổng hợp và thời gian chờ là gì?
- 20. pymongo kết nối tổng hợp và yêu cầu của khách hàng
- 21. Cách tạo kết quả tổng hợp "trống" trong SQL
- 22. Có thể kết hợp tổng hợp bằng FetchXml trong Microsoft Dynamics CRM 4.0 không?
- 23. CCtray không thể kết nối với trang tổng quan
- 24. DDD/Tổng hợp trong .NET
- 25. Java: Phím tổng hợp trong hashmaps
- 26. Giải pháp tốt nhất để kết nối cơ sở dữ liệu tổng hợp trong python là gì?
- 27. Làm thế nào để buộc một SqlConnection để đóng cửa vật lý, trong khi sử dụng kết nối tổng hợp?
- 28. Trong bảng kết nối, giải pháp nào tốt nhất cho sự vắng mặt của Rails đối với khóa tổng hợp?
- 29. Đòn bẩy duyệt bộ nhớ đệm
- 30. Kết hợp các hàng/nối các hàng
Tôi đoán là nếu bạn sử dụng nó từ trong khung phát làm việc 2.1 bạn nhận được kết nối tổng hợp miễn phí. Play Framework sử dụng [BoneCP] (http://jolbox.com/) vì thư viện cơ bản của nó là – EECOLOR
Tôi không sử dụng tính năng phát. Cảm ơn –
Câu hỏi tương tự: [Thư viện hồ bơi kết nối Scala?] (Http://stackoverflow.com/questions/5080707/scala-connection-pool-library) – EECOLOR