Tôi có dịch vụ xác thực mà tôi muốn tự động định cấu hình khi chạy nhưng sẽ được mô phỏng để phát triển và thử nghiệm. Tôi muốn sử dụng tính năng @ConfigurationProperties
để xác định các thông số cần thiết, nhưng tôi cũng cần có khả năng chỉ tạo điều kiện các trường hợp AuthenticationManager
, tùy thuộc vào việc dịch vụ trực tiếp có được định cấu hình hay không.Khởi động mùa xuân có điều kiện trên @ConfigurationProperties
Cách tiếp cận tôi muốn thực hiện là sử dụng một cái gì đó như @ConditionalOnBean(AuthProperties.class)
, nhưng Khởi động mùa xuân tạo hạt đậu của lớp @ConfigurationProperties
bất kể thuộc tính có mặt hay không. Tôi có thể áp dụng chú thích xác nhận cho các trường, nhưng sau đó ngữ cảnh sẽ không bắt đầu chút nào nếu một dịch vụ trực tiếp không được cấu hình.
Có cách nào để làm cho phần cấu hình có điều kiện khi có các thuộc tính được chỉ định trong lớp @ConfigurationProperties
mà không lặp lại tên thuộc tính trong @ConditionalOnProperty
?
Các đối tượng '@ ConfigurationProperties' cũng có thể được sử dụng để chỉ định các giá trị mặc định, mà sẽ (dĩ nhiên) không được chọn bởi' @ ConditionalOnProperty'. Vì vậy, đây vẫn là một câu hỏi rất có liên quan. – P44T