Программа spring что это

Содержание

Разработка приложений со Spring. Базовое веб-приложение.

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

О проекте

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

Для данного проекта потребуются следующие зависимости:

  • Spring Data JPA для работы с базой данных
  • Thymeleaf для описания шаблонов
  • СУБД H2 в качестве хранилища данных
  • Lombok для минимизации рутинного кода вроде get/set-методов и конструкторов

Project Lombok

Что такое Spring?

Данный инструмент значительно упрощает процесс разработки, добавляя перед компиляцией необходимые рутинные элементы, такие как get/set-методы, конструкторы, логгеры и многое другое. Поддержка данного инструмента есть во всех главных Java IDE. Более подробно с Lombok можно ознакомиться на официальном сайе проекта.

В итоге pom.xml будет выглядеть следующим образом:

org.springframework.boot
spring-boot-starter-data-jpa
org.springframework.boot
spring-boot-starter-thymeleaf
com.h2database
org.projectlombok

org.springframework.boot
spring-boot-starter-test

Поскольку проект основан на Spring Boot, можно сгеренировать заготовку проекта при помощи Spring Initializr.

Классы-сущности и репозитории

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

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

  • Идентификатор
  • Краткое описание проблемы
  • Подробное описание проблемы
  • Дата создания

Ticket.java
public class Ticket <
private int id ;
private String issue ;
private String issueDetails ;
private Date dateCreated ;

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

  • Идентификатор
  • Текст комментария
  • Дата создания
  • Ссылка на заявку

TicketComment.java
public class TicketComment <
private int id ;
private String comment ;
private Date dateCreated ;
private Ticket ticket ;

Немножко задержимся на аннотациях, фигурирующих в наших классах-сущностях.

Структура базы данных

Обратите внимание, что создавать отдельно структуру базы данных не нужно, это за нас сделает Spring Data JPA, так как мы будем использовать СУБД H2, которая расценивается связкой Spring Boot и Spring Data JPA как тестовая. Если есть необходимость автоматического создания структуры базы данных в полноценных СУБД, вроде PostgreSQL или MySQL, то это можно настроить в свойствах приложения. Однако данный подход не рекомендуется и является опасным при применении в рабочих решениях. Более подробно об этом рассказано в документации Spring Boot.

Для доступа к данным нам потребуются репозитории. Поскольку в нашем проекте может понадобится постраничная разбивка данных (пейджинация), мы будем использовать PagingAndSortingRepository.

Что такое Spring Framework

Репозиторий для заявок:

TicketRepository.java
public interface TicketRepository extends PagingAndSortingRepository < Ticket , Integer ><

Репозиторий для комментариев:

TicketCommentRepository.java
public interface TicketCommentRepository extends PagingAndSortingRepository < TicketComment , Integer ><
Page findByTicket ( Ticket ticket , Pageable pageable ) ;

Spring Data JPA при инициализации приложения создаст объекты репозиториев и реализует объявленный нами волшебный метод. О волшебных методах я писал в предыдущей статье.

Тестирование репозиториев

Нет никакого смысла тестировать репозитории, в которых нет собственных методов, а работоспособность стандартных методов проверяется тестами разработчиками Spring Data JPA. А вот собственные методы нужно тестировать при помощи интеграционных тестов.

Модульное и интеграционное тестирование

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

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

Тестироваться должны все возможные варианты поведения компонента, как оптимистичные, так и пессимистичные. Таким образом для тестирования некоторых методов потребуется 4-5, а то и больше тестовых методов. В реальных проектах объём тестового кода может без проблем составлять 50-75%, что может создать впечатление пустой траты рабочего времени разработчика, что совершенно неверно, так как цена ошибок, которые могли быть обнаружены тестами, порой может быть очень высокой.

В нашем проекте будут использованы оба способа тестирования, но я не буду добавлять в статью весь код, относящийся к тестированию, так как его объём значительно больше тестируемого кода.

Контроллеры, тесты и реализация

По аналогии с репозиториями нам понадобятся два класса-контроллера: один — для работы с заявками, второй — для работы с комментариями.

Давайте взглянем на контроллер для работы с заявками:

Источник: alexkosarev.name

Обзор модулей Spring для Java

Spring для Java — обширная платформа для создания веб-проектов на Java, состоящая из множества независимых модулей (проектов) для разных задач: от простых веб-приложений до Big Data. Мы рассмотрим, что дают эти модули, какие их основные особенности и для чего их можно использовать.

Читайте также:
Netanimate что это за программа

Что такое Spring?

Spring возник в 2003 году в виде облегчённого аналога платформы для корпоративных приложений Java Enterprise. Он позиционируется как простая в использовании платформа для веб-приложений. Spring поддерживает несколько языков JVM: Java, Kotlin и Groovy.

Spring состоит из большого числа модулей. Среди них есть модули-стартеры, без которых Spring-приложение просто не запустится, а есть также вспомогательные проекты, добавляющие в приложение определённую функциональность: например Spring Data Flow для потоковой обработки данных, Security для безопасности или Cloud для распределённых систем. Такая структура позволяет разработчикам эффективно создавать и поддерживать приложения, используя только нужные инструменты.

Остановимся более подробно на основных модулях Spring и узнаем, для чего их можно использовать.

Несколько слов о Spring Framework

Spring Framework — ядро платформы Spring. Framework неявно используется другими компонентами Spring, например MVC и WebFlux, обеспечивая фундаментальные инструменты для различных архитектур приложений. Мы не будем рассматривать его как отдельный модуль Spring, но перечислим основные характеристики и особенности.

Android-разработчик в команду BuyerX Авито , Удалённо , От 270 000 ₽

Spring Framework включает:

  • Основные технологии: внедрение зависимостей, события, ресурсы, i18n, проверка, связывание данных, преобразование типов, SpEL, AOP.
  • Инструменты тестирования: mock-объекты, TestContext, Spring MVC Test, WebTestClient.
  • Доступ к данным: транзакции, поддержка DAO, JDBC, ORM, Marshalling XML.
  • Интеграцию: удалённое взаимодействие, JMS, JCA, JMX, электронная почта, задачи, планирование, кеш.

Spring Boot

Spring Boot — комплексный фреймворк для создания и запуска приложений с минимальными усилиями и настройками. Этот модуль делится на два стека: основанный на API сервлетов Spring MVC и реактивный Spring WebFlux.

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

Spring MVC построен на API сервлетов и использует архитектуру синхронного блокирующего ввода-вывода с моделью «один запрос на поток».

В Spring Boot также можно опционально подключить библиотеку Reactor для создания реактивных систем на JVM.

Характеристики

  • Встраивание контейнеров Tomcat, Jetty или Undertow напрямую без развёртывания WAR-файлов.
  • Готовые стартовые зависимости, упрощающие конфигурацию сборки.
  • Возможность сконфигурировать проект прямо в браузере с помощью Spring Initializr.
  • Автоматическая настройка сторонних библиотек (по возможности).
  • Готовые к работе функции, такие как сбор метрик, проверка работоспособности и использование внешней конфигурации.
  • Нет кодогенерации и не требуется конфигурация XML — всё конфигурируется через аннотации.

Для чего используется

Вместе со Spring Boot в проектах обычно используются Spring Security и Cloud. С помощью Spring Boot можно создавать:

  • микросервисы;
  • реактивные системы;
  • веб-приложения.

Что почитать и с чего начать

Для скоростного погружения в Spring Boot пройдитесь по руководству по быстрому запуску. Также в официальной документации можно найти гайд по созданию приложения с помощью Spring Boot и туториал для написания веб-службы RESTful.

Spring Data

Модуль обеспечивает приложениям доступ к данным через реляционные и нереляционные базы данных (БД), map-reduce фреймворки и облачные сервисы. Spring Data содержит множество подпроектов, предназначенных для определённых СУБД. Среди них есть, например, MySQL, MongoDB, Redis и многие другие. Также можно использовать подмодули, разработанные сообществом Spring для более специфичных баз данных вроде ArangoDB, Google Datastore, Microsoft Azure Cosmos DB и других.

Основной механизм, реализуемый в Spring Data — репозиторий. Это набор интерфейсов, использующих JPA Entity для взаимодействия с данными.

Характеристики

  • Настраиваемое отображение сущностей в БД на Java-объекты.
  • Создание динамических запросов в базу данных через сигнатуру метода интерфейса репозитория.
  • Базовые классы для различных задач.
  • Прозрачный аудит объектов.
  • Возможность интегрировать собственный код репозитория.
  • Простая интеграция со Spring через JavaConfig, а также кастомных пространств имён XML.
  • Расширенная интеграция с контроллерами Spring MVC.

Для чего используется

Spring Data используется везде, где нужен доступ к данным, и легко интегрируется с другими модулями Spring.

Что почитать и с чего начать

Обо всех модулях Spring Data можно почитать в официальной документации.

Spring Cloud

Со Spring Cloud вы сможете легко и быстро создавать шаблоны в распределённых системах. Из примеров таких шаблонов: управление конфигурацией, обнаружение сервисов, интеллектуальная маршрутизация, микропрокси, одноразовые токены и многое другое.

Шаблоны, созданные с помощью Spring Cloud, будут хорошо работать в любой распределённой среде, включая ваш собственный ноутбук, центры обработки данных и PaaS-платформы, такие как Cloud Foundry.

Spring Cloud также состоит из множества подпроектов для разных целей. Так, Spring Cloud Azure интегрирует Spring со службами Azure, Spring Cloud Stream используется для создания управляемых событиями микросервисов (event-driven microservices) и так далее.

Характеристики

  • Распределённая / версионная конфигурация.
  • Регистрация и обнаружение сервисов.
  • Маршрутизация.
  • Связь между сервисами (service-to-service calls).
  • Балансировка нагрузки.
  • Выбор лидера и состояние кластера.
  • Распределённый обмен сообщениями.

Для чего используется

Spring Cloud содержит много полезных инструментов для микросервисов и распределённых систем.

Что почитать и с чего начать

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

Spring Cloud Data Flow

Spring Cloud Data Flow нужен приложениям, в которых используется потоковая передача и пакетная обработка данных.

Фреймворк поддерживает ряд готовых кейсов обработки данных, среди которых ETL, потоковая обработка событий и прогнозная аналитика.

Характеристики

  • Развёртывание приложений на платформах Cloud Foundry и Kubernetes.
  • Готовые приложения для различных сценариев интеграции и обработки данных.
  • Настраиваемые приложения, ориентированные на связующее ПО или службы данных.
  • Простой потоковый конвейер DSL, чтобы указывать, какие приложения развёртывать и как подключать выходы и входы.
  • Графический редактор для интерактивного построения конвейеров данных и мониторинга метрик с помощью Wavefront, Prometheus, Influx DB или других систем.
  • REST API для создания и развёртывания конвейеров данных с возможностью работы из командной строки.

Для чего используется

Spring Cloud Data Flow подойдёт для создания конвейеров потоковой обработки данных — например, чтобы пересылать какие-либо данные в базу и затем удобно анализировать их.

Что почитать и с чего начать

Попробуйте создать микросайт с помощью Spring Cloud Data Flow и ознакомиться с примерами использования.

Spring Security

Spring Security — среда аутентификации, авторизации и контроля доступа. Это стандартный фреймворк, который используется для защиты приложений на основе Spring.

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

Читайте также:
Диск что это за программа и можно ли ее удалить

Характеристики

  • Аутентификация и авторизация пользователей.
  • Защита от атак, таких как фиксация сессии, кликджекинг, подделка межсайтовых запросов и так далее.
  • Возможность интеграции с Servlet API.
  • Опционально подключаемый модуль Spring Web MVC.

Для чего используется

Модуль Security нужен, чтобы обеспечить проверку безопасности и защитить приложение от атак.

Что почитать и с чего начать

На официальном сайте есть небольшое руководство по защите веб-приложения, более подробный гайд с объяснением всех функций и особенностей Spring Security, а также раздел в документации.

Spring Integration

Spring Integration позволяет облегчить обмен сообщениями в приложениях на основе Spring, поддерживает интеграцию с внешними системами и даёт инструменты для обработки данных из разных источников. Один из подпроектов Spring Cloud, Spring Cloud Stream, использует Spring Integration как движок для микросервисов, управляемых событиями.

Характеристики

  • Много шаблонов для интеграции приложений предприятия.
  • Интеграция с внешними системами.
  • Веб-сервисы (SOAP и REST).
  • Обширная поддержка JMX.
  • MBeans-компоненты.

Для чего используется

Spring Integration подключается к проекту, если вам нужно связать POJO (Plain Old Java Object) с помощью парадигмы обмена сообщениями без внедрения зависимостей (DI). Также Integration позволяет взаимодействовать с внешними системами с помощью адаптеров каналов и шлюзов. Адаптеры каналов используются для односторонней интеграции (отправка или получение), а шлюзы — для сценариев запроса / ответа (входящего или исходящего).

Что почитать и с чего начать

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

Spring Batch

Spring Batch — платформа для разработки пакетных приложений. Spring Batch подойдёт как для простых, так и для более сложных проектов — платформа легко масштабируется и может обрабатывать большие объёмы информации.

Характеристики

  • Управление транзакциями.
  • Обработка на основе фрагментов данных.
  • Декларативный ввод / вывод.
  • Веб-интерфейс администрирования (Spring Cloud Data Flow).

Для чего используется

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

Что почитать и с чего начать

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

…И ещё немного

Мы перечислили лишь ключевые модули Spring. На самом деле их гораздо больше: например, есть ещё Spring for Android для создания Android-приложений, Spring CredHub для взаимодействия с CredHub-сервером, Spring LDAP и многие другие.

С полным списком проектов Spring можно ознакомиться на официальном сайте.

Источник: tproger.ru

Программа spring что это

немножно мутновато написано про IoC. название IoC контейнер всего лишь означает что это контейнер для обеспечения реализации принципа Inversion of Control. «То есть, тут уже не вы управляете процессом выполнения кода/программы, а фреймворк это делает за вас. Вы передали ему управление (инверсия управления).» ничего мы ему не передали. т.е. конечно он в нужное время подсунет нужные объекты, но то почему он называется IoC контейнер не в этом, а в принципе IoC который он помогает реализовать. A IoC принцип можно описать следующей конструкцией которая постоянно присутствует в приложениях на спринге:

IoC принцип тут в том что класс Service не контролирует SomeManagerInterface manager мы сами снаружи можем подсунуть нужную нам реализацию, в данном случае это делает наш конетйнер (который назвали IoC). Делает он это через механизм Dependency injection (DI). А еще один принцип который нужно соблюдать это Dependency inversion — классы должны зависеть от абстракций а не реализаций (SOLID, буква D — можно здесь глянуть,). он соблюдается если в качестве зависимости используется интерфейс (SomeManagerInterface manager) а не конкретный класс. И то что мы заинжектим мы тоже можем изменить. Класс написанный не по IoC принципу выглядел бы так:

class Service < private SomeManagerInterface manager = new SomeManagerImpl(); public void doJob() < manager.doSomething(); >>

т.е. он сам контролирует какую реализацию он использует. както повлиять снаружи на поведение этого класса мы не можем.

Источник: javarush.com

Программа spring что это

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

Введение

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

Возможности

  • Внедрение зависимости
  • Аспектно-ориентированное программирование, включая декларативное управление транзакциями
  • Создание Spring MVC web-приложений и RESTful web-сервисов
  • Начальная поддержка JDBC, JPA, JMS
  • Многое другое.

Быстрый старт

Рекомендованный путь для начального использования spring-framework в вашем проекте с использованием системы управления зависимостями – скопировать фрагмент кода ниже и вставить в вашу конфигурацию сборки. Нужна помощь? Ознакомьтесь с нашими руководствами по созданию приложений с использованием Maven и Gradle.

org.springframework spring-context 4.1.6.RELEASE
org.springframework spring-context 4.0.8.RELEASE
dependencies
dependencies

Spring Framework состоит из различных модулей, здесь мы показываем функциональность spring-context . См. «Руководства к действию» для использования в других случаях.

После того, как вы добавили в вашу сборке spring-context зависимость, вы можете сделать следующее:

package hello; public interface MessageService
hello/MessagePrinter.java
hello/Application.java

Приведенный выше пример показывает основную концепцию внедрения зависимостей: MessagePrinter отделен от реализации MessageService , но Spring Framework связал из всех вместе.

Источник: spring-projects.ru

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

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

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

поддержка различных фреймворков

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

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

  • Предопределенные шаблоны
  • облегченный
  • Быстрое развитие
  • Мощная абстракция
  • Предлагает множество ресурсов
  • Декларативная поддержка
  • Предлагает комплексные инструменты

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

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

  • Spring Framework был написан Родом Джонсоном и впервые выпущен в июне 2002 года.
  • Spring La с т версия выпуск в марте 2004 года
  • Версия Spring 1.2.6 выпущена в 2006 году
  • Выпуск версии Spring 2.0 в октябре 2006 г.
  • Выпуск версии Spring 2.5 в ноябре 2007 г.
  • Выпуск версии Spring 3 в декабре 2009 г.
  • Выпуск версии Spring 3.1 в декабре 2011 г.
  • Выпуск версии Spring Framework 4 в декабре 2013 года с поддержкой Java 8
  • Spring Framework 4.2.0 версия выпущена в июле 2015 года
  • Spring Framework 4.2.1 версия выпущена в сентябре 2015
  • Версия Spring Framework 4.3 выпущена 10 июня 2016 года
  • Spring Framework 5.0 версия выпущена в июне 2017 года
Читайте также:
Call of duty black что это за программа

Spring Framework Architecture

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

Spring Framework предоставляет 20 модулей

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.

  • ORM: модуль ORM обеспечивает согласованность / переносимость кода независимо от технологий доступа к данным. Он будет основан на концепции объектно-ориентированного отображения.
  • Модуль JDBC состоит из уровня абстракции JDBC. Это помогает вам понять необходимость выполнения кодирования, связанного с JDBC.
  • OXM: Object XML Mappers (OCM) помогает конвертировать объекты в формат XML и наоборот.
  • Модуль Java Messaging Service предлагает такие функции, как создание и потребление сообщений.
  • Транзакция: Этот модуль предлагает декларативный и программный метод управления для реализации уникальных интерфейсов и для всех типов POJO (Plain Old Java Object)

Web

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

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

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

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

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

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

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

Spring – MVC Framework

Spring - MVC Framework

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

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

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

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

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

  • DispatcherServlet получает запрос.
  • После этого DispatcherServlet связывается с HandlerMapping. Он также отзывает контроллер, связанный с этим конкретным запросом.
  • Контроллер обрабатывает этот запрос, вызывая методы службы и объект ModelAndView, возвращаемый DispatcherServlet.
  • Имя представления отправляется ViewResolver для поиска фактического представления для вызова.
  • После этого DispatcherServlet передается в View для отображения результата.
  • Используя данные модели, представление рендерится и отправляет результат обратно пользователю.

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

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

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

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

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

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

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

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

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

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

Установка Java Spring

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

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

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

Установка Java Spring

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

загрузка

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

64-bit

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

Windows 64-bit

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

скачивание

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

распаковка

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

выбор места

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

выбор папки

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

процесс инсталяции

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

Eclipse Marketplace

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

установка плагина

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

подтверждение

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

принятие условий

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

экран приветствия

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

перезапустить Eclipse

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

запуск

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

  • Spring позволяет разработчикам разрабатывать приложения корпоративного класса с помощью POJO.
  • Предлагает шаблоны для Hibernate, JDBC, Hibernate, JPA и т. Д., Чтобы уменьшить объем написанного кода.
  • Предоставляет абстракцию для Java Enterprise Edition (JEE).
  • Вы можете организовать по модульному принципу. Так что, если количество пакетов и классов является существенным, вам нужно только об этом и игнорировать все остальное.
  • Он предлагает декларативную поддержку транзакций, форматирования, проверки, кэширования и т. Д.
  • Приложение, разработанное с использованием Spring, является простым, поскольку код, зависящий от среды, перемещен в эту среду.

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

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

  • Слишком много ограничений.
  • Код общедоступен – это видно всем.
  • Не предлагает пользовательских функций.

Источник: java-blog.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru