아래의 테스트가 왜 성공적인지 생각해보자. 이상함을 느낄 수 있어야 한다.
//DiService@Servicepublic class DiService { @Autowired DiRepository diRepository;}//DiRepository@Repositorypublic class DiRepository {}//Test@SpringBootTestclass DiServiceTest { @Autowired DiService diService; @Test void diTest() { assertThat(diService).isNotNull(); assertThat(diService.diRepository).isNotNull(); }}
Java
복사
리플렉션을 통해서 그 원리를 알아보자.