Spring core что это

Учебное пособие по Spring Framework: начало работы со Spring

Несмотря на то, что Spring Framework часто забывают как устаревший, он по-прежнему остается популярным инструментом разработки приложений, которым пользуются корпоративные компании по всему миру. Spring предлагает беспрецедентный контроль, первоклассную безопасность и экономящую время систему зависимостей с использованием Spring Beans.

Тем не менее, Spring, как известно, труден для изучения из-за большого количества опций и сложного набора инструментов.

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

Что такое Spring Framework?

Spring — это легкая среда разработки приложений с открытым исходным кодом, использующая Java Enterprise Edition (Java EE) и модель Enterprise JavaBeans (EJB).

Spring часто называют «фреймворком», потому что он поддерживает другие интегрированные фреймворки в экосистеме Java, такие как Struts, Hibernate и Tapestry. Spring поставляется во многих вариантах, которые адаптированы для конкретных целей, таких как Spring MVC, Spring Boot или Spring Security.

Spring известен своими системами внедрения зависимостей и инверсии управления (IoC), которые позволяют с легкостью создавать крупномасштабные слабосвязанные приложения. Spring особенно подходит для финансовых и корпоративных приложений благодаря своей скорости, безопасности и простоте построения транзакционных систем. Ведущими работодателями разработчиков Spring являются Citibank, eBay, Visa и JP Morgan.

В целом Spring Framework позволяет создавать приложения масштаба предприятия, которые являются безопасными и могут автоматически обрабатывать низкоуровневые функции, такие как поддержание жизненных циклов контейнеров и управление зависимостями.

Преимущества Spring

Недостатки Spring

Многие из этих недостатков были устранены с помощью изобретения модуля Spring Boot, который очень самоуверен и предназначен для микросервисных архитектур.

Большинство современных Spring-приложений построены на Boot, но есть много старых приложений, которые все еще обслуживаются давними компаниями.

Особенности Spring

Архитектура и компоненты Spring

Давайте разберем основные части приложения Spring Framework, чтобы помочь вам увидеть общую картину.

Beans

Spring Beans — это экземпляры классов, которыми управляет Spring. Они являются наиболее фундаментальным компонентом программы Spring.

Традиционно объекты создают личные экземпляры своих зависимостей. Spring управляет всеми зависимостями объекта и создает экземпляр объекта в bean-компоненте после внедрения необходимых зависимостей. @ComponentАннотаций является наиболее распространенным методом определения бобов.

У bean-компонентов есть установленный жизненный цикл и видимость в зависимости от их области действия. Существует шесть типов областей: синглтон, прототип, запрос, сеанс, приложение и веб-сокет. Одноэлементные и прототипные области могут использоваться в любом приложении, в то время как последние четыре области доступны только для веб-приложения.

Область видимости bean-компонента по умолчанию — singleton, в которой только один экземпляр bean-компонента создается и кэшируется в памяти. Несколько запросов к компоненту возвращают общую ссылку на один и тот же компонент. Напротив, область видимости прототипа приводит к созданию новых bean-компонентов всякий раз, когда запрос на bean-компонент выполняется в контексте приложения.

Autowiring

Метод Spring по внедрению бобов в одно и другое. Spring идентифицирует зависимость выбранного bean-компонента, ищет совпадение, а затем заполняет зависимость. @AutowiredАннотаций сообщает Spring, чтобы найти и внедрить сотрудничающий боб в другой. Если доступно более одного bean-компонента одного типа, Spring выдает ошибку.

В следующем сценарии Spring обнаруживает два bean-компонента типа Operator:

IoC Container

Контейнер IoC — это платформа, которая обеспечивает функциональность инверсии управления. Контейнер IoC управляет bean-компонентами и создает все необходимые экземпляры.

Например, у нас есть класс, Vehicleкоторый зависит от другого класса, Engine.

