Java/스프링부트와 AWS로 혼자 구현하는 웹 서비스

SessionUser

Frankie 2021. 6. 23. 11:34

세션에 사용자 정보를 저장하기 위한 Dto 클래스

 

-> 왜 User 클래스 쓰지 않고 새로 만들어서 쓰는지?

- User 클래스를 세션에 저장하려면 User 클래스에 직렬화를 구현하지 않았다는 의미의 에러가 뜬다.

 

그렇다고 오류를 해결하기 위해 User 클래스를 넣기에는 User 클래스가 엔티티이기 때문에 언제 다른 엔티티와 관계가 형성될지 모른다.

즉, @OneToMany, @ManyToMany 등 자식 엔티티를 갖고 있다면 직렬화 대상에 자식들까지 포함되서 성능 이슈, 부수 효과가 발생할 확률이 높다.

 

그래서 직렬화 기능을 가진 세션 Dto를 하나 추가로 만드는 것이 이후 운영 및 유지보수 때 도움이 많이 된다.