본문 바로가기
728x90
반응형

분류 전체보기582

[프로그래머스/Oracle] 우유와 요거트가 담긴 장바구니 https://school.programmers.co.kr/learn/courses/30/lessons/62284?language=oracle 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 Yogurt와 Milk를 담은 장바구니의 ID를 추출하면 되는 문제이다. 이 문제를 풀기 위해서는 여러 방법으로 생각해봤지만, 내 선에서 제일 간단한 방법은 요거트와 우유를 담은 각각의 장바구니 아이디를 서브쿼리로 조회 결과를 만든 다음에, 두 조회 결과의 장바구니 아이디가 같은 것을 찾는 방법을 사용했다. SELECT DISTINCT A.CART_ID FR.. 2022. 8. 7.
[HTTP] HTTP 메서드의 속성 안전(Safe Methods) 멱등(Idempotent Methods) 캐시가능(Cacheable Methods) 안전 - safe 호출해도 리소스를 변경하지 않는다. Q : 그래도 계속 호출해서, 로그 같은게 쌓여서 장애가 발생하면? A : 안전은 해당 리소스만 고려한다. 그런 부분까지 고려하지 않는다. 멱등 - Idempotent f(f(x)) = f(x) 한 번 호출하든 두 번 호출하든 100번 호출하든 결과가 똑같다. 멱등 메서드 GET : 한 번 조회하든, 두 번 조회하든 같은 결과가 조회된다. PUT : 결과를 대체한다. 따라서 같은 요청을 여러번 해도 최종 결과는 같다 DELETE : 결과를 삭제한다. 같은 요청을 여러번 해도 삭제된 결과는 똑같다. POST : 멱등이 아니다! 두 번 호출하.. 2022. 7. 14.
[HTTP] HTTP 메서드 - PUT, PATCH, DELETE PUT 리소스를 대체 리소스가 있으면 대체 리소스가 없으면 생성 쉽게 이야기해서 덮어버림 중요! 클라이언트가 리소스를 식별 클라이언트가 리소스 위치를 알고 URI 지정 POST와 차이점 리소스가 있는 경우1 리소스가 있는 경우2 리소스가 없는 경우1 리소스가 없는 경우2 주의! - 리소스를 완전히 대체한다1 주의! - 리소스를 완전히 대체한다2 PUT은 리소스를 수정하는게 아니라 덮어씌우는 것이다 PATCH 리소스 부분 변경 리소스 부분 변경1 리소스 부분 변경2 DELETE 리소스 제거 리소스 제거1 리소스 제거2 PATCH 가 지원이 안되는 서버는 POST를 쓰면 된다. 2022. 7. 13.
[HTTP] HTTP 메서드 - GET, POST HTTP 메서드 종류 주요 메서드 GET : 리소스 조회 POST : 요청 데이터 처리, 주로 등록에 사용 PUT : 리소스를 대체, 해당 리소스가 없으면 생성 PATCH : 리소스 부분 변경 DELETE : 리소스 삭제 기타 메서드 HEAD : GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환 OPTIONS : 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용) CONNECT : 대상 자원으로 식별되는 서버에 대한 터널을 설정 TRACE : 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행 GET 리소스 조회 서버에 전달하고 싶은 데이터는 query(쿼리 파라미터, 쿼리 스트링)를 통해서 전달 메시지 바디를 사용해서 데이터를 전달할 수 있지만, 지원.. 2022. 7. 2.
[HTTP] HTTP API를 만들어보자. 요구사항 회원 정보 관리 API를 만들어라. 회원 목록 조회 회원 조회 회원 등록 회원 수정 회원 삭제 API URI 설계 URI(Uniform Resource Identifier) 회원 목록 조회 / read-member-list 회원 조회 / read-member-by-id 회원 등록 / create-member 회원 수정 / update-member 회원 삭제 / delete-member 이것은 좋은 URI 설계일까? 가장 중요한 것은 리소스 식별이다. API URI 고민 URI(Uniform Resource Identifier) 리소스의 의미는 뭘까? 회원을 등록하고 수정하고 조회하는게 리소스가 아니다! 예) 미네랄을 캐라 -> 미네랄이 리소스 회원이라는 개념 자체가 바로 리소스이다. 리소스를 어.. 2022. 7. 1.
[HTTP] HTTP 메시지 시작 라인 요청 메시지 start-line = request-line / status-line request-line = method SP(공백) request-target SP HTTP-version CRLF(엔터) HTTP 메서드 (GET: 조회) 요청 대상 (/search?q=hello&hl=ko) HTTP Version 요청 메시지 - HTTP 메서드 종류 : GET, POST. PUT. DELETE... 서버가 수행해야 할 동작 지정 GET : 리소스 조회 POST : 요청 내역 처리 요청 메시지 - 요청 대상 absolute-path[?query] (절대경로[?쿼리]) 절대경로= "/" 로 시작하는 경로 참고 : *, http://...?x=y 와 같이 다른 유형의 경로지정 방법도 있다. 요청.. 2022. 7. 1.
728x90
반응형