Создание веб-приложения Azure

Завершено

В вашей компании сейчас работает несколько веб-приложений Java на внутренних серверах. Чтобы снизить высокие затраты, связанные с обслуживанием этих серверов, ваша компания хочет перенести веб-приложения в службу приложение Azure.

Группа разработки имеет опыт использования Maven для создания классических приложений, и вы уже используете Maven для автоматизации процесса сборки проектов Java. Вы понимаете, что Maven использует подключаемые модули для проектов, чтобы добавлять дополнительные функции, и вы хотите использовать архетип для создания веб-приложения, которое можно развернуть в службе приложений Azure.

В этом модуле вы узнаете, как Maven и архетипы могут помочь в создании веб-приложений Java. Вы узнаете, как создать небольшое веб-приложение Java и запустить его локально. Затем вы узнаете, что добавить в файл project Object Model (POM), чтобы включить локальное тестирование для нового приложения.

Использование Maven для автоматизации создания веб-приложений Java

Maven является наиболее используемым средством сборки Java, и его можно использовать для создания и управления любым проектом на основе Java. Оно помогает оптимизировать процессы сборки проектов Java с помощью стандартного способа сборки проектов, четкого определения компонентов проекта, простого способа публикации сведений о проекте и способа совместного использования JAR в нескольких проектах. Цели Maven

  • Упрощение процесса сборки.
  • Прозрачно переносится на новые функции.
  • Укажите единую систему сборки.
  • Реализуйте рекомендации по разработке.

Что такое архетипы?

Создатели Maven нуждались в том, чтобы обеспечить последовательную рекомендацию, чтобы следовать, когда разработчики структурируют новые проекты, и они обнаружили, что существует несколько сходств между различными типами проектов. Создатели использовали эту информацию для определения этих типов проектов как шаблонов, называемых архетипами, которые Maven использует для быстрого создания шаблонов для новых проектов. Ниже приведено несколько примеров распространенных архетипов.

Архетип Description
maven-archetype-archetype Создает проект архетипа
maven-archetype-mojo Создает пример подключаемого модуля Maven
maven-archetype-plugin Создает подключаемый модуль Maven
maven-archetype-plugin-site Создает сайт подключаемого модуля Maven
maven-archetype-quickstart Создает проект Maven
maven-archetype-simple Создает простой проект Maven
maven-archetype-site Создает сайт Maven, демонстрирующий некоторые поддерживаемые типы документов, такие как APT, XDoc и FML
maven-archetype-site-simple Создает простой сайт Maven
maven-archetype-webapp Создает проект веб-приложения Maven

В следующем упражнении вы создадите веб-приложение, которое можно развернуть в Azure. Например, чтобы создать веб-приложение Java с помощью Maven, можно использовать следующий синтаксис:

mvn archetype:generate \
  -DgroupId=com.microsoft.example \
  -DartifactId=MyWebApp \
  -DarchetypeArtifactId=maven-archetype-webapp \
  -DinteractiveMode=false

При выполнении предыдущей команды создается структура каталога проекта со следующим содержимым:

Screenshot of the project folder and file hierarchy.

Что такое файлы проектной модели объектов (POM)?

Одним из основных компонентов проекта Maven является файл проектной модели объектов (POM), который представляет собой XML-документ с именем pom.xml, который находится в дереве каталогов проекта. Файл POM содержит свойства, зависимости, этапы сборки, подключаемые модули и цели для проекта. При сборке приложения служба Maven позаботится об управлении зависимостями.

Служба Maven основана на инфраструктуре подключаемых модулей. Разработчики определяют цели для своих проектов, добавляя подключаемые модули в файл POM. При запуске Maven можно выполнить определенную цель, используя синтаксис mvn [plugin-name]:[goal-name]; Maven запустит все цели вплоть до указанной [goal-name].

В следующем примере показано содержимое файла pom.xml, созданного командой mvn archetype:generate с архетипом maven-archetype-webapp в предыдущем разделе этого модуля.

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.microsoft.example</groupId>
  <artifactId>MyWebApp</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>MyWebApp Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>MyWebApp</finalName>
  </build>
</project>

Добавление подключаемых модулей в проект Maven

Чтобы добавить подключаемый модуль в проект Maven, необходимо добавить конкретный XML-код этого подключаемого модуля в файл pom.xml. Существует два полезных подключаемых модуля, которые позволяют разработчикам локально запускать веб-приложения на своих компьютерах: Eclipse Jetty и Apache Tomcat. Подключаемый модуль службы приложение Azure поддерживает оба этих веб-сервера. Чтобы добавить один из этих серверов в проект, необходимо добавить необходимый XML-код для подключаемого <build> модуля в тег.

Например, чтобы добавить подключаемый модуль Tomcat, вы добавите XML, например следующий пример:

<plugins>
  <plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
  </plugin>
</plugins>  

Примечание.

(Чтобы найти подключаемый модуль и связанные с ним сведения, используйте поиск в центральном репозитории по адресу https://search.maven.org/.)

При добавлении XML-файла для подключаемого модуля Tomcat в файл pom.xml он должен выглядеть следующим образом:

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.microsoft.example</groupId>
  <artifactId>MyWebApp</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>MyWebApp Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>MyWebApp</finalName>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
      </plugin>
    </plugins>  
  </build>
</project>

После добавления подключаемого модуля Tomcat в проект можно использовать следующую команду Maven для запуска сервера Tomcat и тестирования веб-приложения:

mvn tomcat7:run

Эта команда проводит сборку приложения, запускает сервер Tomcat с портом 8080 по умолчанию и загружает страницу index.jsp из папки src\webapp проекта.

В следующем упражнении вы создадите веб-приложение Java с помощью Maven.