⚡DevPoolLearning Hub
Về chúng tôiAdmin
CHỦ ĐỀ ĐANG CHỌNJava
  • •Bài 1.1: Từ Java Thuần, Servlet/JSP Đến Spring Framework — Cội Nguồn & Sự Ra Đời Của IoC
  • •Bài 1.2: Tại Sao Cần Spring Boot? So Sánh Spring MVC Truyền Thống vs Spring Boot
  • •Bài 1.3: Giải Phẫu `@SpringBootApplication` & Quá Trình Khởi Động `SpringApplication.run()`
  • •Bài 1.4: Cơ Chế Auto-Configuration Hoạt Động Như Thế Nào? Giải Mã `@ConditionalOn...`
  • •Bài 1.5: Quản Lý Dependency Với Spring Boot Starter & BOM (Bill of Materials)
  • •Bài 2.1: Spring IoC Container & `ApplicationContext` — Cơ Chế Quét & Nạp Bean
  • •Bài 2.2: Khai Báo Bean: Stereotype Annotations vs `@Configuration` + `@Bean`
  • •Bài 2.3: Cơ Chế Dependency Injection: Constructor vs Setter vs Field Injection — Tại Sao Field Injection Là Anti-Pattern?
  • •Bài 2.4: Xử Lý Xung Đột Bean: `@Primary`, `@Qualifier`, Bean Naming Strategy & Dynamic Strategy Pattern
  • •Bài 2.5: Vòng Đời Của Spring Bean (Bean Lifecycle) & Can Thiệp Với `BeanPostProcessor`
  • •Bài 2.6: Bean Scopes & Hiểm Họa Thread-Safety Trong Môi Trường Concurrency
  • •Bài 2.7: Debugging & Xử Lý Lỗi Vòng Lặp Phụ Thuộc (Circular Dependency)
  • •Bài 3.1: Cơ Chế & Thứ Tự Ưu Tiên Nạp Cấu Hình Trong Spring Boot (Property Resolution Order)
  • •Bài 3.2: `application.properties` vs `application.yml` — So Sánh, Cú Pháp & Cạm Bẫy Cần Tránh
  • •Bài 3.3: Type-Safe Configuration: `@ConfigurationProperties` vs `@Value` & Validation Cấu Hình
  • •Bài 3.4: Quản Lý Đa Môi Trường Với Spring Profiles (`dev`, `staging`, `prod`)
  • •Bài 3.5: Bảo Mật Cấu Hình, Secret Management & Quản Lý Biến Môi Trường Thực Chiến
  • •Bài 4.1: Vòng Đời Của Một HTTP Request Trong Spring MVC & Kiến Trúc `DispatcherServlet`
  • •Bài 4.2: Thiết Kế REST Controller Chuẩn Production & Các Quy Tắc Định Tuyến (Routing)
  • •Bài 4.3: Trích Xuất Dữ Liệu Request: `@PathVariable`, `@RequestParam`, `@RequestBody`, `@RequestHeader`
  • •Bài 4.4: HTTP Status Codes, Response Formatting & Sử Dụng `ResponseEntity<T>` Chuẩn RESTful
  • •Bài 4.5: Quản Lý JSON Serialization & Deserialization Với Jackson Trong Spring Boot
  • •Bài 5.1: Jakarta Bean Validation Trong Spring Boot: `@Valid`, `@Validated` & Built-in Constraints
  • •Bài 5.2: Xây Dựng Custom Validator & Custom Validation Annotation
  • •Bài 5.3: Nested Object Validation & Validation Groups (Phân Biệt Create/Update DTO)
  • •Bài 5.4: Kiến Trúc Xử Lý Lỗi Tập Trung Với `@RestControllerAdvice` & `@ExceptionHandler`
  • •Bài 5.5: Chuẩn Hóa Response Lỗi Theo Chuẩn Quốc Tế RFC 7807 (`ProblemDetails`) Trong Spring Boot 3
  • •Bài 5.6: Các Anti-Patterns Nguy Hiểm Trong Xử Lý Ngoại Lệ & Cách Khắc Phục
  • •Bài 6.1: So Sánh Toàn Diện: Servlet Filter vs HandlerInterceptor vs AOP Aspect
  • •Bài 6.2: Xây Dựng Logging Filter Với MDC (Mapped Diagnostic Context) & Trace ID
  • •Bài 6.3: Xử Lý File Upload & Streaming Response Dung Lượng Lớn Trong Spring Boot
  • •Bài 6.4: Cấu Hình Cross-Origin Resource Sharing (CORS) Chuẩn Xác & An Toàn Trong Spring Boot
  • •Bài 7.1: Tổng Quan Persistence Layer: JDBC, JPA, Hibernate & Spring Data JPA
  • •Bài 7.2: Thiết Kế JPA Entity Chuẩn & Chiến Lược Sinh Khóa Chính (`IDENTITY`, `SEQUENCE`, `UUID v7`)
  • •Bài 7.3: Vòng Đời Của JPA Entity & Cơ Chế Hibernate First-Level Cache (Persistence Context)
  • •Bài 7.4: Quan Hệ JPA Entity: Owning Side, `mappedBy`, `CascadeType` & `orphanRemoval`
  • •Bài 7.5: `FetchType.EAGER` vs `FetchType.LAZY` — Bản Chất Proxy & Tại Sao EAGER Là Cơn Ác Mộng
  • •Bài 8.1: Spring Data JPA Repository & Các Phương Thức Query: Derived Methods, JPQL vs Native SQL
  • •Bài 8.2: Bài Toán Kinh Điển N+1 Query: Nhận Diện & Giải Pháp Triệt Để Với `JOIN FETCH` & `@EntityGraph`
  • •Bài 8.3: Xử Lý `LazyInitializationException` & Cạm Bẫy Open-Session-In-View (OSIV) Trong Production
  • •Bài 8.4: Phân Trang Chuẩn Xác: `Pageable`, `Page<T>` vs `Slice<T>` & Keyset Pagination Cho Dữ Liệu Lớn
  • •Bài 8.5: Xây Dựng Dynamic Query Với JPA Specification & Criteria API
  • •Bài 8.6: DTO Projections: Tối Ưu Hóa Payload Truy Vấn Với Interface & Class Projections
  • •Bài 9.1: Bản Chất `@Transactional`: Cơ Chế AOP Proxy & TransactionManager Hoạt Động Như Thế Nào?
  • •Bài 9.2: Các Cấp Độ Lan Truyền Giao Dịch (Transaction Propagation Levels)
  • •Bài 9.3: Các Cấp Độ Cô Lập Giao Dịch (Isolation Levels) & Các Hiện Tượng Tranh Chấp Dữ Liệu
  • •Bài 9.4: Các Cạm Bẫy Chết Người Với `@Transactional` & Cách Phòng Tránh
  • •Bài 9.5: Quản Lý Database Connection Pool Với HikariCP & Các Thông Số Cần Tinh Chỉnh
  • •Bài 9.6: Quản Lý Thay Đổi Cấu Trúc Cơ Sở Dữ Liệu Với Flyway
  • •Bài 10.1: Mental Model Spring Security: `DelegatingFilterProxy` & `FilterChainProxy`
  • •Bài 10.2: Luồng Xác Thực (Authentication) & Phân Quyền (Authorization) Dưới Góc Nhìn Kỹ Thuật
  • •Bài 10.3: Cấu Hình `SecurityFilterChain` Hiện Đại Trong Spring Security 6
  • •Bài 10.4: Quản Lý Mật Khẩu An Toàn Với `PasswordEncoder` & Tùy Biến `UserDetailsService`
  • •Bài 11.1: Kiến Trúc Stateless Authentication Với JWT (Access Token, Refresh Token & Token Rotation)
  • •Bài 11.2: Tự Viết `JwtAuthenticationFilter` & `JwtTokenProvider` Chuẩn JJWT 0.12+
  • •Bài 11.3: Phân Quyền Nâng Cao: Role-Based Access Control (RBAC) & `@PreAuthorize` Với SpEL
  • •Bài 11.4: Tổng Quan Về OAuth2 & Tích Hợp OAuth2 Resource Server Với Keycloak / Auth0
  • •Bài 11.5: Phòng Chống Các Lỗ Hổng Bảo Mật Web Phổ Biến Trong Spring Boot: CSRF, XSS, SQL Injection
  • •Bài 12.1: Thực Thi Bất Đồng Bộ Với `@Async` & Cấu Hình Custom `ThreadPoolTaskExecutor`
  • •Bài 12.2: Xử Lý Ngoại Lệ & Truyền Tải Ngữ Cảnh (Context Propagation: Security & MDC) Trong Async
  • •Bài 12.3: Khai Phóng Sức Mạnh Virtual Threads (Project Loom / Java 21) Trong Spring Boot 3.2+
  • •Bài 12.4: Lên Lịch Tác Vụ Định Kỳ Với `@Scheduled` & Khóa Phân Tán Đa Node Với ShedLock
  • •Bài 13.1: Kiến Trúc Event-Driven Nội Bộ Với `ApplicationEventPublisher` & `@EventListener`
  • •Bài 13.2: Đồng Bộ Sự Kiện Với Database Transaction Bằng `@TransactionalEventListener` (`AFTER_COMMIT`)
  • •Bài 13.3: Spring Cache Abstraction: `@EnableCaching`, `@Cacheable`, `@CachePut`, `@CacheEvict`
  • •Bài 13.4: Tích Hợp Distributed Cache Với Redis & Spring Data Redis
  • •Bài 13.5: Các Cạm Bẫy Caching Kinh Điển: Cache Penetration, Cache Avalanche & Cache Stampede
  • •Bài 14.1: Kim Tự Tháp Kiểm Thử (Testing Pyramid) Trong Ứng Dụng Spring Boot
  • •Bài 14.2: Viết Unit Test Thuần Túy Cho Service Layer Với JUnit 5 & Mockito
  • •Bài 14.3: Làm Chủ Mockito Nâng Cao: `verify()`, `ArgumentCaptor` & Bắt Ngoại Lệ
  • •Bài 14.4: Nâng Tầm Kiểm Thử Với AssertJ Fluent Assertions
  • •Bài 15.1: Slice Testing Tầng Controller Với `@WebMvcTest` & `MockMvc`
  • •Bài 15.2: Slice Testing Tầng Repository Với `@DataJpaTest` & `TestEntityManager`
  • •Bài 15.3: Integration Testing Toàn Diện Với `@SpringBootTest` & `@MockitoBean` (Spring Boot 3.4+)
  • •Bài 15.4: Kiểm Thử Database & Redis Thực Tế Với Testcontainers (Nói Không Với H2)
  • •Bài 15.5: Chiến Lược Tối Ưu Tốc Độ Test Suite & Tránh Cạm Bẫy `@DirtiesContext`
  • •Bài 16.1: Giám Sát Ứng Dụng Với Spring Boot Actuator & Các Endpoints Cốt Lõi
  • •Bài 16.2: Xây Dựng Custom HealthIndicator Cho Các Dịch Vụ Phụ Thuộc Bên Ngoài
  • •Bài 16.3: Thu Thập & Trực Quan Hóa Metrics Với Micrometer, Prometheus & Grafana
  • •Bài 16.4: Distributed Tracing Trong Spring Boot 3 Với Micrometer Tracing & Zipkin / OpenTelemetry
  • •Bài 16.5: Structured Logging Với JSON & Tích Hợp Hệ Thống Quản Lý Log Tập Trung (ELK / Loki)
  • •Bài 17.1: Cơ Chế Tắt Êm Ả (Graceful Shutdown) Trong Spring Boot Khi Triển Khai Zero-Downtime
  • •Bài 17.2: Đóng Gói Docker Tối Ưu Với Layered JARs & Cloud Native Buildpacks
  • •Bài 17.3: Tối Ưu Hóa JVM Options Trong Docker Container & Ngăn Chặn OOMKilled
  • •Bài 17.4: Chuẩn Bị Triển Khai Kubernetes: Liveness, Readiness & Startup Probes
  • •Bài 18.1: Kiến Trúc Phân Tầng (Layered) vs Kiến Trúc Lục Giác (Hexagonal / Ports & Adapters)
  • •Bài 18.2: Áp Dụng Clean Architecture & Tổ Chức Package Trong Dự Án Spring Boot Thực Tế
  • •Bài 18.3: Ánh Xạ Dữ Liệu Entity $\leftrightarrow$ DTO Hiệu Năng Cao Với MapStruct (Nói Không Với Reflection)
  • •Bài 18.4: Chiến Lược Quản Lý Phiên Bản API (API Versioning Strategies)
  • •Bài 19.1: Giao Tiếp HTTP Client Hiện Đại: `RestClient` (Spring 6.1+) vs `WebClient` vs `RestTemplate`
  • •Bài 19.2: Ngăn Chặn Sụp Đổ Dây Chuyền Với Circuit Breaker Pattern & Resilience4j
  • •Bài 19.3: Tự Động Thử Lại Thông Minh: Retry Pattern Với Exponential Backoff & Jitter
  • •Bài 19.4: Bảo Vệ Tài Nguyên Với Rate Limiter & Bulkhead Pattern
  • •Bài 20.1: Capstone Project: Phân Tích Yêu Cầu & Thiết Kế Kiến Trúc Hệ Thống E-Commerce Backend
  • •Bài 20.2: Thiết Lập Dự Án, `pom.xml`, Flyway Migration & Docker Compose Môi Trường Dev
  • •Bài 20.3: Module 1: Xây Dựng Authentication, JWT Token Pair & Role-Based Access Control
  • •Bài 20.4: Module 2: Quản Lý Sản Phẩm, Tìm Kiếm Động & Tối Ưu Redis Caching
  • •Bài 20.5: Module 3: Đặt Hàng, Quản Lý Giao Dịch & Khóa Lạc Quan (Optimistic Locking) Chống Bán Quá Số Lượng
  • •Bài 20.6: Module 4: Xử Lý Thanh Toán & Thông Báo Bất Đồng Bộ Với `@TransactionalEventListener`
  • •Bài 20.7: Xây Dựng Toàn Bộ Test Suite: Unit Tests, Controller Slice Tests & Testcontainers
  • •Bài 20.8: Đóng Gói Production Docker, Giám Sát Metrics & CI/CD Pipeline Template