전체 기능 API를 REST API로 구현하였다!
저번에 REST API를 배우고 나서 다음 과제나 프로젝트를 할 경험이 생긴다면 꼭 전체 기능을 REST로 구현해보고 싶었다.
마침 이번에 학원에서 백엔드 과제가 주어져서 이번엔 Model을 하나도 사용하지 않고 REST로 구현하기로 마음먹었다.
- API 컨트롤러와 View 컨트롤러 나누어서 생성
- MainApiController와 AdminViewController
- 처음부터 @RestController 어노테이션을 준 건 아니고, @Controller 어노테이션을 먼저 주고, @ResponseBody를 붙여서 구현하였다.
- 그리고 전체 기능 REST로 구현하고 확인까지 완료 후 @RestController로 변경하고 @ResponseBody를 다 지웠다! 이때 얼마나 쾌감있던지 ㅎㅎ
- MainViewController와 AdminViewController
- ViewController는 아무런 매개변수 받는 것 없이 순수하게 html 파일만 return 하도록 구현하였다.
- DTO 작성
- 생각보다 DTO 클래스가 많아져서 다음에는 DTO 패키지 안에 Response와 Request 패키지로 한번 더 나눠야 할 것 같다!
- JavaScript fetch() 함수 작성
- 사실 REST로 구현하게 되면 이게 제일 걱정되었던 부분이였다. 프론트에 약한 나..지만!!! 풀스택까지 잘하고 싶은 맘으로서 부딪쳐보았다.
- 오히려 전체 REST로 구현하고 fetch() 함수도 많이 작성해보니까 이전보다 훨씬 낫다..ㅎㅎ 역시 두려움은 직접 헤딩해야해
이번 백엔드 과제는 테이블과 html을 제공해줘서 편하게 기능과 프론트와의 연결만 신경쓸 수 있었다
코드는 https://github.com/yubin-im/DigitalHanaro_assignment/tree/main/back_assignment 여기에서 확인할 수 있습니다!
앞으로 모든 기능은 REST로 구현할 생각이다.
이번 코드가 100프로 내 마음에 들진 않지만, 다음에는 더 잘 짤 수 있다는 생각이 들었다!!
'Life' 카테고리의 다른 글
[Life] 송장 자세를 하며 갑자기 들었던 생각 (2) | 2024.05.18 |
---|---|
[회고] 늦은 SeSAC 회고 (2) | 2024.05.18 |
[개발Life] 새로운 프로젝트를 들어가며 요즘의 다짐들.. (2) | 2024.04.25 |
[개발Life] RESTFUL 하다? (2) | 2024.04.03 |
[개발Life] 나의 git 잔디 누락 (2) | 2024.02.07 |