IntelliJ IDEA에서 웹앱 빌드

완료됨

IntelliJ IDEA를 사용하여 코드를 작성하려는 경우 Azure Toolkit for IntelliJ를 설치하여 Azure 리소스 작업을 수행할 수 있습니다.

Java 개발자 팀이 IntelliJ IDEA를 사용하여 JSP(Java Server Pages) 프레임워크에서 웹앱을 만드는 경우를 가정하겠습니다. 여러분이 근무하는 제조회사가 Azure로 마이그레이션되었지만 현재 개발 환경에서 가능한 한 중단을 최소화하려고 합니다. 여러분은 개발자가 Azure를 사용할 수 있도록 하는 가장 쉬운 방법을 평가하라는 요청을 받았습니다.

이 단원에서는 Azure Toolkit for IntelliJ 및 개발자가 이를 사용하여 수행할 수 있는 작업에 대해 알아봅니다. 하지만 먼저 일반적인 Java 웹 사이트를 빌드하는 데 사용되는 기술 및 구성 요소를 검토해 보겠습니다.

Java 웹 애플리케이션

Java 언어를 사용하여 웹 애플리케이션을 만드는 데 사용할 수 있는 여러 가지 기술이 있습니다. 예시:

  • Java 서블릿이 있습니다.

    서블릿은 서버 기능을 확장하는 Java 구성 요소입니다. 서블릿은 웹 애플리케이션용 컨테이너를 구현하여 웹 서버의 기능을 확장하는 경우가 많습니다. 웹 애플리케이션을 구현하는 서블릿은 일반적으로 Java 코드에 HTML 코드를 포함합니다.

  • Java Server Pages(JSP)

    JSP는 Java 코드를 HTML 페이지에 포함하여 동적 콘텐츠를 만들 수 있는 표준 기술입니다. JSP 페이지는 웹 컨테이너라고 하는 특정 형식의 Java 서블릿에 배포되어야 하며 Apache Tomcat이 일반적으로 사용되는 웹 컨테이너입니다.

    IntelliJ IDEA를 사용하여 JSP 웹 애플리케이션을 배포하려면 이를 WAR(웹 애플리케이션 리소스) 파일로 패키지합니다. 이 파일은 웹 애플리케이션의 콘텐츠와 구조를 정의하는 표준 형식의 보관 파일입니다. Tomcat 및 기타 웹 컨테이너는 이 파일을 웹 애플리케이션의 설치 원본으로 사용할 수 있습니다.

Azure Toolkit for IntelliJ

Azure Toolkit for IntelliJ는 선호하는 IDE에서 Azure 리소스를 사용하려는 개발자에게 템플릿 및 도구를 제공하는 IntelliJ IDEA 확장입니다. 도구 키트를 설치하면 다른 도구 또는 소프트웨어를 사용하지 않고 IntelliJ IDEA에서 다음 작업을 수행할 수 있습니다.

  • 다음과 같은 Azure 리소스를 관리합니다.
    • Virtual Machines - Windows 또는 Linux 운영 체제를 실행하는 데 사용할 수 있는 가상화된 서버이며 모든 애플리케이션을 호스트할 수 있습니다.
    • Azure Storage 계정 - 파일, 메시지 큐 또는 데이터 테이블을 저장할 수 있습니다.
    • Redis Cache - 데이터베이스의 성능을 향상시키는 데 널리 사용되는 캐싱 시스템입니다.
  • 다음과 같은 유형의 호스트에 웹앱을 배포합니다.
    • Azure App Service
    • Azure 기능
    • Azure Spring Apps

또한 Azure 구독에 존재하는 리소스를 보고 관리할 수 있는 추가 창을 IntelliJ IDEA 내에 제공하는 Azure 탐색기를 Azure Toolkit for IntelliJ에서 사용합니다. Azure 탐색기 창에서 새 웹앱, 스토리지 계정 및 기타 리소스를 만들거나 이미 만든 Azure 리소스를 구성할 수 있습니다.

IntelliJ IDEA의 Azure Explorer 스크린샷.

Azure Toolkit for IntelliJ 이외에 웹앱을 배포하기 위한 대안들이 있습니다. 예를 들어, Git을 사용하여 코드를 배포하고 Azure에 게시할 수 있습니다. 그러나 Azure Toolkit for IntelliJ는 IntelliJ IDEA 자체 내에서 긴밀한 통합을 제공합니다. 개발자는 즐겨 사용하는 IDE를 떠나지 않고도 앱을 패키지하고 배포하며 Azure에서 리소스를 만들고 구성할 수 있습니다.

다음 연습에서는 Azure Toolkit for IntelliJ를 사용하여 Maven 아키타입을 기반으로 웹앱을 Azure App Service에 배포하고, IntelliJ IDEA 내에서 Azure 탐색기를 사용하여 해당 웹앱을 관리합니다.