본문 바로가기
반응형

Web18

[HTTP] REST 1. 정의 - REST는 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 웹 아키텍처 스타일(제약조건의 집합) - 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반을 말함 - REST API는 REST를 기반으로 서비스 API를 구현한 것을 의미 2. REST 사용 이유 1) 애플리케이션의 분리 거대한 애플리케이션을 모듈별로 분리함에 따라, REST API를 서비스하면 어떤 다른 모듈이나 애플리케이션들이라도 REST API를 통해 상호간에 원활한 통신을 할 수 있음 2) 다양한 클라이언트의 등장 REST API를 사용하면서 데이터만 주고 받기 때문에 클라이언트가 부담없이 자유롭게 데이터를 사용할 수 있음 서버도 요청한 데이터만 깔끔하게 보내주면 되기 때문에 가벼워지고 유지보수도 용이 즉, 서버는.. 2022. 6. 1.
서블릿(Servlet) 1) 서블릿이란 - 웹 애플리케이션을 만들때 요청에 따른 동적 페이지 생성을 위한 추상화된 자바 표준/인터페이스 의미 - 추상클래스인 HttpServlet을 상속받아 구현 서블릿은 생성(init), 요청처리(service), 소멸(destory)의 기본적인 구조를 가짐 HttpServlet안의 service 메서드는 http method에 따라 요청을 알맞게 처리할 수 있도록 분기처리가 되어있음 2) 흐름 a. 서블릿 request 및 response 객체 생성 b. 설정파일(web.xml)을 통해 매핑할 servlet 확인 c. 해당 서블릿 인스턴스가 없으면 init() 통한 생성 d. 서블릿 컨테이너에 스레드 생성 및 res,req를 인자로한 service 실행 e. 응답처리 3) 서블릿 컨테이너 -.. 2022. 5. 18.
[Network] 포트(port)/소켓(socket) 1. Host 네트워크 주소(IP주소)가 할당된 노드를 호스트(Host)라고 한다. 스마트폰,노트북,데스크탑 등 인터넷에 연결되어 있으면 다 호스트(Host)라고 볼 수 있다. 즉 호스트끼리 데이터를 주고받는 것 정확히 말하면, 호스트 내의 다양한 프로세스들 끼리 데이터를 주고받는 것. 즉, 데이터는 프로세스레벨에서 주고받는 것 2. Port 자, 데이터는 호스트안의 프로세스 레벨에서 데이터를 주고받는다고 했다. 그러면 데이터가 네트워크를 타고 목적지 호스트에 도착했다고 끝일까? 아니다. 해당 호스트가 가지고있는 여러 프로세스 중 실제로 데이터를 받아야 하는 특정 프로세스에게 데이터를 전달해야한다. 이때 필요한 것이 포트(Port)이다. 즉, 포트(Port)란 네트워크를 통해 데이터를 주고받는 프로세스를.. 2019. 8. 24.
[Spring] @RestControllerAdvice 서버단에서 로직을 처리하는 과정에서 발생하는 예외를 통합관리하고, 그 결과를 클라이언트에 반환해준다. 설정방법 @RestConroller가 붙어있는 api컨트롤러에서 발생하는 예외를 캐치하겠다는 의미 구현부 클래스 내부의 메서드들은 특정 Exception에 대해 처리하는 로직이 들어있다. @ExceptionHandler(CannotUpdateException.class) 는 CannotUpdateException (직접 만든 RunTimeException)이 발생했을 경우, 해당 메서드를 실행하겠다는 의미이다. @ResponseStatus 는 말그대로 응답헤더의 Http Status Code를 지정해주는 것이다. ErrorMessage는 클라이언트에게 반환하는 객체로, 예외 내용을 담고 있다. excep.. 2019. 7. 16.
반응형