OLHub
Khoá họcCộng đồngBlogLộ trìnhVề OLHub
Trang chủ/Blog/Kỹ thuật

Chuyên mục

Kỹ thuật

Bài viết kỹ thuật từ đội ngũ OLHub.

Tất cảKỹ thuật
#aop#autoboxing#bigdecimal#hibernate#ieee-754#integer-cache#java#jpa#jvm#n-plus-1#spring#transactional
engineering

N+1 query: vì sao một lần xuất sao kê bắn ra 5.001 câu SQL?

Xuất sao kê treo chục giây vì Hibernate bắn 5.001 câu SQL thay vì 1 — còn màn danh sách phân trang thì che giấu bug. Cơ chế N+1 query trong JPA và 4 cách fix.

3 tháng 7, 2026 · 7 phút đọc
engineering

Vì sao không lưu tiền bằng double — và dùng BigDecimal sao cho đúng?

Báo cáo tổng lãi lệch 9 đồng dù từng chi nhánh khớp: cộng 10 triệu dòng bằng double, sai số mỗi phép cộng gom thành tiền thật. Cơ chế IEEE 754 và BigDecimal.

2 tháng 7, 2026 · 10 phút đọc
engineering

Vì sao @Transactional không rollback dù đã đặt đúng chỗ?

@Transactional nằm trên method mà dữ liệu vẫn lưu một nửa? Vì nó là AOP proxy: self-invocation bỏ qua proxy, còn checked exception mặc định không rollback.

2 tháng 7, 2026 · 6 phút đọc
engineering

Vì sao 127 == 127 đúng nhưng 128 == 128 sai trong Java?

Trong Java, so sánh hai Integer bằng == đôi khi đúng đôi khi sai — vì == so địa chỉ object, còn Integer chỉ cache dải −128..127. So giá trị: dùng .equals().

1 tháng 7, 2026 · 6 phút đọc
OLHub

Học lập trình hiểu bản chất. Mỗi concept giải thích từ “vì sao” trước khi dạy cách làm.

Khoá học

  • Java Core
  • Spring Boot
  • Thuật toán
  • SQL & Database

Tài nguyên

  • Cộng đồng
  • Lộ trình
  • Về OLHub

Pháp lý

  • Điều khoản

© 2026OLHub · Made with ♥ for Vietnamese devs

YouTubeTiếng Việt