[java] Apache Velocity와 웹 페이지 템플릿 적용 사례

Apache Velocity는 Java로 작성된 오픈 소스 템플릿 엔진으로, 다양한 종류의 텍스트 파일에서 데이터를 사용하여 동적 콘텐츠를 생성하는 데 사용됩니다. 이는 특히 웹 애플리케이션 구축시 유용합니다. 이번 글에서는 Apache Velocity를 사용하여 웹 페이지 템플릿을 어떻게 적용하는지 알아보겠습니다.

1. Apache Velocity 설정

먼저, Apache Velocity를 프로젝트에 추가하고 설정해야 합니다. Maven 프로젝트의 경우, pom.xml 파일에 아래와 같은 의존성을 추가할 수 있습니다.

<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity</artifactId>
    <version>1.7</version>
</dependency>

2. 웹 페이지 템플릿 생성

웹 페이지 템플릿을 작성하기 위해서는 Velocity의 문법을 사용하여 .vm 확장자를 가진 파일을 만들어야 합니다. 이 파일은 HTML과 Velocity 문법을 혼합하여 사용할 수 있습니다. 예를 들어, index.vm 파일을 생성하고 다음과 같은 내용을 추가할 수 있습니다.

<!DOCTYPE html>
<html>
<head>
    <title>$title</title>
</head>
<body>
    <h1>$header</h1>
    <p>$content</p>
</body>
</html>

3. Velocity 템플릿 엔진 사용

웹 애플리케이션에서 Velocity를 사용하여 위에서 생성한 템플릿을 동적으로 렌더링하려면 Velocity 엔진을 초기화하고 템플릿을 처리해야 합니다. 예를 들어, Spring Framework를 사용하는 경우, 다음과 같이 Velocity를 설정할 수 있습니다.

VelocityEngine velocityEngine = new VelocityEngine();
velocityEngine.setProperty("resource.loader", "file");
velocityEngine.setProperty("file.resource.loader.path", "/path/to/templates");
velocityEngine.init();

위에서 “/path/to/templates”는 템플릿 파일이 위치한 디렉토리 경로를 나타냅니다.

마치며

이제 Apache Velocity를 사용하여 웹 페이지 템플릿을 만들고 적용하는 방법에 대해 알아보았습니다. Velocity를 사용하면 동적으로 변하는 콘텐츠를 간단하게 처리하고 템플릿화할 수 있습니다. 웹 애플리케이션의 화면을 구성하는 데 유용한 도구로서 Apache Velocity를 고려해 보시기 바랍니다.

참고 자료: