월드 와이드 웹 web
- 인터넷에 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 전 세계적인 공간을 말한다.
- HTTP 프로토콜등이 나타내게 됨
HTTP
동기형 프로토콜 요청을 하면 응답을 줘야함 * Hyper Text Transport Protocol 의 약자
HTML - 하이퍼 텍스트 마크업 랭귀지
- 텍스트 안에 링크가 있어서 하나의 정보가 있는게 아니라 다른 정보와 연결을 하여 또다른 정보를 볼 수 있다.
- 연결된 마크업 언어
- 웹은 결국 우리가 브라우저를 통해 특정 서버에 정보를 가지고온다.
- 네트웤을 통해 가지고오는 방법은 그전부터 있었다.
- FTP가 있는 것처럼 HTTP가 있는것이다. 즉 연결이 되어있는 문서
- 마크업 문서를 사용자에게 브라우저를 통해 보여줘야함.
웹의 기술적 특징 2개지
- 하이퍼미디어 시스템
- 이미지,음성,영상 등 다양한 미디어들을 하이퍼로 연결되어있고 미디어로 구성되어있는 시스템
- 분산 시스템
- 한대의 컴퓨터가 모두 처리하게 되면 ..?
- 웹은 전세계에 배치되는것이다. 네이버만 봐도 서버가 하나가 아니라 수많은 서버로 연결되어있다.
- 다른 리소스는 또다른 서버에 접근하는 것이다.
웹 애플리케이션 아키텍쳐는 어떻게 될까
웹서버 vs 웹 애플리케이션 서버
- http나 https를 지원하는 서버를 웹서버라고 함
WAS
- 웹서버와 다르게 디비조회나 비즈니스 로직처리를 하게 된다.
- 자바 웹 애플리케이션 자바 코드를 실행하는 것이다
- 다양한 비즈니스 로직을 처리해서 동적인 콘텐츠를 제공하기 위해 만들어진 애플리케이션 서버이다.
- 자바에서는 웹서버를 웹 컨에티너 서블릿 컨테이너라고 부른다.
- 와스에서 웹 서버 기능도 할 수 있다.
- 와스에다가 디플로이를 하게됨
- 와스는 별도의 소프트웨어 혹은 별도 서버로 구동이 되어있다. 별도의 프로세스이다.
- 톰캐이나 제티등을 다운받아서 물리적인 서버에 설치를 하게되고 톰캣을 구동을 시키고 우리가 만든 프로젝트를 디플로이 하게되면
- 와스가 로드를 해서 웹 컨테이너가 로드를 받아서 요청과 처리를 진행하게 된다.
웹서버를 앞단으로
- 브라우저랑 다이렉트로 연결되는 구조로 만들어서 정적 요청은 앞에서 하나 둔다.
- 정적은 퍼블릭 동적인 컨텐츠는 인증,인가, 사용자 고객정보들이 보관되 ㄴ곳이기 때문에 방화벽을 하나 둔다.
서블릿은 무엇인가

* 서블릿은 클라이언트의 요청을 받아 처리를 한다. * 최근에는 자카르타 서블릿으로 변경되었다. * 서버 역할을 하는 자바 프로그램을 수행하는 컨테이너 * 응답 처리를 하는 자바 소프트웨어 컴포넌트 * 서블릿을 구동하려면 와스가 필요해 !! * 자바 인터페이스로 존재한다.
서블릿에서 mvc 패턴
- 모델
- 뷰
- 컨트롤러