250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- shared lock
- 힙
- exclusive lock
- querydsl
- 즉시로딩
- FetchType
- 다대다
- 스토어드 프로시저
- fetch
- 낙관적락
- 이진탐색
- 백트래킹
- BOJ
- 비관적락
- 연관관계
- 동적sql
- CHECK OPTION
- 유니크제약조건
- JPQL
- execute
- 데코레이터
- 지연로딩
- 연결리스트
- PS
- eager
- 스프링 폼
- 일대다
- 다대일
- dfs
- SQL프로그래밍
Archives
- Today
- Total
흰 스타렉스에서 내가 내리지
각 환경마다 서로 다른 빈 등록 - @Profile 본문
728x90
설정값이 아니라 각 환경마다 서로 다른 빈을 등록해야 한다면?
@Configuration
public class PayConfig {
@Bean
@Profile("default")
public LocalPayClient localPayClient(){
log.info("LocalPayClient 빈 등록");
return new LocalPayClient();
}
@Bean
@Profile("prod")
public ProdPayClient prodPayClient(){
log.info("ProdPayClient 빈 등록");
return new ProdPayClient();
}
}
@Profile 애노테이션을 사용하면 해당 프로필이 활성화된 경우에만 빈을 등록한다.
@Component
@RequiredArgsConstructor
public class OrderRunner implements ApplicationRunner {
private final OrderService orderService;
@Override
public void run(ApplicationArguments args) throws Exception{
orderService.order(1000);
}
}
- ApplicationRunner 인터페이스를 사용하면 스프링은 빈 초기화가 모두 끝나고 애플리케이션 로딩이 완료되는 시점에 run(args) 메서드를 호출해준다.
'Spring' 카테고리의 다른 글
쿠키와 세션, 그리고 서블릿 HTTP 세션 (1) | 2023.12.23 |
---|---|
프로덕션 준비 - 액츄에이터 (actuator) (1) | 2023.12.17 |
검증 - @Validation (0) | 2023.11.16 |
외부 설정(환경변수) - @ConfigurationProperties, 그리고 검증 (0) | 2023.11.15 |
외부 설정(환경변수) - @Value (0) | 2023.11.15 |