티스토리 뷰

728x90

김영한님 스프링 MVC 2편 강의 Form 전송 객체 분리편을 듣다가 누군가 질문 올린걸 올려본다.

실제로 나도 실무에서 개발할 때 클라이언트에서 보내주는 값을 그냥 객체를 만들지 않고 HashMap<String, Object> 으로 쓰는데

일정이 바빠서 혹은 그냥 이걸로 다 받아지니까 하고 쓰고있으면서도 아닌 것 같다는 생각이 있었는데 영한님이 답변해 준걸 보고 앞으로는 객체를 위주로 써야겠다고 생각했다.

 

질문자님의 질문은 간략히 아래와 같았다.

1. 객체 vs Map 둘 중에 어느걸 써야 하나요?

 

답변으로는

Map을 사용하는 경우는 @Validate를 사용하기 어렵다.

객체와 Map 중에서는 객체를 사용하는 것이 좋다.

왜냐하면 Map을 사용하면 클래스를 만들지 않아서 편리한 점이 있지만 어떤 데이터가 들어오는지 모르니 유지보수 하기가 어렵다.

실제 실행해보지 않으면 실제로 어떤 데이터가 들어오는지 파악하기 어렵기 때문이다.

객체로 만들었다면 그 객체만 까보면 어떤 데이터들이 들어오는지 알 수 있다.

그리고 객체로 만들었다면 컴파일 시점에서 오류도 걸러낼 수 있고 클라이언트가 잘못된 값을 보내도 손쉽게 파악할 수 있다.

일반적으로 객체를 사용하되, Map은 정말 공통같은 부분에 부분적으로 사용하는 것이 좋다.

728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함