포트폴리오/SpringBoot MVC

기능(메서드) 기반 해석

서버관리자 페페 2024. 3. 28. 17:07

(흩어져서 기능 처리)

컨트롤러 메서드는 사용되는 기능을 전부 커버하는 것은 아니고,

 

몇개는 뷰 페이지에서 자바스크립트를 사용, 체크박스, 서브밋 버튼 등으로 직접 처리되고

 

몇개는(주로 로그인 검증 관련 + 사용하지않을 페이지 뷰 리졸버) securityConfig에서 처리된다.

 

-

 

(나머지 컨트롤러 메서드는 19개) -> 외운다

 

멤버 - 회원가입폼, 폼제출, 로그인폼, 로그인에러폼 / 1~4번

메인 - 메인, 아이템, 페이지뷰 / 5번

오더 - 아이템 직접주문, 오더 캔슬, 오더히스토리 / 6 7 8번

카트 - 카트 페이지, 카트 아이템 주문, 카트에 아이템 넣기, 아이템 삭제, 아이템(수량) 업데이트 / 9 ~ 13번

아이템 - (어드민) 생성폼, 세이브제출, 수정폼, 업데이트제출, 아이템 관리페이지 + (유저가 보는 아이템디테일) / 14 ~ 19번

 

-

 

URL or View form에서 시그널을 보내면

컨트롤러가 필요 정보를 받아서 가공 처리. or 필요한 것 공급 or 성공 혹은 실패 시그널 정도만 보낸다.

이때 케이블로는 DTO가 사용되며, DTO는 검증도 한다.

 

-

 

뷰나 서비스 등을 전부 훑어봐야 하지만, 최대한 빠르게 전체 그림을 파악하기 위해서는 사실 DTO와 컨트롤러 정도면 충분

결국 유저가 사용하는 서비스는, 어떤 데이터를 가지고 어떤 기능을 하느냐의 문제이기 때문에

 

* 나머지는 형식의 문제 / 엔티티는 DTO로 대략적 그림 파악이 가능

* DTO가 모든 엔티티의 요소를 가져오는것은 아님

 

-

 

나머지 조각들

: 뷰에서 js onclick메서드로 컨트롤러에 커버하지 않는 기능 파악

 

-

 

왜 여기에는 모델이 사용되고 왜 여기에는 모델이 사용되지 않는지.

왜 여기에는 pathvariable이 사용되었고 왜 여기서는 requestParam이 사용되는지

왜 여기에는 principal이 들어가는지

 

-

 

아이템 조회시 컨트롤러에서 entitynotfoundEx를 직접 캐치해서 처리하지만

어떤 것은 서비스가 처리하기도 한다.