목록웹프로그래밍 (48)
bdfgdfg
WAS(톰캣) 동적인 컨텐츠를 처리하기 위한 웹 서버와 웹 컨테이너의 결합을 WAS라고 한다. 톰캣은 자바 서블릿을 실행하고, JSP코드가 포함되어있는 웹 페이지를 만들어준다고 함. 톰캣과 같은 웹컨터네이너에서 실행하는 웹 애프리케이션의 기본 디렉터리는 밑과 같다. 가장 루트 폴더는 웹 애플리케이션의 이름이며 하위 디렉토리로 WEB-INF, classes,lib폴더를 가진다. -> bis_servlet : 다른 웹 애플리케이션과 이름 중복허용x, 여기엔 JSP,HTML파일이 저장된다 -> WEB-INF : 웹 애플리케이션에 관한 정보가 저장되는 곳. -> classes : 웹 애플리케이션이 수행하는 서블릿과 다른 일반 클래스들이 위치하는 곳 -> LIB : 웹 애플리케이션에서 사용되는 여러가지 라이브러리..
API URI의 설계는 가장 중요한건 리소스의 식별이다. 리소스의 의미는 무엇일까. 회원을 등록,수정,조회하는것 자체는 리소스가 아니다. 회원이라는 개념 자체가 바로 리소스. 등록(create),수정(update),조회(read),삭제(delete)라는것은 일단 배제하고, 회원이라는 리소스만 식별하면 된다. -> 즉 무엇을 대상으로(리소스) 어떠한 행동을 하는건지를 생각해보면 쉽다. 그럼 URI는 리소스만 식별한다고 했으니 설계를 해보면 /members/{id}. 가 되겠는데, 이것만으로 어떻게 행위를 구분할 수 있을까. 이럴때 추가로 사용되는게 바로 http 메소드(GET,POST,PUT,DELETE..) -> 리소스와 행위를 분리하는 것. 라고는 하지만, 실제 모든 경우에 대해서 URI와 행위를 분리..
HTTP HTTP는 응용계층의 프로토콜. 클라이언트-서버 모델에서, 클라이언트는 HTTP요청, 서버는 HTTP응답. 웹환경에서는 모든것이 HTTP로 처리 된다. -> 이미지,음성,영상,파일,JSON,XML, 서버간 데이터를 주고 받을 때도 대부분 HTTP사용. HTTP도 다양한 버전이 있다. HTTP/0.9 : 1991년에 나오고 GET메소드만 지원. HTTP 헤더는 없다. HTTP/1.0 : 1996년에 나오고 메소드 헤더 추가 HTTP/1.1 ★ : 1997년에 나옴, 가장 많이 사용한다. HTTP/2 : 2015년에 나온 버전으로 성능개선 HTTP/3 : 현재 진행형으로 개발되고 있으며 TCP대신 UDP를 사용. 클라이언트-서버 구조 Request(요청,클라이언트), Response(응답,서버) 구..
URI URI는 리소스를 식별할 수 있는 문자열 값이다. Uniform : 리소스 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것 Identifier : 다른 항목과 구하는데 필요한 정보 비슷한 개념으로 URL(리소스가 있는 위치),URN(리소스에 이름)도 존재한다. 다만 두 개념은 URI에 포함되는 개념. 예시를 보면 https://www.google.com/search?q=aimyon&hl=ko 위 URI를 주소창에다 검색해보면 위와 같은 리소스를 식별하고, 우리에게 Response해주는 것. URL의 구성을 살펴보자. scheme(스키마) : 주로 프로토콜(통신간 약속,규칙)을 이용. -> 추가로 이렇게 자주쓰이는 프로토콜들은 well-known포트가 있음. htt..