1. 웹 애플리케이션이란?
- 기존의 정적인 웹 애플리케이션 기능들은 그대로 사용하면서 추가로 서블릿, JSP, 자바 클래스 등을 사용하여 동적인 서비스를 제공하는 프로그램이다.
2. 웹 애플리케이션의 기본 구조
- 톰캣과 같은 웹 컨테이너에서 실행하는 웹 애플리케이션은 일정한 디렉터리 구조를 갖추고 있다.
그 외 디렉터리들의 기능
└ bin: 앱에서 사용되는 각종 실행파일들 저장
└ conf: 프레임워크에서 사용되는 각종 설치파일 저장
3. 컨테이너에서 웹 애플리케이션 실행하기
- 웹 애플리케이션은 자바 App 등과는 반대로 단독으로 실행될 수 없다.
- 톰캣과 같은 웹 컨테이너에서 실행되는 구조
→ 즉, 실행 전 톰캣에 등록부터 해야 한다.
* 톰캣 등록 방법 1. %CATALINA_HOME%webApps 디렉터리에 저장 2. server.xml에 직접 등록 |
4. 컨텍스트
* 컨텍스트란?
- 톰캣의 server.xml에 등록하는 웹 애플리케이션 (즉, 톰캣 입장에서 인식하는 하나의 애플리케이션)
- 컨테이너를 사용하는 방법의 경우, 앱을 테스트 할 때마다 프로젝트 파일을 복사해야 함(비효율적)
→ 서버에 등록하여 사용하는 방식으로 해결
*컨텍스트의 특징
- 웹 애플리케이션 당 하나의 컨텍스트가 등록된다.
- 웹 애플리케이션 이름과 컨텍스트의 이름은 같을수도 있고, 다를수도 있다.
- 컨텍스트끼리는 이름의 중복이 불가능하며, 이름 설정 시 명확한 명사형 이름으로 지정하도록 한다.
- server.xml에 등록하여 사용한다.
- 이름에 대소문자 구분됨
* 톰캣 컨테이너에 컨텍스트 등록하기
- 컨텍스트 등록 시 <Context> 태그 사용
속성 | 값 |
path | "/컨텍스트이름" |
docBase | 실제 웹 애플리케이션의 경로, "WEB-INF 디렉터리위치" |
reloadable | 실행 중 소스코드가 수정될 경우 바로 갱신할것인지 결정, "true/false" |
tomcat9-conf-server.xml 파일에서 다음과 같이 컨텍스트를 지정해주면
C:\\webShop에 있는 웹 문서가 webMal이란 이름으로 톰캣 컨테이너에 컨텍스트로 등록된다.
tomcat9-bin 에 있는 실행 파일로 톰캣을 실행하고 주소창에 다음과 같이 입력한다.
작성해둔 HTML파일이 실행된 것을 확인할 수 있다.
+ 톰캣 포트 번호 바꾸는 방법
Connector 태그의 port 속성을 바꿔주면 된다.
5. 웹 애플리케이션 서비스하기
* 배치(Deploy)란?
- 서비스 개발이 완료되면 이클립스 톰캣이 아니라 실제 서비스를 위해 리눅스/유닉스 서버에 등록된 톰캣에서 실행햐아 하는데, 이 과정을 배치라고 한다.
- 즉, 개발이 완료된 웹 애플리케이션을 실제 서비스하기 위한 작업을 의미
참고 도서: [이병승, 길벗] 자바 웹을 다루는 기술
'개발 > JSP Servlet' 카테고리의 다른 글
웹 프로그래밍과 JSP (0) | 2021.12.04 |
---|---|
프로그램의 발전 과정, 웹 기반 프로그램 (0) | 2021.11.25 |