답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
JwtVO
를 인터페이스로 만드는 것은 다양한 구현체를 이용하여 JwtVO
의 사용성을 높이기 위함일 수 있습니다. 인터페이스는 특정 기능을 구현하기 위한 메소드의 명세만을 제공하므로, 실제 구현은 인터페이스를 구현하는 클래스에서 담당하게 됩니다. 이렇게 하면 어떤 특정 구현에 종속되지 않고, 다양한 상황에 맞는 다른 구현체를 사용할 수 있기 때문에, 유연성을 갖출 수 있습니다.
추가적으로, JwtVO
인터페이스를 사용함으로써 애플리케이션의 보안 부분에서 테스트를 좀 더 쉽게 할 수 있는 이점도 생길 수 있습니다. 예를 들어, Spring Security를 이용한 테스트에서는 @WithMockUser
같은 어노테이션을 활용하여 특정 권한을 가진 사용자로 테스트를 진행할 수 있으며, 인터페이스를 통해 다양한 사용자 상황을 모의할 수 있습니다.
스프링 시큐리티와 관련된 추가 정보는 Spring Security project page를 참고하시면 도움이 되겠습니다. 그리고 스프링 부트의 테스팅과 관련하여 더 알아보시려면 Spring Boot Reference Documentation의 Testing 섹션을 확인해보시기 바랍니다.
감사합니다.