JSP, Servlet, MySQL/JSP - webmarket

JSP의 개요 : 원리를 이해하고 개발 환경 구축하기

샤리미 2023. 9. 3. 05:40
728x90
반응형

참조 서적: 쉽게 배우는 JSP 웹 프로그래밍

 

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

 

1.1 인터넷과 웹의 개요

 

인터넷(internet)과 웹(web)은 대게 동의어로 쓰이지만 엄밀히 말하면 서로 다른 개념이다. 인터넷은 컴퓨터가 서로 연결되어 TCP/IP 라는 통신 프로토콜을 이용하여 정보를 주고받는 전세계의 컴퓨터 네트워크이다. 인터넷을 통해 광범위한 정보와 서비스를 제공할 수 있는데 그중 한 서비스가 웹이다. 웹은 인터넷에 연결된 컴퓨터들을 통해 사람들이 정보를 공유할 수 있는 정보 공간으로, 월드 와이드 웹(world wide web)의 줄임말이다. 인터넷의 활용에서 웹의 비중이 절대적 위치를 차지하여흔히 인터넷과 웹을 같은 의미로 사용하는 것이다. 

 

1.2 웹의 동작 원리

 

웹은 기본적으로 클라이언트/서버 방식으로 동작한다. 클라이언트 (웹 브라우저)가 특정 페이지를 웹 서버에 요청하면(request)이를 처리한 후 그 결과를 클라이언트에게 보내어 응답하는 (response)것이다. 이를 피자주문에 빗대어 살펴보자. 우선 피자를 시키기 위해 피자집의 전화번호를 찾아 전화를 걸어 집 주소와 원하는 메뉴를 주문한다. 주문(요청)을 받은 피자집에서는 클라이언트(주문자)가 원하는 주문에 맞게 피자를 만들어서 주문한 해당 주소로 배달(응답)을 한다. 

 

컴퓨터 세계에서 이로어지는 웹의 동작에서 웹 서버는 피자집에 해당한다. 즉 웹 브라우저에 원하는 웹 서버 주소를 입력하면(요청) 웹 서버가 웹 브라우저를 통해 해당 웹 페이지를 제공한다(응답). 이때' 요청하는 쪽이 클라이언트 (사용자) 이고 응답하는 쪽이 서버(제공자)이다. 클라이언트가 서버에 HTML 페이지나 파일을 요청하면 서버가 이에 응답하여 HTML페이지나 파일을 클라이언트에게 제공하는 장소가 바로 웹이다. 

 

1.3 정적 웹 페이지와 동적 웹 페이지

웹 페이지는 크게 정적(static)페이지와 동적(dynamic)페이지로 나눌 수 있다. 정적 웹 페이지는 컴퓨터에 저장된 텍스트 파일을 그대로 보는 것이고, 동적 엡 페이지는 저장된 내용을 다른 변수로 가공처리하여 보는 것이다. 정적 웹 페이지는 HTML(hyperText Markup Language)과 같은 웹 언어로 작성하고, 동적 웹 페이지는 PHP,ASP,JSP와 같은 웹 언어로 작성한다. 

 

HTML 은 가장 단순한 형태의 웹 언어이다. 다음과 같이 서버에 HTML,이미지, 자바스크립트 등을 저장해두고, 클라이언트가 특정 HTML문서를 요청하면 전송한다. 

  1. 사용자가 웹 브라우저에 URL을 입력하여 요청하면 2. 해당URL의 웹 서버에서 수신된 파일을 검색하여 3. 이미 준비된 HTML문서를 클라이언트에게 그대로 보내고 4. 웨ㅐㅂ 브라우저가 HTML문서를 보여준다.

초기의 웹은 대부분 정적 웹 페이지를 서비스했다. 정적 웹페이지는 미리 만들어놓은 정보만 보여주기 떄문에 고객의 취향이나 변화에 적응 할 수 없고 새로운 것을 추가, 수정삭제하는 작업을 모두 수동으로 처리해야 하므로 관리하기가 어렵다. 하지만 동적인 요소가 없기 때문에 데이터베이스도 필요없고 구축하기 쉬우며, 단순 문서로만 이루어져있어 서버간 통신이 거의 없고 속도가 빠르다. 또한 정적 문서로만 이루어져 있기 떄문에 모든 호스팅 서버에서도 동작 할 수 있다는 것이 장점이다. 그러나 기술이 발전함에 따라 사용자의 기호에 맞게 능동적으로 변화하는 웹 페이지가 필요해져서 이를 위해 동적 웹 페이지를 제공하는 PHP,ASP,JSP와 같은 언어가 개발되었다 .현재 우리가 보는 대부분의 웹 페이지는 동적 웹 페이지라고 할 수 있다. 

 

동적 웹페이지는 사용자가 웹 페이지에 글을 작성하거나 환경 설정 등을 바꾸면 그 내용이 서버에 있는 데이터베이스에 저장되고 결과가 웹 페이지에 반영되는 형태로 동작한다. 즉 다음과 같이 확장자가 ASP또는 JSP인 웹 페이지를 요청하면 ASP 는 DLL이나 OCX같은 파일을 이용하여 ,JSP 는 서블릿을 이용하여 요청을 처리한다. 그런 다음 그 결과를 HTML파일로 만들어 클라이언트에게 전송한다. 1. 사용자가 웹 브라우저에 URL을 입력하여 요청하면 2. 해당URL의 웹 서버에서 요청을 분석하여 처리한 후 3.그 결과를 HTML문서로 생성하여 4.요청에 맞게 정제된 HTML문서를 클라이언트에게 보내고 5.웹 브라우저가HTML문서를 보여준다. 따라서 하나의 서버로부터 다른 결과를 응답받음으로써 사용자마다 요청에 따라 처리된 HTML문서를 볼 수 있다. 로그인하면 개인에 대한 정보와 개인만의 화면으로 구성되는 웹 사이트는 동적 웹 페이지의 대표적인 예이다. 

1.4 웹 프로그래밍과 JSP

웹 프로그래밍 언어는 클라이언트 측 실행 언어와 서버 측 실행언어로 구분되며, 자바를 기반으로 하는 JSP는 서버 측 웹 프로그래밍 언어 중 하나이다. 원래는 선마이크로시스템스(오라클에 합병됨)가 자바를 기반으로 하는 서버 측 프로그래밍 방식인 서블릿을 먼저 개발했으나 서블릿 개발 방식이 그리 쉽지 않아 HTML

02. JSP 개발환경 구축하기

2.1 자바 설치하고 환경 설정하기

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

2.2-1 톰캣 설치하기 (그냥 되는대로 apache-tomcat-9.0.78 버전 사용)

톰캣 설치 후 이클립스 연동 ( IDE 버전은 불가 EE 로 새로 다운로드 필요)- 

2.3 프로젝트 만들고 실행하기

2.3-1 [New Dynamic Web Project] 생성 -jsp 페이지 작성 - 실행결과 확인 (‘http://localhost:8080/JSPBook/hello.jsp ’로 확인 )

728x90
반응형