OLHub

Container Internals

Mổ bên trong IoC container Spring: BeanFactory vs ApplicationContext, refresh() 12 bước, BeanDefinition + BeanFactoryPostProcessor, Environment/PropertySource, Resource + @SpringBootApplication. Hiểu data structure thật để debug startup không hoang mang.

8 bài · ~99 phútMiễn phí

Nội dung

Danh sách bài học

  1. 01

    Container Internals: Mổ Xẻ Bên Dưới Spring Container

    Mổ xẻ bên trong IoC container Spring: BeanFactory vs ApplicationContext, refresh() 12 bước, BeanDefinition, Environment và xây dựng mini container.

    ~4 phút
  2. 02

    BeanFactory vs ApplicationContext: Bản Chất Hai Container

    Mổ xẻ bản chất BeanFactory và ApplicationContext: cấu trúc singletonObjects, beanDefinitionMap, cơ chế delegation và 4 tính năng enterprise.

    ~12 phút
  3. 03

    Vòng Đời Khởi Động: Giải Mã 12 Bước Trong refresh()

    Mổ xẻ 12 bước trong refresh() của AbstractApplicationContext, phân biệt BFPP và BPP, ánh xạ lỗi startup vào từng bước cụ thể.

    ~12 phút
  4. 04

    BeanDefinition & BFPP: Thao Tác Siêu Dữ Liệu Trước Khi Tạo Bean

    Mổ xẻ BeanDefinition, phân biệt BeanFactoryPostProcessor với BeanPostProcessor và lý do tách pha metadata làm nền tảng cho Spring autoconfig.

    ~12 phút
  5. 05

    Environment & PropertySource: Cơ Chế Cấu Hình Đa Nguồn

    Khám phá Environment và PropertySource trong Spring, thứ tự ưu tiên cấu hình, cơ chế Relaxed Binding và phân biệt ${...} với SpEL #{...}.

    ~12 phút
  6. 06

    Resource & @SpringBootApplication: Cơ Chế Nạp Tài Nguyên

    Giao diện Resource trừu tượng hóa classpath và file system; phân tích 3 chú thích cốt lõi cấu thành @SpringBootApplication và cơ chế bootstrap.

    ~12 phút
  7. 07

    Mini-challenge: tự build mini IoC container 80 dòng

    Thử thách tự code Mini IoC Container bằng Java thuần: quét Component, giải quyết dependency bằng Topological Sort và kích hoạt PostConstruct.

    ~30 phút
  8. 08

    Tổng Kết Module: Làm Chủ Toàn Diện Container Internals

    Tổng kết module Container Internals: cấu trúc dữ liệu BeanFactory, giải mã 12 bước refresh, phân biệt BFPP với BPP và cơ chế nạp Resource.

    ~5 phút