Back/JSP

1장 웹 프로그래밍

잘잔디 2023. 4. 9. 20:48

JSP

  • JSP는 HTML 파일 내에 Java 언어를 삽입한 문서이다.
  • 서블릿은 Java 언어로 이루어진 웹 프로그래밍 문서이다.
  • JSP를 배우는 이유와 중요한 장점
    • 독립된 플랫폼을 제공하는 Java 언어를 기반으로 작성된다.
    • Java 언어에 대한 전문 지식이 없더라도 쉽고 빠르게 배울 수 있다.
    • 웹 애플리케이션 개발에 필요한 각종 프레임워크를 완벽하게 지원한다.
    • 보안을 중요하게 요구하는 금융권에서 많이 사용된다.
    • 다른 엔터프라이즈 기술과 완벽한 호환성을 제공한다.

웹 프로그래밍

  • 사용자가 웹 브라우저를 통해 필요한 정보를 서버에게 요청하면 서버는 요청한 정보를 데이터베이스에서 발췌하여 요청한 사용자에게 해당 정보를 제공하는 유기적인 관계로 이루어진 웹 프로그램의 구동을 의미

웹 애플리케이션

  • 인터넷이나 인트라넷을 통해 웹 브라우저에서 이용할 수 있는 응용 소프트웨어를 의미

웹 서버

  • 네트워크 환경에서 사용자에게 웹페이지를 나타내는 파일들을 제공하고 관리하는 프로그램을 의미
  • 웹 서버의 종류는 Apache와 IIS 등이 있음.

클라이언트

  • 네트워크 환경에서 서버 시스템과 연결하여 주된 작업이나 정보를 웹 서버에게 요청하고 그 결과를 돌려받는 컴퓨터 시스템을 의미

  • 클라이언트의 다른 표현으로 호스트라는 표현을 사용하기도 한다.
  • 호스트는 네트워크를 구성하는 컴퓨터 시스템에서 각각의 단말기로부터 자료 처리 요구를 받아 처리하는 중심이 되는 컴퓨터를 의미한다.

라우터

  • 서로 다른 네트워크를 연결해 주는 장치

HTTP 프로토콜

  • 인터넷에서 사용자가 웹 애플리케이션 서비스를 요청하고 웹 서버는 사용자로부터 요청받은 해당 서비스를 제공해 주는 과정을 원활하게 수행하기 위한 제반 요건을 표준화한 프로토콜을 의미

HTTPS 프로토콜

  • 소켓 통신에서 일반 텍스트를 이용하는 대신 SSL이나 TLS 프로토콜을 통해 세션 데이터를 암호화하여 보안이 강화된 버전이다.

서블릿 servlet

  • 서블릿 규약에 따라 제작된 클래스로 서버에서 웹페이지 등을 동적으로 생성하거나
  • 전송되는 데이터 처리를 수행하기 위한 Java로 작성된 프로그램을 의미
  • 서블릿을 실행하기 위해서는 먼저 환경을 구축해야 하며 서블릿 실행 환경을 구축하기 위해서는
  • 아파치 톰캣 또는 IBM의 웹 스피어나 애플리케이션 서버, 레진 등이 필요함.

웹 컨테이너

  • 웹 서버의 컴포넌트 중 하나로 Java 서블릿과 상호작용을 수행하며
  • 웹 컨테이너는 서블릿의 생명주기를 관리하고 RUL과 특정 서블릿을 맵핑하여 URL 요청이 올바르게 접근할 수 있도록 권한을 보장함
  • 순수 서블릿을 처리하는 경우 서블릿 컨테이너라고 하지만 서블릿 컨테이너를 포함한 JSP, HTTP 서버의 기능도 함께 포함하기 때문에 웹 컨테이너라고도 부름
  • 여기서는 무료 사용이 가능한 아파치 톰캣을 웹 컨테이너로 사용함

JSP는 서블릿의 단점을 보완하기 위해 스크립트 방식을 도입하여 개발됨.