С IoC программисту нужно только упомянуть зависимость, а Spring сделает все остальное. Контейнер IoC будет создавать экземпляры обоих классов и внедрять Engineих Vehicleв качестве зависимости.

Модули Spring и проекты Spring

Модули — это наборы инструментов, сгруппированные по назначению. Разработчики могут указать, какие модули помимо базового набора они хотели бы импортировать в качестве зависимостей для любого конкретного приложения.

Модули организованы в группы, называемые проектами. Каждый проект содержит модули, которые предназначены для работы на определенной платформе или типе приложения. Системы проектов и модулей помогают сохранить вашу программу легкой, поскольку вы можете загружать только те инструменты, которые используются в приложении.

Модули базовой архитектуры Spring Project показаны ниже, сгруппированные по их слоям:

Spring core что это. Moduli bazovoj arhitektury Spring Project pokazany nizhe. Spring core что это фото. Spring core что это-Moduli bazovoj arhitektury Spring Project pokazany nizhe. картинка Spring core что это. картинка Moduli bazovoj arhitektury Spring Project pokazany nizhe

Контейнер Spring Core включает 4 модуля, необходимых для использования Spring: Beans, Core, Context и Spring Expression Language (SpEL). Эти модули отвечают за основные функции среды Spring, такие как инверсия управления (IoC), внедрение зависимостей, интернационализация, а также за поддержку запросов к объекту во время выполнения.

Уровень доступа / интеграции Spring Data обеспечивает поддержку взаимодействия с базами данных и управления данными. Он состоит из 4 основных частей:

Веб-уровень содержит модули Веб, Сервлеты, Портлеты и Сокеты, используемые для создания веб-приложений.

Модуль Test обращается к сквозной проблеме модульного тестирования. Платформа Spring Test поддерживает тестирование с помощью JUnit, TestNG, а также создание фиктивных объектов для изолированного тестирования кода.

Модуль AOP предоставляет функции аспектно-ориентированного программирования, такие как перехват методов, pointcut, безопасность и функции ведения журнала. Spring имеет собственный модуль под названием Spring AOP, который предлагает базовые функциональные возможности аспектно-ориентированного программирования. Расширенная функциональность АОП может быть реализована за счет интеграции с AspectJ. АОП включает в себя комплексные проблемы бизнес-логики.

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

Например, Spring Cloud позволяет разрабатывать собственные облачные приложения, которые можно динамически настраивать и развертывать. Он предоставляет функциональные возможности для обработки общих шаблонов в распределенных системах. Другие проекты включают Spring Boot, Spring Security, Spring DAO, Spring Context и многие другие.

Начать работу с Spring

Теперь мы познакомим вас с вашим первым приложением Spring: простая система рекомендаций по фильмам. Настроить новый проект с помощью Spring Framework сложно, потому что вам нужно настроить полную архитектуру вручную, включая то, какие зависимости Apache Maven использовать, использовать ли XML или Java, и вы должны установить веб-сервер, такой как Tomcat.

Вместо этого мы будем использовать проект Spring Boot для автоматизации большей части процесса установки и использования его встроенного веб-сервера.

Как начать свой проект

Мы будем использовать Spring Initializr, чтобы быстро создать проект Spring Boot, используя его простое меню выбора. Сначала перейдите в start.spring.io. Вы найдете интерфейс меню, подобный приведенному ниже, с выбором настроек и полями метаданных.

Spring core что это. Dlya etogo proekta my vyberem Maven Project. Spring core что это фото. Spring core что это-Dlya etogo proekta my vyberem Maven Project. картинка Spring core что это. картинка Dlya etogo proekta my vyberem Maven Project

Для этого проекта мы выберем «Maven Project», выберем Java в качестве нашего языка и выберем последнюю версию Spring Boot. На данный момент избегайте версий «SNAPSHOT», потому что они проходят альфа- или бета-тестирование. В разделе «Метаданные проекта» введите io.datajek.springbasics»GroupID» и movie-recommmender-system»ArtifactID«. Идентификатор группы и идентификатор артефакта — это в основном имя пакета и имя класса. Обычно вы добавляете зависимости модулей в разделе «Зависимости», но для этого проекта требуется только Spring по умолчанию. инструменты.

