반응형
프로필이 활성화되지 않은 경우 빈 정의 포함
저는 신청서에서 특정 콩을 자동 배선에 적합하게 만들기 위해 몇 가지 프로필을 사용합니다.제가 놓치고 있는 것은 특정 프로필이 활성화되지 않았을 때 자동 배선에 적합한 빈을 만들 수 있는 가능성입니다.
제가 생각한 가장 좋은 방법은 다음과 같습니다.
- 가능한 모든 프로필 목록(예: {A, B, C, D})이 있다고 가정합니다.
- 특정 실행에 대해 활성화된 프로파일은 {A, C}입니다.
- 제가 하는 일은 활성화되지 않은 가능한 모든 프로필에 대한 인공 프로필을 만드는 것입니다.이 예에서는 {not_B, not_D}개의 프로파일을 생성합니다.
- 활성화되지 않은 프로필을 기반으로 활동하고 싶은 콩
X
프로필을 위해 활동합니다.not_X
나의 경우 프로필 B가 활성화되지 않은 상태에서 자동 배선에 적합한 콩을 원한다면 주석을 달 것입니다.@Profile("not_B")
그러나 이 솔루션에는 가능한 모든 프로필에 대한 사전 지식이 필요합니다.
더 좋은 해결책이 없을까요?
(!) 연산자가 아닌 연산자를 사용할 수 있습니다...스프링 3.2 M1을 사용해야 합니다.
이제 다음 구문이 지원됩니다.
<beans profile="A,!B"> @Profile({"A", "!B"})
프로파일 'A'가 활성화되거나 프로파일 'B'가 활성화되지 않은 경우에만 요소 또는 주석이 달린 구성 요소를 처리해야 함을 나타냅니다.
변경 사항은 여기에서 발표됨: Spring Framework 3.2 M1 출시
커밋이 GitHub에 있음: 프로파일 선택에 대한 지원 없음(!) 연산자
JIRA의 문제: SPR-8728
당신의 프로젝트에서 Spring 3.2로의 업그레이드가 불가능하다면, 저는 사용하지 않는 것을 추천합니다.@Profile
접근하여 스프링 구성에 빈이 생성되지 않았는지 확인합니다.
언급URL : https://stackoverflow.com/questions/13575201/including-bean-definition-when-a-profile-is-not-active
반응형
'programing' 카테고리의 다른 글
Junit 5(스프링 부트 포함):@ExtendWithSpring 또는 Mockito를 언제 사용해야 합니까? (0) | 2023.08.14 |
---|---|
Powershell에서 IIS 앱에 대한 인증 사용 (0) | 2023.08.14 |
JS 파일에서 jQuery를 추가하는 방법 (0) | 2023.08.14 |
부트스트랩 드롭다운 하위 메뉴 누락 (0) | 2023.08.14 |
HTML5 비디오가 Angular에서 작동하지 않습니다.JSong-src 태그 (0) | 2023.08.14 |