Рубрики
Без рубрики

Весна с Maven

Spring с Maven – фокусируется на зависимостях для сохранения, веба, безопасности и тестирования.

Автор оригинала: Eugen Paraschiv.

содержание

  1. Обзор
  2. Основные зависимости пружин с Maven
  3. Весенняя настойчивость с Maven
  4. Весенний MVC с Maven
  5. Весенняя безопасность с Maven
  6. Весенний тест с Maven
  7. Использование Вех
  8. Использование моментальных снимков
  9. Вывод

1. Обзор

В этом руководстве показано, как настроить зависимости Spring с помощью Maven . Последние весенние выпуски можно найти на Maven Central .

2. Основные Зависимости Пружин С Maven

Пружина спроектирована с высокой модульностью – использование одной части пружины не должно и не требует другой. Например, базовый контекст Spring может быть без сохранения или библиотек MVC Spring.

Давайте начнем с фундаментальной установки Maven , которая будет использовать только | spring-контекст зависимость :


    5.2.8.RELEASE


    org.springframework
    spring-context
    ${org.springframework.version}
    runtime

Эта зависимость – spring-context – определяет фактический контейнер впрыска пружины и имеет небольшое количество зависимостей: spring-core , spring-expression , spring-aop и spring-beans . Они дополняют контейнер, обеспечивая поддержку некоторых технологий core Spring : утилит Core Spring, языка выражения Spring (SpEL), поддержки Аспектно-ориентированного программирования и механизма JavaBeans .

Обратите внимание, что мы определяем зависимость в runtime scope – это гарантирует отсутствие зависимостей во время компиляции от каких-либо API, специфичных для Spring. Для более сложных случаев использования область runtime может быть удалена из некоторых выбранных зависимостей Spring, но для более простых проектов нет необходимости компилировать с Spring , чтобы полностью использовать фреймворк.

Кроме того, обратите внимание, что JDK 8-это минимальная версия Java, необходимая для Spring 5.2. Он также поддерживает JDK 11 в качестве текущей ветви LTS и JDK13 в качестве последней версии OpenJDK.

3. Весенняя Стойкость С Maven

Давайте теперь рассмотрим зависимости пружины персистентности – в основном spring-orm :


    org.springframework
    spring-orm
    ${org.springframework.version}

Это поставляется с поддержкой Hibernate и JPA, такими как HibernateTemplate и JpaTemplate , а также несколькими дополнительными зависимостями, связанными с сохранением: spring-jdbc и spring-tx .

Библиотека доступа к данным JDBC определяет поддержку Spring JDBC , а также JdbcTemplate и spring-tx представляет чрезвычайно гибкую абстракцию Управления транзакциями .

4. Весенний MVC С Maven

Чтобы использовать поддержку Spring Web и сервлетов, в pom необходимо включить две зависимости , опять же в дополнение к основным зависимостям сверху:


    org.springframework
    spring-web
    ${org.springframework.version}


    org.springframework
    spring-webmvc
    ${org.springframework.version}

Зависимость spring-web содержит общие веб-утилиты для сред сервлетов и портлетов, в то время как spring-webmvc включает поддержку MVC для сред сервлетов.

Поскольку spring-webmvc имеет spring-web в качестве зависимости, явное определение spring-web не требуется при использовании spring-webmvc .

Начиная с Spring 5.0, для поддержки веб-фреймворка с реактивным стеком мы можем добавить зависимость для Spring WebFlux :


    org.springframework
    spring-webflux
    ${org.springframework.version}

5. Безопасность Пружины С Maven

Зависимости безопасности Maven подробно обсуждаются в статье Spring Security with Maven .

6. Весенний Тест С Maven

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


    org.springframework
    spring-test
    ${spring.version}
    test

С помощью Spring 5 мы также можем выполнять параллельное выполнение тестов.

7. Использование Вех

Выпускная версия Spring размещена на Maven Central. Однако, если проекту необходимо использовать версии milestone, в pom необходимо добавить пользовательский репозиторий Spring:


    
        repository.springframework.maven.milestone
        Spring Framework Maven Milestone Repository
        http://repo.spring.io/milestone/
    

После определения этого репозитория проект может определить такие зависимости, как:


    org.springframework
    spring-core
    5.3.0-M1

8. Использование моментальных снимков

Подобно вехам, моментальные снимки размещаются в пользовательском репозитории:


    
        repository.springframework.maven.snapshot
        Spring Framework Maven Snapshot Repository
        http://repo.spring.io/snapshot/
    

Как только хранилище МОМЕНТАЛЬНЫХ СНИМКОВ будет включено в pom.xml, можно ссылаться на следующие зависимости:


    org.springframework
    spring-core
    4.0.3.BUILD-SNAPSHOT

А также – за 5.х:


    org.springframework
    spring-core
    5.3.0-SNAPSHOT

9. Заключение

В этой статье рассматриваются практические детали использования Spring с Maven . Представленные здесь зависимости Maven, конечно, являются одними из основных, и некоторые другие, возможно, заслуживают упоминания и еще не были сокращены. Тем не менее, это должно быть хорошей отправной точкой для использования Spring в проекте.