웹 애플리케이션의 기본 구조

이러한 구조를 갖추지 않고 컨테이너에서 웹 애플리케이션을 실행하면 오류가 발생합니다. 만약 기본 구조 외에 다른 기능이 추가되면 디렉터리(폴더)를 추가해서 사용하면 됩니다.
1. 탐색기에서 C 드라이브에 webShop 폴더를 생성합니다.

2. webShop 폴더 안에 WEB-INF 폴더를 생성합니다.

3. WEB-INF 폴더에 classes와 lib 폴더를 생성합니다.

4. WEB-INF 폴더를 선택하고 마우스 오른쪽 버튼을 클릭한 후 새로 만들기 > 텍스트 문서를 선택해 텍스트 파일을 생성하고 이름을 web.xml로 변경합니다.

5. Vs Code로 web.xml로 파일을 열고 다음 코드를 작성합니다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
</web-app>
우리가 만든 웹 애플리케이션의 이름은 webShop이고, 하위 디렉터리(폴더)에는 WEB-INF가 있습니다. WEB-INF 폴다 하위에는 classes와 lib 폴더가 있고, web.xml 파일이 있습니다. 이것이 이 웹 애플리케이션을 이루는 요소들입니다. 각 구성 요소들의 자세한 기능을 표에 정리했습니다.
| 구성 요소 | 기능 |
| webShop | 웹 애플리케이션의 루트 디렉터리, 웹 애플리케이션 이름과 중복을 허용하지 않으며, 여기에는 JSP HTML 파일이 저장됩니다. |
| WEB-INF | 웹 애플리케이션에 관한 정보가 저장되는 것입니다. 이 디렉터리는 외부에서 접근할 수 수 없습니다. |
| classes | 웹 애플리케이션이 수행하는 서불릿과 다른 일반 클래스들이 위치하는 곳입니다. |
| lib | 웹 애플리케이션에서 사용되는 여러 가지 라이브러리 압축 파일(jar 파일)이 저장되는 곳입니다. DB 연동 드라이버는 프레임워크 기능 관련 jar 파일이 여기에 저장됩니다. lib 디렉터리의 jar는 클래스패스가 자동으로 설정됩니다. |
| web.xml | 배치 지시자(deployment descriptor)로서 일종의 환경 설정 파일입니다. 웹 애플리케이션에 대한 여러 가지 설정을 할때 사용됩니다. |
WEB-INF 디렉터리 하위에 여러 가지 기능의 디렉터리를 추가하면서 실제 서비스를 제공합니다. 필요할 경우 또다시 디렉터리 안에 디렉터리를 생성하여 사용할 수 있습니다.
| 구성 요소 | 기능 |
| jsp/html | JSP 파일과 HTML 파일이 저장된 곳입니다. |
| css | 스타일시트 파일이 저장된 곳입니다. |
| image | 웹 애플리케이션에서 사용되는 이미지가 저장된 곳입니다. |
| js | 자바스크립트 파일이 저장된 곳입니다. |
| bin | 애플리케이션에서 사용되는 각종 실행 파일이 저장된 곳입니다. |
| conf | 프레임워크에서 사용하는 각종 설정 파일이 저장된 곳입니다. |
| src | 자바 소스 파일이 저장된 곳입니다. |
'프로그래밍 언어 > 자바 웹' 카테고리의 다른 글
| 이클립스에서 웹 애플리케이션 실습하기 (5) | 2025.03.22 |
|---|---|
| 컨테이너에서 웹 애플리케이션 실행하기 (0) | 2025.03.19 |
| 웹 애플리케이션 (0) | 2025.03.17 |
| exERD 설치하기 (0) | 2025.03.13 |
| SQL Developer 설치하기 (0) | 2025.03.13 |