코드를 보면 알다시피 UserMember 클래스에 Account 변수가 있고, Account에 UserMember 변수가 있다.
그래서 Jackson 라이브러리에서 UserMember JSONObject를 만드는 도중 아래의 과정을 무한 반복하는 것이다.
UserMember 클래스의 getter 조회 -> getAuthorities를 실행해 List 반환받음 -> 각 Account 클래스의 getter 조회 -> getUserMember를 실행해 UserMember를 반환 받음 -> UserMember 클래스의 getter 조회 -> ...
@JsonIgnore 어노테이션을 추가하면 Jackson에서 JSONObject를 만들 때 해당 변수는 추가하지 않는다.