2012-02-14 41 views

Trả lời

2

Bộ nhớ cache Hibernate L1 lưu trữ các thực thể theo khóa chính. Điều này có nghĩa là nếu bạn tải cùng một thực thể bằng cách sử dụng load() hoặc get() (tôi nghĩ điều này cũng áp dụng cho các truy vấn đơn giản như: from Document d where d.id=2), nó sẽ được lưu vào bộ nhớ cache.

Trong trường hợp của bạn, truy vấn phức tạp hơn một chút và bạn sẽ phải sử dụng L2. Thật không may là không có logger chỉ ra hoạt động L1 (ít nhất là không documented) nhưng nhìn thấy các truy vấn SQL shouls là đủ.

Xem thêm:

+0

gì về các truy vấn với một trái tham gia lấy trên thực thể khác? cảm ơn vì liên kết – Quentin

+0

@Quentin: Tôi tin rằng bạn sẽ phải quay trở lại bộ nhớ cache L2 trong trường hợp này. –

+0

Ok, bạn có biết làm cách nào để tôi có thể đăng nhập (hoặc lớp học nào chịu trách nhiệm về bộ nhớ cache này), chỉ để đảm bảo? – Quentin

Các vấn đề liên quan