JSP 시작하기
JSP란 무엇인가 ?
JSP(Java Server Pages)의 각 첫 자로 만들어진 용어이며 사전적인 의미로 해석하면 자바로 작성한 서버 페이지로 해석할 수 있다.
여기서 자바는 우리가 알고 있는 언어 자바를 뜻하므로 JSP의 기본 문법은 자바를 근거로 한다는 것을 알 수 있다.
그리고 "서버 페이지" 라는 것에 약간의 설명을 붙이면 서버에서 실행되는 페이지로 바꿀 수 있다.
웹에서 보여지는 페이지(문서)의 가장 일반적인 형태는 HTML 페이지 이다.
이 HTML 페이지는 클라이언트(웹에서의 클라이언트는 사용자 컴퓨터를 통해 현재 웹 페이지를 방문하고 있는 각각의 브라우저로 볼 수 있다.)에서 해석되고 실행된다.
HTML 페이지에서 서버에 저장된 데이터를 제어하려면 HTML page 내에서는 방법이 없다. 왜냐면 HTML page에선 서버의 데이터를 접근할 수 없기 때문이다.
HTML 페이지에서 서버에 저장된 데이터를 제어하기 위해선 그 작업을 실행할 수 있는 다른 page에게 원하는 작업을
요청(request)해야 하고 요청을 받은 페이지는 서버의 데이터를 접근하여 요청에 합당한 처리를 수행한 다음 그 결과를 HTML 페이제에게 넘겨주어야(respones) 한다.
HTML Page로부터 요청을 받아 서버의 데이터를 처리한 다음 그 결과를 요청한 page 에게 넘겨주는 역할을 하는 Page는 당연히 서버에서 실행되는 page여야 하는데 JSP Page는 바로 이러한 페이지를 의미한다.
JSP를 발표한 선마이크로시스템사에서 제공하는 JSP 문서에 의하면 JSP는 "답변(responese) 을 만들기 위해 요청(request)을 어떻게 처리할 것인지를 구하는 텍스트기반의 문서"라고 정의하였다.
항상 같은 내용을 표시하는 웹 페이지를 작성하기 위해선 HTML로 충분하다. 그러나 정보는 항상 바뀌게 되으로 같은 내용을 표시한다는 것은 잘못된 정보를 표시할 가능성이 있고, 이렇게 같은 내용을 표시하는 페이지를 정적 웹 페이지라고 한다.
그렇다면 왜 HTML은 늘 같은 내용을 표시하는 정적인 웹페이지 밖에 작성할 수 없을까? 이유는 여러가지 있지만
가장 핵심적인것은 프로그래밍 코드를 이용할 수 없다는 점 그리고 데이터베이스에 연동 할 수 없다는 점 때문이다.
그래서 등장한 것이 동적 웹 페이지이다. 개인 홈페이지를 만들때 HTML태그와 javaScript만으로도 표현이 가능했다. 그러나 최근에는 홈페이지를 만들기 보다는 블로그나 트위터 등을 사용하고 있는 추세이기 때문에 이러한 블로그나 트위터 조차도 어떠한 정보를 입력한 글들이나 댓글들은 모두 데이터베이스에 저장된다. 그런데 HTML만으로는 기업의 방대한 데이터나 쇼핑몰과 같이 실시간으로 수많은 데이터의 변화를 처리하거나 저장하는 작업을 처리한다는 것은 불가능하다.
이런 불편을 해소하고 동적으로 변화하는 데이터를 처리하고 표시하기 위해 개발된 언어가 CGI, ASP , PHP , JSP 등이다.
웹프로그래밍은 기본적으로
클라이언트 / 서버 방식으로 클라이언트(웹 브라우저)가 특정 페이지를 웹 서버에 요청(request)하게 되면 웹 서버가 이를 처리한 후 결과를 클라이언트에게 응답(reponse)를 하게 되는 구조를 가지고 있다.
인터넷에서 사용자가 해당 사이트에 접속을 하면 서버 컴퓨터는 사용자에게 서버 컴퓨터의 웹 페이지를 보여줘야 한다.
그렇게 하려면 사이트를 서비스해 주는 물리적인 서버가 있어야 한다. 그림에서 가운데가 서버이다.
처음부터 서버로 출시되는 하드웨어를 서버로 쓰면 좋겠지만 개발할 때는 PC를 서버의 환경처럼 설정하고 개발이 끝나고 변격적인 서비스에 들어가면 그때 개발한 프로그램을 서버로 올려놓기만 하면 된다.
우선 서버의 역할을 할 프로그램(application)을 설치해야 한다. DB서버를 설정하려면 Oracle , MS-SQL등의 데이터베이스 프로그램을 설치해야 하는 것과 마찬가지로 웹서버를 설정하려면 Apache, IIS , JWS등의 웹 서버 프로그램이 설치되어 있어야 한다.
JSP를 실습하려면 3가지 요소가 필요하다.
1. JAVA : JDK&JRE
2. 아파치 : 톰캣
3. 개발환경(이클립스EE)