TIL) JSP 웹 프로그래밍 시작

oatraspberry·2022년 12월 23일
post-thumbnail

웹과 JSP 프로그래밍 이해하기

인터넷

컴퓨터가 서로 연결되어 TCP/IP라는 통신 프로토콜을 이용하여 정보를 주고받는 전세계의 컴퓨터 네트워크

인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는 정보 공간
월드 와이드 웹(world wide web)의 줄임말

웹의 동작 원리

웹은 기본적으로 클라이언트/서버 방식으로 동작한다.
가장 널리 쓰이는 웹 서버 - 아파치(Apache), 톰캣(Tomcat), IIS(Internet Information Server)

  • 요청: 클라이언트에서 서버로 정보를 요구하기 위해 보내는 메시지. 이 요청 방식에는 GET방식과 POST 방식이 있다.

CGI

  • 동적 페이지를 위한 기술
  • 웹 서버와 동적 컨텐츠 생성을 맡은 프로그램 사이에서 정보를 주고받는 인터페이스
  • 초기 웹 프로그래밍에 사용된 기술

웹 페이지의 종류

  • 정적 웹 페이지
    저장된 그대로 사용자에게 전달되는 웹 페이지, 모든 상황에서 모든 사용자에게 동일한 정보를 표시
    -> 웹 프로그래밍 불필요: 단순 HTML(HyperText Markup Language)
  • 동적 웹 페이지
    사용자나 상황에 따라 다른 내용이 전달되는 웹 페이지, 각각의 상황 및 사용자에게 다른 정보를 표시
    -> 웹 프로그래밍 필요: PHP, ASP, JSP

동적 웹 페이지의 종류

  • 서버-사이드 동적 웹페이지(server-side dynamic web page): 서버사이드 스크립트를 처리하는 애플리케이션 서버에 의해 통제되는 구조의 웹페이지 - JSP, PHP, ASP, ASP.NET, Node.js
  • 클라이언트-사이드 동적 웹페이지(client-side dynamic web page): 로드될 때 브라우저에서 실행되는 HTML 스크립트를 사용하여 웹페이지를 처리 - JavaScript, DHTML, AJAX

애플리케이션 프로그래밍 언어

  • 이용하려는 컴퓨터에 개발한 프로그램 설치 필요함
  • 웹브라우저를 사용하지 않음
  • HTTP 프로토콜을 이용하지 않음

클라이언트-서버 애플리케이션: CS Program

  • 서버 컴퓨터에 설치된 프로그램 이용함

  • 이용자 컴퓨터와 서버 컴퓨터에 프로그램을 설치하여 사용함

  • 주로 TCP/IP 통신 이용(HTTP는 인터넷의 한 종류)

  • 예) PC방 관리 프로그램, 음식점 카운터와 테이블 주문 연동 프로그램

  • 개발언어: 자바, C, 파이썬 등

  • 웹브라우저를 사용하지 않음(HTML, 자바스크립트 등 불필요함)

  • HTTP를 이용하지 않고 인터넷 TCP/IP나 자체 통신망을 구성하여 이용함.

웹 프로그램

인터넷 서비스를 이용해서 서로 다른 구성요소들(PC 등)이 통신할 수 있는 프로그램이다.

프로토콜(Protocol)과 IP

  • 프로토콜(Protocol)
    통신을 하기 위한 규약으로 HTTP, FTP, SMTP, POP 등이 있다.

웹 프로그래밍 언어

  • 이용자 컴퓨터에 별도로 개발한 프로그램 설치 불필요
  • 대신 웹 브라우저 반드시 필요
  • 서버 컴퓨터에 개발한 모든 프로그램 설치
  • 웹 프로그래밍의 필요성 -> HTML과 구분
    - 사용자나 상황에 따라 다른 내용의 페이지가 필요한 경우 사용
  • 클라이언트 측 실행 언어와 서버 측 실행 언어로 구분됨.

PHP(Hypertext Preprocessor)

Personal Home Page Tools, 동적인 웹 문서를 빠르고 쉽게 작성할 수 있고 동적 HTML 처리 속도가 빠르다. 공개 무료.

ASP.NET(Active Server Page)

마이크로소프트사가 개발하여 판매하는 웹 애플리케이션 프레임워크, 동적인 웹 사이트, 웹 애플리케이션, 웹 서비스를 만들 수 있다.

JSP(Java Server Page)

썬 마이크로시스템즈에 의해 배포되었으며, 자바를 기반으로 하는 자바 서블릿을 보다 쉽게 사용하여 웹서버에서 동적으로 웹페이지를 생성, 웹 브라우저에 돌려주는 언어

Node.js

오픈 운영체제 백엔드 JavaScript 실행 환경을 구현하는 서버사이드 스크립트 언어
-Express.js : Node.js의 표준

JSP

자바를 기반으로 하는 JSP는 동적인 페이지를 생성하기 위한 서버측 웹 프로그래밍 언어 중 하나

  • 객체지향적, 플랫폼 독립적, 네트워크 지향적, 뛰어난 보안성, 멀티스레드 기능, 친근한 코드, 서블릿 기술의 확장, 유지 관리가 용이

자바의 모든 기능을 사용 가능(확장성)

JSP 개발 환경 도구

  1. 자바 개발환경
  • JDK: HTML 코드 내에 자바 코드를 작성하기 때문에 자바 개발 도구인 JDK가 반드시 설치되어 있어야 합니다.
  1. 웹서버
  • 톰캣: 웹 프로그래밍 언어로 작성된 웹페이지가 실행되어 웹 브라우저에 나타나도록 하기 위해 웹 컨테이너를 설치해야 합니다. JSP 웹컨테이너로 자주 사용되는 것 중에서 가장 유명한 것은 톰캣이다. 톰캣은 오픈소스 프로젝트로서 무료로 누구나 사용할 수 있다.
  1. 통합 개발 환경
  • 이클립스: JSP 코드를 작성한 후 이를 컴파일하여 오류를 검사하고 실행 결괄르 확인할 수 있는 통합 개발 환경(IDE)으로 개발자에게 가장 인기 있는 이클립스(Eclipse)를 선택하여 설치한다.

JSP 개발 환경 구축하기

웹 서버와 통합 개발 환경 설치하기

웹 서버

톰캣

  • 아파치 소프트웨어재단(Apache Software Foundation)에서 개발한 웹 애플리케이션 서버
  • 자바 만들어진 웹페이지를 구동하기 위한 엔진

통합 개발 환경

이클립스

  • 자바 통합 개발 환경(IDE) 중 가장 많이 사용되는 개발 도구
  • 자바를 기반으로 애플리케이션을 개발하기 위해 이클립스 사용
profile
개발자가 될테야

0개의 댓글