개발/JSP Servlet

웹 애플리케이션(Web Application)

kkap999 2021. 12. 4. 18:18
728x90

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