Tôi có một câu hỏi đơn giản. Tôi tìm thấy cấu hình Hibernate này vào dự án của chúng tôi:Lập bản đồ XML Hibernate: Lừa sai hoặc Tìm nạp?
<many-to-one name="employee"
class="com.myapp.Employee"
cascade="merge"
lazy="false"
fetch="select">
<column name="employee_id"
sql-type="bigint"
not-null="true"/>
</many-to-one>
Không lấy = "chọn" có nghĩa là "tải Lazy tất cả các bộ sưu tập và các tổ chức" dựa trên Fetching Strategies. Nhưng bằng cách viết lazy = "false" có nghĩa là không tải lười. Vì vậy, cấu hình ở trên nói: "Vô hiệu hóa tải chậm. Cho phép tải chậm". Trong thực tế, điều này có nghĩa là tài sản là lười biếng nạp?
Vì vậy, tôi có thể rút ngắn mà cấu hình như sau:
<many-to-one name="employee"
class="com.myapp.Employee"
cascade="merge"
fetch="select">
<column name="employee_id"
sql-type="bigint"
not-null="true"/>
</many-to-one>
Nhưng không lấy = "chọn" chế độ mặc định? Vì vậy, có hiệu lực, tôi có thể khai báo cùng một cấu hình như:
<many-to-one name="employee"
class="com.myapp.Employee"
cascade="merge">
<column name="employee_id"
sql-type="bigint"
not-null="true"/>
</many-to-one>
Tôi có đúng không? Sai rồi? Ý tưởng? Cảm ơn
Nếu tôi muốn bật tải chậm, tôi phải thêm lazy = "true" và xóa lazy = "false"?
Thêm cả hai thuộc tính không thừa? Họ không phủ nhận lẫn nhau, phải không? – chris