-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
여러 개의 빈 후처리기를 등록하면??
22.02.02 01:09 작성 조회수 382
0
안녕하세요.
최종 질문은 마지막 문단에 하였습니다.
[빈 후처리기 - 예제코드2] 강의 관련 질문드립니다.
빈 후처리기 자체가 스프링 빈으로 등록이 가능한데,
예제에서 나오는 AtoBPostProcessor 이외에 제가 임의로 C클래스를 작성하고 BtoCPostProcessor 후처리기를 빈으로 등록해봤습니다.
그리고 컨테이너에
1) AtoBPostProcessor
2) BtoCPostProcessor
순서대로 빈을 등록하였습니다.
테스트 코드에서는 A 타입의 빈을 찾고 C 타입으로 캐스팅하여
c.helloC()를 실행한 결과 문제없이 동작하였습니다.
그리고 빈 후처리기 동작 순서또한 빈 후처리 등록 순서와 같았습니다.
이번에는 컨테이너에 등록할 때,
1) BtoCPostProcessor
2) AtoBPostProcessor
순서대로 등록하였더니, 오류가 발생하였습니다.
위에서 말씀드린 것처럼 컨테이너에 빈 후처리기를 빈으로 등록한 순서대로 후처리기를 통과(?)하는 것 같습니다.
질문은
1) 빈 후처리기 순서를 조작할 수 없는지? (그럴 필요는 있는지?)
2) 연쇄적(?)으로 빈후처리기를 등록하는 일이 있는지?
=> 즉, 첫 번째 후처리기의 결과에 따라 그 다음 후처리기를 호출할 필요가 있는지, (실무에서 여러 개의 빈 후처리기의 순서를 제어할 필요가 발생하는지)
감사합니다.
답변을 작성해보세요.
0
김영한
지식공유자2022.02.05
안녕하세요. 야평님
빈 후처리기 순서 조작 방법은 다음에 있는 Ordering 항목을 참고해주세요.
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/beans/factory/config/BeanPostProcessor.html
감사합니다.
답변 1