Spring Bean Là Gì

  -  

1. Bean và ApplicationContext là gì?

1.1. Bean là gì?

Trong documentation của Spring framework, thì bean được định nghĩa nlỗi sau:

In Spring, the objects that form the backbone of your application và that are managed by the Spring IoC container are called beans. A bean is an object that is instantiated, assembled, và otherwise managed by a Spring IoC container.

Bạn đang xem: Spring bean là gì

Nói một bí quyết đơn giản dễ dàng, bean là hầu như module bao gồm của lịch trình, được tạo nên với cai quản bởi Spring IoC container.

Các bean rất có thể dựa vào cho nhau, nlỗi ví dụ về Car, Engine và ChinaEngine từ đầu series cho tới giờ. Sự phụ thuộc này được biểu thị đến IoC biết nhờ vào phương pháp Dependency injection.

Cách ghi lại class là 1 trong những bean thì bản thân đã trình bày vào bài xích tiếp sau. Trong thời điểm này chúng ta chỉ nên biết dễ dàng duy nhất là cần sử dụng
Component lên class là class đó là 1 trong bean.

1.2. ApplicationContext là gì?

ApplicationContext là khái niệm Spring Boot dùng để chỉ Spring IoC container, tựa như như bean là đại diện thay mặt cho những dependency.

Dường như chúng ta có thể vẫn nghe nói tới BeanFactory. Nó cũng đại loại nhỏng ApplicationContext, đại diện đến Spring IoC container cơ mà ở mức cơ bạn dạng. ApplicationContext thì ở mức cao hơn nữa, cung ứng những khả năng hơn BeanFactory như i18n, resolving messages, publishing events,...

Xem thêm: Palate Là Gì - Palate Tiếng Anh Là Gì

*

khi áp dụng Spring chạy, Spring IoC container đang quét toàn cục packages, đưa ra những bean cùng gửi vào ApplicationContext. Cơ chế sẽ là Component scan, cũng biến thành được nói về trong bài xích tiếp sau.

1.3. Cách mang bean ra trường đoản cú Context

Tất nhiên trước lúc rước bean ra từ context thì đề xuất gồm context rồi

*

cũng có thể gọi vì chưng Spring Boot đã tìm kiếm thấy hai bean tương xứng để inject vào Car. Do cả nhì VNEngine và ChinaEngine phần lớn implements Engine, nhưng Car cần Engine đề nghị đo đắn hãy lựa chọn chiếc làm sao.

3.2. Giải pháp

Có nhị giải pháp giải quyết vụ việc này. Thứ đọng tốt nhất là dùng
Primary khắc ghi lên một bean. khi kia bean này sẽ được ưu tiên lựa chọn hơn, trong trường thích hợp có khá nhiều bean phù hợp vào context.


Component
Primarypublic class VNEngine implements Engine ...Cách 2 là hướng dẫn và chỉ định rõ tên bean (tên class) cụ thể được inject bằng
Qualifier.

Xem thêm: Tính Thuế - Fifa Online 4 Việt Nam


Componentpublic class Car
Autowired
Qualifier("VNEngine") // Phải khớp hoa thường luôn luôn nhe private final Engine engine;Đối cùng với constructor xuất xắc setter based cũng giống như, chỉ cần có
Qualifier trước tên field phải inject vào là được.

Okay gắng là nội dung bài viết lúc này sẽ xong. Hai bài viết về bean và context của mình mong muốn đã đem lại mang đến chúng ta đủ các kiến thức và kỹ năng cơ bạn dạng để đi tiếp những phần sau của series. Cảm ơn với ghi nhớ upvote hoặc clip nhằm ủng hộ bản thân nhé. Thân!


Java Spring Boot

All rights reserved


Báo cáo Thêm vào series của mình
Mục lục

Không gồm mục lục


Tài nguyên
Dịch Vụ Thương Mại
Ứng dụng cầm tay
*
*

*

Liên kết
Tiếng ViệtEnglish

Không tra cứu thấy tài liệu


*

Hãy đăng ký một thông tin tài khoản chamichi.com.vn nhằm dấn được rất nhiều nội dung bài viết thú vui rộng.
Đăng nhập Đăng kí