-
카테고리
-
세부 분야
백엔드
-
해결 여부
해결됨
CustomAuthProvider 를 @Bean 대신 @Component 로 했을 경우의 질문
21.07.12 01:22 작성 조회수 167
0
깊이 있는 좋은 강의 만들어 주셔서 감사드립니다.
저는 평소 생성자 DI 를 통한 주입 할당이 권장하는 방식이라고 알고있었는데 강사님께서 구현하실때 필드 @Autowired 를 사용하셔서 궁금증이 생겼습니다.
질문
- DI 자원을 주로 `필드 @Autowired` 를 하신 이유는,
강의 예제상 편의를 위해 하신게 맞나요? - CustomAuthenticationProvider 를
아래와 같이 @Component 로 만들어 추가 @Bean 등록 없이 사용하려는데 실무상 Security 설정에서 이런 방식은 적절한 방법인지, 강사님에 의견이 궁금합니다
@Component
public class CustomAuthenticationProvider implements AuthenticationProvider {
private final PasswordEncoder passwordEncoder;
private final UserDetailsService userDetailsService;
@Autowired
public CustomAuthenticationProvider(PasswordEncoder passwordEncoder,
UserDetailsService userDetailsService) {
this.passwordEncoder = passwordEncoder;
this.userDetailsService = userDetailsService;
}
}
읽어주셔서 감사합니다.
답변을 작성해보세요.
1
정수원
지식공유자2021.07.13
네
빈을 생성하는 방식은 여러가지 인데 어떤 방식을 사용하셔도 상관없습니다.
저는 편리상 @Autowired 를 사용한 것 뿐입니다.
그리고 @Component 나 @Bean 도 어떻게 생성하는 것이 활용도에 있어서 좋은 것인지 선택의 문제이지 기능상 아무런 문제가 없습니다.
감사합니다
답변 1