Devlearning

Các đối tượng tạo thành xương sống của ứng dụng và được quản lý bởi Spring IoC container được gọi là Bean. Một bean là một đối tượng được khởi tạo, lắp ráp, và được quản lý bởi một Spring IoC container. Các bean này được tạo ra bằng siêu dữ liệu cấu hình mà bạn cung cấp cho container, ví dụ dưới dạng định nghĩa XML <bean/>.

Các thuộc tính của Bean trong Spring
Bean chứa các thông tin được gọi là siêu dữ liệu cấu hình, mà cần thiết cho container để biết những điều sau đây:
• Làm thế nào để tạo ra một bean.
• Chi tiết vòng đời của bean.
• Phụ thuộc (dependency) của bean.

Tất cả các siêu dữ liệu cấu hình ở trên chuyển thành một tập các thuộc tính sau được sử dụng để định nghĩa bean.
class: Thuộc tính này là bắt buộc và chỉ định lớp được sử dụng để tạo ra bean.
name: Thuộc tính này chỉ định duy nhất nhận dạng bean. Trong siêu dữ liệu cấu hình dựa trên XML, bạn sử dụng các thuộc tính id và (hoặc) name để chỉ định bean duy nhất.
scope: Thuộc tính này xác định phạm vi của các đối tượng được tạo ra từ một định nghĩa bean cụ thể.
constructor-arg: Thuộc tính này được sử dụng để bơm các phụ thuộc (dependency).
properties: Thuộc tính này được sử dụng để bơm các phụ thuộc (dependency).
autowiring: Thuộc tính này được sử dụng để bơm các phụ thuộc (dependency).
lazy-initialization: Thuộc tính này nói cho IoC container biết được rằng đối tượng này được tạo ra tại thời điểm được request, chứ không phải lúc khởi động.
initialization: Một callback được gọi ngay sau khi tất cả các thuộc tính cần thiết trên bean đã được thiết lập bởi container.
destruction: Một callback được sử dụng khi container chứa bean bị hủy.

Siêu dữ liệu cấu hình cho Spring IoC Container
Có ba phương pháp quan trọng để cung cấp siêu dữ liệu cấu hình cho Spring IoC Container:
• Tệp tin cấu hình dựa trên XML.
• Cấu hình dựa trên Annotation.
• Cấu hình dựa trên Java.
Cấu hình Bean dựa trên file xml