기존의 정적인 웹 애플리케이션의 기능을 그대로 사용하면서 서블릿(Servlet, 자바로 만든 CGI 프로그램), JSP, 자바 클래스들을 추가하여 사용자에게 동적인 서비스를 제공하는 프로그램을 말한다.
웹 컨테이너에서 실행되는 JSP, Servlet, 자바 클래스들을 사용해 정적 웹 프로그래밍 방식의 단점을 보완하여 서비스를 제공하는 서버 프로그램이다. 그래서 정적 웹 애플리케이션의 기능인 HTML, JavaScript, CSS 등도 웹 애플리케이션에서 사용할 수 있다.
더보기
웹 컨테이너(Web Container)는 JSP와 서블릿을 실행시킬 수 있는 소프트웨어를 말한다.
웹 애플리케이션은 일반 PC에서 실행되는 자바 애플리케이션과 달리 단독으로 실행할 수 없다. 웹 애플리케이션은 톰캣과 같은 웹 컨테이너에서 실행되는 구조이다. (웹 애플리케이션을 실행하려면 톰캣에 등록해야 한다.)
기본 구조
컨테이너에서 실행되는 모든 웹 애플리케이션은 웹 애플리케이션 이름으로 이루어진 루트 디렉터리와 하위 디렉터리 구조를 가진다.
- 웹 애플리케이션 이름
- WEB-INF
- classes
- lib
- web.xml
- WEB-INF
구성요소 | 기능 |
웹 애플리케이션 이름 | 웹 애플리케이션의 루트 디렉터리. 다른 웹 애플리케이션 이름과 중복을 허용하지 않으며, 여기에 JSP HTML 파일이 저장된다. |
WEB-INF | 웹 애플리케이션에 관한 정보가 저장되는 곳으로 외부에서 접근할 수 없다. |
classes | 웹 애플리케이션이 수행하는 서블릿과 다른 일반 클래스들이 위치하는 곳이다. |
lib | 웹 애플리케이션에서 사용되는 여러 가지 라이브러리 압축 파일이 저장되는 곳이다. |
web.xml | 배치 지시자로서 일종의 환경 설정 파일이다. 웹 애플리케이션에 대한 여러 가지 설정을 할 때 사용된다. |
'Web > Web' 카테고리의 다른 글
[WEB] HTML, HTTP API, CSR, SSR (0) | 2022.03.30 |
---|---|
[WEB] 동시 요청 - 멀티 쓰레드 (0) | 2022.03.29 |
[WEB] 서블릿 (0) | 2022.03.29 |
[WEB] 웹 서버, 웹 애플리케이션 서버 (0) | 2022.03.28 |
[WEB] 웹 기반 프로그램 (0) | 2021.09.11 |