웹 애플리케이션 기본 구조

ROK·2022년 8월 18일
0

웹 애플리케이션이란?

웹 애플리케이션은 정적인 웹 애플리케이션의 기능을 그대로 사용하면서 서블릿(Servlet : 자바로 만든 CGI 프로그램), JSP, 자바 클래스들을 추가하여 동적인 서비스를 제공하는 프로그램을 의미한다.

정적인 웹 애플리케이션은 기본적으로 웹을 구성하는 html, css, js로 구성된 것으로 내용을 바꾸기 위해서는 개발자가 계속해서 값을 바꿔줘야 한다.
하지만 동적 웹 애플리케이션은 서버와 연결해 자동으로 바뀌게 된다.

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

웹 애플리케이션의 기본 구조는 아래와 같다.

$ tree testWeb
testWeb
|-- build
|   `-- classes
`-- src
    `-- main
        |-- java
        `-- webapp
            |-- META-INF
            |   `-- MANIFEST.MF
            `-- WEB-INF
                |-- lib
                `-- web.xml

testWeb이라는 프로젝트(웹 애플리케이션)아래로 구조를 갖추고 있는 모습이다.

위 구조는 이클립스를 사용해 다이나믹 웹 프로젝트(Dynamic Web Project)를 만들면 자동으로 생성된다.

과거에는 이 디렉토리 구조를 직접 만들어야 했다고 하는데 좀 많이 귀찮을 것 같다.

웹 애플리케이션 구성 요소의 기능

웹 애플리케이션 구조를 구성하고 있는 요소들의 기능을 하나씩 확인해보자.

구성 요소기능
testWeb웹 애플리케이션의 루트 디렉터리로 프로젝트 이름이기도 하다. 중복은 불가능하다.
classes웹 애플리케이션이 수행하는 서블릿과 일반 클래스들이 위치하는 곳, build 디렉터리 하부에 위치한다.
java자바 소스 파일이 저장된 곳
WEB-INF웹 애플리케이션에 관현 정보가 저장되는 곳, 외부에서 접근할 수 없다.
lib웹 애플리케이션에 사용되는 여러 가지 라이브러리 압축 파일(jar 파일)이 저장되는 곳, DB 연동 드라이버(JDBC)나 프레임워크 기능 관련 jar 파일이 lib에 저장된다. (lib 디렉터리의 jar 파일은 클래스패스가 자동으로 설정된다)
web.xml배치 지시자(deployment descriptor)로서 웹 애플리케이션의 환경 설정 파일이다. 웹 애플리케이션에 대한 여러 가지 설정을 할 때 사용된다.

추가할 수 있는 구성 요소들의 기능

구성 요소기능
jsp/htmljsp파일과 html파일이 저장되는 곳
css스타일시트 파일이 저장되는 곳
image웹 애플리케이션에서 사용되는 이미지가 저장되는 곳
js자바 스크립트 파일이 저장되는 곳
bin애플리케이션에서 사용되는 각종 실행 파일이 저장되는 곳
conf프레임워크에서 사용하는 각종 설정 파일이 저장된 곳

위 추가할 구성 요소들은 webapp 디렉터리 하부에 담기게 된다.

profile
하루에 집중하자

0개의 댓글