JAVA

[JAVA] eclipse - Dynamic Web Project 생성하기

크피르 2023. 1. 16. 20:29

동적 프로젝트 생성하기 전에,

Dynamic Web Project(동적 웹 프로젝트) 와 Static Web Project(정적 웹 프로젝트)의 개념 및 차이를 알아보자.

 

먼저, Static Web Project(정적 웹 프로젝트)HTML, JavaScript, CSS, 이미지 파일 정도만 사용하여 구현할 수 있다.

보여지는 화면을 만들고, 자바스크립트 함수 정도 만드는 것이 전부다.

 

반면, Dynamic Web Project(동적 웹 프로젝트)서블릿, JSP파일, 필터 및 연관된 메타데이터(?)를 이용하여 서버 쪽도 구현할 수 있다. (서버에 요청할 때마다 같은 결과가 아니라, 서버가 처리한대로 다른 결과가 나오는 기능)

따라서 DB, JAVA와 연결해서 프로그램을 만들 수 있다.

 

단순히 화면 구현과 함수를 사용한 웹페이지를 만들고 싶다면,

AWS S3 등으로 배포하여 스태틱 웹 프로젝트로 공유가 가능하다.

하지만 대부분의 경우 서버 쪽까지 사용하므로 다이나믹 웹 프로젝트를 만들어보자.

 

https://www.ibm.com/docs/ko/rsas/7.5.0?topic=project-dynamic-web-projects-applications 

 

동적 웹 프로젝트 및 애플리케이션

웹 프로젝트 유형에는 동적 및 정적의 두 가지 유형이 있습니다. 동적 웹 프로젝트에는 정적 자원(예: 이미지 및 HTML 파일) 외에 동적 자바 EE 자원(예: 서블릿, JSP 파일, 필터 및 연관된 메타데이

www.ibm.com

 

1. 톰켓(서버)을 설치한다. 그리고 다른 폴더에 옮긴다.(아무데나)

톰켓은 요청을 처리할 서버다.

다이나믹 웹 프로젝트를 만들어서 톰켓과 연결하면 서버 연결 완료다!

 

아래 사이트인 자바 버전에 따른 톰켓 버전 표를 보고 설치하면 된다.

https://tomcat.apache.org/whichversion.html

 

Apache Tomcat® - Which Version Do I Want?

Apache Tomcat® is an open source software implementation of a subset of the Jakarta EE (formally Java EE) technologies. Different versions of Apache Tomcat are available for different versions of the specifications. The mapping between the specifications

tomcat.apache.org

 

 

설치는 아래 사이트에서 한다.

참고로 톰캣 10.1은 아직 이클립스에서 지원이 안된다. 자바 11을 사용한다면 톰캣은 10.0을 깔면 좋다.

https://tomcat.apache.org/download-10.cgi

 

Apache Tomcat® - Apache Tomcat 10 Software Downloads

Welcome to the Apache Tomcat® 10.x software download page. This page provides download links for obtaining the latest version of Tomcat 10.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versi

tomcat.apache.org

 

2. 이클립스에서 새 프로젝트 > Dynamic Web Project > next

 

3. 프로젝트명을 작성하고, Target runtime에서 New Runtime을 눌러 서버를 새로 등록해준다. 

 

3-1. New Runtime을 클릭하면 아래와 같이 나타난다. 여기서 Apache > Apache Tomcat v(사용할 버전) 선택

난 v10.0을 선택한당. 그리고 next.

 

3-2. Tomcat installation directory에서 Browse를 눌러 다운로드한 톰켓이 있는 폴더를 찾아가서 넣는다.

JRE는 JAVA11(or JDK11) 설치 시 이름만 다르게 한 것이다. 둘 다 같은 자바11이다.

JRE 설정이 필요한 이유 : 톰켓 서버도 구동할 자바가 필요하므로, JRE 는 JDK11(JAVA11)로 자바 설정해준당.

다 한뒤, Finish 누름.

 

4. Target Runtime 설정이 끝나고, next를 누르면 다음 화면이 나타난다.

next를 누른다.

 

 

 

5. Context root는 /web01로 설정했다. 

web.xml파일은 나중에 생성할 수도 있지만, 되도록 지금 생성해준다.(귀찮으므로!)

 

context root /web01로 해줬는데,
이러한 경로를 context path(최상위 경로 = root)라고 한다.
context root를 지정해주는 이유 : 하나의 톰캣 서버에서  여러 동적 프로젝트를 돌릴 수 있는데, context path가 각각의 동적 프로젝트를 구분하는 단위와 같다.

 

설정을 다 한 뒤, Finish를 눌러 마친다.

 

 

6. 이제, Project Explorer에 dynamic_web01이라는 프로젝트와 Servers라는 프로젝트가 만들어졌을 것이다.

아래 View 에서 Servers에 Tomcat v10.0 Server at localhost가 생겼다.

이제 마우스 오른쪽 클릭 > Add and Remove > 프로젝트를 오른쪽으로 옮겨 서버에 Add한다.

하구나서 Finish.

 

 

7. 서버 연결이 잘 되는지 확인하기 위해 서버를 실행시켜보자.

Tomcat v10.0 Server at localhost 를 마우스 오른쪽 클릭 > Start

하면 Started로 바뀌고, console창에는 

\정보: 서버가 [4610] 밀리초 내에 시작되었습니다.\

와 같은 빨간 메시지들이 나타난다.

 

브라우저를 킨 뒤, 주소창에 localhost:8080을 작성하며 HTTP 상태 404 - 찾을 수 없음 창이 나오는지 확인!

포트 번호는 톰캣서버를 더블클릭하면 확인가능하다.

 

만약, 오류가 난다면 포트 번호를 더블클릭해서 바꾼 뒤, 서버에 등록된 프로젝트를 삭제하고 다시 등록하는 과정을 거친 뒤 다시 실행해보자.

 

8. 이제 서버에 웹을 띄워보자.

dynamic_web01 > src > main > webapp > index.html 파일을 새로 만든다.

내용은 마음대로 작성해본다.

참고로, 파일구조에 대해 알아보자.

Java Resources > src/main/java 와

build 아래에 src > main > java 는 같은 폴더이다.  

Java Resources 에는 관리하기 편하게 Java 파일만 들어간다. 

src > main > java 는 아래 경로로 서버(톰캣)에 요청하면, webapp폴더(base폴더)에 있는 파일을 요청하게 된다.

webapp 폴더에 파일은 Java 파일을 제외한 웹자원이 들어간다. (html, css, js, jsp, img 파일)

(브라우저에서):(서버에)/(프로젝트이름 이거나, 최상위경로인 context path)/파일명

localhost:8080/dynamic_web01 이거나 web01/index.html

 

META-INF와 WEB-INF는 외부 API 라이브러리를 가져다 쓸 때 사용한다.

WEB-INF > web.xml 에서 web.xml 파일은 톰캣이 동작할 때 설정 파일이다. 이 파일 안의 값을 확인해서 동작한다.

 

9. 아까 설정했던 프로젝트의 context root인 web01을 경로로 작성하면 서버가 잘 동작하는 것을 확인할 수 있다. 

 

 

 

10. context root는 Properties > Web Project Settings 에서 변경할 수 있다.