Tới nội dung chính
caltalys.dev

#Hibernate

10 bài viết.

Đồ hình trừu tượng của tập 5.4 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 21

return user; - một dòng code, bốn tầng trung gian, và một vòng tròn khép lại

Bài cuối: bốn khuôn mặt của lớp trung gian xếp thẳng hàng trong đúng một dòng return, và vì sao nổ StackOverflowError lại là điều may mắn.

Đồ hình trừu tượng của tập 4.4 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 17

Batch insert không batch, chậm gấp 10 - và tôi đã bật đúng cờ

Bật đủ mọi cờ batch mà Hibernate vẫn insert từng dòng, vì chiến lược sinh id đã quyết định xong trước khi cờ của bạn kịp có ý nghĩa.

Đồ hình trừu tượng của tập 4.3 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 16

MultipleBagFetchException - cái chuông báo cháy mà ai cũng chỉ lo tắt chuông

Hibernate ném exception không phải để làm khó bạn mà để chặn một tích Descartes. Đổi List sang Set là tắt chuông chứ không phải chữa cháy.

Đồ hình trừu tượng của tập 4.2 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 15

N+1: app chậm dần đều mà không một dòng lỗi

Một trăm linh một câu SELECT cho hai mươi đơn hàng, và không một dòng lỗi nào để bạn lần theo.

Đồ hình trừu tượng của tập 4.1 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 14

Set cả hai chiều mà FK trong DB vẫn null

Java có hai field, DB chỉ có một cột. Chỉ owning side cầm bút ký, bên mappedBy chỉ là tấm gương, và cuốn sổ không bao giờ nhìn gương.

Đồ hình trừu tượng của tập 3.4 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 13

Save entity xong, tìm trong HashSet không thấy nó đâu

size() bằng 1, iterate thì nhìn thấy nó, mà contains() trả false. Chuyện danh tính của entity khi id được cấp sau lúc nó vào Set.

Đồ hình trừu tượng của tập 3.3 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 12

LazyInitializationException: failed to lazily initialize a collection - no Session

Tắt open-in-view làm app nổ mười bảy chỗ, vì cả mười bảy chỗ đó lâu nay sống nhờ một cái filter mở sổ hộ bạn mà không ai biết.

Đồ hình trừu tượng của tập 3.2 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 11

"detached entity passed to persist" - người bị gạch tên xin quay lại văn phòng

Vì sao một entity từng được quản lý lại thành tội đồ ở request sau, và merge thật ra làm gì với nó.

Đồ hình trừu tượng của tập 3.1 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 10

Tôi không gọi save() mà DB vẫn UPDATE

Có một cuốn sổ đang theo dõi bạn kể cả khi bạn không gọi save. Chuyện dirty checking và thời điểm flush của persistence context.

Đồ hình trừu tượng của tập 2.3 trong Quyển Một
Lớp Trung Gian Vô Hình - tập 9

readOnly=true mà tôi vẫn insert được

readOnly không phải cái khoá, nó là lời nhắn - và chỉ những ai chịu nghe mới nghe. Bài này hé lộ cuốn sổ của Hibernate.