설정하는 것이 좋습니다. @Autowired 봄 필드는 DI 프로펠러 전용입니까?Spring의 @Autowired 필드를 private으로 설정하는 것이 좋은 습관입니까?
아무도 클래스 외부에서 직접이 필드에 액세스하려고하기 때문에 나는 그렇게해야한다고 생각합니다.
그러나 다른 한편으로, Spring은 이들을 액세스해야합니다. 나는 그것이 사적 일 때도 그렇게 할 수 있다는 것을 알고 있지만, 문제를 일으킬 수 있습니까? 예를 들어 성능 문제가 있습니까? (이 경우 Spring이 Reflection을 사용하면 작은 성능 저하가 발생할 수 있음을 잘 이해할 수 있습니다.) 아니면 이것은 중요하지 않습니까?
나는이 질문에 대한 답변을 검색하기위한 검색을위한 자습서를 읽었지만 어떤 "좋은"답변도 찾지 못했습니다.
이 입력란의 액세스 수정 자로 가장 적합한 것은 무엇입니까? 이 점을 이해하거나 답변을 찾기 시작할 수있는 리소스를 알려 주시면 도와 줄 수 있습니까?
그것은 당신이 응용 프로그램에 대한 필드의 가시성에 따라 달라집니다. '@ Autowired '라고 주석을 달아도 상관 없습니다. – Jens
"가장 좋은 방법은 생성자 삽입을 통해 autowiring을 사용하는 것입니다. 그러나 가장 좋은 것은 정말로 독설적입니다. 스프링 문서에서 지시하는대로 간단하게 처리 할 수 있습니다. https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-spring-beans-and-dependency-injection.html – Gimby
DI가 발생하는 개인 필드를 사용하면 성능이 저하되지 않습니다. 드랍스 또는 다른 문제? – SiGe