После того, как вы все ввели, нажмите «Создать», чтобы создать zip-файл с архитектурой настройки. Разархивируйте папку в желаемое место на жестком диске. Эта папка будет содержать pom.xmlфайл для импорта в Eclipse IDE. Через короткое время вы увидите следующую иерархию:

Поздравляем, вы создали свое первое приложение Spring с помощью Spring Boot!

Добавление зависимостей

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

Сначала создайте новый класс в src/main/javanamed RecommenderImplementation.

Spring core что это. Snachala sozdajte novyj klass v srcmain. Spring core что это фото. Spring core что это-Snachala sozdajte novyj klass v srcmain. картинка Spring core что это. картинка Snachala sozdajte novyj klass v srcmain

Затем мы добавим recommendMoviesметод в RecommenderImplementation. recommendMoviesМетод будет принимать строку заголовка фильма в качестве входных данных и возвращает три рекомендации в массиве String.

Используйте жестко запрограммированную реализацию ниже:

Теперь создайте экземпляр RecommenderImplementationкласса в MovieRecommenderSystemApplicationфайле, а затем вызовите recommendMoviesметод через RecommenderImplementationкласс.

Затем мы реализуем фильтрацию на основе содержимого, чтобы найти рекомендации. Чтобы не recommendMoviesзависеть от логики фильтрации, мы создадим новый класс ContentBasedFilterс вызываемым методом getRecommendations. В этом методе вы могли бы реализовать сложную фильтрацию, которая просматривает соответствующие данные, такие как история просмотров, рейтинг соответствия пользователей и т. Д. Помните об этих идеях, когда вы продолжите расширять этот проект после урока.

А пока мы жестко запрограммируем getRecommendations возврат тех же трех фильмов.

Теперь мы можем использовать методы ContentBasedFilterкласса в RecommenderImplementationклассе. Замените предыдущую жестко запрограммированную реализацию recommendMoviesследующей реализацией на основе зависимостей.

Наконец, мы добавим toStringметод к mainметоду, чтобы сделать массив String доступным для чтения в качестве вывода.

Источник

Как Spring упрощает жизнь разработчика: что нужно знать о фреймворке

Spring core что это. 6177d3c4de304 bpfull. Spring core что это фото. Spring core что это-6177d3c4de304 bpfull. картинка Spring core что это. картинка 6177d3c4de304 bpfull

Java Developer в NIX

Spring core что это. soc facebook red. Spring core что это фото. Spring core что это-soc facebook red. картинка Spring core что это. картинка soc facebook red Spring core что это. soc twitter red. Spring core что это фото. Spring core что это-soc twitter red. картинка Spring core что это. картинка soc twitter red Spring core что это. soc telegram red. Spring core что это фото. Spring core что это-soc telegram red. картинка Spring core что это. картинка soc telegram red

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

Фреймворк Spring включает в себя два десятка модулей и, конечно, уместить все в одной статье не получится. В этом материале я расскажу об основных модулях (Core):

Главный принцип философии Spring — минимальное воздействие. На официальном сайте фреймворка говорится, что Spring делает программирование на Java быстрее, легче, проще, безопаснее и самое главное — продуктивнее. Давайте попробуем разобраться, что имели ввиду авторы этих строк.

Базовая терминология для работы со Spring

Человека, знакомящегося со Spring, может испугать обилие новых терминов. И авторы статей «для начинающих» иногда оставляют объяснения этих терминов за скобками, полагая, что это уже все знают или и так поймут из названия. Но я считаю, не лишним будем проговорить эти понятия:

Фреймворк — платформа (заготовка, каркас), которая собирает в себе готовые решения для типичных задач разработчика по настройке приложения. Любой может добавить фреймворк в свое приложение и сфокусироваться на написании его основной логики.

Зависимость (Dependency) — в контексте Java-приложения зависимостью называют класс B, без которого не может функционировать класс А.

Аннотация — «метка» в исходном коде, которая сама по себе является метадатой, которую потом может использовать компилятор/интерпретатор или же, как в нашем случае, фреймворк.

Бин (Bean) — класс в языке Java, написанный по определенным правилам. Java-бины используются для объединения нескольких объектов в один, благодаря чему достигается удобство в передачи данных.

Также в статье будут часто использоваться термины инверсия контроля (Inversion of Control, Ioc) и внедрение зависимостей (Dependency Injection, DI). Для их объяснения недостаточно просто определения, поэтому детально рассмотрим их ниже.

IoC и DI

Часто, когда дают определение Spring, говорят, что это IoC-контейнер. Несмотря на то, что это одна из ключевых функциональностей Spring, такое определение почти ничего не объясняет о нем. Давайте основательно разберемся, что такое IoC и зачем она нужна. Предлагаю сначала выяснить это на примере приложения без Spring.

Инверсия контроля (Inversion of Control — IoC ) — один из популярных принципов объектно-ориентированного программирования (ООП). Она позволяет повысить модульность и расширяемость программы за счет снижения зависимостей между ее компонентами.

Но что значит наличие зависимостей в программировании? Если класс А использует класс В, он становится зависимым от него. По схожему принципу происходит зависимость автомобиля от двигателя, компьютера от процессора. В ООП под зависимостью понимают класс, без которого не может функционировать код другого класса.

Как это выглядит в коде

Давайте выразим в коде пример зависимости уже упомянутых выше машины и двигателя. Первую версию кода напишем без использовании инверсии контроля:

Spring core что это. image12 1. Spring core что это фото. Spring core что это-image12 1. картинка Spring core что это. картинка image12 1

Код без инверсии контроля

Основные недостатки такого подхода:

Этот код можно немного улучшить, добавив интерфейс:

Spring core что это. image7 1. Spring core что это фото. Spring core что это-image7 1. картинка Spring core что это. картинка image7 1

Инверсии контроля можно достичь различными способами, но в Spring чаще всего применяются способы Dependency Injection (DI; от англ. «внедрение зависимостей»). Рассмотрим именно их.

Давайте добьемся инверсии контроля при помощи DI-метода: Setter Injection (пока что без Spring Framework):

Spring core что это. 1 2. Spring core что это фото. Spring core что это-1 2. картинка Spring core что это. картинка 1 2

Setter Injection, пока что без Spring Framework

Внедрение зависимостей можно также осуществить с помощью Construction Injection, где аргументы будут переданы через конструктор:

Spring core что это. image11 1 e1635407847655. Spring core что это фото. Spring core что это-image11 1 e1635407847655. картинка Spring core что это. картинка image11 1 e1635407847655

Пример без Spring Framework, но с инверсией управления Constructor Injection

Как видим, инверсия контроля позволила нам уменьшить количество связей, в результате чего класс стало легче изменять и расширять.

Вместе с этим осталась нерешенной следующая проблема: новые классы по прежнему нужно создавать при помощи оператора new (хотя теперь это и делается снаружи исходного кода):

Spring core что это. Risunok1. Spring core что это фото. Spring core что это-Risunok1. картинка Spring core что это. картинка Risunok1Давайте рассмотрим пример того, как Spring может справиться с этой проблемой и какие инструменты мы можем использовать.

Добавляем Spring Framework в приложение

Любой ресурс (класс) в Spring называется бином (Bean). Это название взято по аналогии с JavaBeans — классами в языке Java, написанными по определенным правилам (наличие конструктора без параметров, геттеров/сеттеров). Бины в Spring не ограничены такими строгими правилами, но они очень похожи на своих Java-собратьев.

