What does externalized configuration in Spring Boot enable?

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "Supplying settings (e.g., database details) via properties/YAML and environment so the same build can run in different environments". Externalized configuration (cấu hình đặt bên ngoài mã) nghĩa là Spring Boot đọc giá trị cấu hình từ nhiều nguồn có thứ tự ưu tiên như application.properties hoặc application.yml, tệp theo profile kiểu application-prod.yml, biến môi trường và tham số dòng lệnh, rồi đưa vào bean qua @Value hoặc @ConfigurationProperties; nhờ vậy cùng một tệp jar có thể chạy ở môi trường dev, test hay production chỉ bằng cách đổi URL cơ sở dữ liệu, mật khẩu hay cổng mà không biên dịch lại. "Hard-coding all configuration inside Java classes" đi ngược hẳn ý tưởng này, vì mọi thay đổi đều buộc sửa mã và build lại. "Packing configuration into compiled bytecode for security" cũng là gắn chết cấu hình vào bản build, đồng thời không mang lại bảo mật thật; bí mật nên để ở biến môi trường hoặc kho bí mật. "Requiring a separate XML file for every bean definition" mô tả kiểu khai báo bean bằng XML thời Spring cũ, là chuyện định nghĩa bean chứ không phải tách giá trị cấu hình ra khỏi bản build, và Spring Boot vốn hướng tới giảm XML.

Cùng phần 3

Xuất hiện trong 1 bộ đề