1-16
http:localhost:8080
- 기본만 검색 시 기본값은 static 파일에 있는 index.html을 디폴트 값으로 지정.
- url이 똑같아도 메서드 방식이 다르면 상관없다.
- {}가 있으니 pathvariable를 사용한다는 것을 알 수 있다.
- rl이 똑같아도 메서드 방식이 다르면 상관없다.
- {}가 있으니 pathvariable를 사용한다는 것을 알 수 있다.
1-17
DTO
- 특별한 클래스는 아니다 (순수한 자바 클래스) 하지만 의미를 부여하는 것 (관습 or 관행)
- 개발자 사이에서 이해를 쉽게 하기 위함
- 데이터 전송 및 이동을 위해 생성되는 객체
- 서버 계층간의 이동에도 사용
- Reuqest는 ReuqestDto , Response는 ResponseDto 규칙은 아니지만 관례?이다.
entity
- db와 소통을 하기 위한 클래스
@RestController
- @Controller + @ResponseBody
- Json형태로 객체를 반환하는 것이다.
- html 파일이 아닌 JSON 데이터를 브라우저에 반환하고 싶다면 해당 메서드에 @ResponseBody 애너테이션을 추가해야 한다.
- @RequestBody 어노테이션은 HTTP 요청의 body 내용을 자바 객체로 매핑하는 역할을 한다.
- @ResponseBody 어노테이션은 자바 객체를 HTTP 요청의 body 내용으로 매핑하는 역할을 한다.
- @RequestBody이 어노테이션이 붙은 파라미터에는 http요청의 본문(body)이 그대로 전달된다.
- 일반적인 GET/POST의 요청 파라미터라면 @RequestBody를 사용할 일이 없다.
- 반면에 xml이나 json기반의 메시지를 사용하는 요청의 경우에 이 방법을 주로 사용한다.
- HTTP 요청의 바디내용을 통째로 자바객체로 변환해서 매핑된 메소드 파라미터로 전달해 준다.
Collections.max()
- 원소 내 최댓값을 나타낸다.
keySet()
- keySet은 HashMap에 저장된 모든 키가 저장된 Set을 반환한다.
1-18
@Pathvariable
- 경로 변수를 표시하기 위해 메서드에 매개변수에 사용한다.
- URI의 변수를 메서드 매개 변수에 직접 바인딩(확정하다)
오늘의 회고
마치 눈을 감고 달리기를 하는 기분이었다. 과제 1단계 api 작성 중 감이 안 잡혀서 시간을 잡아먹는 것 같아 코드 작성부터 시작했다. 과제 코드 구조와 강의에서 배운 메모장의 구조가 비슷한 것 같아, 강의를 들으면서 코드를 내가 의도한 대로 변경하며 진행했다. 하지만 여러 군데에서 에러가 발생했고 어디가 문제인지 도저히 감을 잡지 못했다. 그렇게 코드를 다 지우고 원점으로 돌아갔다. 노력에 비해 아무것도 해내지 못한 기분이 들었다.
팀별회의를 통해서 팀원들에게 강의에서 배운 코드를 따라 쳐보고 각 줄마다 어떤 의미가 있는지 주석을 달아보면서 공부하는 게 어떠냐고 조언을 받았다. 과제 때문에 시간이 부족할 것 같아 불안했지만 진심 어린 팀원들의 조언으로 한번 시도했다.
확실히 공부를 하면서 내가 모르는 부분이 많았고 여기서 왜 이 코드가 들어가는지 조금이나마 이해했다. 시간 가는 줄도 모르게 공부를 했다. 정신을 차려보니 벌써 9시가 넘었다. 확실히 코드를 하나하나 뜯어보면서 분석하는 게 재미가 있었다. 매주 과제에 쫓겨서 프로그래밍의 재미를 잊고 있었던 것 같다. 이제 과제 제출이 얼마 남지 않지만 지금처럼 공부를 계속할 계획이다. 쫓기지 말고 나만의 페이스를 유지하자.
'TIL' 카테고리의 다른 글
[TIL]2024.09.20 개인 과제 현황 (0) | 2024.09.20 |
---|---|
[TIL]2024.09.19 (0) | 2024.09.19 |
[TIL] 2024.08.28 (0) | 2024.08.28 |