Чтобы добавить Spring в приложение, вам необходимо:

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

XML-конфигурация на Spring

Код приложения с использованием Spring Framework будет выглядеть точно так же, как и без него. В этом и заключается то самое «минимальное воздействие», характерное для Spring.

Spring core что это. image5 5 e1635408068668. Spring core что это фото. Spring core что это-image5 5 e1635408068668. картинка Spring core что это. картинка image5 5 e1635408068668

Пример приложения на Spring Framework

XML-конфигурацию этого кода можно представить следующим образом:

XВ первой части кода есть масса ссылок. Так в Spring выглядит пространство имен. Но давайте сосредоточим внимание на выделенной области кода. Здесь можно увидеть объявление наших бинов:

Spring core что это. image9 1 e1635408142384. Spring core что это фото. Spring core что это-image9 1 e1635408142384. картинка Spring core что это. картинка image9 1 e1635408142384

Пример приложения на Spring Framework — XML-конфигурация

Annotation-конфигурация на Spring

Рассмотрим создание конфигураций на Spring при помощи аннотаций (annotation). Они помогут Spring разобраться, где именно существуют зависимости, и что ему нужно с ними делать. Уберем из нашего config.xml все упоминания о бинах и пропишем необходимость сканирования пакета на наличие аннотации @Component :

Spring core что это. image15 1 e1635408176661. Spring core что это фото. Spring core что это-image15 1 e1635408176661. картинка Spring core что это. картинка image15 1 e1635408176661

Пример приложения на Spring Framework — Annotation конфигурация

Spring core что это. image2 6 e1635408246664. Spring core что это фото. Spring core что это-image2 6 e1635408246664. картинка Spring core что это. картинка image2 6 e1635408246664

Пример приложения на Spring Framework — Annotation конфигурация

Начиная с версии Spring 4.3, аннотацию @Autowired необязательно ставить на конструктор. Если у нас в коде лишь один конструктор, Spring автоматически определит его как место внедрения зависимостей. Но в случае установки аннотации @Autowired на сеттер ее всегда следует прописывать явно.

Java-конфигурация на Spring

Spring core что это. image6 4 e1635408289645. Spring core что это фото. Spring core что это-image6 4 e1635408289645. картинка Spring core что это. картинка image6 4 e1635408289645

Пример приложения на Spring Framework — Java конфигурация: слева — конфигурация, справа — код

XML или Annotation?

Какой же подход лучше всего подойдет для создания конфигураций на Spring: XML или аннотации? На мой взгляд, это вопрос вкуса:

В любом случае важно помнить, что конфигурации полностью взаимозаменяемы и не отличаются друг от друга по функционалу. Главное — выбрать один вид конфигурации и придерживаться его во время разработки вашего приложения.

Основные аннотации Spring: внедрение зависимостей с помощью @Autowired

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

Аннотация @Autowired отвечает в Spring за внедрение зависимостей. Ею можно пометить место внедрения (сеттер, поле или конструктор), и Spring автоматически свяжет нужный бин с этим местом. Используем в нашем коде внедрение зависимости через сеттер с помощью @Autowired :

Spring core что это. image8 1 e1635408321856. Spring core что это фото. Spring core что это-image8 1 e1635408321856. картинка Spring core что это. картинка image8 1 e1635408321856

Создадим Java-конфигурацию вместе с аннотацией @ComponentScan — с ее помощью нам больше не нужно будет явно указывать наши бины в коде:

Spring core что это. image13 1 e1635408346717. Spring core что это фото. Spring core что это-image13 1 e1635408346717. картинка Spring core что это. картинка image13 1 e1635408346717

Давайте рассмотрим каждый тип зависимостей более детально.

Сonstructor Injection

Внедрение через конструктор следует использовать когда зависимость является обязательной, или ее необходимо сделать неизменяемой (с помощью ключевого слова final ).

Благодаря Constructor Injection также легче заметить «суперклассы» — перегруженные классы с большим количеством зависимостей. Если в классе все зависимости подключаются через конструктор, то в глаза сразу бросается большое количество параметров. И у разработчика появится ощущение, что он делает что-то не так.

Setter Injection

Внедрение через сеттер следует использовать, когда зависимость является опциональной.

Setter Injection часто используется в классах, которые должны легко поддаваться реконфигурации. Помимо этого, сеттеры дают возможность определять зависимости в интерфейсе.

Field Injection и основные причины его избегать

Внедрение зависимостей при помощи Field Injection не рекомендуется делать по нескольким причинам:

Setter или Constructor Injection?

До недавнего времени мнения насчет того, какой тип внедрения зависимости использовать, разнились даже у самих разработчиков Spring Framework. До версии 4.0 команда создателей Spring рекомендовала внедрять зависимости через сеттер. Он объясняли это тем, что большое количество аргументов конструктора может стать очень громоздким. Особенно, когда их свойства являются необязательными.

Вы всегда вправе выбрать любой тип внедрения зависимостей и при необходимости даже смешивать их. Главное помнить, что выбор типа внедрения всегда должен быть основан на ваших потребностях и потребностях разрабатываемого вами ПО.

Bean Scopes и их разновидности

@Scope(“singleton”)

По умолчанию все бины в Spring создаются как singleton — один объект на контейнер. Это означает, что каждый раз, когда вы будете запрашивать у контейнера бин, вам будет приходить одна и та же ссылка с одним и тем же выделенным объектом:

Spring core что это. image3 6. Spring core что это фото. Spring core что это-image3 6. картинка Spring core что это. картинка image3 6

@Scope(“prototype”)

Spring core что это. image10 2. Spring core что это фото. Spring core что это-image10 2. картинка Spring core что это. картинка image10 2

Скоупы web-приложения

Существует целый ряд бин-скоупов, характерных только для веб-приложений. С их помощью можно ограничивать жизненный цикл экземпляра одним запросом ( request ), сессией ( session ), сервлетом ( application ) или веб-сокетом ( websocket ).

Жизненный цикл бина: использование @PostConstruct и @PreDestroy

Перед тем, как спринговый бин будет доступен к использованию, он проходит ряд этапов своего «рождения».

Существует две основные аннотации для внедрения в жизненный цикл. Ими помечается метод, который будет внедрен в жизненный цикл.

Без ошибок: аннотация @Qualifier

Spring core что это. image14 1 e1635408391140. Spring core что это фото. Spring core что это-image14 1 e1635408391140. картинка Spring core что это. картинка image14 1 e1635408391140

Три компонента одного @Component

У аннотации @Component существует три аналога:

Вместо вывода

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

Для тех, кто хочет знать больше:

Этот материал – не редакционный, это – личное мнение его автора. Редакция может не разделять это мнение.

Источник

Подробное руководство по работе с Java Spring для чайников

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

Spring – это облегченный фреймворк, который можно рассматривать как фреймворк фреймворков, поскольку он предлагает поддержку различных фреймворков, таких как Hibernate, Struts, Tapestry, JSF и т. д.

Spring core что это. 081319 1354 JavaSpringT1. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT1. картинка Spring core что это. картинка 081319 1354 JavaSpringT1

Особенности Spring Framework

Вот некоторые наиболее важные особенности Spring Framework:

Краткая история

Вот важные ориентиры из истории:

Spring Framework Architecture

Spring Framework предоставляет 20 модулей, которые можно использовать в зависимости от требований приложения.

Spring core что это. 081319 1354 JavaSpringT2. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT2. картинка Spring core что это. картинка 081319 1354 JavaSpringT2

Core и Bean обеспечивают фундаментальную часть платформы, включая IoC и DI.

Основной контейнер

Базовый контейнер дополнительно разделен на подкомпоненты, такие как модули Core, Beans, Context и Expression Language.

