본문 바로가기
컴퓨터과학[3-2]/J.S.P

JSP - [ 제1강] 웹과 자바

by boolean 2016. 7. 21.
728x90

JSP - [ 제1강] 웹과 자바

웹과 웹 문서, 웹 어플리케이션, 웹 서버와 웹 어플리케이션 서버, JSP 컨테이너, HTTP 프로토콜

JSP 용어정리

  • 웹 어플리케이션
    웹 상에서 실행되는 응용 프로그램이다. 대개 클라이언트로 웹 브라우저를 사용한다. 어플리케이션의 실행 위치에 따라 클라이언트 측/서버 측으로 나눌 수 있고 수행 방식에 따라 컴파일 방식/비컴파일 방식으로 나눌 수 있다. 또한 동적인 웹 페이지를 만들어주는 프리젠테이션 중심 어플리케이션과 비즈니스 로직을 처리하는 서비스 중심 어플리케이션으로 구분할 수도 있다.
  • 웹 어플리케이션 서버
    웹 어플리케이션이 실행될 수 있는 환경을 제공하는 프레임워크 또는 플랫폼이다. 개발자를 위한 API나 개발 툴도 포함한다.
  • CGI
    정적인 HTML의 한계를 극복하기 위한 서버 프로그래밍 방식이다. HTML 문서를 출력하기 위해 CGI 스크립트를 작성해야 하며 Perl 언어가 많이 사용된다. CGI 프로그램을 수행하기 위해 개별적으로 프로세스가 생성되므로 서버에 많은 부담을 주며 최근에는 거의 사용되지 않는다.
  • JSP
    동적 웹 페이지를 만들기 위한 웹 어플리케이션을 만드는 Java 기술이다. 서블릿 기술에 기초하며 서블릿 코딩보다 편리하게 사용할 수 있다.
  • 웹 컨테이너
    웹 컴포넌트에 대한 요청을 처리하는 프로그램이다. 웹 컴포넌트를 저장하고 있으며, 요청을 처리할 때 컴포넌트의 생명주기를 관리한다. 서블릿이나 JSP 페이지를 웹 컴포넌트라 하며 이것에 대한 요청을 웹 컨테이너가 처리한다.
  • 서블릿
    서버 측 어플리케이션을 구현하기 위해 Java 언어로 작성되는 클래스 또는 기술이다. 이 기술을 이용하여 HTML 코드를 동적으로 생성할 때 Java 코드를 사용할 수 있다. 서블릿은 컴파일되어 서버 측에 저장된 후 이용될 수 있다.
  • HTTP
    웹 서버와 브라우저 간에 HTML문서의 요청과 응답을 전송하기 위한 프로토콜이다. 응용 계층의 프로토콜이며 전송 계층에서는 TCP 프로토콜을 이용한다.
  • 하이퍼텍스트
    컴퓨터를 통해 볼 수 있는 텍스트이다. 텍스트를 구성하는 각 정보들은 하이퍼링크를 통해 다른 하이퍼텍스트와 연결될 수 있다. 정보 공유 관점에서 월드와이드 웹을 구축하는 기본 개념이다.
  • 요청과 응답
    서블릿서버 측 어플리케이션을 구현하기 위해 Java 언어로 작성되는 클래스 또는 기술이다. 이 기술을 이용하여 HTML 코드를 동적으로 생성할 때 Java 코드를 사용할 수 있다. 서블릿은 컴파일되어 서버 측에 저장된 후 이용될 수 있다.HTTP웹 서버와 브라우저 간에 HTML문서의 요청과 응답을 전송하기 위한 프로토콜이다. 응용 계층의 프로토콜이며 전송 계층에서는 TCP 프로토콜을 이용한다.하이퍼텍스트컴퓨터를 통해 볼 수 있는 텍스트이다. 텍스트를 구성하는 각 정보들은 하이퍼링크를 통해 다른 하이퍼텍스트와 연결될 수 있다. 정보 공유 관점에서 월드와이드 웹을 구축하는 기본 개념이다.요청과 응답클라이언트가 서버에게 컨텐츠를 제공할 것을 요청한다. 요청을 위해 클라이언트는 Http 요청 메시지를 보낸다. 컨텐츠는 정적인 텍스트나 멀티미디어 또는 특별한 기능의 수행을 말한다. 서버는 Http 응답 메시지를 통해 클라이언트에게 컨텐츠를 제공한다

요점정리

  1. 웹은 인터넷 상에 분산된 전 세계적 정보 공간 또는 정보 공유 서비스를 의미한다.
  2. 웹 문서는 웹 클라이언트가 요청할 때 웹 서버가 응답으로 제공하는 컨텐츠로 정적인 웹 문서와 동적인 웹 문서로 구분된다.
  3. 웹 어플리케이션이란 웹에서 수행되는 응용 프로그램이며, 수행 위치에 따라 웹 서버 기술과 웹 클라이언트 기술로 구분된다.
  4. JSP는 Java EE 기술 중 하나로 동적으로 웹 문서를 만들기 위한 서버 측 웹 프로그래밍 기술이다.
  5. 웹 서버란 웹에서 서버 기능을 처리하는 프로그램으로서 HTTP 프로토콜을 기반으로 하여 웹 클라이언트(브라우저)로부터의 요청을 받고 결과를 응답해 주는 기능을 담당한다.
  6. 웹 서버의 기능을 구조적으로 분리하여 웹 어플리케이션을 실행하고 관리하려는 목적으로 제시된 것이 웹 어플리케이션 서버(WAS)이다.
  7. 자바 기반의 웹 어플리케이션 서버는 동적으로 웹 문서를 만드는 웹 컨테이너와 비즈니스 로직을 처리하는 EJB 컨테이너 및 기타 기능을 포함한다.
  8. HTTP(HyperText Transfer Protocol)는 전송 계층의 TCP에 기반한 응용 계층의 프로토콜로서 웹 클라이언트와 웹 서버 사이에 웹 문서를 전송하기 위한 통신 규약이다.

연습문제

  • 연습문제1
    웹 또는 웹 서비스와 직접적인 관련이 없는 것은 무엇인가?
    답을 체크하세요
    정답 :
    해설 :
    웹은 정보 공유의 목적으로 하이퍼텍스트들이 서로 연결되어 있는 시스템을 말한다. 하이퍼텍스트를 작성하는 데 사용되는 언어가 HTML이며, 웹 서비스는 HTTP 프로토콜을 이용하여 클라이언트가 HTML 문서를 요청하고 서버가 HTML 문서를 제공하는 것이다.
  • 연습문제2
    동적인 웹 문서를 작성하는 기술과 관련이 없는 것은 무엇 인가?
    답을 체크하세요


    정답 :
    해설 :
    CGI는 초기에 사용되었던 기술이다. JavaScript는 클라이언트 측, JSP는 서버 측에서 실행되는 스크립트 언어로 HTML 부분과 프로그램 부분이 분리된 프로그램을 작성하게 된다. JDBC는 데이터베이스와의 연결과 SQL 처리를 위한 Java API이다.
  • 연습문제3
    HTTP 프로토콜에서 클라이언트의 요청에 서버가 응답하면 접속이 해제된다. 이것을 무엇이라 하는가?
    답을 체크하세요
    정답 :
    해설 :
    HTTP 프로토콜은 하나의 요청에 하나의 응답으로 끝나며 이후에는 클라이언트의 접속이 유지되지 않는다. 이것을 stateless라고 하며 상태가 유지되지 않는다는 의미이다.
  • 연습문제4
    JSP 언어에 관한 설명으로 잘못된 것은?
    답을 체크하세요


    정답 :
    해설 :
    JSP 페이지에 대한 요청을 처리하기 위한 것이 웹 어플리케이션 서버이며 웹 서버와 연동된다. 이것은 서블릿 컨테이너 또는 JSP 컨테이너를 포함하고 있으며 추가적으로 비즈니스 로직을 처리하는 컨테이너도 포함한다.
  • 연습문제5
    다음이 설명하는 HTTP 요청방식(request method)은 무엇인가?
    “원하는 방식으로 인코딩 된 데이터를 메시지 몸체에 포함하여 전송하면서 파일을 요청하고자 하는 경우 사용된다.”
    답을 체크하세요


    정답 :
    해설 :
    POST 요청방식은 대개 HTML 폼을 이용하여 데이터를 전송할 때 사용된다. 사용자 데이터는 요청 메시지의 몸체에 포함되어 서버에 전달된다.


댓글