본문 바로가기

TIL/Spring16

23.06.15 Spring 2주차 숙제 Query Methods 기능을 사용하여 내용(contents)에 특정 키워드가 포함된 메모를 조회하는 API를 구현 Controller를 통해 keyword를 Query String 방식으로 전달받아 메모를 조회하는 API를 추가합니다. http://localhost:8080/api/memos/contents?keyword= 메서드명은 getMemosByKeyword 입니다. MemoService에 getMemosByKeyword 기능을 수행하는 메서드를 구현합니다. ‘Postman’을 사용해서 테스트합니다. 정렬 방법은 수정 시간을 기준으로 내림차순을 적용합니다. 우선 param 형태로 자료를 받기 위해 Controller에 get 메서드 생성 @GetMapping("/mem.. 2023. 6. 15.
23.06.14 기존에 작성한 메모장 프로젝트는 하나의 클래스가 모든 api를 가지고 있어 클래스 안에 메서드가 너무 많다는 문제점이 있다. 이러면 다른 사람이 이 코드를 수정하려 할 때 어려움을 겪을 수 있다. 그래서 서버 개발자들은 처리 과정을 크게 Controller, Service, Repository 3개로 분리하는 일종의 약속을 만들었는데 이것이 3 Layer Architecture이다. 1. Controller 클라이언트의 요청을 받습니다. 요청에 대한 로직 처리는 Service에게 전담합니다. Request 데이터가 있다면 Service에 같이 전달합니다. Service에서 처리 완료된 결과를 클라이언트에게 응답합니다. 2. Service 사용자의 요구사항을 처리 ('비즈니스 로직') 하는 실세 중에 실세.. 2023. 6. 14.
23.06.13 어제 잘 실행되던 mvc 폴더에서 intellij를 실행했을 때 아무런 에러메시지도 없이 무한로딩이 되는 에러가 발생해 1시간 가량 튜터님과 뭐가 문제인지 파악하려 했으나 결국엔 실패했다. 원인을 알아내기 위해 폴더나 파일들을 완벽히 카피한 폴더도 만들었으나 이 폴더는 문제없이 실행됐다. 결국 원인도 못 알아낸채로 1시간 가량 제자리 걸음을 하게 된 셈이지만 intellij가 가끔 이유없이 오류가 나는 상황도 있다고 하니 어쩔 수 없이 복사한 폴더에서 진행하기로 했다. 원인이 뭐였는지는 아직까지도 미스테리다... 데이터가 요청되는 방식 Path Variable : 서버에 보내려고 하는 데이터를 url 경로에 추가 할 수 있다. // [Request sample] // GET http://localhost.. 2023. 6. 13.
23.06.12 spring 프로젝트 생성 방법 intellij > new project > Spring Initializr > Language : Java, Build system: Gradle - Groovy, JDK: 17 > next > Dependencies : Spring web, Lombok 편의 기능 설정 1. Settings > Auto Import > Add unambiguous imports on the fly, Optimize imports on the fly 2. Settings > General > Mouse Control > Change font size > Active editor Gradle이란? 빌드 자동화 시스템 빌드 > 작성한 소스 코드를 실행 가능한 jar 파일로 만들어주는 것 !!.. 2023. 6. 12.