[HTTP] HTTP 메서드
네트워크/HTTP2024. 2. 8. 00:30[HTTP] HTTP 메서드

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. HTTP API 예제 요구사항 및 API URI 설계 회원 정보 관리 API 설계 1. 회원 목록 조회 : /read-member-list 2. 회원 조회 : /read-member-by-id 3. 회원 등록 : /create-member 4. 회원 수정 : /update-member 5. 회원 삭제 : /delete-member 요구사항 기반으로 API를 만들게 되는게 위와 같이 현업에서 잘못된 API URI 설계를 한다. API URI 설계 분리 리소스 : 회원 행위 : 조회, 등록, 수정, 삭제 API URI 설계를 할 때 리소스와 해당 리소스를 대상으로 하는 행위를 분리해야 한다. 회원이라는 리소스만 식..

[HTTP] HTTP 기본
네트워크/HTTP2024. 2. 7. 00:15[HTTP] HTTP 기본

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 모든 것이 HTTP HTTP(HyperText Transfer Protocol) 문서 간의 링크를 통해서 하이퍼텍스트 문서를 통해서 연결하는 프로토콜이다. HTTP 프토토콜에 HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON, XML (API) 등 모든 형태의 데이터를 담아서 전송이 가능하다. 서버간에 데이터를 주고 받을 때도 사용한다. HTTP 역사 HTTP/0.9 (1991년) : GET 메서드만 지원, HTTP 헤더X HTTP/1.0 (1996년) : 메서드, 헤더 추가 HTTP/1.1 (1997년) : 가장 많이 사용하고 가장 중요한 버전이다. RFC2068 (1997년) -> RFC261..

[HTTP] URI와 웹 브라우저 요청 흐름
네트워크/HTTP2024. 2. 6. 00:54[HTTP] URI와 웹 브라우저 요청 흐름

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. URI URI, URL, URN URI 내부에 URL, URN이 포함되어 있다. URI는 로케이터(Locator), 이름(Name) 또는 둘다 추가로 분류될 수 있다. URI (Uniform Resource Identifier) Uniform : 리소스 식별하는 통일된 방식이다. Resource : URI로 식별할 수 있는 모든 걸 자원이라고 한다. 웹 브라우저에 있는 HTML의 파일 것만 자원을 뜻하는 게 아니라 실시간 교통 정보 등등 이런것도 자원이라고 한다. Idenrifier : 다른 항목과 구분하는 데 필요한 정보이다. 사람을 식별할 때 주민등록번호를 식별 하는 것처럼 말한다. URL (Uniform ..

[HTTP] 인터넷 네트워크
네트워크/HTTP2024. 2. 5. 00:09[HTTP] 인터넷 네트워크

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 인터넷 통신 인터넷망에서 컴퓨터들은 어떻게 통신할까? 클라이언트가 한국에 있고 서버가 먼 곳에 있다면 한국에 있는 클라이언트가 'Hello, world'라는 메시지를 보내야 하는데 데이터의 출발지와 도착지 사이에 수많은 중간 노드라고 하는 서버들을 걸쳐서 다른 곳에 있는 서버에게 안전하게 메시지가 도착해야 한다. 어떤 규칙으로 다른 곳에 있는 서버에게 안전하게 도착할 수 있는지 이해를 하려면 IP 프로토콜을 알아야 한다. IP 인터넷 프로토콜 IP 주소 부여 IP(인터넷 프로토콜) 역할 지정한 IP 주소(Address)에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 클라이언트에게 IP 주소, ..

[Spring 핵심원리 - 기본] Bean Scope
Back-End/Spring2024. 2. 3. 00:14[Spring 핵심원리 - 기본] Bean Scope

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 빈 스코프 스프링 빈은 기본적으로 싱글톤으로 생성되고, 싱글톤 스코프이기 때문에 스프링 컨테이너의 시작과 함께 스프링 컨테이너가 종료될 때 까지 유지된다. 스코프는 번역 그대로 빈이 존재할수 있는 범위를 뜻한다. 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프 웹 관련 스코프 request: 웹 요청이 들어오고 나갈때 까지 유지되는 스코프 session: 웹 세션이 생성되고 종료될 때 까지 유지되..

[Spring 핵심원리 - 기본] Bean 생명주기 콜백
Back-End/Spring2024. 2. 2. 00:24[Spring 핵심원리 - 기본] Bean 생명주기 콜백

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. Bean 생명주기 콜백 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. 간단하게 외부 네트워크에 미리 연결하는 객체를 하나 생성한다고 가정해보자. 실제로 네트워크에 연결하는 것은 아니고, 단순히 문자만 출력하도록 한다. 이 NetworkClient 는 애플리케이션 시작 시점에 connect() 를 호출해서 연결을 맺어두어야 하고, 애플리케이션이 종료되면 disConnect() 를 호출해서 연결을 끊어야 한다. package hello.core.lifecyc..

[Spring 핵심원리 - 기본] 의존관계 자동 주입
Back-End/Spring2024. 2. 1. 00:27[Spring 핵심원리 - 기본] 의존관계 자동 주입

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 다양한 의존관계 주입 방법 생성자 주입 이름 그대로 생성자를 통해서 의존 관계를 주입 받는 방법이다. 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용 @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPol..

[Spring 핵심원리 - 기본] 컴포넌트 스캔
Back-End/Spring2024. 1. 31. 00:53[Spring 핵심원리 - 기본] 컴포넌트 스캔

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 이 글은 어노테이션 개념이 많이 포함하고 있습니다. 아래의 글을 먼저 읽고오면 도움이 됩니다. 2023.07.23 - [Java Category/Java] - [JAVA] 리플렉션(Reflection)과 어노테이션(Annotation) [JAVA] 리플렉션(Reflection)과 어노테이션(Annotation) 이 게시글은 이것이 자바다(저자 : 신용권, 임경균)의 책과 동영상 강의를 참고하여 개인적으로 정리하는 글임을 알립니다. 리플렉션 리플렉션이란 실행 도중에 타입(클래스, 인터페이스 등)을 rebugs.tistory.com 컴포넌트 스캔과 의존관계 자동 주입 이전까지 스프링 빈을 등록할 때는 자바 코드의 ..

image