Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm thế nào để sử dụng cùng một kết nối cho hai truy vấn trong Spring?

Đảm bảo DAO của bạn được bao bọc trong một giao dịch (ví dụ:bằng cách sử dụng Bộ phận chặn của Spring cho Giao dịch). Sau đó, cùng một kết nối sẽ được sử dụng cho cả hai cuộc gọi.

Thậm chí tốt hơn là có các giao dịch cao hơn một cấp, ở lớp dịch vụ.

Tài liệu: http:// static .springsource.org / spring / docs / 3.0.x / spring-framework-reference / html / transaction.html

Cập nhật: Nếu bạn xem qua JavaDoc của DataSourceUtils.getConnection() mà bạn đã tham chiếu đến trong bản cập nhật của mình, bạn sẽ thấy rằng nó có được kết nối được liên kết với chuỗi hiện tại:

Theo điều này, nó sẽ hoạt động giống như bạn đã thiết lập nó. Tôi đã sử dụng mẫu này nhiều lần và chưa bao giờ gặp phải bất kỳ vấn đề nào như bạn mô tả ...

Cũng vui lòng xem chuỗi này, ai đó đang giải quyết các vấn đề tương tự ở đó: Các giao dịch khai báo Spring Jdbc được tạo nhưng không thực hiện bất kỳ điều gì



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể khởi động máy chủ:Ràng buộc trên cổng TCP / IP:Không thể chỉ định địa chỉ được yêu cầu

  2. Quyền bị từ chối bên trong / var / www / html khi tạo một trang web và đó là các tệp với máy chủ apache2

  3. Rails xác thực tính duy nhất không thành công trên các đầu vào đồng thời

  4. Xem tất cả các ràng buộc khóa ngoại cho toàn bộ cơ sở dữ liệu MySQL

  5. không thể đánh rơi khóa ngoại