일기(개발자로서 성장하며 느낀점) 및 어노테이션 정리

김재현·2023년 11월 6일
0

TIL

목록 보기
23/88
post-thumbnail

느낀점...

스파르타 부트캠프의 커리큘럼 압박감이 생각보다 굉장히 강하다.

강의를 한번 완강하지도 못했는데 개인과제를 해야한다는 압박감... 뭐가 뭔지 모르는 상태로 일단 시작해야 되는 스트레스.
배움에 대한 즐거움과는 별개로, 결과물에 대한 압박은 익숙하면서도 이 압박감은 익숙해지지 않는다.

고딩 때는 시험에 대해 항상 거의 완벽에 가깝게 준비되어 있었기 때문에, 시험은 말 그대로 나를 테스트 하고 점검하는 느낌이라 부담이 없었다.
하지만 대학 이후로는 공부에만 집중 할 수 없었기 때문에 완벽히 준비되지 않은 상태에서도 시험을 수행해야만 했다. 날 것 그대로를 까발리는 느낌이랄까.
그런 상황에서 받는 스트레스가 정말 너무 싫다. 정확히는 그런 상황에 직면하게 되는 과정이 너무 싫다.
완벽하게 준비되지 않을 것을 알면서도, 기대치에 못미칠 것을 알면서도 끝까지 가야 한다는 것. 그런 상황에선 그냥 포기 해버리고 싶다.

하지만 앞으로의 삶의 자리 어디에서든 그런 시련은 계속 될 것이기에... 한 사람으로서의 책임이 있기에......
강박을 깨고, 조급함에 매몰되지 말고 오늘 하루 내가 할 수 있는 것을 찾아 그것에 집중하자.
그게 쌓이고 쌓이다보면 어느새 이만큼 와서 나 자신이 대견하더라.

마음 다잡자!!!


어노테이션 정리

@GET, @POST, @PUT, @DELETE 이 있다. -> +Mapping

@RequestMapping은 중복되는 URL를 단축시켜줄 수 있습니다.

@Controller 로 컨트롤러임을 표시.

@ResponseBody:
템플릿 엔진이 적용된 SpringBoot에서는 Controller에서 문자열을 반환하면 templates 폴더에서 해당 문자열의 .html 파일을 찾아서 반환해줍니다.
따라서 html 파일이 아닌 JSON 데이터를 브라우저에 반환하고 싶다면 해당 메서드에 @ResponseBody 애너테이션을 추가해 줘야합니다.

@RestController 를 사용하면 해당 클래스의 모든 메서드에 @ResponseBody 애너테이션이 추가되는 효과를 부여할 수 있습니다.

@PathVaribal

public String helloGetRequestParam(@RequestParam String name, @RequestParam int age) {}

@RequestParam (=쿼리스트링 방식)

public String helloPostRequestParam(@RequestParam String name, @RequestParam int age) {}
		--> return String.format("Hello, name = %s, age = %d", name, age);

@ModelAttribute: Body 부분에 들어온 데이터(쿼리스트링방식)를 객체로 처리

public String helloRequestBodyForm(@ModelAttribute Star star) {}

@RequestBody: json형태를 처리하기 위해서는 @RequestBody가 필요함

public String helloPostRequestJson(@RequestBody Star star) {}
		--> return String.format("Hello, (name = %s, age = %d) ", star.name, star.age);	

@ModelAttribute 는 생략 가능 --> @RequestParam도 생략이 가능한데? 어떻게 구분되는가
--> 파라미터(매개변수)가 SimpleValueType(원시타입(int), Wrapper타입(Integer), Date등)이라면
@RequestParam으로 간주하고 아니라면 @ModelAttribute가 생략되어있다 판단한다.

경우에 따라 이렇게 섞어 사용 할 수도 있음.

profile
I live in Seoul, Korea, Handsome

0개의 댓글