Давайте рассмотрим каждую из этих моделей в деталях:

Spring Core:

Основной модуль обеспечивает все основные компоненты каркаса пружины. Включает функции IoC (Inversion of Control) и Inpension Injection.

Модуль предлагает BeanFactory, которая представляет собой сложную реализацию фабричного шаблона.

Context

Модуль Context основан на прочной основе, предоставляемой модулями Core и Beans, и является средой, которая помогает вам получить доступ к любым объектам, определенным и настроенным.

Языки весеннего выражения (SpEL):

Этот модуль предлагает язык выражений для изменения и запроса графов объектов во время выполнения.

Доступ к данным и интеграция:

Уровень доступа к данным и интеграции состоит из модулей JDBC, ORM, JDBC, OXM, JMS и Transaction.

Web: в этом модуле используются слушатели сервлетов и контекст веб-ориентированного приложения. Он также предлагает функцию веб-ориентированной интеграции и функциональность для загрузки файлов из нескольких частей.

Веб-сервлет: Этот модуль хранит реализацию на основе MVC для веб-приложений.

Web-Socket: модуль предлагает основанную на WebSocket и двустороннюю связь между клиентом и сервером в веб-приложениях.

Web-портлет: этот модуль также называется Spring-MVC-Portlet module. Он предлагает портлеты на основе Spring и копирует все функциональные возможности модуля Web-сервлетов.

AOP: язык AOP является полезным инструментом, который позволяет разработчикам добавлять корпоративные функциональные возможности в приложение.

Инструментарий: Этот модуль предлагает инструментарий класса и реализации загрузчика. Используется для конкретных серверов приложений.

Тест: Этот модуль поддерживает тестирование компонентов Spring с помощью инструментов TestNG или JUnit. Он предлагает последовательную загрузку Spring ApplicationContexts и кэширование этих контекстов.

Spring – MVC Framework

Spring core что это. 122118 0445 MVCTutorial1. Spring core что это фото. Spring core что это-122118 0445 MVCTutorial1. картинка Spring core что это. картинка 122118 0445 MVCTutorial1

Spring Web MVC Framework предлагает архитектуру модель-представление-контроллер и предлагает компоненты, которые помогают вам быть гибкими и слабо связанными веб-приложениями.

Шаблон MVC позволяет разделять различные аспекты приложения, предлагая слабую связь между этими элементами. Spring MVC также помогает вам создавать гибкие и слабо связанные веб-приложения.

Дизайн MVC также позволяет разделить бизнес-логику, логику представления и логику навигации. Он также предлагает элегантное решение для использования MVC в Spring Framework с помощью DispatcherServlet.

Как работает MVC?

Spring core что это. 081319 1354 JavaSpringT3. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT3. картинка Spring core что это. картинка 081319 1354 JavaSpringT3

Аспектно-ориентированное программирование

Аспектно-ориентированное программирование позволяет глобальным свойствам программы решать, как она компилируется в исполняемую программу.

Ключевой единицей модульности является аспект, а не класс. Аспектно-ориентированное программирование разбивает логику программы на различные части, известные как проблемы.

Межотраслевая проблема может затронуть все приложение и сосредоточена в одном месте в коде, таком как безопасность транзакций, управление, ведение журналов, аутентификация и т. д.

Spring core что это. 081319 1354 JavaSpringT4. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT4. картинка Spring core что это. картинка 081319 1354 JavaSpringT4

Его также можно рассматривать как динамический шаблон оформления декоратора. Этот шаблон также предлагает дополнительное поведение, которое будет добавлено к существующему классу, оборачивая исходный класс и дублируя его интерфейс и удаляя исходный.

Основные концепции АОП

В Аспектно-ориентированном программировании есть семь основных концепций.

Spring core что это. 081319 1354 JavaSpringT5. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT5. картинка Spring core что это. картинка 081319 1354 JavaSpringT5

Давайте обсудим их подробно:

Установка Java Spring

Вот пошаговая информация по установке Java Spring на ваш компьютер:

Шаг 1) Зайдите на сайт www.eclipse.org.

Шаг 2) Загрузите установщик Eclipse Neon и установите его в своей системе Windows.

Spring core что это. 081319 1354 JavaSpringT6. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT6. картинка Spring core что это. картинка 081319 1354 JavaSpringT6

Шаг 3) Нажмите кнопку «Загрузить 64-разрядную версию».

Spring core что это. 081319 1354 JavaSpringT7. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT7. картинка Spring core что это. картинка 081319 1354 JavaSpringT7

Шаг 4) Перейдите в Eclipse IDE для разработчиков Java и нажмите на ссылку «64-bit».

Spring core что это. 081319 1354 JavaSpringT8. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT8. картинка Spring core что это. картинка 081319 1354 JavaSpringT8

Шаг 5) Нажмите на ссылку «Windows 64-bit».

Spring core что это. 081319 1354 JavaSpringT9. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT9. картинка Spring core что это. картинка 081319 1354 JavaSpringT9

Шаг 6) Нажмите на кнопку «Загрузить», чтобы загрузить ZIP-файл.

Spring core что это. 081319 1354 JavaSpringT10. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT10. картинка Spring core что это. картинка 081319 1354 JavaSpringT10

Шаг 7) Распакуйте zip-файл для загрузки в определенную папку.

Spring core что это. 081319 1354 JavaSpringT11. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT11. картинка Spring core что это. картинка 081319 1354 JavaSpringT11

Шаг 8) Нажмите кнопку «Обзор», чтобы выбрать каталог рабочей области.

Spring core что это. 081319 1354 JavaSpringT12. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT12. картинка Spring core что это. картинка 081319 1354 JavaSpringT12

Шаг 9) Нажмите «Выбрать папку», чтобы выбрать папку.

Spring core что это. 081319 1354 JavaSpringT13. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT13. картинка Spring core что это. картинка 081319 1354 JavaSpringT13

Процесс будет отображаться, как показано на следующем экране.

Spring core что это. 081319 1354 JavaSpringT14. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT14. картинка Spring core что это. картинка 081319 1354 JavaSpringT14

Шаг 10) Открытие клиента Eclipse Marketplace.

Spring core что это. 081319 1354 JavaSpringT15. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT15. картинка Spring core что это. картинка 081319 1354 JavaSpringT15

Шаг 11) Поиск и установка плагина Spring.

Spring core что это. 081319 1354 JavaSpringT16. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT16. картинка Spring core что это. картинка 081319 1354 JavaSpringT16

Шаг 12) Подтвердите выбранные функции и нажмите кнопку «Подтвердить».

Spring core что это. 081319 1354 JavaSpringT17. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT17. картинка Spring core что это. картинка 081319 1354 JavaSpringT17

Шаг 13) Принятие условий и установка программного обеспечения.

Spring core что это. 081319 1354 JavaSpringT18. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT18. картинка Spring core что это. картинка 081319 1354 JavaSpringT18

Появится экран приветствия с ходом установки программного обеспечения.

Spring core что это. 081319 1354 JavaSpringT19. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT19. картинка Spring core что это. картинка 081319 1354 JavaSpringT19

Шаг 14) Нажмите кнопку «Перезагрузить сейчас», чтобы перезапустить Eclipse IDE и применить изменения.

Spring core что это. 081319 1354 JavaSpringT20. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT20. картинка Spring core что это. картинка 081319 1354 JavaSpringT20

Будет отображен следующий экран:

Spring core что это. 081319 1354 JavaSpringT21. Spring core что это фото. Spring core что это-081319 1354 JavaSpringT21. картинка Spring core что это. картинка 081319 1354 JavaSpringT21

Преимущества Spring Framework

Недостатки Spring Framework

Вот минусы Spring Framework.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *