JSP에서 Oracle 연동하기


JSP를 이용해서 웹 페이지를 만들다보면 효과적인 데이터 관리를 위해서 외부 DB와 연계를 해야 할 경우가 굉장히 많습니다. 이번엔 JSP와 Oracle을 연동해보도록 하겠습니다.

기본적인 JSP Oracle 연동 소스는 다음과 같습니다.



// 오라클용 드라이버 로딩
Class.forName("oracle.jdbc.driver.OracleDriver");
// 연결객체 생성
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@데이터베이스의 주소:포트트번호:DB이름", "ID", "비밀번호");

// SQL 쿼리를 날리기 위한 Statement 생성
Statement stmt = conn.createStatement();

// DB 던질 Query 작성
String query = "select * from table1;";

// DB에 쿼리를 날리고 결과를 받음
ResultSet rs = stmt.excuteQuery(query);
// insert, update, delete 구문은 executeUpdate() 메소드를 사용

// 받아온 레코드들을 하나씩 탐색
while(rs.next())
{
// 가져온 레코드의 특정 어트리뷰트 값을 접근, 이 경우 Integer 형의 age라는 어트리뷰터에 접근해서 값을 가지고 옮
   System.out.println(rs.getInt("age"));
}







물론 오라클 연동 드라이버를 다운받아서 프로젝트에 세팅을 해야 합니다.

오라클과 JSP 연동 그렇게 어렵지 않아요 ~

[JSP 강좌] JSP문서에 주석 달기


JSP 뿐만아니라 대부분의 프로그래밍 언어에서 "주석" 이라는 기능을 제공합니다. 웹 프로그래밍 언어인 JSP 역시 자바 문법을 따르고 있으므로 주석 기능이 제공 되는데요. 주석은 프로그램의 논리적 구조에는 전혀 영향을 미치지 않는 글로 각 부분의 간략한 설명을 써 놓을 때 사용합니다.

JSP 프로그래밍 환경에서는 두 가지 형태의 주석이 사용됩니다. 
JSP 부분에서 사용되는 주석과 HTML 환경에서 사용되는 주석이 있습니다.


JSP 주석 1 - HTML 스타일 주석 

먼저 HTML의 주석을 JSP 프로그래밍에도 사용 할 수 있습니다. JSP로 HTML 태그를 생성하는 것이기 때문에 뭐 당연한 말이겠네요. HTML 주석은 다음과 같이 생겼습니다.


<!-- HTML 주석입니다. -->


이런 스타일의 주석은 동적 웹 프로그래밍언어가 아니라 순수한 HTML로만 이루어진 웹 페이지에서도 많이 볼 수 있는 태그입니다. 실제로 웹 브라우저에서 실행시켜 보면 "HTML 주석입니다." 라는 글자는 출력되지 않죠.

JSP의 관점에서 보면, 이런 HTML 스타일의 주석은 클라이언트로 전달되는 주석이라는 특징이 있습니다. HTML 스타일의 주석도 어떻게 보면 하나의 태그이기 때문에 다른 태그들과 마찬가지로 클라이언트의 웹 브라우저로 전송이 됩니다.

그렇기 때문에 비즈니스 로직이나 JSP 프로그램의 핵심 알고리즘을 노출 시킬 수 있는 주석을 이런 HTML 스타일로 작성을 하게 되면, 주석이 그대로 클라이언트 웹 브라우저로 전송이 됩니다. 클라이언트에서 <소스보기> 기능을 이용해서 HTML 코드를 뜯어 볼 경우 이런 주석은 그대로 노출되기 때문에 보안상 위험이 있는 내용은 HTML 주석으로 처리하면 안 됩니다.

HTML 스타일의 주석 사용의 예를 들어보겠습니다. 다음 소스를 작성해서 실행 시켜 보도록 하겠습니다.




그리고 실행 결과가 나오는 창에서 소스보기를 통해 주석이 클라이언트에서 어떻게 보이는지 보도록 하겠습니다.



HTML 주석이 그대로 노출 되는 것을 볼 수 있습니다. 위의 예에서 본 것 처럼 만약 데이터 베이스나 기타 시스템의 아이디와 비밀번호를 HTML 스타일 주석으로 처리를 했다면, 그 아이디와 비번은 만천하에 공개되는 것입니다.

그렇기 때문에 HTML 스타일 주석을 사용 할 때에는 주의가 필요합니다.


JSP 주석 2 - JSP 스타일 주석


그렇다면 핵심적인 비즈니스 로직이나 비밀번호 같은 중요한 정보를 주석으로 설명하되, 클라이언트로 전송이 되지 않도록 하는 방법은 없을까요? 없다면 거짓말이겠죠.

바로 JSP 스타일의 주석을 이용하면 서버에서만 ( JSP 파일에서만 ) 볼 수 있고 결과로 전송되는 HTML에서는 보이지 않는 주석을 작성 할 수 있습니다. JSP 스타일의 주석은 다음과 같습니다.


<%-- JSP 주석입니다 -- %>


아까 봤던 HTML 스타일의 주석과 비슷하지만 약간 다르네요. 느낌표 대신에 퍼센트 문자가 들어갔습니다.
이렇게 쓰는 주석은 JSP 파일을 편집 할 수 있는 서버측에서만 볼 수 있으며, 클라이언트 쪽에서는 이 주석을 볼 수가 없습니다.
테스트를 해보자면, 다음 소스코드를 실행해 보도록 합시다.




그리고 실행 결과가 나오는 창에서 소스보기를 통해 이 주석이 클라이언트에서 어떻게 보이는지 보도록 하겠습니다.



아까와는 달리 JSP 스타일의 주석은 클라이언트가 <소스보기>를 통해서 볼 수 없음을 알 수 있습니다.
그러므로 중요한 비즈니스 로직이나 JSP 파일의 핵심 내용, 보안상 중요한 정보 등은 HTML 스타일의 주석보다는 JSP 스타일의 주석을 이용해서 설명해 놓는 것이 좋다는 걸 알 수 있습니다.


JSP 주석 3 - JAVA 스타일 주석


그 밖에 JSP는 자바 언어의 문법을 그대로 이용하고 있기 때문에 기존의 자바스타일의 주석도 이용할 수 있습니다. 자바 스타일의 주석에는 두 가지가 있는데,


// 한 줄 짜리 자바 주석

/*
    한줄 혹은
    여러 줄 짜리
    자바 주석
*/


첫 번째는 한 줄 전체를 주석처리하는 것으로 다음 줄은 주석처리가 되지 않습니다.
두 번째는 주석의 범위를 지정할 수 있는데, '/*' 문자는 주석을 여는 문자이고, '*/'는 주석을 닫는 문자입니다. 즉, '/*' 과 '*/' 사이의 모든 문자는 줄 바꿈문자를 비롯하여 모두 주석처리가 되는 것입니다. 자바를 배워보셨거나 기타 다른 프로그래밍 언어를 배워 보신 분들은 쉽게 이해가 가실 거라고 생각합니다.

마지막으로 한번 더 주석처리에 대한 연습을 해보겠습니다.




이 소스 코드를 실행해 보면,



이렇게 나옵니다.
주석은 안 쓰는 것보다 쓰는 것이 프로젝트 관리와 진행에 있어서 많이 도움이 됩니다. 하지만 웹 프로그래밍과 같은 경우에는 주석을 잘 못 썻을 경우에 보안상 문제가 발생 할 수도 있는데요.

어떤 주석이 어떤 특성을 갖고 있는지 알고 사용해야 합니다.



JSP 문서 만들기


이제 본격적으로 JSP라고 할 수 있는 것들을 배워 보겠습니다.
여러분의 컴퓨터에 JSP 프로그래밍 환경이 갖추어 지지 않았다면, 이전에 포스팅 해놓은 것들을 따라하면서 JSP 프로그래밍 환경을 구축하시기 바랍니다. JSP 프로그래밍 환경이 없으면 JSP를 실행 할 수 없겠죠?

2010/04/06 - [놀이터/글 창고] - 자바( Java )설치하기 & 환경변수( path ) 설정하기
2010/04/06 - [놀이터/글 창고] - 자바( JAVA ) 개발 환경 설치( IDE 설치 ) - 이클립스( Eclipse ) 설치하기 및 오류
2010/07/15 - [놀이터/글 창고] - 이클립스와 톰캣 설치 및 연동하기
2010/07/19 - [놀이터/글 창고] - JSP 프로젝트 생성 및 "Hello, world!" 프로그래밍

이전에 "Hello, World!" 프로그래밍을 해봤는데요. 사실 이것은 JSP 라고 하기가 뭐 한게, JSP 함수들을 이용하지 않고 단지 HTML문서를 JSP 파일로 돌려 본 것 뿐입니다. 그래서 오늘은 진짜 JSP라고 할 수 있는 기초 프로그래밍을 배워 보도록 하겠습니다.


JAVA 언어를 이용한 "Hello, World!"


 이전에 실행 해 봤던, "Hello, World!" 라는 소스를 기억 하시나요?
2010/07/19 - [놀이터/글 창고] - JSP 프로젝트 생성 및 "Hello, world!" 프로그래밍
위에서 말씀 드렸다 시피 이 소스는 JSP라기 보다는 HTML이라고 해야 더 정확 할 것입니다. 동적인 요소, 특히 JAVA 언어가 사용되지 않았기 때문이죠. 이제 여기에 JSP적 요소( JAVA 언어를 이용한 )를 추가한 "Hello, World!" 소스 코드를 작성해 보도록 하겠습니다.

소스는 다음과 같습니다.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%    String str = new String("Hello, World!"); %>
<%= str %>
</body>
</html>


이전에 작성했었던 "Hello, World!" 소스와 달라진 부분이 있지요?

이전 "Hello, World!" 소스


바뀐 "Hello, World!" 소스


바로 <Body> 태그의 안쪽에 단순히 Hello, world! 라는 문자열만 있었던 부분이 자바 비스무리한 소스코드로 바뀌어 진 부분입니다. 출력되는 결과는 같습니다만, 표현하는 방식이 약간 다른데요. 전자는 HTML을 이용한 정적인 방식이고, 후자는 JSP를 이용한 동적인 방식이 되겠습니다.

JSP 코드의 출력 결과


더 설명을 하자면, JSP 소스 코드에는 HTML 코드 뿐만아니라 자바 프로그래밍 코드도 약간 들어가 있다는 것입니다. 바로 HTML 문서 중간에 <% %>로 둘러 쌓인 부분이 바로 자바 프로그래밍 부분인데요. 위에서는 문자열인 String 클래스를 생성자를 이용해 "Hello, World!" 라는 문자열을 만들어서 저장을 하고 있습니다. 여기까지는 자바 코드와 같은 패턴이네요.

다음은 <%= str %> 부분입니다. 원래 자바에서 콘솔에 문자열을 출력하는 메소드는 System.out.println("") 임을 자바를 배우신 분이라면 아실 겁니다. 하지만 JSP에서 출력이 되는 곳은 콘솔이 아니라 HTML을 출력하는 웹 브라우저입니다. 이 때 사용하는 방법이 <%= 변수 %> 를 사용하는 방법으로, 변수에 들어있는 내용이 문자열의 형태로 HTML 상에 출력이 되는 것입니다.

위 소스 코드를 설명해보면, str 이라는 변수에 "Hello, World!"라는 문자열 객체를 만들어서 가리키게 하고 있습니다. ( str이라는 변수에 "Hello, World!"라는 문자열을 저장하고 있다고 보시면 됩니다. ) 그 다음줄에서 <%= str %> 이라는 부분에 의해서 str 변수에 들어있는 문자열이 HTML 상으로 출력이 됩니다. 즉, str에 "Hello, World!" 라는 문자열이 들어 있으므로 <%= str %> 코드를 만나서 Hello, World 가 HTML로 출력이 되는 것입니다.

로그인 처리


JSP를 이용하는 이유가 바로 여기에 있는데요. 프로그래밍이 가능하다는 부분입니다. 만일 로그인한 사용자의 정보를 표현하고 싶을 때, 그 정보를 변수에 담았다가 요소요소에 사용 할 수 있습니다. 또, 회원의 등급에 따른 if 문의 사용으로 JSP 페이지를 다르게 표현 할 수도 있는 강력한 프로그래밍 가능성을 가지고 있습니다.

요약하면 JSP를 이용해서 좀 더 유연하고, 강력한 웹 페이지를 구성 할 수 있다는 말입니다.

JSP에 대한 더 자세한 내용은 차차 배워 가도록 하겠습니다. JSP를 배워서 게시판을 만들어 보는 것이 이번 스터디의 목적이니 잘 따라 오시고 좀 더 공부를 하시면 쇼핑몰이나 블로그 플랫폼, 홈페이지 정도를 만들 수 있는 실력까지 올라 가실 수 있을 겁니다. ^^


JSP 학습 추천 도서



 이클립스와 톰캣을 연동하여 사용 할 때, 자주 나타나는 메시지가 톰캣이 사용하는 포트가 충돌한다는 메시지 입니다.


이 창이 자주 뜨게 되는데요.

'Starting Tomcat v5.5  Server at localhost' has encounterd a problem.

Server ports (8080, 8009) required by Tomcat v5.5 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s).

라는 메시지가 뜹니다. 해석을 해보자면, Tomcat 이 사용하는 8080, 8009 포트가 이미 사용중이라는 말입니다. 서버가 이미 실행되고 있을 수 있으니 확인해 보시라는 경고 메시지입니다. 이클립스에서 JSP 실행을 하기 위해서 기존에 실행 하던 서버를 잠시 정지 시키는 것을 요구하고 있네요.

해결 방법으로는 기존에 실행되고 있는 톰캣 서버나 다른 서버 프로그램을 잠시 정지 시키거나 중지 시키고 실행을 하면 됩니다.


해결 방법 1

 기존에 실행이 되고 있는 톰캐 서버를 정지해보겠습니다.
 여러분의 컴퓨터 트레이를 보시면


이렇게 생긴 아이콘이 있을 텐데요. ( 없을 수도 있습니다. )
이 아이콘을 우클릭하여


'Stop service' 를 누릅니다.
그리고 이클립스로 돌아가서 실행을 하면, 오류 없이 실행 될 겁니다.
그리고 테스트가 끝난 다음 다시 'Start service' 를 눌러서 실행 시켜 주면 됩니다.
근데, 개인 PC에서 실습 이외에 톰캣 서버를 돌릴 이유가 있나 싶네요.


해결 방법 2

  트레이에 저 아이콘이 없는 경우엔 작업 관리자를 열어서 톰캣 서버 프로그램을 강제로 꺼주는 방법을 쓰면 됩니다.
  작업 관리자를 실행한 후 "프로세스" 탭을 보시면


tomcatXX.exe 라고 하는 톰캣 프로세스가 실행되고 있을 겁니다.
톰캣 서버를 담당하는 프로세스인데요.
이 프로세스를 종료해 줍니다



프로세스 끝내기를 눌러서 종료를 해주시고,
이클립스에서 다시 소스 코드를 실행하시면 잘 동작 할 것입니다.

JSP 환경 구축하면서 처음 보게 된 오류 메시지였는데, 별로 어렵지 않게 해결이 되네요 ㅎㅎ


JSP 학습 추천 도서


JSP 프로그래밍의 시작


  이전 포스팅에서 JSP 프로그래밍을 할 수 있는 환경을 구축 하였습니다. 만약 여러분의 컴퓨터에 JSP를 프로그래밍 할 수 있는 환경이 갖추어 지지 않았다면, 이전 포스트를 보면서 JSP 환경 구축을 하시기 바랍니다. 프로그래밍 환경이 구축되지 않았다면 JSP 프로그래밍 하기 힘들어요~ ( 메모장을 이용해서 서버에 올리는 식으로 할 수도 있지만 시간이 많이 걸리고 복잡해서 처음 배우는 분들에겐 비추입니다. )

2010/04/06 - [컴퓨터 공학/Java] - 자바( Java )설치하기 & 환경변수( path ) 설정하기
2010/04/06 - [컴퓨터 공학/Java] - 자바( JAVA ) 개발 환경 설치( IDE 설치 ) - 이클립스( Eclipse ) 설치하기 및 오류
2010/07/15 - [컴퓨터 공학/Java] - 이클립스와 톰캣 설치 및 연동하기


이클립스 프로젝트 생성하기

 그러면 JSP 프로그래밍을 하기위해서 개발환경인 이클립스를 실행시킵니다.


이클립스에도 여러가지 버젼이 있는데, 저는 갈릴레오 버전을 사용하고 있습니다. 갈릴레오 버전이 나온지 얼마 안되서 아직 호환성 문제 및 여러가지 잡음이 있는데, 만약 JSP 프로그래밍을 하다가 안 되는 점이 있으면, 잘 찾아 보시고 정 안되면 이전 버전인 유로파 같은 버전을 다시 설치해 주시기 바랍니다.

 
어짜피 이클립스는 인스톨 과정이 없고, 그냥 압축 파일만 압축 해제 해주면 되기 때문에 다운그레이드 하는 과정이 굉장히 쉽습니다.

하위 버전을 사용 하실 경우 톰캣 연동 플러그인을 다시 설치해 주셔야 합니다. ( plugins 폴더에 다시 집어 넣어 주셔야 합니다. )

2010/07/15 - [컴퓨터 공학/Java] - 이클립스와 톰캣 설치 및 연동하기


이클립스를 실행 하셨으면, [File] -> [New] -> [Project]를 선택합니다.



 Project 를 새로 생성 할 수 있는 창이 뜨는데요. 이 메뉴 중에서 'Web' 의 하위메뉴에서 'Dynamic Web Project'를 선택해 줍니다.

여기서 Dynamic Web Project 란 동적인 웹 페이지를 만들 수 있는 프로젝트를 말합니다. 동적인 웹 페이지란, 게시판 처럼 데이터 베이스나 어떤 입력, 조건 등에 따라서 웹 페이지의 내용이 동적으로 변하는 페이지를 말합니다. JSP나 PHP, ASP 등의 웹 프로그래밍 언어로 쓰여진 웹 페이지가 이런 동적 웹페이지 ( Dynamic Web Page )에 해당합니다.

 반면 Static Web Project는 JSP 같은 웹 프로그래밍 언어가 아니라 단지 HTML과 Javascript, css와 같은 웹 페이지 자체의 동적인 요소가 없는 페이지를 만드는 프로젝트를 의미합니다.

 우리는 JSP 프로그래밍을 할 것이기 때문에 'Dynamic Web Project'를 선택합니다.




'Dynamic Web Project'를 선택 하셨으면 위와 같은 창이 나올 겁니다. 'Project Name'에 적절한 프로젝트 이름을 써줍니다. 나머지는 그냥 기본 설정을 따라가시면 됩니다.


그 밑에 'Project contents' 는 프로젝트의 컨텐츠 ( 설정사항, 소스 코드 등 ) 들이 어느 디렉토리에 저장이 될 것인가를 말합니다. 기본으로 설정을 하면, 여러분의 'Work Space' 에 저장이 될 겁니다.
그리고 'Target Runtime'은 개발한 JSP 등의 실행을 위한 서버를 설정하는 곳인데, 나중에 설정을 하게 될 것이니 <None>을 사용하도록 합니다.


프로젝트 이름을 입력 하셨으면, [Finish] 를 눌러서 진행합니다.




프로젝트가 생성되어 'Project Explorer'에 방금 생성한 프로젝트가 등록이 되어 있는 것을 볼 수 있습니다.
저는 'JspProgramming' 이라는 이름으로 생성을 했습니다. 여러분도 여러분이 써 넣으신 프로젝트 이름이 저 곳에 뜰 겁니다.


"Hello, world!" 프로그램 소스 작성

이제 JSP를 프로그래밍 할 수 있는 프로젝트까지 생성이 되었습니다.
지금부터는 실제로 JSP 프로그래밍을 해보도록 하겠습니다. 프로그래밍을 배울 때, 가장 먼저 작성하는 프로그래밍이 바로 Hello, World 인데요. 간단하기 "Hello, World!"라는 문자를 출력하는 프로그램 입니다.




Project Explorer에 보시면 'WebContent' 라는 폴더가 있습니다. 이 폴더를 선택하고 우클릭해서 폴더를 하나 만들어 줍니다.
[우클릭] -> [New] -> [Folder] 를 선택합니다.




폴더 이름에 적절한 이름을 넣어줍니다.
저는 HelloWorld 라는 이름을 넣었습니다.
적절한 이름을 넣고 [Finish]를 선택합니다.

뭐, 사실 이렇게 폴더를 만들어서 관리를 하지 않아도 됩니다만 효과적인 소스 관리를 위해서 저는 폴더를 만들어서 관리를 하는 편입니다. 나중에 프로젝트가 커지거나 소스 파일이 많아지면 헷갈리게 되거든요 ^^

귀찮으신 분들은 폴더 안 만드셔도 됩니다.




HelloWorld 라는 폴더가 생성이 되었으면 ( 여러분이 입력한 폴더가 생성이 되었으면 ) 그 폴더를 선택하고 [우클릭] -> [New] -> [JSP]를 선택합니다.

만약 JSP가 보이지 않으신다면,

[New] -> [Other] -> 'Web' -> 'JSP' 를 선택하시기 바랍니다.







 "File Name" 에 생성할 파일이름을 써 넣습니다.
 저는 "HelloWorld.jsp"를 써 넣겠습니다.
 [Finish] 를 눌러도 되지만 [Next]를 눌러서 템플릿 소스를 선택하도록 하겠습니다.



여러가지 템플릿 항목들이 있는데, 그 중에 "New JSP File (html)" 을 선택하고 [Finish] 버튼을 누르겠습니다.

템플릿이란?

프로그래밍을 하게 되면, 기본적인 구조를 계속해서 입력해야 할 상황이 있습니다.

HTML을 예로 들면,
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>

이 부분은 새로운 html 페이지를 만들 때 항상 반복적으로 써 넣어야 합니다. 하지만 템플릿을 사용하면 이런 기본적인 구조가 미리 쓰여진채로 생성이 되어서 보다 편리하게 프로그래밍을 할 수 있습니다.

물론 Ctrl + C,V 를 해서 복사를 할 수도 있지만 이 기능을 사용하는게 더  깔끔하고 멋지지 않을 까요? ㅋㅋ

그럼 "Hello, World!"를 출력하는 프로그램을 작성해 보도록 하겠습니다.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
Hello, World!
</body>
</html>

단순히 템플릿에 의해 생성된 내용 중에 '<body>' 와 '</body>' 사이에 "Hello, World!" 만 타이핑 해서 넣은 화면입니다. 템플릿을 이용하면 편리하긴 하지만 좀 더럽게 느껴질 수도 있습니다. 생략 할 수도 있는 것들이 추가 되니까 말이죠.

[Ctrl] + [F11] 을 눌러서 실행을 시킵니다.


위와 같은 창이 뜨는데, 아마 'IBM WebSphere v6.0' 이라는 항목이 기본으로 설정되어 있을 텐데, 조금 위로 올라가면
'Apache' -> 'Tomcat v5.5 Server' 가 있을 겁니다. 여기서 여러분이 설치한 톰캣 서버의 버전을 선택해 주시면 됩니다. 저는 5.5 버전을 설치했으니 v5.5 를 선택하겠습니다.


'Tomcat Installation directory'의 [Browse]를 클릭해서 여러분이 이전에 톰캣 서버를 설치한 디렉토리를 지정해 줍니다.
기본 디렉토리는 "C:\Program Files\Apache Software Foundation\Tomcat 5.5" 입니다.
[Next]를 눌러서 진행합니다.


다음은 실행에 포함시킬 프로젝트를 선택하는 화면입니다.
'Project" Explorer' 에 여러개의 프로젝트를 포함 시킬 수 있는데, 그 중에 실행 시킬 프로젝트를 고르는 화면입니다. Configured 라는 쪽이 실행 시킬 프로젝트 목록이고, Available 이라는 쪽이 추가 시킬 수 있는 프로젝트입니다. 여러개의 프로젝트가 연계해서 작동하는 큰 프로젝트가 아니면 대부분 현재 실행되고 있는 프로젝트만 포함 시킵니다.

이렇게 서버 설정이 끝나고, 다시 [Ctrl] + [F11] 을 눌러서 프로젝트를 실행 시킵니다.



자, Hello, World! 라는 문자열이 뜬 것이 보입니다.
이제 JSP 프로그래밍을 할 수 있는 개발 환경과 간단한 JSP 프로그래밍을 해 봤는데요. 앞으로 배울 것이 더 많고 많이 배울 수록 해보고 싶은 것들이 더 많게 될 것입니다.

JSP 학습 추천 도서





이클립스 톰캣 연동하기 ( Eclipse & Tomcat )



 요즘 JSP 관련 코딩을 할 일이 생겨서 컴퓨터에 JSP 개발 환경을 설치해야 했는데요.
 톰캣(TomCat) 이라는 서버 프로그램을 이용해서 개인용 컴퓨터에 손 쉽게 서버 환경을 구축 할 수 있습니다.
 JSP 개발 환경을 구축하고 싶으신 분들은 개발 환경인 이클립스와 JDK ( Java Development Kit )을 설치하시기 바랍니다.
 이클립스와 JDK 설치는 이전에 포스팅 해 둔것이 있으니 링크를 걸어드리겠습니다.

2010/04/06 - [컴퓨터 공학/Java] - 자바( Java )설치하기 & 환경변수( path ) 설정하기
2010/04/06 - [컴퓨터 공학/Java] - 자바( JAVA ) 개발 환경 설치( IDE 설치 ) - 이클립스( Eclipse ) 설치하기 및 오류

첫 번째 링크가 여러분의 컴퓨터에 자바 개발 환경을 설치하는 단계입니다.
버젼이 다를 수도 있으며, 버젼에 따른 라이브러리 등이 다를 수도 있으니 여러분의 편의 맞게 버젼을 선택해서 설치해주시기바랍니다. 일반적으로는 최신 버젼을 추천하는 바입니다만 여러분의 프로젝트에서 이전 버젼을 사용하고 있을 수도 있고, 라이브러리가 바뀔 수도 있으니 적절하게 선택을 해서 설치하시기 바랍니다.

기존에 자바 프로그래밍을 하시던 위의 두 단계를 그냥 넘어가셔도 무방합니다.


1. 톰캣을 설치해 보자.

그럼 서버 프로그램인 톰캣을 설치해 보도록 하겠습니다.
웹 어플리케이션을 만들고 정상동작하는지 테스트 하기 위해서는 웹 어플리케이션 서버( WAS ; Web application Server ) 프로그램이 필요합니다. 그 중에 많이 사용되고 있는 것이 톰캣이라는 프로그램입니다.

먼저 톰캣의 다운로드 페이지로 가보도록 하겠습니다.

http://tomcat.apache.org/




위에 걸어드린 링크를 따라가시면, 위 그림과 같이 카리스마 있어보이는(?) 고양이가 그려진 Apache Tomcat 페이지가 뜰 것입니다. 좌측의 메뉴중에서 Download ( 다운로드 ) 부분을 보시면 여러가지 톰캣 버전이 있습니다. 특정 버전을 원하시면 그 버전을 다운받아서 설치를 하시면 되지만, 최신 버전을 설치 할 것을 권하는 바입니다.

저는 제가 보고 있는 책에서 사용하고 있는 Tomcat 5.5 버전을 다운받아서 사용하겠습니다.
사실 버전에 따른 차이는 그렇게 크지 않다고 생각합니다. 톰캣 서버를 처음 설치해 보시는 분들이라면 막 웹 어플리케이션 프로그래밍을 접하시는 분들일 것이고, 그런 분들에게 제공되는 서비스는 버전에 따라서 크게 다르지 않기 때문입니다. 하지만 좀 더 복잡하고 어려운 프로그래밍을 하실 분들은 더 높은 버전, 혹은 안정된 버전의 서버를 사용하시면 될 것입니다.
 이전 버전은 치명적인 오류만 없으면 웹상에 많은 레퍼런스들이 존재하기 때문에 오히려 공부하기에는 더 좋지 않을까 생각이 들기도 합니다.



아무튼, 원하는 버전을 클릭하시고 스크롤을 좀 내리면 위와 같은 섹션이 있습니다. [Binary Distributions]에서 [Core] 중에 [Windows Service Installer]를 선택해서 다운로드 받습니다.

직접 zip 이나 tar.gz 을 받아서 해도 되지만 여러분의 운영체제가 Windows 시리즈의 운영체제라면 쉽게 설치 할 수 있는 세번째 Windows Service Installer 를 받아서 설치하는 걸 권장합니다. 쉽거든요 ㅋ





다운로드를 받습니다.

제가 사용하는 인터넷 브라우저가 파이어 폭스이기 때문에 위와 같은 창이 나오는 것입니다.
웹 브라우저에 따라 약간은 다를 수도 있으니 그냥 다운로드 받으시면 됩니다. ㅎ



여러분이 다운로드 받은 경로에 고냥이 모양의 아이콘이 있을 겁니다. "apache-tomcat-5.5.30.exe' 인가요? 아무튼 아파치 톰캣 어쩌구인 아이콘을 실행합니다.




네, 여기서 부터는 일사천리로 진행됩니다.
"아파치 톰캣 설치 마법사에 오신것을 환영합니다." 라는 말을 하고 있네요.
[ Next > ]를 눌러서 다음으로 진행합니다.




사용 라이센스에 대한 내용입니다.
시간이 많으시거나 영어 독해 연습을 하시고 싶으신 분들은 읽어보시기 바랍니다.
언제나 늘 그랬듯이 [ I Agree ]를 눌러 줍니다.

문제가 많은 부분이죠.
이렇게 라이선스 동의 과정을 집어 넣어도 읽는 사람이 몇 %나 있을까요?
아마도 상업적으로 이용할 때에는 아파치에서 제공하는 유료 제품을 사용해야 한다는 내용 정도가 들어있지 않을까요?
일반적으로 이 라이선스를 어기는 사람을 별로 없을 것으로 생각됩니다만,
언젠간 한번 읽어 보는 것을 추천합니다.



설치 옵션을 조정하고 싶으시면 변경하시기 바랍니다.
시작 메뉴에 톰캣을 등록 할 꺼냐, 톰캣 Documents 를 설치 할 것이냐, ( 뭐 사용법이나 문제 해결 같네요 ), 톰캣 매니저 프로그램을 설치 할 것이냐 등등이 있네요. 잘 모르겠으면 그냥 [ Next > ]을 눌러서 넘어갑니다.


톰캣 서버 프로그램을 여러분의 컴퓨터 어디에 설치 할 것인가를 정하는 단계입니다.
딱히 관리를 안해주시는 분은 [Next]를 눌러서 진행을 하시기 바랍니다.
아니면 [Browse]를 눌러서 설치할 경로를 지정해 주시면 됩니다.


포트와 패스워드 설정에 관한 부분입니다.
톰캣의 기본 포트는 8080 이지만 이 포트가 이미 여러분의 컴퓨터에 설치된 프로그램에 의해 사용되고 있을 경우, ( 예를 들면 다른 서버 프로그램이 이미 사용하고 있을 경우 ) 다른 것으로 지정해 주시면 됩니다. 중복이 되면 아마도 나중에 실행 할 때 오류가 나거나 충돌 메시지가 뜰 겁니다.

 또 사용자 이름은 여러분이 편할대로 하면 되지만, 예의상 admin 이라는 이름으로 해주고, 패스워드도 입력을 안해도 되지만 적절하게 입력을 해줍니다. ( 나중에 필요하니 기억하기 쉬운 걸로 해두세요 )


이 부분은 여러분이 자바를 설치했던 경로를 지정하는 곳입니다.
이전에 JDK를 설치 했었는데요.

2010/04/06 - [컴퓨터 공학/Java] - 자바( Java )설치하기 & 환경변수( path ) 설정하기

이 때 지정해준 경로를 여기서 지정해 주면 됩니다. ( 이래서 뭘 설치 할 때 경로를 잘 안바꾸는 모양입니다. 나중에 복잡해 지니까요 ㅜㅜ )

[Install]을 누르시면 드디어 톰캣 설치가 진행됩니다.



설치는 금방 끝납니다.
심심하시면 [Show details]를 누르셔서 설치 과정을 지켜보시기 바랍니다. 눈만 아파요 ㅋㅋ




설치가 끝났습니다.
두개의 체크 박스는 [Finish]를 눌렀을 때, 톰캣 서버 프로그램을 실행 시킬 것인가? 와 Read me 파일을 열어 볼 것인가를 나타냅니다. [Finish] 버튼을 눌러서 설치를 마칩니다.




네 저는 그냥 [Finish]를 클릭해서 톰캣 서버가 시작 준비를 하고 있습니다. Read me 파일도 열렸네요. 시간나면 한번 읽어 보시기 바랍니다. ( 읽으면 좋아요 )


그럼 트레이에 ( 오른쪽 하단의 작은 아이콘들이 나오는 부분 ) 위와 같은 아이콘이 나올 겁니다.
톰캣이 실행되고 있다는 말이죠.

제대로 설치가 되었는지 확인 하기 위해서 및의 링크를 클릭해 봅니다.

http://localhost:8080/

아까 포트 설정 할 때, 기본 포트인 8080 포트가 아닌 다른 포트를 지정하신 분들은 8080 대신 사용하실 포트 번호를 넣어 주시면 됩니다.




이 화면이 나오면 여러분의 컴퓨터에 톰캣 설치가 완료 된 것입니다. ^^



2. 이클립스와 톰캣을 연동해 보자.

자바를 공부하신 분들이라면 누구나 알고 있을, 이클립스라는 툴이 JSP 개발환경도 제공하고 있습니다.
저도 JSP 코딩을 하기 위해서 이클립스 환경을 사용하고 있는데요.
이클립스를 사용 하실 분은 설치하시기 바랍니다.

2010/04/06 - [컴퓨터 공학/Java] - 자바( JAVA ) 개발 환경 설치( IDE 설치 ) - 이클립스( Eclipse ) 설치하기 및 오류

네, 그럼 이제 이클립스에서 사용 할 수 있는 [이클립스-톰캣 연동 플러그인]을 다운로드해서 설치하겠습니다.
다음 링크를 따라갑니다.

http://www.eclipsetotale.com/tomcatPlugin.html



그럼 위와 같은 페이지가 나오는데요.
스크롤바를 내리다 보면 [Download]라는 섹션이 있습니다.



최신 버전인 3.2.1 을 다운 받도록 하겠습니다.



다운로드 받은 압축 파일의 내용물을 이클립스의 plugins 폴더에 넣어 둡니다.

제가 이렇게 많은 플러그인들을 사용하고 있는지 오늘 알았네요.
처음 설치 하신 분들은 많지 않을 수도 있습니다. ㅎㅎ

이클립스를 재시작합니다.


그럼 위와 같은 톰캣 모양의 아이콘이 삽입 된 것을 볼 수 있을 겁니다.

다운 받은 파일을 알집으로 압축 풀기를 하면, 알집 이름으로 폴더가 생기고 그 안에 내용물이 들어 있는 형식으로 되더라구요. 여기서 압축을 푼 폴더를 그냥 plugins 에 옮기는게 아니라 그 안에 들어 있는 폴더를 plugins 로 옮겨야 합니다. 무슨 말이냐면,


알집으로 압축을 풀면 ZIP 파일과 똑같은 폴더가 생깁니다. 얘를 옮기는게 아니라 이 폴더를 열면


이런 놈이 있는데, 이 폴더를 plugins에 넣어두시면 됩니다.
헷갈릴 수도 있어서 알려 드립니다. ^^




좀 더 세팅을 하기 위해 [Windows] 탭에서 [Preferences]를 선택합니다.



왼쪽에서 [Tomcat]이라는 메뉴를 클릭하면 여러가지 설정을 할 수 있습니다. 일단 맨 위에 [Tomcat version] 에서 여러분이 설치한 톰캣 버전을 선택해 줍니다. 저는 5.5를 선택했으므로 5.X 를 선택하겠습니다.
그 다음 톰캣이 설치된 폴더를 지정해 줍니다. 저는 기본 경로에 설치를 했으므로
"C:\Program Files\Apache Software Foundation\Tomcat 5.5"
를 고르겠습니다.
그 다음은 Context declaration mode 인데 서버 설정 같은 걸 저장해 두는 모양입니다.
이 전에 xml 파일로 해둔 기억이 있으므로 Server.xml 을 선택하겠습니다.

어짜피 나중에 바꿀 수 있으므로 너무 신중하게 고르지 마세요 ㅎㅎ




Tomcat 메뉴의 하위 메뉴로 [Advanced] 라는 곳을 선택하면 위와 같은 화면이 나옵니다.
Tomcat base에 여러분이 톰캣을 설치한 경로를 마찬가지로 넣어 줍니다.


이제 저기 있는 고양이 모양으로 이클립스에서 쉽게 톰캣 서버를 끄고 켤 수 있게 되었습니다.
이렇게 여러분의 컴퓨터에 JSP를 이용한 웹 프로그래밍 환경 구축과 이클립스라는 프로그래밍 툴과의 연동 과정이 마무리 되었습니다. 앞으로 JSP에 대해서 하나하나 포스팅을 해나가면서 공부도 하겠습니다. ^^


JSP를 공부하기 위한 책 추천!!




더 열심히 공부합시다. !!!


+ Recent posts