일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 컬렉션프레임워크
- 예외미루기
- 추상메서드
- 제네릭
- GRANT VIEW
- 객체 비교
- 집합_SET
- 자동차수리시스템
- cursor문
- 오라클
- 생성자오버로드
- 인터페이스
- oracle
- 메소드오버로딩
- 자바
- 한국건설관리시스템
- 대덕인재개발원
- Java
- 컬렉션 타입
- EnhancedFor
- 예외처리
- 정수형타입
- 사용자예외클래스생성
- 어윈 사용법
- 환경설정
- NestedFor
- abstract
- 참조형변수
- 다형성
- exception
- Today
- Total
거니의 velog
(5) 웹 어플리케이션 서비스하기 본문
* 이번에는 이클립스에서 개발한 웹 애플리케이션을 실제 사용자에게 서비스하기 위해 배치(deploy)하는 방법을 알아보자.
* 배치란?
- 이클립스에서 개발할 경우 개발자 입장에서는 자신이 만든 기능이 정상적으로 실행되는지 확인하기 위해
빈번하게 톰캣을 재실행하곤 한다. 이런 개발 과정을 거쳐 애플리케이션이 완성되면 이제는 실제 사용자들에게 서비스를 해야 한다.
그 단계에서는 이클립스에 등록된 톰캣에서 실행하는 것은 의미가 없다. 실제로 리눅스나 유닉스 서버에 설치된 톰캣에서 실행해야 한다.
그렇게 하려면 이클립스에서 개발한 웹 애플리케이션 예제 소스 전체를 실제로 서비스하는 톰캣으로 이동하여 실행해야 한다.
이 과정을 "배치(deploy)한다"고 한다. 즉, 웹 애플리케이션을 실제로 서비스한다는 의미다.
1. 톰캣에 배치하기
* 실제로 웹 애플리케이션 개발은 개발 환경이 편리한 이클립스 같은 개발 도구에서 진행한다. 개발을 마친 후에는 프로젝트를 war 압축 파일로 만든 후 FTP를 이용해 톰캣이 미리 설치된 리눅스나 유닉스 같은 운영 서버에 업로드 한다. 그리고 텔넷(Telnet)을 이용해 bin 폴더의 Tomcat.exe을 다시 실행하면 톰캣 실행 시 war 파일의 압축이 해제됨과 동시에 자동으로 등록되어 웹 애플리케이션이 실행된다.
(1) 이클립스 상단 메뉴에서 File > Export... 를 선택한다.
(2) Web 항목의 WAR file을 선택한 후 Next를 클릭한다.
(3) Browse...를 클릭해 war 파일을 저장할 위치를 지정한다.
(4) 톰캣 폴더의 webapps 디렉터리를 지정하고 webShop.war라는 파일 이름으로 저장한다.
(5) 지정한 war 파일의 경로를 최종 확인한 후 Finish를 클릭해 war 파일을 내보낸다(Export).
(6) 톰캣 디렉터리의 webapps 폴더를 보면 war 파일이 생긴 것을 확인할 수 있다.
(7) 톰캣 루트 디렉터리 하위의 bin 폴더에서 Tomcat9.exe 를 더블클릭하여 실행한다.
(8) 톰캣은 webapps의 war 파일 압축을 해제함과 동시에 자동으로 컨텍스트로 등록한다.
(9) 압축을 해제한 webShop 폴더를 확인해 보면 이클립스에서 생성한 WEB-INF 폴더와 main.html 파일이 보인다.
(10) 이제 웹 브라우저에서 다음과 같이 컨텍스트 이름으로 요청하면 앞의 이클립스에서 실습한 것과 동일한 메시지가 출력된다.
- http://localhost:8090/webShop/main.html
* 톰캣의 wabapps 폴더에 위치하는 웹 애플리케이션은 직접 server.xml에 등록하지 않아도 톰캣 실행 시 자동으로 등록된다. 따라서 webShop.war 를 미리 webapps 폴더에 위치시킨 후 톰캣을 실행하면 톰캣이 알아서 압축을 해제한 후 생성된 웹 어플리케이션을 자동으로 등록해 준다.
* 이클립스에서 프로젝트(웹 애플리케이션)를 만들어 톰캣 컨테이너와 연동해 보았고, 실제 프로젝트를 실행한 후 웹 브라우저로 요청해서 메시지를 출력해 보았다. 또 개발이 완료된 프로젝트를 쉽게 배치하는 방법도 알아보았다.
'Java > Java_Servlet' 카테고리의 다른 글
(7) 서블릿이란? - 2 (0) | 2023.08.22 |
---|---|
(6) 서블릿이란? - 1 (0) | 2023.08.21 |
(4) 이클립스에서 웹 어플리케이션 실습하기 (0) | 2023.08.21 |
(3) 웹 애플리케이션 이해하기 (0) | 2023.08.21 |
(2) 웹 프로그래밍과 JSP - 웹 프로그래밍의 기본 (0) | 2023.08.21 |