/
dixsu
/
test-web-server
Обзор
Документация
Войти
/
dixsu
/
test-web-server
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
master
uploads/springBook.fb2
59 465 строк
5 MB
Сахно Роман Александрович
good
19 авг 2025, 21:53
19 авг 2025, 21:53
085cce6
Код
Авторство
О чём код?
<?xml version="1.0" encoding="UTF-8"?> <FictionBook xmlns="http://www.gribuser.ru/xml/fictionbook/2.0" xmlns:l="http://www.w3.org/1999/xlink"> <description> <title-info> <genre>comp_db</genre> <genre>sci_textbook</genre> <author> <first-name>Автор Неизвестен</first-name> <middle-name>--</middle-name> <last-name>Компьютеры</last-name> </author> <book-title>Spring in Action Covers Spring 5-1--11</book-title> <coverpage> <image l:href="#img_0"/> </coverpage> <lang>ru</lang> </title-info> <document-info> <author> <first-name>Пользователь</first-name> <last-name>Windows</last-name> </author> <program-used>calibre 5.25.0</program-used> <date>23.8.2021</date> <id>55aad8c8-8a42-4dbd-975b-1df0d9554ad3</id> <version>1.0</version> </document-info> <publish-info> <year>1</year> </publish-info> </description> <body> <section> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/04/spring-in-action-covers-spring-50-1.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 1</a></p> <p><strong>Начало работы со Spring</strong></p> <p>Хотя греческий философ Гераклит не был хорошо известен как разработчик программного обеспечения, он, казалось, хорошо разбирался в этом вопросе. Его цитируют так: "единственное неизменное-это перемены.” Это заявление отражает основополагающую истину разработки программного обеспечения.</p> <p>То, как мы разрабатываем приложения сегодня, отличается от того, что было год назад, 5 лет назад, 10 лет назад, и, конечно, 15 лет назад, когда первоначальная структура Spring Framework была представлена в книге рода Джонсона, Expert One-on-One J2EE Design and Development (Wrox, 2002, http://mng.bz/oVjy).</p> <p>Тогда наиболее распространенными типами разработанных приложений были браузерные веб-приложения, поддерживаемые реляционными базами данных. Хотя этот тип разработки по-прежнему актуален, и Spring хорошо подходит для таких приложений, мы также заинтересованы в разработке приложений, состоящих из микросервисов, предназначенных для облака, которые сохраняют данные в различных базах данных. И новый интерес к реактивному программированию направлен на обеспечение большей масштабируемости и повышение производительности с неблокирующими операциями.</p> <p>По мере развития разработки программного обеспечения структура Spring также претерпевала изменения, направленные на решение современных задач в области разработки, включая микрослужбы и реактивное программирование. Spring также намеревался упростить свою собственную модель разработки, введя Spring Boot.</p> <p>Независимо от того, разрабатываете ли вы простое веб-приложение с поддержкой баз данных или создаете современное приложение, основанное на микросервисах, Spring-это платформа, которая поможет вам достичь ваших целей. Эта глава - ваш первый шаг в путешествии по современной разработке приложений с Spring.</p> <p><strong>1.1 Что такое Spring?</strong></p> <p>Я знаю, что вам, вероятно, не терпится начать писать приложение Spring, и я уверяю вас, что до конца этой главы вы разработаете простое приложение. Но сначала, позвольте мне подготовить почву с несколькими основными понятиями Spring, которые помогут вам понять, что делает Spring.</p> <p>Любое нетривиальное приложение состоит из множества компонентов, каждый из которых отвечает за свою часть общей функциональности приложения, координируя работу с другими элементами приложения. При запуске приложения эти компоненты каким-то образом должны быть созданы и представлены друг другу.</p> <p>По своей сути Spring предлагает <emphasis>контейнер</emphasis>, часто называемый контекстом приложения Spring (Spring application context), который создает компоненты приложения и управляет ими. Эти компоненты, или <emphasis>beans, </emphasis>тесно связанные друг с другом внутри Spring application context, как кирпичи, ступени, трубопровод, проводка все вместе составляя дом.</p> <empty-line/> <p>Способ соединения bean-ов вместе основан на шаблоне, известном как dependency injection (DI). Вместо того, чтобы компоненты создавали и поддерживали жизненный цикл других компонентов, от которых они зависят, приложение с зависимостями полагается на отдельную сущность (контейнер) для создания и обслуживания всех компонентов и внедрения их в компоненты, которые в них нуждаются. Обычно это делается с помощью аргументов конструктора или методов доступа к свойствам.</p> <empty-line/> <p>Например, предположим, что среди множества компонентов приложения есть два, к которым вы будете обращаться: служба запасов (для получения уровней запасов) и Служба продуктов (для предоставления базовой информации о продукте). Служба продуктов зависит от службы запасов, чтобы иметь возможность предоставить полный набор сведений о продуктах. На рисунке 1.1 показаны связи между этими компонентами и контекстом приложения Spring.</p> <p><image l:href="#img_1"/></p> <p>Помимо основного контейнера, Spring и полный портфель связанных библиотек предлагают веб-платформу, различные варианты сохранения данных, инфраструктуру безопасности, интеграцию с другими системами, мониторинг времени выполнения, поддержку микрослужб, модель реактивного программирования и многие другие функции, необходимые для современной разработки приложений.</p> <empty-line/> <p>Исторически сложилось так, что контекст приложения Spring для связывания компонентов был связан с одним или несколькими XML-файлами, описывающими компоненты и их связь с другими компонентами. Например, следующий XML-код объявляет два bean-а InventoryService bean и ProductService bean, и привязку <emphasis>InventoryService </emphasis>bean в <emphasis>ProductService</emphasis> через аргументы конструктора:</p> <p><bean id="inventoryService" class="com.example.InventoryService" /> </p> <empty-line/> <p><bean id="productService" class="com.example.ProductService" /></p> <empty-line/> <p> <constructor-arg ref="inventoryService" /></p> <empty-line/> <p></bean></p> <empty-line/><empty-line/> <p>Однако в последних версиях Spring чаще используется конфигурация на основе Java. Следующий класс конфигурации на основе Java эквивалентен конфигурации XML:</p> <empty-line/><empty-line/> <p>@Configuration</p> <empty-line/> <p>public class ServiceConfiguration {</p> <empty-line/> <p> @Bean</p> <empty-line/> <p> public InventoryService inventoryService() {</p> <empty-line/> <p> return new InventoryService();</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Bean</p> <empty-line/> <p> public ProductService productService() {</p> <empty-line/> <p> return new ProductService(inventoryService());</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p>}</p> <empty-line/> <p> </p> <p>Аннотация <emphasis>@Configuration</emphasis> указывает Spring, что это класс конфигурации, который будет предоставлять bean-ы контексту приложения Spring. Методы класса конфигурации аннотируются <emphasis>@Bean</emphasis>, указывая, что объекты, которые они возвращают, должны быть добавлены как bean в контексте приложения (по умолчанию, их bean идентификаторы будут соответствовать именам методов, которые определяют их).</p> <empty-line/> <p>Конфигурация Java-based предлагает несколько преимуществ по сравнению с xml-конфигурацией, включая повышение безопасности и улучшение refactorability. Но даже при всем при этом явная настройка с помощью Java или XML необходима только в том случае, если Spring не может автоматически настроить компоненты.</p> <empty-line/> <p>Автоматическая конфигурация имеет свои корни в методах Spring известных как <emphasis>autowiring </emphasis>и <emphasis>component scanning</emphasis>. С помощью component scanning Spring может автоматически обнаруживать компоненты из classpath приложения и создавать их как bean-ы в контексте приложения Spring. С autowiring Spring автоматически объединяет компоненты с другими компонентами, от которых они зависят.</p> <empty-line/> <p>Совсем недавно, с введением Spring Boot, автоматическая настройка вышла далеко за рамки сканирования компонентов и <emphasis>autowiring</emphasis>. Spring Boot-это расширение Spring Framework, которое предлагает несколько улучшений производительности. Наиболее известным из этих усовершенствований является автоконфигурация, где Spring Boot может сделать разумные предположения о том, какие компоненты должны быть настроены и подключены друг к другу, на основе записей в classpath, переменных среды и других факторов.</p> <empty-line/> <p>Я хотел бы показать вам пример кода, демонстрирующего автоконфигурацию. Но я не могу. Видите ли, автоконфигурация очень похожа на ветер. Вы можете видеть последствия этого, но нет никакого кода, который я могу показать вам и сказать: "Смотрите! Вот пример автоконфигурации!” Такое случается, компоненты и функциональность без написания кода. Именно этот отсутствие кода имеет важное значение для автоконфигурации и делает ее такой замечательной.</p> <empty-line/> <p>Автоконфигурация Spring Boot значительно сократила объем явной конфигурации (будь то XML или Java), необходимой для построения приложения. Фактически, к тому времени, когда вы закончите пример в этой главе, у вас будет работающее приложение Spring, которое имеет только одну строку кода конфигурации Spring!</p> <empty-line/> <p>Spring Boot настолько улучшает Spring-разработку, что без него сложно представить разработку Spring-приложений. По этой причине в этой книге Spring и Spring Boot рассматриваются как одно и то же. Мы будем использовать Spring Boot, насколько это возможно, и явную конфигурацию только при необходимости. И, поскольку Spring XML configuration-это олдскульный способ работы с Spring, мы сосредоточимся в первую очередь на Java-конфигурации Spring.</p> <empty-line/> <p>Но хватит болтать, yakety-yak, и флудить. Название этой книги включает в себя фразу в действии, так что давайте двигаться, и вы можете начать писать свое первое приложение с Spring.</p> <p><strong>1.2 Инициализация приложения Spring</strong></p> <p>Благодаря ходу этой книги вы создадите Taco Cloud, онлайн-приложение для заказа самой замечательной еды, созданной человеком-такосом. Конечно, для достижения этой цели вы будете использовать Spring, Spring Boot и множество связанных библиотек и платформ.</p> <empty-line/> <p>Вы найдете несколько вариантов инициализации приложения Spring. Хотя я мог бы провести вас через шаги ручного создания структуры каталогов проекта и определения спецификации сборки, это потерянное время—время, которое лучше потратить на написание кода приложения. Таким образом вы собираетесь опереться на Spring Initializr для начальной загрузки приложения.</p> <empty-line/> <p>Spring Initializr-это веб-приложение на основе браузера и REST API, которое может создавать структуру проекта skeleton Spring, которую вы можете реализовать с любой функциональностью, которую вы хотите. Несколько способов использования Spring Initializr:</p> <p>Из веб-приложения на http://start.spring.io</p> <p>Из командной строки с помощью команды curl</p> <p>Из командной строки с помощью интерфейса командной строки Spring Boot</p> <p>При создании нового проекта с Spring Tool Suite</p> <p>При создании нового проекта с IntelliJ IDEA</p> <p>При создании нового проекта в NetBeans</p> <p>Вместо того, чтобы тратить несколько страниц этой главы, рассказывая о каждом из этих вариантов, я собрал эти детали в приложении. В этой главе и на протяжении всей этой книги я покажу вам, как создать новый проект, используя мой любимый вариант: поддержка Spring Initializr в Spring Tool Suite.</p> <empty-line/> <p>Как следует из названия, Spring Tool Suite-это фантастическая среда разработки Spring. Но он также предлагает удобную функцию Spring Boot Dashboard, которая (по крайней мере, на момент написания этой статьи) недоступна ни в одном из других вариантов IDE.</p> <empty-line/> <p>Если вы не являетесь пользователем Spring Tool Suite, это нормально; мы все еще можем быть друзьями. Перейдите к приложению и замените наиболее подходящий вариант инициализации инструкциями в следующих разделах. Но знайте, что в этой книге я могу время от времени ссылаться на функции, специфичные для Spring Tool Suite, такие как Spring Boot Dashboard. Если вы не используете Spring Tool Suite, вам нужно будет адаптировать эти инструкции чтобы соответствовать вашей идее.</p> <p><strong>1.2.1 Инициализация Spring проекта с Spring Tool Suite</strong></p> <p>Чтобы начать работу с новым проектом Spring в Spring Tool Suite, перейдите в меню File и выберите New, а затем Spring Starter Project. На рисунке 1.2 показана структура меню.</p> <empty-line/> <p><image l:href="#img_2"/></p> <p>Рисунок 1.2 запуск нового проекта с Инициализатором в Spring Tool Suite</p> <p>После выбора Spring Starter Project появится диалоговое окно мастера создания проекта (рис. 1.3). На первой странице мастера запрашиваются общие сведения о проекте, такие как имя проекта, описание и другие важные сведения. Если вы знакомы с содержанием Maven pom.xml-файл, вы будете распознавать большинство полей как элементы, которые в конечном итоге в спецификации сборки Maven. Для приложения Taco Cloud заполните диалоговое окно, как показано на рисунке 1.3, и нажмите Next.</p> <empty-line/> <p><image l:href="#img_3"/></p> <p>Рис. 1.3 указания общей информации о проекте для приложения Taco Cloud</p> <p>Следующая страница мастера позволяет выбрать зависимости для добавления в проект (см. рисунок 1.4). Обратите внимание, что в верхней части диалогового окна можно выбрать версию Spring Boot, на которой будет основываться проект. По умолчанию используется самая последняя доступная версия. Это, как правило, хороший вариант, если вам не нужно ориентироваться на другую версию.</p> <empty-line/> <p>Что касается самих зависимостей, вы можете либо развернуть различные разделы и искать нужные зависимости вручную, либо искать их в поле поиска в верхней части списка доступных. Для приложения Taco Cloud установите зависимости, показанных на рисунке 1.4.</p> <p><image l:href="#img_4"/></p> <p>Рисунок 1.4 выбор первоначальных зависимостей</p> <p>На этом этапе можно нажать кнопку Finish, чтобы создать проект и добавить его в рабочую область. Но если вы чувствуете себя более уверенным, нажмите кнопку Next еще раз, чтобы увидеть последнюю страницу мастера создания начального проекта, как показано на рисунке 1.5.</p> <p><image l:href="#img_5"/></p> <p>Рисунок 1.5 Дополнительные настройки Инициализации</p> <p>По умолчанию мастер создания проекта вызывает Spring Initializr по адресу http://start.spring.io для генерации проекта. Как правило, нет необходимости переопределять это значение по умолчанию, поэтому можно нажать кнопку Finish на второй странице мастера. Но если по какой-то причине вы размещаете свой собственный клон Initializr (возможно, локальная копия на вашем собственном компьютере или настроенный клон, работающий внутри брандмауэра вашей компании), то вы можете изменить поле базовый Url, чтобы указать на ваш экземпляр Initializr, прежде чем нажать кнопку Finish.</p> <empty-line/> <p>После нажатия кнопки Finish проект загружается из Initializr и загружается в рабочую область. Подождите несколько минут, пока он загрузится и соберется, а затем вы сможете начать разработку функциональности приложения. Но сначала давайте взглянем на то, что создал инициализатор.</p> <p><strong>1.2.2 Изучение структуры проекта Spring</strong></p> <p>После загрузки проекта в IDE откройте его, чтобы увидеть, что он содержит. На рисунке 1.6 показан открытый проект Taco Cloud в Spring Tool Suite.</p> <empty-line/> <p><image l:href="#img_6"/></p> <empty-line/> <p>Рисунок 1.6 начальная структура проекта Spring, как показано в Spring Tool Suite</p> <p>Вы можете увидеть, что это типичная Maven или Gradle структура проекта, где исходники приложения находится в src/main/java, код -тестовом находится под в src/test/java, а не в JAVA-ресурсах, которые расположены в src/main/resources. В рамках этой структуры проекта, вы должны знать элементы: </p> <p>mvnw и mvnw.cmd-это скрипты обертки Maven. Эти сценарии можно использовать для построения проекта, даже если на компьютере не установлен Maven.</p> <p>pom.xml-это спецификация сборки Maven. Мы рассмотрим это глубже через минуту.</p> <p>TacoCloudApplication.java-это основной класс Spring Boot, который запускает проект. Мы рассмотрим этот класс поближе через минуту. </p> <p>-application.properties - этот файл изначально пуст, но предлагает место, где можно указать свойства конфигурации. Мы немного повозимся с этим файлом в этой главе, но я отложу подробное объяснение свойств конфигурации до главы 5.</p> <p>static - эта папка, где вы можете разместить любой статический контент (изображения, таблицы стилей, JavaScript, и так далее), который вы хотите использовать в браузере. Изначально она пуста.</p> <p>templates - в этой папке вы разместите файлы шаблонов, которые будут использоваться для отображения содержимого в браузере. Изначально она пуста, но вскоре вы добавите шаблон Thymeleaf.</p> <p>TacoCloudApplicationTests.java - -это простой тестовый класс, который обеспечивает успешную загрузку контекста приложения Spring. По мере разработки приложения в него будут добавляться дополнительные тесты.</p> <p>По мере развития проекта Taco Cloud, вы будите наполнять эту структуру проекта -Java-кодом, изображениями, таблицами стилей, тестами и другими сопутствующими материалами, которые сделают ваш проект более полным. Но давайте копнем немного глубже в некоторые из пунктов, которые предоставил Spring Initializr.</p> <p>Изучение спецификации сборки</p> <p>При заполнении формы -Initializr вы указали, что ваш проект должен быть построен с помощью Maven. Поэтому Spring Initializr построил для вас pom.xml-файл уже заполненный выбранными параметрами. Следующий листинг показывает весь pom.xml - файл, предоставленный инициализатором.</p> <p>Листинг 1.1 первоначальная спецификация сборки Maven</p> <p><?xml version="1.0" encoding="UTF-8"?></p> <p><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/xsd/maven-4.0.0.xsd"> </p> <p><modelVersion>4.0.0</modelVersion></p> <p><groupId>sia</groupId> </p> <p><artifactId>taco-cloud</artifactId> </p> <p><version>0.0.1-SNAPSHOT</version></p> <p><packaging>jar</packaging> <!------JAR packaging --></p> <p><name>taco-cloud</name> </p> <p><description>Taco Cloud Example</description></p> <p> <parent></p> <p><groupId>org.springframework.boot</groupId></p> <p><artifactId>spring-boot-starter-parent</artifactId></p> <p><version>2.0.4.RELEASE</version> <!------- Spring Boot version --></p> <p><relativePath/> <!-- lookup parent from repository --></p> <p></parent></p> <p> <properties></p> <p><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></p> <p><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding></p> <p><java.version>1.8</java.version> </p> <p></properties></p> <p><dependencies></p> <p><dependency></p> <p><groupId>org.springframework.boot</groupId></p> <p><artifactId>spring-boot-starter-thymeleaf</artifactId></p> <p></dependency></p> <p><dependency> </p> <p><groupId>org.springframework.boot</groupId></p> <p><artifactId>spring-boot-starter-web</artifactId></p> <p></dependency></p> <p><dependency> </p> <p><groupId>org.springframework.boot</groupId> </p> <empty-line/> <p> <artifactId>spring-boot-devtools</artifactId> </p> <p><scope>runtime</scope></p> <p></dependency></p> <p><dependency> </p> <p><groupId>org.springframework.boot</groupId></p> <empty-line/> <p><artifactId>spring-boot-starter-test</artifactId> </p> <p><scope>test</scope></p> <p></dependency></p> <p><dependency> </p> <p><groupId>org.seleniumhq.selenium</groupId> </p> <p><artifactId>selenium-java</artifactId> </p> <p><scope>test</scope></p> <p></dependency></p> <p><dependency> </p> <p><groupId>org.seleniumhq.selenium</groupId></p> <empty-line/> <p><artifactId>htmlunit-driver</artifactId> </p> <p><scope>test</scope> </p> <p></dependency> </p> <p></dependencies></p> <p> <build></p> <p><plugins></p> <p> <plugin> <!-- Spring Boot plugin --></p> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-maven-plugin</artifactId> </p> <p> </plugin></p> <p> </plugins> </p> <p> </build></p> <p></project></p> <p>Первый примечательный пункт в pom.xml-файле является элемент <packaging>. Вы выбрали сборку приложения в виде исполняемого файла JAR, а не файла WAR. Это, вероятно, один из самых любопытных вариантов, которые вы сделаете, особенно для веб-приложения. В конце концов, традиционные веб-приложения Java упаковываются в виде WAR-файлов, оставляя JAR-файлы предпочтительной упаковкой для библиотек и экзотического настольного UI-приложения.</p> <empty-line/> <p>Выбор упаковывать JAR для облако-ориентированных приложений правильный выбор. В то время как файлы WAR идеально подходят для развертывания на традиционном сервере приложений Java, они не подходят для большинства облачных платформ. Хотя некоторые облачные платформы (например, Cloud Foundry) способны развертывать и запускать файлы WAR, все облачные платформы Java способны запускать исполняемый файл JAR. Поэтому Spring Initializr по умолчанию использует jar-упаковку, если не указано иное.</p> <empty-line/> <p>Если вы планируете развернуть приложение на традиционном сервере приложений Java, вам потребуется выбрать War packaging и включить класс веб-инициализатора. Более подробно мы рассмотрим создание файлов WAR в главе 2.</p> <empty-line/> <p>Затем обратите внимание на элемент <parent> и, более конкретно, его дочерний элемент <version>. Это указывает, что родительским POM проекта является spring-boot-starter-parent. Помимо прочего, Родительский POM обеспечивает управление зависимостями для нескольких библиотек, обычно используемых в проектах Spring. Для библиотек, охватываемых родительским POM, указывать версию не нужно, так как она наследуется от родительской. В версии 2.0.4.RELEASE, указывается, что вы используете Spring Boot 2.0.4 и, таким образом, унаследуете управление зависимостями, как определено этой версией Spring Boot.</p> <empty-line/> <p>Хотя мы говорим о зависимостях, обратите внимание, что есть три зависимости, объявленные в элементе <dependencies>. Первые две должны выглядеть несколько знакомыми. Они напрямую соответствуют зависимостям Web и Thymeleaf, выбранным до нажатия кнопки Готово в мастере создания проекта Spring Tool Suite. Третья зависимость предоставляет множество полезных возможностей тестирования. Вам не нужно было устанавливать флажок, чтобы он был включен, потому что Spring Initializr предполагает (надеюсь, правильно), что вы будете писать тесты.</p> <empty-line/> <p>Можно также заметить, что все три зависимости имеют слово <emphasis>starter</emphasis> в идентификаторе артефакта. Зависимости Spring Boot starter отличаются тем, что обычно сами по себе не имеют кода библиотеки, а вместо этого временно извлекают другие библиотеки. Эти стартовые зависимости предлагают три основных преимущества: </p> <p>Файл сборки будет значительно меньше и проще в управлении, так как вам не нужно будет объявлять зависимость от каждой библиотеки, которая вам может понадобиться. </p> <p>Вы можете думать о своих зависимостях с точки зрения возможностей, которые они предоставляют, а не с точки зрения имен библиотек. Если вы разрабатываете веб-приложение, вы добавите зависимость web starter, а не список отдельных библиотек, которые позволяют писать веб-приложение. </p> <p>Вы освобождены от бремени беспокоиться о версиях библиотеки. Вы можете быть уверены в том, что для данной версии Spring Boot версии библиотеки, введенные транзитивно, будут совместимы. Вам нужно только беспокоиться о том, какую версию Spring Boot вы используете.</p> <p>Наконец, спецификация сборки заканчивается плагином Spring Boot. Этот плагин выполняет несколько важных функций: </p> <p>Это является заданием Maven, которое позволяет запускать приложение с помощью Maven. Вы попробуете это в разделе 1.3.4.</p> <p>Это гарантирует, что все библиотеки зависимостей включены в исполняемый файл JAR и доступны в пути к классам среды выполнения. </p> <p>Это создает файл манифеста в файле JAR, который обозначает класс начальной загрузки (TacoCloudApplication, в вашем случае) как основной класс для исполняемого JAR.</p> <p>Говоря о классе начальной загрузки (bootstrap), давайте откроем его и посмотрим поближе.</p> <p> </p> <p>Начальная загрузка приложения</p> <p> </p> <p>Поскольку вы будете запускать приложение из исполняемого файла JAR, важно иметь основной класс, который будет выполняться при запуске этого файла JAR. Вам также потребуется по крайней мере минимальный объем конфигурации Spring для начальной загрузки приложения. Это то, что вы найдете в классе TacoCloudApplication, показанном в следующем списке.</p> <p> </p> <p>Листинг 1.2 Taco Cloud bootstrap class</p> <p> </p> <p>package tacos;</p> <p> </p> <p>import org.springframework.boot.SpringApplication;</p> <empty-line/> <p>import org.springframework.boot.autoconfigure.SpringBootApplication;</p> <empty-line/><empty-line/> <p>@SpringBootApplication</p> <empty-line/> <p>public class TacoCloudApplication {</p> <empty-line/> <p> public static void main(String[] args) {</p> <empty-line/> <p> SpringApplication.run(TacoCloudApplication.class, args);</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p> </p> <p>Одна из самых мощных строк кода также является одной из самых коротких. Аннотация @SpringBootApplication ясно указывает, что это приложение Spring Boot. Но в @SpringBootApplication есть больше, чем кажется на первый взгляд.</p> <p> </p> <p>@SpringBootApplication - это составное приложение, которое объединяет три других аннотации:</p> <p> </p> <p>- @SpringBootConfiguration - обозначает, что этот класс является классом конфигурации. Несмотря на то, что в классе еще не так много конфигурации, при необходимости можно добавить Java-based Spring Framework конфигурацию. Эта аннотация является, фактически, специализированной формой аннотации @Configuration. </p> <p> </p> <p>- @EnableAutoConfiguration - включает автоматическое Spring Boot конфигурирование. Мы поговорим об автоконфигурации позже. На данный момент знайте, что эта аннотация говорит Spring Boot автоматически настраивать любые компоненты, которые, по его мнению, вам понадобятся.</p> <p> </p> <p>- @ComponentScan - включает сканирование компонентов. Это позволяет объявлять другие классы с аннотациями, такими как @Component, @Controller, @Service и другими, чтобы Spring автоматически обнаруживала их и регистрировала как компоненты в контексте приложения Spring.</p> <p> </p> <p>Другой важной частью <emphasis>TacoCloudApplication</emphasis> является метод <emphasis>main()</emphasis>. Это метод, который будет выполняться при выполнении файла JAR. По большей части, этот метод шаблонный код; каждое приложение Spring Boot, которое вы пишете, будет иметь метод, аналогичный или идентичный этому (за исключением различий в именах классов).</p> <empty-line/> <p>Метод main () вызывает статический метод run () класса SpringApplication, который выполняет фактическую загрузку приложения, создавая контекст приложения Spring. Два параметра, переданные методу run (), являются конфигурационным классом и аргументы командной строки. Хотя это не обязательно, что конфигурационный класс, передаваемый в run(), будет таким же, как класс начальной загрузки, это наиболее удобно и стандартный выбор.</p> <p> </p> <p>Скорее всего, вам не нужно будет ничего менять в классе начальной загрузки. Для простого приложения, вы можете найти его удобным для настройки одного или двух других компонентов в классе начальной загрузки, но для большинства приложений, вам лучше создать отдельный класс конфигурации для всего, что не настроено автоматически. Вы определите несколько конфигураций на протяжении всего курса этой книги, так что следите за подробностями.</p> <p> </p> <p>ТЕСТИРОВАНИЕ ПРИЛОЖЕНИЯ</p> <p> </p> <p>Тестирование является важной частью разработки программного обеспечения. Признавая это, Spring Инициализатор предоставляет тестовый класс для начала работы. Ниже приведен базовый уровень тестового класса.</p> <p>Листинг 1.3 Базовый тест приложения</p> <p>package tacos;</p> <empty-line/> <p>import org.junit.Test;</p> <empty-line/> <p>import org.junit.runner.RunWith;</p> <empty-line/> <p>import org.springframework.boot.test.context.SpringBootTest;</p> <empty-line/> <p>import org.springframework.test.context.junit4.SpringRunner;</p> <empty-line/><empty-line/> <p> @RunWith(SpringRunner.class) /*Использование Spring runner*/</p> <empty-line/> <p>@SpringBootTest /* String Boot тест*/</p> <empty-line/> <p>public class TacoCloudApplicationTests {</p> <empty-line/> <p> @Test /*Метод теста*/</p> <empty-line/> <p> public void contextLoads() {</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>В тестах TacoCloudApplicationTests мало что можно увидеть: единственный метод теста в классе пуст. Тем не менее, этот тестовый класс действительно выполняет существенную проверку, чтобы гарантировать, что контекст приложения Spring может быть загружен успешно. При внесении каких-либо изменений, препятствующих созданию Spring applicationcontext, этот тест завершается неудачей, и можно реагировать путем устранения проблемы.</p> <p>Также обратите внимание на класс с аннотацией @RunWith (SpringRunner.класс.) @RunWith является аннотацией JUnit, обеспечивая тестовый runner, помогающий JUnit в выполнении теста. Думайте об этом как о применении плагина к JUnit для обеспечения пользовательского поведения тестирования. В этом случае JUnit получает SpringRunner, тестовый модуль, предоставляемый Spring, который обеспечивает создание контекста приложения Spring, с которым будет выполняться тест.</p> <p>ТЕСТ-RUNNER ПОД ДРУГИМ ИМЕНЕМ…</p> <p>Если вы уже знакомы с написанием тестов Spring или, возможно, видели какие-то реальные классы тестов Spring, вы, возможно, видели тестовый runner с именем SpringJUnit4ClassRunner. SpringRunner является псевдонимом SpringJUnit4ClassRunner и был введен в Spring 4.3, чтобы удалить связь с определенной версией JUnit (например, JUnit 4). И нет никаких сомнений в том, что псевдоним легче читать и печатать.</p> <p>@SpringBootTest говорит JUnit что, запуск тестов должен осуществляться с использованием Spring Boot. Сейчас достаточно считать, что этот тест класса эквивалентно вызову SpringApplication.run() в методе main(). В течение этой книги вы увидите @SpringBootTest несколько раз, и мы раскроем часть его силы.</p> <p>Наконец, есть сам метод тестирования. Хотя @RunWith(SpringRunner.class) и @SpringBootTest поручено загрузить контекст приложения Spring для теста, они не будут иметь ничего общего, если нет никаких методов тестирования. Даже без каких-либо объявлений или кода, этот пустой метод тестирования предложит двум аннотациям выполнить свою работу и загрузить контекст приложения Spring. Если при этом возникают какие-либо проблемы, тест не выполняется.</p> <p>На этом мы завершили обзор кода, предоставленного Spring Initializr. Вы видели некоторые стандартные основы, которые можно использовать для разработки приложения Spring, но вы до сих пор не написали ни одной строки кода. Теперь пришло время запустить IDE, убрать пыль с клавиатуры и добавить пользовательский код в приложение Taco Cloud.</p> <p>Написание приложения Spring</p> <p>Так как, вы только начинаете, мы начнем с относительно небольшого изменения в приложении Taco Cloud, но такого, которое продемонстрирует большую полезность Spring. Кажется уместным, что, поскольку вы только начинаете, первая функция, которую вы добавите в приложение Taco Cloud, - это домашняя страница. Чтобы добавить главную страницу, вы создадите два artifact: </p> <p>контроллер-класс, который обрабатывает запросы для главной страницы</p> <p>визуальный шаблона, который определяет, как выглядит домашняя страница</p> <p>И помня как важно тестирование, вы также написать простой тестовый класс для проверки домашней страницы. Но сначала о главном ... давайте напишем контроллер.</p> <p><strong>1</strong><strong>.3.1 Обработка веб-запросов</strong></p> <p> </p> <p>Spring поставляется с мощным веб-фреймворком, известным как Spring MVC. В центре Spring MVC находится концепция контроллера, класса, который обрабатывает запросы и отвечает какой-либо информацией. В случае обращения веб-приложения, контроллер отвечает, при необходимости заполняя данные модели и передавая запрос представлению для создания HTML-кода, возвращаемого браузеру. Вы узнаете много нового о Spring MVC в главе 2. Но пока вы напишете простой класс контроллера, который обрабатывает запросы корневого пути (например,/) и пересылает эти запросы в представление домашней страницы без заполнения данных модели. Ниже приведен простой класс контроллера.</p> <p> </p> <p>Листинг 1.4 контроллер домашней страницы</p> <p> </p> <p>package tacos;</p> <p> </p> <p>import org.springframework.stereotype.Controller;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <empty-line/> <p>@Controller /*Контроллер*/</p> <empty-line/> <p>public class HomeController {</p> <empty-line/><empty-line/> <p> @GetMapping("/") /*Обрабатывает запросы корневого пути */</p> <empty-line/> <p> public String home() {</p> <empty-line/> <p> return "home"; /*Возвращает имя представления*/</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p> </p> <p>Как вы можете видеть, этот класс аннотируется @Controller. Сам по себе @Controller ничего не делает. Его основное назначение-идентифицировать этот класс как компонент для сканирования компонентов. Поскольку HomeController аннотируется @Controller, при сканирование компонентов Spring автоматически обнаруживает его и создает экземпляр HomeController в качестве компонента в контексте приложения Spring.</p> <p> </p> <p>Фактически, несколько различных аннотаций (включая @Component, @Service и @Repository) служат цели, подобной @Controller. Вы могли бы так же эффективно аннотировать HomeController с любой из этих других аннотаций, и он все равно работал бы так же. Выбор @Controller, однако, более описателен роли этого компонента в приложении.</p> <p> </p> <p>Метод home() так же прост, как методы контроллера. Он аннотируется @GetMapping, чтобы указать, что если HTTP GET запрос получен для корневого пути /, то этот метод должен обработать такой запрос. Все что он делает - это возвращение String значения “home”.</p> <p> </p> <p>Это значение интерпретируется как логическое имя представления. Реализация этого представления зависит от нескольких факторов, но поскольку Thymeleaf находится в classpath, можно для этого задать шаблон с помощью Thymeleaf.</p> <p> </p> <p>ПОЧЕМУ ИМЕННО THYMELEAF?</p> <p> </p> <p>Вы можете быть удивлены, почему мы выбрали Thymeleaf для шаблонизатора. Почему не JSP? Почему не FreeMarker? Почему не один из нескольких других вариантов?</p> <p>Проще говоря, я должен был выбрать что-то, и я люблю Thymeleaf и вообще предпочитаю его над всеми другими вариантами. И хотя JSP может показаться очевидным выбором, есть некоторые проблемы, которые необходимо преодолеть при использовании JSP с Spring Boot. Я не хотел спускаться в кроличью нору в первой главе. Держись. Мы рассмотрим другие варианты шаблонов, включая JSP, в главе 2.</p> <p>Имя шаблона является производным от логическое имени представления, предварив его с префиксом /templates/ и .HTML. Результирующий путь для шаблона - /templates/home.HTML. Поэтому вам нужно будет разместить шаблон в вашем проекте в /src/main/resources/templates/home.HTML. Давайте создадим этот шаблон сейчас.</p> <p><strong>1.3.2 Задание представления</strong></p> <p>В интересах сохранения простоты домашней страницы, она не должно делать ничего, кроме как приветствовать пользователей на сайте. В следующем листинге показан базовый шаблон Thymeleaf, определяющий домашнюю страницу Taco Cloud.</p> <p>Листинг 1.5 Шаблон домашней страницы Taco Cloud</p> <p><!DOCTYPE html></p> <empty-line/> <p><html xmlns="<a l:href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>"</p> <empty-line/> <p> xmlns:th="<a l:href="http://www.thymeleaf.org/">http://www.thymeleaf.org</a>"></p> <empty-line/> <p> <head></p> <empty-line/> <p> <title>Taco Cloud</title></p> <empty-line/> <p> </head></p> <empty-line/> <p> <body></p> <empty-line/> <p><h1>Welcome to...</h1></p> <empty-line/> <p><img th:src="@{/images/TacoCloud.png}"/></p> <empty-line/> <p> </body></p> <empty-line/> <p></html></p> <p>Нечего обсуждать по поводу этого шаблона. Единственной заметной строкой кода является строка с тегом <img> для отображения логотипа Taco Cloud. Он использует атрибут Thymeleaf th:src и @{...} выражение для ссылки на изображения с контекст-относительным путем. Кроме этой особенности, это не намного больше, чем страница Hello World.</p> <p>Но давайте поговорим об этой картинке немного подробнее. Я оставлю это на вас, чтобы определить логотип Taco Cloud, который вам нравится. Вам нужно будет убедиться, что вы разместите его в нужном месте в проекте.</p> <p>Изображения есть ссылка с контексто-относительным путем /images/TacoCloud.png. Как вы помните из нашего обзора структуры проекта, статическое содержимое, такое как изображения, хранится в папке/src/main/resources /static. Это означает, что изображение логотипа Taco Cloud также должно находиться в проекте по адресу / src/main/resources/static/images/TacoCloud.png.</p> <p>Теперь, когда у вас есть контроллер для обработки запросов для главной страницы и шаблон для отображения домашней страницы, вы почти готовы, чтобы запустить приложение и увидеть его в действии. Но сначала давайте посмотрим, как можно написать тест контроллера.</p> <p>1.3.3 Тестирование контроллера</p> <p>Тестирование веб-приложений может быть сложным при утверждении содержимого HTML-страницы. К счастью, Spring поставляется с мощной тестовой поддержкой, которая упрощает тестирование веб-приложения. Для целей домашней страницы вы напишете тест, сравнимый по сложности с самой домашней страницей. Ваш тест выполнит HTTP-запрос GET для корневого пути / и ожидает успешного результата, когда имя представления является домашним, а результирующее содержимое содержит фразу " Добро пожаловать...”.</p> <p>Листинг 1.6 Тест для контроллера страницы</p> <p>package tacos;</p> <p>import static org.hamcrest.Matchers.containsString;</p> <empty-line/> <p>import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;</p> <empty-line/> <p>import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;</p> <empty-line/> <p>import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;</p> <empty-line/> <p>import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view;</p> <empty-line/> <p>import org.junit.Test; import org.junit.runner.RunWith;</p> <empty-line/> <p>import org.springframework.beans.factory.annotation.Autowired;</p> <empty-line/> <p>import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;</p> <empty-line/> <p>import org.springframework.test.context.junit4.SpringRunner;</p> <empty-line/> <p>import org.springframework.test.web.servlet.MockMvc;</p> <empty-line/><empty-line/> <p>@RunWith(SpringRunner.class)</p> <empty-line/> <p>@WebMvcTest(HomeController.class) /*Веб-тест для HomeController*/</p> <empty-line/> <p>public class HomeControllerTest {</p> <empty-line/> <p> </p> <empty-line/> <p> @Autowired</p> <empty-line/> <p> private MockMvc mockMvc; /*Внедряет MockMvc*/</p> <p> @Test</p> <empty-line/> <p> public void testHomePage() throws Exception {</p> <empty-line/> <p> mockMvc.perform(get("/")) /*Выполняет GET */</p> <empty-line/> <p> .andExpect(status().isOk()) /*-Ожидает HTTP 200*/</p> <empty-line/> <p> .andExpect(view().name("home")) /*Ожидает home*/</p> <empty-line/> <p> .andExpect(content().string( /*Welcome to...*/</p> <empty-line/><empty-line/> <p> containsString("Welcome to..."))); }</p> <empty-line/> <p>}</p> <p>Первое, что вы могли бы заметить в этом тесте, это то, что написанное немного отличается от класса TacoCloudApplicationTests в части аннотаций, примененных к нему. Вместо разметки @SpringBootTest, HomeControllerTest аннотируется @WebMvcTest. Это специальная тестовая аннотация, предоставляемая Spring Boot, которая организует выполнение теста в контексте приложения Spring MVC. Более конкретно, в этом случае, он организует для HomeController регистрацию с использованием Spring MVC, так что вы можете отправлять запросы из него.</p> <p>@WebMvcTest также настраивает поддержку Spring для тестирования Spring MVC.</p> <p>Метод testHomePage() определяет тест, который вы хотите выполнить на главной странице. Он начинается с объекта MockMvc для выполнения запроса HTTP GET для / (корневой путь). К этому запросу устанавливаются следующие ожидания: </p> <p>ответ должен иметь состояние HTTP 200 (OK). </p> <p>view должен иметь логическое название home. </p> <p>Отображаемое представление должно содержать текст "Welcome to...”</p> <p>Если после того, как объект MockMvc выполняет запрос, любое из этих ожиданий не выполняется, то тест завершается неудачей. Но ваш контроллер и шаблон представления написаны, чтобы удовлетворить эти ожидания, поэтому тест должен пройти удачно — или, по крайней мере, с некоторым оттенком зеленого, указывающим на прохождение теста.</p> <p>Контроллер был написан, шаблон представления создан, и у вас есть тест. Похоже, что вы успешно реализовали домашнюю страницу. Но даже несмотря на то, что тест проходит, есть что-то более важное, визуальный результат в браузере. В конце концов, именно это клиенты Taco Cloud увидят. Давайте создадим приложение и запустим его.</p> <p>1.3.4 Создание и запуск приложения</p> <p>Так же, как существует несколько способов инициализации приложения Spring, существует несколько способов его запуска.</p> <p>Так как для инициализации и работы над проектом вы выбрали Spring Tool Suite, у вас есть удобная функция Spring Boot Dashboard, которая поможет запустить приложение в среде IDE. Панель мониторинга Spring Boot отображается в виде вкладки, обычно в левом нижнем углу окна IDE. На рисунке 1.7 показан аннотированный снимок экрана панели управления Spring Boot Dashboard.</p> <p>Я не хочу тратить много времени на все, что делает Spring Boot Dashboard, хотя рисунок 1.7 охватывает некоторые из самых полезных деталей. Сейчас важно знать, как использовать его для запуска приложения Taco Cloud. Убедитесь, что приложение taco-cloud выделено в списке проектов (это единственное приложение, показанное на рисунке 1.7), а затем нажмите кнопку start (самая левая кнопка с зеленым треугольником и красным квадратом). Приложение должно запуститься.</p> <p><image l:href="#img_7"/></p> <p>Рисунок 1.7 основные моменты панели Spring Boot Dashboard</p> <empty-line/><empty-line/> <p> </p> <p>Запуск/перезапуск выбранного проекта</p> <p>Запуск/перезапуск выбранного проекта в режиме отладки</p> <p>Остановить выбранный проект</p> <p>Открывает веб-браузер с запущенным приложении</p> <p>Открывает консоль запущенного приложения</p> <p>Список проектов Spring Boot</p> <p>Указывает, что в проекте включены средства разработки Spring Boot</p> <p>Указывает, что запущенное приложение прослушивает порт 8080</p> <p> </p> <p>При запуске приложения вы увидите, как в консоли пролетает Spring ASCII art, а затем некоторые записи журнала, описывающие шаги при запуске приложения. Прежде чем журнал остановится, вы увидите запись в журнале о том, что Tomcat запущен на портах: 8080 (http), что означает, что вы готовы указать свой веб-браузер на главной странице, чтобы увидеть плоды своего труда.</p> <p> </p> <p>Подожди минутку. Tomcat запустился? Вы развернули приложение в Tomcat?</p> <p> </p> <p>Приложения Spring Boot, как правило, приносят с собой все, что им нужно, и их не нужно развертывать на каком-либо сервере приложений. Вы никогда не развертывали приложение в Tomcat ... Tomcat является частью вашего приложения! (Я опишу детали того, как Tomcat стал частью вашего приложения в разделе 1.3.6.)</p> <p> </p> <p>Теперь, когда приложение запущено, укажите в веб-браузере http://localhost:8080 (или нажмите кнопку Глобус на панели Spring Boot Dashboard), и вы увидите что-то вроде рисунка 1.8. Ваши результаты могут отличаться, если вы разработали свой собственный логотип. Но это не должно сильно отличаться от того, что вы видите на рисунке 1.8.</p> <p> </p> <p><image l:href="#img_8"/></p> <p>Рисунок 1.8 Начальная страница Taco Cloud</p> <empty-line/><empty-line/> <p> </p> <p>Вроде особо не на что смотреть. Но это не совсем книга по графическому дизайну. Скромной главной страницы более чем достаточно.</p> <empty-line/> <p>Одна вещь, которую я не рассмотрел до сих пор это DevTools. Вы выбрали его в качестве зависимости при инициализации проекта. Это отражено в зависимостях в pom.xml файле. И Spring Boot Dashboard даже показывает, что в проект включен DevTools. Но что такое DevTools и что он делает для вас? Давайте рассмотрим несколько наиболее полезных функций DevTools.</p> <p><strong>1.3.5 Знакомство с Spring Boot DevTools</strong></p> <p>Как следует из названия, DevTools предоставляет разработчикам Spring несколько удобных инструментов для разработки. Среди них </p> <p>автоматическая перезагрузки приложения если код меняется</p> <p>автоматическое обновление приложения в браузера когда обновляются ресурсы предназначенные для браузерного отображения (такие как шаблоны, Скрипты, таблицы стилей и т. д.)</p> <p>автоматическое отключение кэша шаблона </p> <p>сборка в Н2 консоли, если используется Н2 БД</p> <p>Важно понимать, что DevTools это не плагин IDE, т.е. не требуют использования конкретных IDE. Он одинаково хорошо работает в Spring Tool Suite, IntelliJ IDEA и NetBeans. Кроме того, поскольку он предназначен только для целей разработки, он достаточно умен, чтобы отключить себя при развертывании в рабочей среде. (Мы обсудим, как это делается, когда вы приступите к развертыванию приложения в главе 19.) Теперь давайте сосредоточимся на наиболее полезных функциях Spring Boot DevTools, начиная с автоматического перезапуска приложения.</p> <p>Автоматический перезапуск приложения</p> <p>С помощью DevTools в рамках вашего проекта вы сможете вносить изменения в код Java и файлы свойств в проекте и видеть, как эти изменения применяются почти сразу.</p> <p>DevTools отслеживает изменения, и когда он видит, что что-то изменилось, он автоматически перезапустить приложение.</p> <p>Точнее, когда DevTools запущен, приложение загружается в два отдельных загрузчика класса в виртуальной машине Java (JVM). Один загрузчик класса загружается с вашим кодом Java, файлами свойств и почти всем, что находится в src/main/path проекта. Это элементы, которые могут часто изменяться. Другой класс loader загружается библиотеками зависимостей, которые вряд ли будут меняться так часто.</p> <p>При обнаружении изменения DevTools перезагружает только загрузчик классов, содержащий код проекта, и перезапускает контекст приложения Spring, но оставляет другой загрузчик классов и JVM нетронутыми. Хотя эта стратегия и тонкая, она позволяет немного сократить время, необходимое для запуска приложения.</p> <p>Недостатком этой стратегии является то, что изменения зависимостей будут недоступны при автоматическом перезапуске. Это происходит потому, что загрузчик классов, содержащий библиотеки зависимостей, не перезагружается автоматически. Это означает, что каждый раз, когда вы добавляете, изменяете или удаляете зависимость в спецификации сборки, вам нужно будет выполнить жесткий перезапуск приложения, чтобы эти изменения вступили в силу.</p> <p>АВТОМАТИЧЕСКОЕ ОБНОВЛЕНИЕ БРАУЗЕРА И ОТКЛЮЧЕНИЕ КЭША ШАБЛОНОВ</p> <p>По умолчанию параметры шаблона, такие как Thymeleaf и FreeMarker, настроены для кэширования результатов синтаксического анализа шаблона, так чтобы шаблоны не нужно было анализировать с каждым запросом, который они обслуживают. Это хорошо для продакшена.</p> <p>Кэшированные шаблоны, однако, мешают во время разработки. Кэшированные шаблоны делают невозможным внесение изменений в шаблоны во время работы приложения и просмотр результатов после обновления браузера. Даже если вы внесли изменения, кэшированный шаблон будет использоваться до перезапуска приложения.</p> <p>DevTools устраняет эту проблему, автоматически отключая кэширование всех шаблонов. Внесите столько изменений, сколько вы хотите, в свои шаблоны и проверьте их сразу обновив браузер.</p> <p>Но если вы похожи на меня, вы даже не хотите обременяться усилиями нажатия кнопки обновления браузера. Было бы намного лучше, если бы вы могли внести изменения и сразу увидеть результаты в браузере. К счастью, в DevTools есть что-то особенное для тех из нас, кому лень нажимать кнопку обновления.</p> <p>Когда DevTools запущен, он автоматически включает LiveReload (http://livereload.com/) сервер вместе с вашим приложением. Сам по себе сервер LiveReload не очень полезен. Но в сочетании с соответствующим плагином браузера LiveReload он заставляет ваш браузер автоматически обновляться при внесении изменений в шаблоны, изображения, таблицы стилей, JavaScript и т. д.—фактически, почти все, что в конечном итоге отправляется в ваш браузер.</p> <p>LiveReload имеет плагины для браузеров Google Chrome, Safari и Firefox. ((Сорри, Internet Explorer и Edge фанаты)) Посетите http://livereload.com/extensions/ чтобы найти информацию о том, как установить LiveReload для Вашего браузера.</p> <p>Сборка в H2 консоле</p> <p>Хотя ваш проект еще не использует базу данных, это изменится в главе 3. Если вы решите использовать базу данных H2 для разработки, DevTools также автоматически активирует консоль H2, доступ к которой можно получить из веб-браузера. Вам нужно только указать в веб-браузере http://localhost:8080/h2-console чтобы получить представление о данных, с которыми работает приложение.</p> <p>На данный момент Вы написали полное, хотя и простое, Spring приложение. Вы будете расширять его на протяжении всего курса книги. Но сейчас самое время сделать шаг назад и пересмотреть то, что вы сделали, и как Spring вам в этом помогла.</p> <p>1.3.6 Давайте рассмотрим</p> <p>Вспомните, как вы дошли до этого момента. Короче говоря, это шаги, которые Вы предприняли для создания Spring-based Taco Cloud приложения:</p> <p>Вы создали первоначальную структуру проекта с помощью Spring Initializr.</p> <p>Вы написали класс контроллера для обработки запроса домашней страницы.</p> <p>Вы определили шаблон представления для отображения главной страницы.</p> <p>Вы написали простой тестовый класс, чтобы проверить что все работает.</p> <p>Кажется довольно просто, не так ли? За исключением первого шага по начальной загрузке проекта, каждое действие, которое Вы предприняли, было сосредоточено на достижении цели создания домашней страницы</p> <p>Фактически, почти каждая строка написанного вами кода направлена на достижение этой цели. Не считая операторов import, я считаю только две строки кода в вашем классе контроллера и никаких строк в шаблоне представления, которые являются специфичными для Spring. И хотя основная часть тестового класса использует поддержку Spring тестирования, это кажется немного менее инвазивным в контексте теста.</p> <p>Это важное преимущество разработки с Spring. Можно сосредоточиться на коде, удовлетворяющем требованиям приложения, а не на удовлетворении требованиям framework-а. Хотя вам, несомненно, придется время от времени писать специфичный для framework-а код, обычно это будет лишь небольшая часть вашей работы. Как я уже говорил, Spring (с Spring Boot)можно считать frameworkless framework.</p> <p>Как это вообще работает? Что Spring делают под капотом, чтобы убедиться, что ваши требования выполняются? Чтобы понять, что делает Spring, давайте начнем с рассмотрения спецификации сборки.</p> <p>В файле pom.xml, вы объявили зависимость от Web и Thymeleaf starter-ов. Эти две зависимости транзитивно принесли несколько других зависимостей, в том числе</p> <p>Spring’s MVC framework </p> <p>Встроенный Tomcat </p> <p>Thymeleaf и макет Thymeleaf диалекта</p> <p>Также добавлены Spring Boot-овские конфигурируемые при запуске библиотеки. При запуске приложения Spring Boot автоконфигурирование обнаруживает эти библиотеки и автоматически:</p> <p>Настраивает bean-ы в контексте приложения Spring для включения Spring MVC</p> <p>Настраивает встроенный сервер Tomcat в контексте приложения Spring</p> <p>Настраивает Thymeleaf view resolver для рендеринга Spring MVC представления с Thymeleaf шаблонами</p> <p>Короче говоря, автоконфигурация выполняет всю сложную работу, позволяя сосредоточиться на написании кода, реализующего функциональность приложения. Это довольно приятно, если вас интересует мое мнение!</p> <p>Ваше Spring путешествие только началось. Приложение Taco Cloud затронуло лишь небольшую часть того, что Spring может предложить. Прежде чем вы сделаете следующий шаг, давайте рассмотрим Spring пейзаж и посмотрим, с какими достопримечательностями вы столкнетесь в своем путешествии.</p> <p>1.4 Съемка Spring ландшафта</p> <p>Чтобы получить представление о Spring ландшафте, посмотрите на огромный список флажков в полной версии веб-формы Spring Initializr. В нем перечислены более 100 вариантов зависимостей, поэтому я не буду пытаться перечислить их все здесь или предоставить скриншот. Но я призываю вас взглянуть самим. В то же время, я упомяну некоторые основные моменты.</p> <p>1.4.1 Core Spring Framework</p> <p>Как и следовало ожидать, ядро Spring Framework является основой всего остального в Spring вселенной. Оно предоставляет базовый контейнер и инфраструктуру внедрения зависимостей. Но оно также предоставляет несколько других важных функций.</p> <p>Среди них Spring MVC, веб-фреймворк Spring. Вы уже видели, как использовать Spring MVC для написания класса контроллера для обработки веб-запросов. Однако вы еще не видели, что Spring MVC также можно использовать для создания REST API, которые возвращают ответ не в виде HTML. Мы собираемся углубиться в Spring MVC в главе 2, а затем еще раз взглянуть на то, как использовать его для создания REST API в главе 6.</p> <p>Ядро Spring Framework также предлагает некоторую элементарную поддержку сохраняемости данных, в частности на основе шаблонов поддержки JDBC. Вы увидите, как использовать JdbcTemplate в главе 3.</p> <p>В последней версии Spring (5.0.8) была добавлена поддержка программирования в реактивном стиле, включая новую реактивную веб-платформу Spring WebFlux, которая в значительной степени заимствуется из Spring MVC. Вы посмотрите на модель реактивного программирования Spring в части 3 и Spring WebFlux отдельно в главе 10.</p> <p>1.4.2 Spring Boot</p> <p>Мы уже видели многие преимущества Spring Boot, включая зависимости от стартера и автоконфигурацию. Будьте уверены, что мы будем использовать как можно больше Spring Boot в этой книге и избегать любой формы явной конфигурации, если только без этого не обойтись. Но в дополнение к зависимостям запуска и автоконфигурации Spring Boot также предлагает несколько других полезных функций:</p> <p>Actuator provide обеспечивает понимание внутренней работы приложения, включая метрики, информацию о дампе потока, работоспособность приложения и свойства среды, доступные приложению. </p> <p>Гибкая спецификация свойств среды. </p> <p>Дополнительное тестирование поддержки поверх тестирования core framework.</p> <p>Более того, Spring Boot предлагает альтернативную модель программирования, основанную на скриптах Groovy, которая называется Spring Boot CLI (интерфейс командной строки). С помощью интерфейса командной строки Spring Boot можно создавать целые приложения в виде набора сценариев Groovy и запускать их из командной строки. Мы не будем тратить много времени на Spring Boot CLI, но мы коснемся его, когда он будет нам необходим.</p> <p>Spring Boot стал неотъемлемой частью разработки на Spring; я не могу представить разработку Spring-приложения без него. Следовательно, эта книга имеет структуру, ориентированную на Spring Boot, и вы можете поймать меня, на использование слова Spring, когда я имею в виду что-то, что делает Spring Boot.</p> <p>1.4.3 Spring Data</p> <p>Несмотря на то, что базовая платформа Spring поставляется с поддержкой сохранения базовых данных, Spring Data предоставляет нечто удивительное: возможность определять репозитории данных вашего приложения как простые интерфейсы Java, используя соглашение об именовании при определении методов управления хранением и извлечением данных. Более того, Spring Data способна работать с несколькими различными типами баз данных, включая реляционные (JPA), document (Mongo), graph (Neo4j) и другие. Вы будете использовать Spring Data для создания репозиториев для приложения Taco Cloud в главе 3.</p> <p>1.4.4 Spring Security</p> <p>Безопасность приложений всегда была важной темой, и с каждым днем она становится все более важной. К счастью, Spring имеет надежные границы безопасности в Spring Security. Spring Security удовлетворяет широкий спектр потребностей безопасности приложений, включая проверку подлинности, авторизацию и безопасность API. Хотя объем Spring Security слишком велик, чтобы быть должным образом рассмотрены в этой книге, мы коснемся некоторых из наиболее распространенных случаев использования в главах 4 и 12.</p> <p>1.4.5 Spring Integration и Spring Batch</p> <p>В какой-то момент большинству приложений потребуется интеграция с другими приложениями или даже с другими компонентами того же приложения. Для удовлетворения этих потребностей было разработано несколько моделей интеграции прикладных программ. Spring Integration и Spring Batch обеспечивают реализацию этих шаблонов для приложений на основе Spring.</p> <p>Spring Integration относиться к интеграции в реальном времени, где данные обрабатываются по мере их доступности. В отличие от этого, Spring Batch относиться к пакетной интеграции, где данные разрешено собирать в течение времени, пока какой-либо триггер (возможно, триггер времени) не сигнализирует, что пришло время отправки пакета данных на обработку. Вы изучите как Spring Batch, так и Spring Integration в главе 9.</p> <p>1.4.6 Spring Cloud</p> <p>Сейчас, когда я пишу эту статью, мир разработки приложений вступает в новую эру, когда мы больше не будем разрабатывать наши приложения как монолиты единого блока развертывания и вместо этого будем создавать приложения из нескольких отдельных блоков развертывания, известных как микрослужбы (микросервисы).</p> <p>Микросервисы - это актуальная тема, затрагивающая несколько практических аспектов разработки и среды выполнения. Однако при этом они порождают свои собственные проблемы. Эти проблемы решаются с помощью Spring Cloud, коллекции проектов для разработки облачных приложений с помощью Spring.</p> <p>Spring Cloud содержит множество полезных компонентов, и было бы невозможно охватить все это в этой книге. Мы рассмотрим некоторые из наиболее распространенных компонентов Spring Cloud в главах 13, 14 и 15. Для более полного обсуждения Spring Cloud я предлагаю взглянуть на Spring Microservices in Action от John Carnell (Manning, 2017, www.manning .com/books/spring-microservices-in-action).</p> <p>Итог</p> <p>Spring стремится упростить решение задач разработчиками, такие как создание веб-приложений, работа с базами данных, защита приложений и разработку микросервисов. </p> <p>Spring Boot опирается на Spring, чтобы сделать Spring еще проще с упрощенным управлением зависимостями, автоматической конфигурацией и анализ среды выполнения. </p> <p>Spring приложения могут быть инициализированы с помощью Spring Initializr, который web-ориентирован и поддерживается изначально в большинстве Java-вских средах разработки.</p> <p>Компоненты, обычно называемые bean-ами, в контексте приложения Spring могут быть объявлены явным образом с помощью Java или XML, обнаружены при сканировании компонентов или автоматически настроены с автоматической настройкой Spring Boot.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/04/spring-in-action-covers-spring-50-2.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 2</a></p> <p><strong>2.Разработка web-приложений</strong></p> <p><emphasis>В этой главе рассматривается </emphasis></p> <empty-line/><empty-line/> <p> </p> <p><emphasis>представление данных модели в браузере</emphasis></p> <p><emphasis>обработка и проверка форм ввода</emphasis></p> <p><emphasis>выбор библиотеки шаблонов представлений</emphasis></p> <p> </p> <p>Первое впечатление очень важно. Отличная презентация может продать дом задолго до того, как покупатель дома войдет в дверь. Вишневый окрас автомобиля повернет больше голов, чем то, что находится под капотом. А литература изобилует историями о любви с первого взгляда. То, что внутри, очень важно, но то, что снаружи-то, что видно первым - важнее.</p> <p>Приложения, которые вы создадите с помощью Spring, будут выполнять все виды действий, включая проверку данных, чтение информации из базы данных и взаимодействие с другими приложениями. Но первое впечатление, которое получат пользователи вашего приложения, - это пользовательский интерфейс. И во многих приложениях, UI-это веб-приложение, представленное в браузере.</p> <p>В главе 1 Вы создали свой первый контроллер Spring MVC для отображения домашней страницы приложения. Но Spring MVC может делать гораздо больше, чем просто отображать статический контент. В этой главе вы разработаете первый крупный компонент функциональности в вашем Taco Cloud приложении - возможность создавать собственные такос. При этом вы углубитесь в Spring MVC и увидите, как отображать данные модели и обрабатывать данные форм ввода.</p> <p>2.1 Отображение информации</p> <p>По сути, Taco Cloud-это место, где вы можете заказать тако онлайн. Но более того, в Taco Cloud хочется предоставить возможность своим клиентам выразить свою творческую сторону и разработать собственные тако из богатой палитры ингредиентов.</p> <p>Поэтому веб-приложению Taco Cloud требуется страница, на которой отображается выбор ингредиентов для создателей тако. Выбор ингредиентов может измениться в любое время, поэтому они не должны быть жестко закодированы в HTML-страницу. Скорее, список доступных ингредиентов должен быть извлечен из базы данных и передан на страницу, которая будет отображаться для клиента.</p> <p>В веб-приложении Spring задача контроллера заключается в получении и обработке данных. Также должна производить обработка данных в представление, чтобы отобразить эти данные в HTML, которые будут отображаться в браузере. Мы собираемся создать следующие компоненты для страницы создания тако: </p> <p>доменный класс, который определяет свойства тако ингредиента </p> <p>Spring MVC класс контроллера, который вытаскивает информацию об ингредиенте и передает ее на отображение</p> <p>шаблон отображения информации, который отображает список ингредиентов в браузере пользователя</p> <p>Взаимосвязь между этими компонентами показана на рисунке 2.1.</p> <p><image l:href="#img_9"/></p> <p>Рисунок 2.1 типичный поток запросов Spring MVC</p> <p>Поскольку в этой главе основное внимание уделяется веб-платформе Spring, мы перенесем весь материал базы данных на Главу 3. На данный момент контроллер будет нести полную ответственность за предоставление ингредиентов для представления. В главе 3 Вы переработаете контроллер для совместной работы с репозиторием, который извлекает данные ингредиентов из базы данных.</p> <p>Прежде чем написать контроллер и представление, давайте выберем тип домена, представляющий компонент. Это создаст основу для разработки веб-компонентов.</p> <p>2.1.1 Создание домена</p> <p>Домен приложения-это тематика, которую оно затрагивает—идеи и концепции, которые влияют на понимание приложения (Для более глубокого обсуждения областей применения я предлагаю дизайн, управляемый доменами Эрика Эванса (Addison-Wesley Professional, 2003).). В приложении Taco Cloud домен включает такие объекты, как описание тако, ингредиенты, из которых состоят эти описания, клиенты и заказы тако, размещенные клиентами. Для начала мы сосредоточимся на ингредиентах тако.</p> <p>В нашем домене тако-ингредиенты довольно простые объекты. Каждый из них имеет имя, а также тип, так что он может быть визуально классифицирован (протеины, сыры, соусы, и так далее). Каждый из них также имеет идентификатор, по которому на него можно легко и однозначно ссылаться. Следующий класс Ingredient определяет необходимый объект домена.</p> <p>Листинг 2.1 Определение ингредиента тако</p> <p>package tacos;</p> <p>import lombok.Data;</p> <empty-line/> <p>import lombok.RequiredArgsConstructor;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>@RequiredArgsConstructor</p> <empty-line/> <p>public class Ingredient {</p> <empty-line/> <p> private final String id;</p> <empty-line/> <p> private final String name;</p> <empty-line/> <p> private final Type type;</p> <empty-line/><empty-line/> <p> public static enum Type {</p> <empty-line/> <p> WRAP, PROTEIN, VEGGIES, CHEESE, SAUCE</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, это заурядный класс домена Java, определяющий три свойства, необходимые для описания ингредиента. Возможно, самое необычное в классе Ingredient, как он определен в листинге 2.1, заключается в том, что в нем отсутствует обычный набор методов getter и setter, не говоря уже о таких полезных методах, как equals (), hashCode (), toString () и других.</p> <p>Вы не видите их в списке частично, чтобы сэкономить место, но и потому, что вы используете удивительную библиотеку под названием Lombok для автоматического создания этих методов во время выполнения. Фактически, аннотация @Data на уровне класса предоставляется Lombok и указывает Lombok генерировать все эти отсутствующие методы, а также конструктор, который принимает все конечные свойства в качестве аргументов. Путем использование Lombok, вы можете держать код для Ingredient коротким и понятным.</p> <p>Lombok-это не Spring-овая библиотека, но она настолько невероятно полезна, что мне уже трудно без нее. И она спасает, когда мне нужно чтобы примеры кода в книге были короткими и понятными.</p> <p>Чтобы использовать Lombok, вам нужно добавить его в качестве зависимости в свой проект. Если вы используете Spring Tool Suite, это простой вопрос, щелкнув правой кнопкой мыши на pom.xml-файл и выбор редактировать стартеры из опции контекстного меню Spring. Появится тот же выбор зависимостей, что и в главе 1 (на рис. 1.4), что дает вам возможность добавить или изменить выбранные зависимости. Найдите выбор Lombok, убедитесь, что он отмечен, и нажмите OK; Spring Tool Suite автоматически добавит его в вашу спецификацию сборки.</p> <p>Кроме того, можно вручную добавить его со следующей записью в pom.xml:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.projectlombok</groupId></p> <empty-line/> <p> <artifactId>lombok</artifactId></p> <empty-line/> <p> <optional>true</optional></p> <empty-line/> <p></dependency></p> <p>Эта зависимость предоставит вам аннотации Lombok (например, @Data) во время разработки и с автоматической генерацией методов во время выполнения. Но вам также потребуется добавить Lombok в качестве расширения в IDE, иначе IDE будет жаловаться на ошибки, связанные с отсутствующими методами и конечными свойствами, которые не задаются. Посетите https://projectlombok.org/ чтобы узнать, как установить Lombok в выбранной среде IDE.</p> <p>Я думаю, что вы найдете Ломбок очень полезным, но знайте, что он необязателен. Он не нужен для разработки приложений Spring, поэтому если вы не хотите его использовать, не стесняйтесь писать эти недостающие методы вручную. Дерзайте... Я подожду.</p> <p>2.1.2 Создание класса контроллера</p> <p>Контроллеры являются основными компонентами в рамках Spring MVC. Их основная задача-обрабатывать HTTP-запросы и либо передать запрос в представление для отображения HTML (отображаемого браузером), либо записать данные непосредственно в тело ответа (RESTful). В этой главе мы сосредоточимся на типах контроллеров, использующих представления для создания содержимого для веб-браузеров. Когда мы перейдем к главе 6, мы рассмотрим написание контроллеров, которые обрабатывают запросы в REST API.</p> <p>Для Taco Cloud, вам нужен простой контроллер который делает следующее:</p> <p>Обрабатывать HTTP-запросы GET, для пути запроса /design</p> <p>Составьте список ингредиентов</p> <p>Обработать запрос и данные по ингредиентам на основе шаблона для отображения как HTML и отправить в веб-браузер.</p> <p>Следующий класс DesignTacoController отвечает этим требованиям</p> <p>Листинг 2.2 Начальный класс Spring контроллера</p> <p>package tacos.web;</p> <p>import java.util.Arrays;</p> <empty-line/> <p>import java.util.List;</p> <empty-line/> <p>import java.util.stream.Collectors;</p> <empty-line/> <p>import javax.validation.Valid;</p> <empty-line/> <p>import org.springframework.stereotype.Controller;</p> <empty-line/> <p>import org.springframework.ui.Model;</p> <empty-line/> <p>import org.springframework.validation.Errors;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.PostMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.RequestMapping;</p> <empty-line/> <p>import lombok.extern.slf4j.Slf4j;</p> <empty-line/> <p>import tacos.Taco;</p> <empty-line/> <p>import tacos.Ingredient;</p> <empty-line/> <p>import tacos.Ingredient.Type;</p> <empty-line/><empty-line/> <p>@Slf4j</p> <empty-line/> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/design")</p> <empty-line/> <p>public class DesignTacoController {</p> <empty-line/><empty-line/> <p> @GetMapping</p> <empty-line/> <p> public String showDesignForm(Model model) {</p> <empty-line/> <p> List<Ingredient> ingredients = Arrays.asList(</p> <empty-line/> <p> new Ingredient("FLTO", "Flour Tortilla", Type.WRAP),</p> <empty-line/> <p> new Ingredient("COTO", "Corn Tortilla", Type.WRAP),</p> <empty-line/> <p> new Ingredient("GRBF", "Ground Beef", Type.PROTEIN),</p> <empty-line/> <p> new Ingredient("CARN", "Carnitas", Type.PROTEIN),</p> <empty-line/> <p> new Ingredient("TMTO", "Diced Tomatoes", Type.VEGGIES),</p> <empty-line/> <p> new Ingredient("LETC", "Lettuce", Type.VEGGIES),</p> <empty-line/> <p> new Ingredient("CHED", "Cheddar", Type.CHEESE),</p> <empty-line/> <p> new Ingredient("JACK", "Monterrey Jack", Type.CHEESE),</p> <empty-line/> <p> new Ingredient("SLSA", "Salsa", Type.SAUCE),</p> <empty-line/> <p> new Ingredient("SRCR", "Sour Cream", Type.SAUCE)</p> <empty-line/> <p> );</p> <empty-line/> <p> Type[] types = Ingredient.Type.values();</p> <empty-line/> <p> for (Type type : types) {</p> <empty-line/> <p> model.addAttribute(type.toString().toLowerCase(),</p> <empty-line/> <p> filterByType(ingredients, type));</p> <empty-line/> <p> }</p> <empty-line/> <p> model.addAttribute("design", new Taco());</p> <empty-line/> <p> return "design";</p> <empty-line/> <p> }</p> <p>}</p> <p>Первое, что следует отметить об DesignTacoController, - это набор аннотаций, применяемых на уровне класса. Первый, @Slf4j, является аннотацией, предоставляемой Lombok, которая во время выполнения автоматически генерирует SLF4J (Simple Logging Facade for Java, https://www.slf4j.org/) Logger в классе. Эта скромная аннотация имеет тот же эффект, что и при явном добавлении следующих строк в класс:</p> <p>private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(DesignTacoController.class);</p> <p>Вы будете использовать этот Logger немного позже.</p> <p>Следующая аннотация, примененная к DesignTacoController это - @Controller. Эта аннотация служит, чтобы идентифицировать этот класс как контроллер и пометить его как кандидата на компонентное сканирование, так, чтобы Spring обнаружил его и автоматически создал экземпляр DesignTacoController как bean в контексте приложения Spring.</p> <p>DesignTacoController аннотирован @RequestMapping. @RequestMapping аннотация, используемая на уровне класса, определяет тип запросов, обрабатываемых этим контроллером. В этом случае он указывает, что контроллер DesignTacoController будет обрабатывать запросы, путь к которым начинается с /design.</p> <p>ОБРАБОТКА ЗАПРОСА GET</p> <p>@GetMapping - относительно новая аннотация, появившаяся в Spring 4.3. До Spring 4.3 вы, возможно, использовали аннотацию @RequestMapping уровня метода вместо:</p> <p>@RequestMapping(method=RequestMethod.GET)</p> <p>Очевидно, что @GetMapping более сжатый и конкретный метод HTTP. @GetMapping является лишь одним членом семьи request-mapping аннотации. В таблице 2.1 перечислены все аннотации request-mapping, доступные в Spring MVC.</p> <p>Таблица 2.1 Spring MVC request-mapping аннотации</p> <empty-line/> <p>Аннотации</p> <p>Описание</p> <empty-line/> <p>@RequestMapping</p> <p>обработка запросов общего назначения</p> <empty-line/> <p>@GetMapping</p> <p>обрабатывает запросы HTTP GET</p> <empty-line/> <p>@PostMapping</p> <p>обрабатывает запросы HTTP POST</p> <empty-line/> <p>@PutMapping</p> <p>обрабатывает запросы HTTP PUT</p> <empty-line/> <p>@DeleteMapping</p> <p>обрабатывает HTTP-запросы на удаление</p> <empty-line/> <p>@Pathmapping</p> <p>обрабатывае HTTP-запросов на патч</p> <empty-line/> <p> </p> <p>Делайте правильные вещи легкими</p> <p>Всегда рекомендуется быть как можно более конкретным при объявлении сопоставлений запросов в методах контроллера. По крайней мере, это означает объявление как пути (или наследование пути от класса уровня @RequestMapping), так и метода HTTP, который он будет обрабатывать.</p> <p>Длинный @RequestMapping((method=RequestMethod.GET) сделал заманчивым взять ленивый выход и оставить атрибут метода. Благодаря новым аннотациям отображения Spring 4.3, правильная вещь также является легкой - с меньшим количеством ввода.</p> <p>Новые аннотации request-mapping имеют те же атрибуты, что и @RequestMapping, поэтому их можно использовать везде, где пришлось бы использовать @RequestMapping.</p> <p>Как правило, я предпочитаю использовать только @RequestMapping на уровне класса, чтобы указать базовый путь. Я использую более конкретные @GetMapping, @PostMapping и т. д. Для каждого из методов обработчика.</p> <p>Теперь, когда вы знаете, что метод showDesignForm() будет обрабатывать запрос, давайте посмотрим на тело метода, чтобы увидеть, как он устроен. Основное - это то что метод создает список объектов Ingredient. Список пока жестко закодирован. Когда мы к этому вернемся в главе 3, вы получите список доступных ингредиентов тако из базы данных</p> <p>Как только список ингредиентов готов, следующие несколько строк showDesignForm() фильтруют список по типу ингредиентов. Затем список типов ингредиентов добавляется в качестве атрибута к объекту Model, который передается в showDesignForm()). Model - объект, который передает данные между контроллером и любым представлением, отвечающим за визуализацию этих данных. В конечном счете данные, помещенные в атрибуты Model, копируются в атрибуты ответа сервлета, где их можно найти в представлении. Метод showDesignForm() завершается возвратом "design", логическим именем представления, которое будет использоваться для отображения модели в браузере.</p> <p>Ваш DesignTacoController действительно начинает обретать форму. Если запустить приложение сейчас и указать в браузере путь /design, будет задействована функция showDesignForm() DesignTacoController, извлекающая данные из репозитория и помещающая их в модель перед передачей запроса в представление. Но поскольку вы еще не определили представление, запрос будет не корректен, что приведет к ошибке HTTP 404 (Not Found). Чтобы исправить это, давайте переключим наше внимание на представление, где данные будут представлены в виде HTML, которые будут отображаться в веб-браузере пользователя.</p> <p>2.1.3 Проектирование представления</p> <p>После того, как работы над контроллером закончены, пришло время для просмотра. Spring предлагает несколько отличных опций для определения представлений, включая JavaServer Pages (JSP), Thymeleaf, FreeMarker, Mustache и шаблоны на основе Groovy. На данный момент мы будем использовать Thymeleaf, выбор, который мы сделали в главе 1 при запуске проекта. Мы рассмотрим несколько других вариантов в разделе 2.5.</p> <p>Чтобы использовать Thymeleaf, необходимо добавить еще одну зависимость в сборку проекта. Следующая запись <dependency> добавит Thymeleaf в Spring Boot, чтобы сделать Thymeleaf доступным для рендеринга представления, которое вы собираетесь создать:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-thymeleaf</artifactId></p> <empty-line/> <p></dependency></p> <p>Во время выполнения Spring Boot autoconfiguration увидит, что Thymeleaf находится в classpath и автоматически создаст bean, которые поддерживают представления Thymeleaf для Spring MVC.</p> <p>Визуальные библиотеки, такие как Thymeleaf предназначены для отделения от определенного web framework. Таким образом, они не знают об абстракции модели Spring и не могут работать с данными, которые контроллер помещает в Model. Но они могут работать с атрибутами запроса сервлета. Поэтому, прежде чем Spring передаст запрос представлению, он копирует данные модели в атрибуты запроса, к которым Thymeleaf и другие визуальные шаблонизаторы представлений имеют доступ.</p> <p>Шаблоны Thymeleaf - это просто HTML с некоторыми дополнительными атрибутами элементов, которые корректируют шаблон при отображении данных запроса. Например, если бы существовал атрибут запроса, ключом которого является "message", и вы хотели, чтобы он отображался в теге HTML <p> с помощью Thymeleaf, вы бы написали следующее в шаблоне Thymeleaf:</p> <p><p th:text="${message}">placeholder message</p></p> <p>При отображении шаблона в HTML тело элемента <p> будет заменено значением атрибута запроса сервлета, ключом которого является"message". Атрибут th:text является атрибутом пространства имен Thymeleaf, который выполняет замену. Оператор ${} указывает ему использовать значение атрибута запроса (в данном случае" message").</p> <p>Thymeleaf также предлагает другой атрибут, th: each, который перебирает коллекцию элементов, добавляя HTML код для каждого элемента в коллекции. Это пригодится, когда вы создадите отображение, чтобы перечислить ингредиенты taco из модели. Например, чтобы отобразить только список ингредиентов "wrap", можно использовать следующий фрагмент HTML:</p> <p><h3>Designate your wrap:</h3></p> <empty-line/> <p><div th:each="ingredient : ${wrap}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}" /></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p></div></p> <p>Здесь используется атрибут th: each тега <div>, чтобы повторить отрисовку <div> один раз для каждого элемента коллекции, найденного в атрибуте wrap запроса. На каждой итерации элемент ингредиента привязывается к переменной Thymeleaf с именем ингредиента.</p> <p>Внутри элемента <div> есть элемент checkbox <input> и элемент <span>, чтобы предоставить метку для флажка. Флажок использует Thymeleaf th:value, чтобы задать для <input> элемента значение атрибута value, найденное в свойстве ID компонента. Элемент <span> использует th:text для замены текста-заполнителя "INGREDIENT" значением свойства name ингредиента.</p> <p>При визуализации с фактическими данными модели одна итерация цикла <div> может выглядеть следующим образом:</p> <p><div></p> <empty-line/> <p> <input name="ingredients" type="checkbox" value="FLTO" /></p> <empty-line/> <p> <span>Flour Tortilla</span><br/></p> <empty-line/> <p></div></p> <p>В конечном счете, предыдущий фрагмент Thymeleaf является лишь частью более крупной HTML-формы, через которую ваши творцы тако представят свои вкусные творения. Полный шаблон Thymeleaf, включая все типы ингредиентов и форму, показан в следующем списке.</p> <p>Листинг 2.3 Полный вид страницы дизайна тако</p> <p><!DOCTYPE html></p> <empty-line/> <p><html xmlns="http://www.w3.org/1999/xhtml"</p> <empty-line/> <p> xmlns:th="http://www.thymeleaf.org"></p> <empty-line/> <p> <head></p> <empty-line/> <p> <title>Taco Cloud</title></p> <empty-line/> <p> <link rel="stylesheet" th:href="@{/styles.css}" /></p> <empty-line/> <p> </head></p> <empty-line/> <p> <body></p> <empty-line/> <p> <h1>Design your taco!</h1></p> <empty-line/> <p> <img th:src="@{/images/TacoCloud.png}"/></p> <empty-line/> <p> <form method="POST" th:object="${design}"></p> <empty-line/> <p> <div class="grid"></p> <empty-line/> <p> <div class="ingredient-group" id="wraps"></p> <empty-line/> <p> <h3>Designate your wrap:</h3></p> <empty-line/> <p> <div th:each="ingredient : ${wrap}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}"/></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> <div class="ingredient-group" id="proteins"></p> <empty-line/> <p> <h3>Pick your protein:</h3></p> <empty-line/> <p> <div th:each="ingredient : ${protein}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}"/></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> <div class="ingredient-group" id="cheeses"></p> <empty-line/> <p> <h3>Choose your cheese:</h3></p> <empty-line/> <p> <div th:each="ingredient : ${cheese}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}"/></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> <div class="ingredient-group" id="veggies"></p> <empty-line/> <p> <h3>Determine your veggies:</h3></p> <empty-line/> <p> <div th:each="ingredient : ${veggies}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}"/></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> <div class="ingredient-group" id="sauces"></p> <empty-line/> <p> <h3>Select your sauce:</h3></p> <empty-line/> <p> <div th:each="ingredient : ${sauce}"></p> <empty-line/> <p> <input name="ingredients" type="checkbox" th:value="${ingredient.id}"/></p> <empty-line/> <p> <span th:text="${ingredient.name}">INGREDIENT</span><br/></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> </div></p> <empty-line/> <p> <div></p> <empty-line/> <p> <h3>Name your taco creation:</h3></p> <empty-line/> <p> <input type="text" th:field="*{name}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <button>Submit your taco</button></p> <empty-line/> <p> </div></p> <empty-line/> <p></form></p> <empty-line/> <p></body></p> <empty-line/> <p></html></p> <p>Как вы можете видеть, вы повторяете фрагмент <div> для каждого из типов ингредиентов. И вы включаете кнопку отправки и поле, где пользователь может назвать свое тако-творение.</p> <p>Также стоит отметить, что полный шаблон включает в себя изображение логотипа Taco Cloud и ссылку на таблицу стилей(Содержание таблицы стилей не имеет отношения к нашему обсуждению; она содержит только стиль, чтобы представить ингредиенты в двух столбцах вместо одного длинного списка ингредиентов) в обоих случаях оператор @{} используется для создания относительного к контексту пути к статическим артефактам, на которые они ссылаются. Как вы узнали из главы 1, статическое содержимое в приложении Spring Boot подается из каталога /static в корне пути к классам.</p> <p>Теперь, когда ваш контроллер и визуальная часть полностью готовы, вы можете запустить приложение, чтобы увидеть плоды вашего труда. Существует множество способов запуска приложения Spring Boot. В главе 1 я показал вам, как запустить приложение, сначала создав его в исполняемый файл JAR, а затем запустив JAR с java-jar. Я также показал, как запустить приложение непосредственно из сборки с помощью mvn spring-boot:run.</p> <p>Независимо от того, как вы запустите приложение Taco Cloud, как только оно запустится, укажите браузеру http://localhost:8080/design. Вы должны увидеть страницу, которая выглядит примерно как на рисунке 2.2.</p> <empty-line/> <p><image l:href="#img_10"/></p> <p>Рисунок 2.2 Страница тако-создания</p> <p>Это выглядит замечательно! Творцам тако, посетившим ваш сайт, предоставляется форма, содержащая палитру ингредиентов тако, из которых они могут создать свой шедевр. Но что происходит, когда они нажимают кнопку Submit Your Taco?</p> <p>Ваш DesignTacoController еще не готов принять созданный тако. Если форма дизайна отправлена, пользователю будет представлена ошибка. (В частности, это будет ошибка HTTP 405: метод запроса "POST" не поддерживается.) Давайте исправим это, написав еще один код контроллера, который обрабатывает отправку формы.</p> <p>2.2 Обработка отправки формы</p> <p>Если еще раз взглянуть на тег <form> в представлении, можно увидеть, что его атрибут method имеет значение POST. Кроме того, <form> не объявляет атрибут action. Это означает, что когда форма будет отправлена, браузер соберет все данные в форме и отправит ее на сервер в запросе HTTP POST к тому же пути, для которого запрос GET отобразил форму—путь /design.</p> <p>Таким образом необходим метод обработчика контроллера на принимающей стороне запроса POST. Вам нужно написать новый метод обработчика в контроллере дизайна тако, который обрабатывает запрос POST для /design.</p> <p>В листинге 2.2 вы использовали аннотацию @GetMapping, чтобы указать, что метод showDesignForm() должен обрабатывать запросы HTTP GET для /design. Также как @GetMapping обрабатывает GET-запросы, вы можете использовать @PostMapping для обработки POST-запросов. Для обработки созданных тако добавьте метод processDesign() как в следующем листинге для DesignTacoController.</p> <p>Листинг 2.4 Обработка POST-запросов с @PostMapping</p> <p>@PostMapping public String processDesign(Design design) {</p> <empty-line/> <p> // Save the taco design…</p> <empty-line/> <p> // We'll do this in chapter 3</p> <empty-line/> <p> log.info("Processing design: " + design);</p> <empty-line/> <p> return "redirect:/orders/current";</p> <empty-line/> <p>}</p> <p>Применительно к методу processDesign(), @PostMapping взаимодействует с уровнем класса @RequestMapping, чтобы указать, что processDesign() должен обрабатывать POST-запросы для /design. Это именно то, что вам нужно для обработки представленных творений создателя тако.</p> <p>При отправке формы поля в форме привязываются к свойствам объекта Taco (класс которого показан в следующем листинге), который передается в качестве параметра в processDesign(). Метод processDesign() может делать с объектом Taco все, что угодно.</p> <p>Листинг 2.5 Объект домена, определяющий состав тако</p> <p>package tacos;</p> <p>import java.util.List;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/><empty-line/> <p>@Data public class Taco {</p> <empty-line/> <p> private String name;</p> <empty-line/> <p> private List ingredients;</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, Taco - это простой объект Java с несколькими свойствами. Как и ингредиент, класс Taco аннотируется @Data для автоматического создания необходимых методов JavaBean для вас во время выполнения.</p> <p>Если вы посмотрите на форму в листинге 2.3, вы увидите несколько элементов checkbox, все с именем ingredients, и элемент ввода текста с именем name. Эти поля в форме соответствуют непосредственно ingredients и свойствам name класса Taco.</p> <p>Поле Name в форме должно содержать только простое текстовое значение. Таким образом, свойство name Taco имеет тип String. У флажков "ингредиенты" также есть текстовые значения, но поскольку можно выбрать ни одного или несколько из них, свойство ingredients, к которому они привязаны, является List<String>, которое будет включать каждый из выбранных ингредиентов.</p> <p>На данный момент метод processDesign() ничего не делает с объектом Taco. На самом деле, он вообще ничего не делает. Все нормально. В главе 3 вы добавите некоторую логику сохраняемости, которая сохранит отправленное Taco в базу данных.</p> <p>Как и в случае с методом showDesignForm(), processDesign() завершается возвращением String значения. И так же, как showDesignForm(), возвращаемое значение указывает на представление, которое будет показано пользователю. Но отличается то, что значение, возвращаемое из processDesign(), имеет префикс "redirect:", указывающий, что это представление перенаправления. Более конкретно, это указывает, что после того, как processDesign() завершится, браузер пользователя должен быть перенаправлен к относительному пути /order/current.</p> <p>Идея заключается в том, что после создания тако, пользователь будет перенаправлен на форму заказа, из которых он может разместить заказ, чтобы его творение - тако был доставлен. Но у вас еще нет контроллера, который будет обрабатывать запрос /orders/current.</p> <p>Учитывая то, что вы теперь знаете о @Controller, @RequestMapping и @GetMapping, вы можете легко создать такой контроллер. Это может выглядеть примерно так:</p> <p>Листинг 2.6 Контроллер для представления формы заказа тако</p> <p>package tacos.web;</p> <p>import javax.validation.Valid;</p> <empty-line/> <p>import org.springframework.stereotype.Controller;</p> <empty-line/> <p>import org.springframework.ui.Model;</p> <empty-line/> <p>import org.springframework.validation.Errors;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.RequestMapping;</p> <empty-line/> <p>import lombok.extern.slf4j.Slf4j;</p> <empty-line/> <p>import tacos.Order;</p> <empty-line/><empty-line/> <p>@Slf4j @Controller</p> <empty-line/> <p>@RequestMapping("/orders")</p> <empty-line/> <p>public class OrderController {</p> <empty-line/> <p> @GetMapping("/current")</p> <empty-line/> <p> public String orderForm(Model model) {</p> <empty-line/> <p> model.addAttribute("order", new Order());</p> <empty-line/> <p> return "orderForm";</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Вы используете @Slf4j аннотацию Lombok для создания свободного объекта slf4j Logger во время выполнения. Вы будете использовать этот регистратор в момент получения деталей заказа, который был создан.</p> <p>@RequestMapping уровня класса указывает, что любые методы обработки запросов в этом контроллере будут обрабатывать запросы, путь к которым начинается с /orders. В сочетании с методом уровня @GetMapping, он указывает, что метод orderForm() будет обрабатывать HTTP GET запросы для /orders/current.</p> <p>Что касается самого метода orderForm(), он чрезвычайно прост, возвращая только логическое имя представления orderForm. Как только у вас будет способ сохранить созданного тако в базе данных в главе 3, вы вернетесь к этому методу и измените его, чтобы заполнить модель списком объектов Taco, которые будут размещены в очереди.</p> <p>Представление формы заказа предоставляется шаблоном Thymeleaf с именем orderForm.html, который показан далее.</p> <p>Листинг 2.7 Вид формы заказа тако</p> <p><!DOCTYPE html></p> <empty-line/> <p><html xmlns="http://www.w3.org/1999/xhtml"</p> <empty-line/> <p>xmlns:th="http://www.thymeleaf.org"></p> <empty-line/> <p><head></p> <empty-line/> <p> <title>Taco Cloud</title></p> <empty-line/> <p> <link rel="stylesheet" th:href="@{/styles.css}" /></p> <empty-line/> <p></head></p> <empty-line/> <p><body></p> <empty-line/> <p> <form method="POST" th:action="@{/orders}" th:object="${order}"></p> <empty-line/> <p> <h1>Order your taco creations!</h1></p> <empty-line/> <p> <img th:src="@{/images/TacoCloud.png}"/></p> <empty-line/> <p> <a th:href="@{/design}" id="another">Design another taco</a><br/></p> <empty-line/> <p> <div th:if="${#fields.hasErrors()}"></p> <empty-line/> <p> <span class="validationError"></p> <empty-line/> <p> Please correct the problems below and resubmit.</p> <empty-line/> <p> </span></p> <empty-line/> <p> </div></p> <empty-line/> <p> <h3>Deliver my taco masterpieces to...</h3></p> <empty-line/> <p> <label for="name">Name: </label></p> <empty-line/> <p> <input type="text" th:field="*{name}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="street">Street address: </label></p> <empty-line/> <p> <input type="text" th:field="*{street}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="city">City: </label></p> <empty-line/> <p> <input type="text" th:field="*{city}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="state">State: </label></p> <empty-line/> <p> <input type="text" th:field="*{state}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="zip">Zip code: </label></p> <empty-line/> <p> <input type="text" th:field="*{zip}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <h3>Here's how I'll pay...</h3></p> <empty-line/> <p> <label for="ccNumber">Credit Card #: </label></p> <empty-line/> <p> <input type="text" th:field="*{ccNumber}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="ccExpiration">Expiration: </label></p> <empty-line/> <p> <input type="text" th:field="*{ccExpiration}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <label for="ccCVV">CVV: </label></p> <empty-line/> <p> <input type="text" th:field="*{ccCVV}"/></p> <empty-line/> <p> <br/></p> <empty-line/> <p> <input type="submit" value="Submit order"/></p> <empty-line/> <p> </form></p> <empty-line/> <p></body></p> <empty-line/> <p></html></p> <p>По большей части, orderForm.html отображение - это типичный HTML/Thymeleaf контент, с очень небольшим количеством заметок. Но обратите внимание, что тег <form> здесь отличается от тега <form>, используемого в листинге 2.3, тем, что он также определяет действие формы. Без указанного действия форма отправит запрос HTTP POST обратно на тот же URL-адрес, что и форма. Но здесь вы указываете, что форма должна заPOSTедь в /orders (используя оператор Thymeleaf @{...} для относительного контекста).</p> <p>Поэтому в класс OrderController необходимо добавить еще один метод, обрабатывающий POST-запросы для /orders. У вас не будет способа сохранять заказы до следующей главы, поэтому поставим заглушку здесь-что-то вроде той, что вы видите в следующем листинге:</p> <p>Листинг 2.8 обработка отправки заказа тако</p> <p>@PostMapping</p> <empty-line/> <p>public String processOrder(Order order) {</p> <empty-line/> <p> log.info("Order submitted: " + order);</p> <empty-line/> <p> return "redirect:/";</p> <empty-line/> <p>}</p> <p>При вызове метода processOrder() для обработки отправленного заказа ему присваивается объект Order, свойства которого привязаны к полям отправленной формы. Order, как и Taco, является довольно простым классом,который несет информацию о заказе.</p> <p>Листинг 2.9 доменный объект для заказов тако</p> <p>package tacos;</p> <p>import javax.validation.constraints.Digits;</p> <empty-line/> <p>import javax.validation.constraints.Pattern;</p> <empty-line/> <p>import org.hibernate.validator.constraints.CreditCardNumber;</p> <empty-line/> <p>import org.hibernate.validator.constraints.NotBlank;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>public class Order {</p> <empty-line/> <p> private String name;</p> <empty-line/> <p> private String street;</p> <empty-line/> <p> private String city;</p> <empty-line/> <p> private String state;</p> <empty-line/> <p> private String zip;</p> <empty-line/> <p> private String ccNumber;</p> <empty-line/> <p> private String ccExpiration;</p> <empty-line/> <p> private String ccCVV;</p> <empty-line/> <p>}</p> <p>Теперь, когда вы разработали OrderController и представление формы заказа, вы готовы испытать его. Откройте браузер, с адресом http://localhost:8080/design, выберите некоторые ингредиенты для вашего тако,и нажмите кнопку Submit Your Taco. Вы должны увидеть форму, подобную показанной на рис. 2.3.</p> <p>Заполните некоторые поля формы и нажмите кнопку Submit Order. И следите за логами приложений, чтобы увидеть информацию о вашем заказе. Когда я нажал, запись лога выглядела примерно так (переформатирована, чтобы соответствовать ширине этой страницы):</p> <p>Order submitted: Order(name=Craig Walls,street1=1234 7th Street, city=Somewhere, state=Who knows?, zip=zipzap, ccNumber=Who can guess?, ccExpiration=Some day, ccCVV=See-vee-vee)</p> <p>Если вы внимательно посмотрите на запись лога из моего тестового заказа, вы увидите, что хотя метод processOrder() выполнил свою работу и обработал отправку формы, он позволил пройти немного не корректной информации. Большинство полей в форме содержат данные, которые не могут быть правильными. Давайте добавим некоторую проверку, чтобы убедиться, что предоставленные данные по крайней мере похожи на требуемую информацию.</p> <empty-line/> <p><image l:href="#img_11"/></p> <p>Рисунок 2.3</p> <p>2.3 Проверка формы ввода</p> <p>При сборке созданного тако, что делать, если пользователь не выбирает ингредиенты или не указал имя при создании? При отправке заказа, что делать, если создатель тако не заполнил необходимые поля адреса? Или что, если он ввел значение в поле кредитной карты, которое не является действительным номером кредитной карты?</p> <p>В настоящее время ничто не помешает пользователю создать тако без ингредиентов или с пустым адресом доставки, или даже предоставить текст своей любимой песни в качестве номера кредитной карты. Это потому что вы еще не определили, как эти поля должны быть проверены.</p> <p>Одним из способов выполнения проверки формы является заполнение методов processDesign() и processOrder() множеством блоков if/then, проверяя каждое поле, чтобы убедиться, что оно соответствует соответствующим правилам проверки. Но это было бы громоздко и трудно читать и отлаживать.</p> <p>К счастью, Spring поддерживает API проверки компонентов Java (также известный как JSR-303; https://jcp.org/en/jsr/detail?id=303). Это упрощает объявление правил проверки в отличие от явного написания логики объявления в коде приложения. И с Spring Boot, вам не нужно делать ничего особенного, чтобы добавить библиотеки проверки в свой проект, потому что API проверки и реализация Hibernate API проверки автоматически добавляются в проект в качестве временных зависимостей веб-стартера Spring Boot.</p> <p>Чтобы применить проверку в Spring MVC, необходимо:</p> <p>Объявите правила проверки классам, которые должны быть проверены: в частности, класс Taco.</p> <p>Указать, что проверка должна быть выполнена в методах контроллера, которые требуют проверки: в частности, метод processDesign в DesignTacoController() и в OrderController метод processOrder().</p> <p>Измените представления формы для отображения ошибок проверки.</p> <p>API проверки предлагает несколько аннотаций, которые можно поместить в свойства объектов домена для объявления правил проверки. Реализация Hibernate API проверки добавляет еще больше аннотаций проверки. Давайте посмотрим, как вы можете применить некоторые из этих аннотаций для проверки представленного Taco или Order.</p> <p>2.3.1 Определение правил проверки</p> <p>Для класса Taco необходимо убедиться, что свойство name не пустое и не null и что в списке выбранных ингредиентов есть хотя бы один элемент. В следующем списке показан обновленный класс Taco, который использует @NotNull и @Size для объявления этих правил проверки.</p> <p>Листинг 2.10 Добавленные проверки в класс Taco</p> <p>package tacos;</p> <empty-line/> <p>import java.util.List;</p> <empty-line/> <p>import javax.validation.constraints.NotNull;</p> <empty-line/> <p>import javax.validation.constraints.Size; import lombok.Data;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>public class Taco {</p> <empty-line/> <p> @NotNull</p> <empty-line/> <p> @Size(min=5, message="Name must be at least 5 characters long")</p> <empty-line/> <p> private String name;</p> <empty-line/><empty-line/> <p> @Size(min=1, message="You must choose at least 1 ingredient")</p> <empty-line/> <p> private List<String> ingredients;</p> <empty-line/> <p>}</p> <p>Вы заметите, что в дополнение к требованию, чтобы свойство name не было null, вы объявляете, что оно должно иметь значение длиной не менее 5 символов.</p> <p>Когда дело доходит до объявления проверки представленных заказов тако, необходимо применить аннотации к классу Order. Для свойств адреса необходимо только убедиться, что пользователь не оставляет пустыми ни одно из полей. Для этого вы будете использовать аннотацию Hibernate Validator @NotBlank.</p> <p>Однако проверка полей платежей немного более экзотична. Необходимо не только убедиться, что свойство ccNumber не пусто, но и что оно содержит значение, которое может быть допустимым номером кредитной карты. Свойство ccExpiration должно соответствовать формату MM/YY (двухзначные месяц и год). И свойство ccCVV должно быть трехзначным. Для достижения такого рода проверки необходимо использовать несколько других аннотаций Java Bean Validation API и заимствовать аннотацию проверки из коллекции аннотаций Hibernate Validator. В следующем листинге показаны изменения, необходимые для проверки класса Order.</p> <p>Листинг 2.11 Проверка полей заказа</p> <p>package tacos;</p> <p>import javax.validation.constraints.Digits;</p> <empty-line/> <p>import javax.validation.constraints.Pattern;</p> <empty-line/> <p>import org.hibernate.validator.constraints.CreditCardNumber;</p> <empty-line/> <p>import javax.validation.constraints.NotBlank;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>public class Order {</p> <empty-line/> <p> @NotBlank(message="Name is required")</p> <empty-line/> <p> private String name;</p> <empty-line/><empty-line/> <p> @NotBlank(message="Street is required")</p> <empty-line/> <p> private String street;</p> <p> @NotBlank(message="City is required")</p> <empty-line/> <p> private String city;</p> <empty-line/><empty-line/> <p> @NotBlank(message="State is required")</p> <empty-line/> <p> private String state;</p> <empty-line/><empty-line/> <p> @NotBlank(message="Zip code is required")</p> <empty-line/> <p> private String zip;</p> <empty-line/><empty-line/> <p> @CreditCardNumber(message="Not a valid credit card number")</p> <empty-line/> <p> private String ccNumber;</p> <empty-line/><empty-line/> <p> @Pattern(regexp="^(0[1-9]|1[0-2])([\\/])([1-9][0-9])$", message="Must be formatted MM/YY")</p> <empty-line/> <p> private String ccExpiration;</p> <empty-line/><empty-line/> <p> @Digits(integer=3, fraction=0, message="Invalid CVV")</p> <empty-line/> <p> private String ccCVV;</p> <empty-line/> <p>}</p> <p>Как видите, свойство ccNumber снабжено аннотацией @CreditCardNumber. Эта аннотация объявляет, что значение свойства должно быть допустимым номером кредитной карты, который проходит проверку алгоритма Luhn (https://en.wikipedia.org/wiki/Luhn_algorithm). Это предотвращает ошибки пользователей и преднамеренно неверные данные, но не гарантирует, что номер кредитной карты фактически принадлежит учетной записи или что номер карты пригоден для оплаты.</p> <p>К сожалению, нет готовой аннотации для проверки формата MM/YY свойства ccExpiration. Я применил аннотацию @Pattern, предоставив ей регулярное выражение, которое гарантирует, что значение свойства придерживается желаемого формата. Если вам интересно, как расшифровать регулярное выражение, я рекомендую вам ознакомиться со многими онлайн-руководствами по регулярным выражениям, в том числе http://www.regular-expressions.info/. Синтаксис регулярных выражений является темным искусством и, безусловно, выходит за рамки этой книги.</p> <p>Наконец, свойство ccCVV аннотируется @Digits, чтобы убедиться, что значение содержит ровно три цифры.</p> <p>Все аннотации проверки содержат атрибут message, определяющий сообщение, которое будет отображаться пользователю, если введенная им информация не соответствует требованиям объявленных правил проверки.</p> <p>2.3.2 Выполнение проверок</p> <p>Теперь, когда вы объявили, как Taco и Order должны быть проверены, нам нужно пересмотреть каждый из контроллеров, указав, что проверка должна быть выполнена, когда формы будут отправлены в их соответствующие методы обработчика.</p> <p>Чтобы проверить отправленное Taco, необходимо добавить аннотацию Java Bean Validation API’s @Valid</p> <p>к аргументу Taco метода processDesign() у DesignTacoController.</p> <p>Листинг 2.12 Проверка POST-запроса Taco</p> <p>@PostMapping</p> <empty-line/> <p>public String processDesign(@Valid Taco design, Errors errors) {</p> <empty-line/> <p> if (errors.hasErrors()) {</p> <empty-line/> <p> return "design";</p> <empty-line/> <p> }</p> <empty-line/> <p> // Save the taco design...</p> <empty-line/> <p> // We'll do this in chapter 3</p> <empty-line/> <p> log.info("Processing design: " + design);</p> <empty-line/> <p> return "redirect:/orders/current";</p> <empty-line/> <p>}</p> <p>@Valid аннотация говорит Spring MVC, чтобы выполнить проверку на представленном объекте Taco после того, как он привязан к представленным данным формы и перед вызовом метода processDesign(). Если есть какие-либо ошибки проверки, сведения об этих ошибках будут записаны в объект Errors, который передается в processDesign(). Первые несколько строк processDesign() проверяют объект Errors, через его метод hasErrors (), есть ли какие-либо ошибки проверки. Если есть, метод завершается без обработки Taco и возвращает имя представления "design" так, чтобы форма была перерисована.</p> <p>Для выполнения проверки переданных объектов Order, аналогичные изменения также требуются в методе processOrder() в OrderController.</p> <p>Листинг 2.13 Проверка -POST-запроса Order</p> <p>@PostMapping</p> <empty-line/> <p>public String processOrder(@Valid Order order, Errors errors) {</p> <empty-line/> <p> if (errors.hasErrors()) {</p> <empty-line/> <p> return "orderForm";</p> <empty-line/> <p> }</p> <empty-line/> <p> log.info("Order submitted: " + order);</p> <empty-line/> <p> return "redirect:/";</p> <empty-line/> <p>}</p> <p>В обоих случаях методу будет разрешено обрабатывать отправленные данные при отсутствии ошибок проверки. Если есть ошибки проверки, запрос будет перенаправлен в представление формы, чтобы дать пользователю возможность исправить свои ошибки.</p> <p>Но как пользователь узнает, какие ошибки требуют исправления? Если вы не отобразите ошибки в форме, пользователю останется только гадать о том, как успешно отправить форму.</p> <p>2.3.3 Отображение ошибок проверки</p> <p>Thymeleaf предлагает удобный доступ к объекту Errors через свойство fields и с его атрибутом th:errors. Например, чтобы отобразить ошибки проверки в поле номер кредитной карты, можно добавить элемент <span>, который использует эти ссылки на ошибки в шаблоне формы заказа следующим образом.</p> <p>Листинг 2.14 Отображение ошибок проверки</p> <p><label for="ccNumber">Credit Card #: </label></p> <empty-line/> <p><input type="text" th:field="*{ccNumber}"/></p> <empty-line/> <p><span class="validationError"</p> <empty-line/> <p> th:if="${#fields.hasErrors('ccNumber')}"</p> <empty-line/> <p> th:errors="*{ccNumber}">CC Num Error</span></p> <p>Помимо атрибута класса, который можно использовать для стилизации ошибки, чтобы привлечь внимание пользователя, элемент <span> использует атрибут th:if, чтобы решить, отображать ли <span>. Метод hasErrors() свойства fields проверяет наличие ошибок в поле ccNumber. Если да, то <span> будет отрисован.</p> <p>Атрибут th: errors ссылается на поле ccNumber и, если для этого поля имеются ошибки, он заменит содержимое заполнителя элемента <span> сообщением о результате проверки.</p> <p>Если вы добавите похожие теги <span> для других полей, вы увидите форму, которая выглядит как на рисунке 2.4, когда вы предоставляете недопустимую информацию. Ошибки указывают, что поля name, city и ZIP code оставлены пустыми и что все поля платежа не соответствуют критериям проверки.</p> <p><image l:href="#img_12"/></p> <empty-line/> <p>Рисунок 2.4 Отображение ошибок проверки в форме заказа</p> <p>Теперь контроллеры Taco Cloud не только отображают и записывают входные данные, но и проверяют соответствие информации некоторым основным правилам проверки. Давайте вернемся назад и пересмотрим HomeController из главы 1, глядя на альтернативную реализацию.</p> <p>2.4 Работа с контроллерами отображения</p> <p>До сих пор вы написали три контроллера для приложения Taco Cloud. Хотя каждый контроллер служит определенной цели в функциональности приложения, все они в значительной степени следуют одной модели программирования:</p> <p>Они все аннотированы @Controller, чтобы указать, что они классы контроллеры, которые должны автоматически обнаруживаться при сканировании компонентов Spring и создаваться как bean в контексте приложения Spring.</p> <p>Все, кроме HomeController, аннотируются @RequestMapping на уровне класса, чтобы определить базовый шаблон запроса, который будет обрабатывать контроллер.</p> <p>Все они имеют один или несколько методов, аннотированных @GetMapping или@PostMapping, чтобы предоставить сведения о том, какие методы должны обрабатывать какие типы запросов.</p> <p>Большинство контроллеров, которые вы напишете, будут следовать этому шаблону. Но когда контроллер достаточно прост, что он не заполняет модель или процесс ввода-как в случае с вашим HomeController-есть еще один способ, которым вы можете определить контроллер. Посмотрите на следующий листинг, чтобы увидеть, как можно объявить контроллер представления - контроллер, который ничего не делает, но перенаправляет запрос к представлению.</p> <p>Листинг 2.15 Объявление контроллера отображения</p> <p>package tacos.web;</p> <empty-line/><empty-line/> <p>import org.springframework.context.annotation.Configuration;</p> <empty-line/> <p>import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;</p> <empty-line/> <p>import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;</p> <empty-line/><empty-line/> <p>@Configuration</p> <empty-line/> <p>public class WebConfig implements WebMvcConfigurer {</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public void addViewControllers(ViewControllerRegistry registry) {</p> <empty-line/> <p> registry.addViewController("/").setViewName("home");</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Самое важное о WebConfig, то что он реализует интерфейс WebMvcConfigurer. WebMvcConfigurer определяет несколько методов для настройки Spring MVC. Несмотря на то, что это интерфейс, он обеспечивает реализацию всех методов по умолчанию, поэтому вам нужно переопределить только необходимые методы. В этом листинге переопределен метод addViewControllers().</p> <p>Метод addViewControllers() получает ViewControllerRegistry, который можно использовать для регистрации одного или нескольких контроллеров представления. Здесь вы вызываете addViewController() в реестре, передавая "/", путь, по которому ваш контроллер представлений будет обрабатывать запросы GET. Этот метод возвращает объект регистрации контроллера представлений, на котором вы немедленно вызываете setViewName(), чтобы указать home в качестве представления, на которое должен быть перенаправлен запрос "/".</p> <p>И вот так просто, вы смогли заменить HomeController несколькими строками в классе конфигурации. Теперь вы можете удалить HomeController, и приложение должно вести себя так же, как и раньше. Единственное другое изменение, необходимое для пересмотра HomeControllerTest из главы 1, удаление ссылки на HomeController из аннотации @WebMvcTest, так чтобы тестовый класс будет компилироваться без ошибок.</p> <p>Здесь вы создали новый класс конфигурации WebConfig для размещения объявления контроллера представления. Но любой класс конфигурации может реализовать WebMvcConfigurer и переопределить метод addViewController. Например, вы могли бы добавить такое же объявление контроллера представления в начальный класс приложения Taco Cloud, например так:</p> <p>@SpringBootApplication</p> <empty-line/> <p>public class TacoCloudApplication implements WebMvcConfigurer {</p> <empty-line/> <p> public static void main(String[] args) {</p> <empty-line/> <p> SpringApplication.run(TacoCloudApplication.class, args);</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public void addViewControllers(ViewControllerRegistry registry) {</p> <empty-line/> <p> registry.addViewController("/").setViewName("home");</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Расширяя существующий класс конфигурации, можно избежать создания нового класса конфигурации, сохраняя обратное взаимодействие артефактов проекта. Но я предпочитаю создавать новый класс конфигурации для каждого типа конфигурации (веб, данные, безопасность и т. д.), сохраняя конфигурацию начальной загрузки приложения чистой и простой.</p> <p>Говоря о контроллерах представлений и более общих представлениях, на которые контроллеры перенаправляют запросы, до сих пор вы использовали Thymeleaf для всех своих представлений. Мне нравится Thymeleaf, но, может, вы предпочитаете другой шаблонизатор для отображения данных приложения. Давайте посмотрим на другие шаблонизаторы поддерживаемые Spring.</p> <p>2.5 Выбор библиотеки шаблонов представлений</p> <p>В большинстве случаев выбор библиотеки шаблонов представлений зависит от личных предпочтений. Spring очень гибка и поддерживает множество распространенных вариантов шаблонов. За некоторыми небольшими исключениями, библиотека шаблонов, которую вы выберете, сама не будет иметь представления о том, что она даже работает с Spring (одним из таких исключений является -Spring Security dialect Thymeleaf, о котором мы поговорим в главе 4).</p> <p>Таблица 2.2 Каталог опции шаблона, поддерживаемые автоконфигурацией Spring Boot.</p> <empty-line/> <p>Шаблоны</p> <p>Spring Boot starter зависимости</p> <empty-line/> <p>FreeMarker</p> <p>spring-boot-starter-freemarker</p> <empty-line/> <p>Groovy Templates</p> <p>spring-boot-starter-groovy-templates</p> <empty-line/> <p>JavaServer Pages (JSP)</p> <p>Нет (предоставлено Tomcat или Jetty)</p> <empty-line/> <p>Mustache</p> <p>spring-boot-starter-mustache</p> <empty-line/> <p>Thymeleaf</p> <p>spring-boot-starter-thymeleaf</p> <empty-line/> <p>Вообще говоря, вы выбираете нужную библиотеку шаблонов представления, добавляете ее в качестве зависимости в сборку и начинаете писать шаблоны в каталоге /templates (в каталоге src/main/resources в проекте, построенном на Maven или Gradle). Spring Boot обнаружит выбранную библиотеку шаблонов и автоматически настроит компоненты, необходимые для обслуживания представлений контроллеров Spring MVC.</p> <p>Вы уже сделали это с Thymeleaf для приложения Taco Cloud. В главе 1 при инициализации проекта был установлен флажок Thymeleaf. Это привело к Spring Boot Thymeleaf starter-у в файле pom.xml. При запуске приложения автоконфигурация Spring Boot обнаруживает наличие Thymeleaf и автоматически настраивает bean-ы Thymeleaf для вас. Все, что вам нужно было сделать, это начать писать шаблоны в /templates.</p> <p>Если вы предпочитаете использовать другую библиотеку шаблонов, просто выберите ее при инициализации проекта или отредактируйте существующую сборку проекта, чтобы включить новую выбранную библиотеку шаблонов.</p> <p>Например, скажем, вы захотели использовать Mustache вместо Thymeleaf. Не проблема. Просто откройте в проекте pom.xml-файл и замените объявление,</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-thymeleaf</artifactId></p> <empty-line/> <p></dependency></p> <p>на:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-mustache</artifactId></p> <empty-line/> <p></dependency></p> <p>Конечно, вам нужно будет убедиться, что вы пишете все шаблоны с синтаксисом Mustache вместо тегов Thymeleaf. Особенности работы с Mustache(или любой из вариантов языка шаблона) выходят далеко за рамки этой книги, но чтобы дать вам представление о том, чего ожидать, вот фрагмент из шаблона Mustache, который будет отображать одну из групп ингредиентов в форме дизайна taco:</p> <p><h3>Designate your wrap:</h3></p> <empty-line/> <p>{{#wrap}}</p> <empty-line/> <p><div></p> <empty-line/> <p> <input name="ingredients" type="checkbox" value="{{id}}" /></p> <empty-line/> <p> <span>{{name}}</span><br/></p> <empty-line/> <p></div></p> <empty-line/> <p>{{/wrap}}</p> <p>Это Mustache эквивалент фрагмента Thymeleaf в разделе 2.1.3. Блок {{#wrap}} (который завершается {{/wrap}}) перебирает коллекцию в атрибуте запроса, ключом которого является wrap, и отображает встроенный HTML для каждого элемента. Теги {{{id}} и {{name}} ссылаются на свойства id и name элемента (который должен быть Ingredient).</p> <p>Вы заметили в таблице 2.2, что JSP не требует каких-либо специальных зависимостей в сборке. Это потому, что сам контейнер сервлета (Tomcat по умолчанию) реализует спецификацию JSP, таким образом не требуя никаких дополнительных зависимостей.</p> <p>Но есть проблема, если вы решите использовать JSP. Как оказалось, контейнеры сервлетов Java, включая встроенные контейнеры Tomcat и Jetty, обычно ищут JSP где—то в /WEB-INF. Но если вы создаете приложение в виде исполняемого файла JAR, нет способа удовлетворить это требование. Таким образом JSP является вариантом только, если вы создаете приложение в виде файла WAR и развертывания его в контейнере традиционного сервлета. При создании исполняемого файла JAR необходимо выбрать Thymeleaf, FreeMarker или один из других вариантов из таблицы 2.2.</p> <p>2.5.1 Кэширование шаблонов</p> <p>По умолчанию шаблоны анализируются только один раз при первом использовании и результаты этого анализа кэшируются для последующего использования. Это отличная функция для производительности, так как она предотвращает избыточный парсинг шаблонов по каждому запросу и, таким образом, повышает производительность.</p> <p>Однако эта функция не так полезна во время разработки. Предположим, вы запускаете свое приложение и нажимаете страницу создания тако и решаете внести в нее несколько изменений. При обновлении веб-браузера вам все равно будет показана исходная версия. Единственный способ увидеть изменения-перезапустить приложение, что довольно неудобно.</p> <p>К счастью, есть способ отключить кэширование. Все, что вам нужно сделать, это установить свойство кэширования, соответствующее шаблону, в false. В таблице 2.3 перечислены свойства кэширования для каждого из поддерживаемых библиотек шаблонов.</p> <p>Таблица 2.3 Свойства включения/отключения кэширования шаблонов</p> <empty-line/> <p>Шаблоны</p> <p>Свойство включения кэширования</p> <empty-line/> <p>FreeMarker</p> <p>spring.freemarker.cache</p> <empty-line/> <p>Groovy Templates</p> <p>spring.groovy.template.cache</p> <empty-line/> <p>Mustache</p> <p>spring.mustache.cache</p> <empty-line/> <p>Thymeleaf</p> <p>spring.thymeleaf.cache</p> <empty-line/> <p>По умолчанию, все эти свойства имеют значение true, чтобы включить кэширование. Можно отключить кэширование для выбранного шаблонизатора, установив для его свойства cache значение false. Например, чтобы отключить кэширование Thymeleaf, добавьте следующую строку в application.properties:</p> <p>spring.thymeleaf.cache=false</p> <p>Единственная загвоздка заключается в том, что перед развертыванием приложения в рабочей среде необходимо удалить эту строку (или задать для нее значение true). Одним из вариантов является установка свойства в профиле. (Мы поговорим о профилях в главе 5.)</p> <p>Гораздо более простой вариант-использовать DevTools Spring Boot, как мы решили сделать в главе 1. Среди множества полезных функций, предлагаемых DevTools во время разработки, он отключит кэширование для всех библиотек шаблонов, но отключит себя (и, следовательно, включит кэширование шаблонов) при развертывании приложения.</p> <p>ИТОГ</p> <p>Spring предлагает мощный веб-фреймворк под названием Spring MVC, который может быть использован для разработки веб-интерфейса для Spring-приложения.</p> <p>Spring MVC - базовые аннотации, позволяющие создать методы обработки запросов с аннотациями, такие как @RequestMapping, @GetMapping, и @PostMapping.</p> <p>Большинство методов обработки запросов завершаются возвращением логического имени представления, например шаблона Thymeleaf, на который передается запрос (вместе с любыми данными модели).</p> <p>Spring MVC поддерживает Java Bean Validation API и реализаций Validation API такие как Hibernate Validator.</p> <p>View контроллеры могут быть использованы для обработки HTTP-запросов GET, для которых не требуется модели данных или обработки.</p> <p>В дополнение к Thymeleaf Spring поддерживает различные параметры просмотра, включая FreeMarker, Groovy Templates и Mustache.</p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/04/spring-in-action-covers-spring-50-3.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 3</a></p> <p>3. Работа с данными</p> <p><emphasis>Эта глава охватывает:</emphasis></p> <p><emphasis>Используя Spring JdbcTemplate</emphasis></p> <p><emphasis>Вставка данных посредством SimpleJdbcInsert</emphasis></p> <p><emphasis>Объявление -JPA - репозиториев с данными Spring</emphasis></p> <p>Большинство приложений предлагают больше, чем просто красивый интерфейс. Хотя пользовательский интерфейс может обеспечить взаимодействие с приложением, именно данные, которые он представляет и хранит, отличают приложения от статических веб-сайтов.</p> <p>В приложении Taco Cloud необходимо поддерживать информацию об ингредиентах, тако и заказах. Без базы данных для хранения этой информации, приложение не сможет развиваться дальше, чем то, что вы разработали в главе 2.</p> <p>В этой главе вы добавите сохраняемость данных в приложение Taco Cloud. Вы начнете с использования поддержки Spring для JDBC (Java Database Connectivity) для устранения шаблонного кода. Затем вы переработаете репозитории данных для работы с JPA (Java Persistence API), исключив еще больше кода.</p> <p>3.1 Чтение и запись данных с помощью JDBC</p> <p>На протяжении десятилетий реляционные базы данных и SQL занимали лидирующие позиции в области сохранения данных. Несмотря на то, что в последние годы появилось много альтернативных типов баз данных, реляционная база данных по-прежнему является лучшим выбором для хранилища данных общего назначения и вряд ли будет узурпирована в ближайшее время.</p> <p>Когда дело доходит до работы с реляционными данными, у разработчиков Java есть несколько вариантов. Два наиболее распространенных варианта это JDBC и JPA. Spring поддерживает оба из них с абстракциями, что делает работу с JDBC или JPA проще, чем было бы без Spring. В этом разделе мы сосредоточимся на том, как Spring поддерживает JDBC, а затем рассмотрим поддержку Spring для JPA в разделе 3.2.</p> <p>Поддержка Spring JDBC внедрена в класс JdbcTemplate. JdbcTemplate предоставляет средство, с помощью которого разработчики могут выполнять операции SQL в реляционной базе данных без всех церемоний и шаблонов которые обычно требуется при работе с JDBC.</p> <p>Чтобы понять, для чего нужен JdbcTemplate, давайте посмотрим на примере, как выполнить простой запрос в Java без JdbcTemplate.</p> <p>листинг 3.1 Запрос к базе данных без JdbcTemplate</p> <p>@Override</p> <empty-line/> <p>public Ingredient findOne(String id) {</p> <empty-line/> <p> Connection connection = null;</p> <empty-line/> <p> PreparedStatement statement = null;</p> <empty-line/> <p> ResultSet resultSet = null;</p> <empty-line/> <p> try {</p> <empty-line/> <p> connection = dataSource.getConnection();</p> <empty-line/> <p> statement = connection.prepareStatement(</p> <empty-line/> <p> "select id, name, type from Ingredient");</p> <empty-line/> <p> statement.setString(1, id);</p> <empty-line/> <p> resultSet = statement.executeQuery();</p> <empty-line/> <p> Ingredient ingredient = null;</p> <empty-line/> <p> if(resultSet.next()) {</p> <empty-line/> <p> ingredient = new Ingredient(</p> <empty-line/> <p> resultSet.getString("id"),</p> <empty-line/> <p> resultSet.getString("name"),</p> <empty-line/> <p> Ingredient.Type.valueOf(resultSet.getString("type")));</p> <empty-line/> <p> }</p> <empty-line/> <p> return ingredient;</p> <empty-line/> <p> } catch (SQLException e) {</p> <empty-line/> <p> // ??? Что нужно сделать в этом случае ???</p> <empty-line/> <p> } finally {</p> <empty-line/> <p> if (resultSet != null) {</p> <empty-line/> <p> try {</p> <empty-line/> <p> resultSet.close();</p> <empty-line/> <p> } catch (SQLException e) {}</p> <empty-line/> <p> }</p> <empty-line/> <p> if (statement != null) {</p> <empty-line/> <p> try {</p> <empty-line/> <p> statement.close();</p> <empty-line/> <p> } catch (SQLException e) {}</p> <empty-line/> <p> }</p> <empty-line/> <p> if (connection != null) {</p> <empty-line/> <p> try {</p> <empty-line/> <p> connection.close();</p> <empty-line/> <p> } catch (SQLException e) {}</p> <empty-line/> <p> }</p> <empty-line/> <p> }</p> <empty-line/> <p> return null;</p> <empty-line/> <p>}</p> <p>Уверяю вас, что где-то в листинге 3.1 есть пара строк, которые запрашивают в базе данных ингредиенты. Но бьюсь об заклад, вам было трудно обнаружить иголку запроса в стоге сена JDBC. Он окружен кодом, который создает соединение, создает оператор и очищает, закрывая соединение, оператор и результирующий набор.</p> <p>Что еще хуже, что угодно всего может пойти не так при создании соединения или инструкции, или при выполнении запроса. Это требует, чтобы вы поймали SQLException, который может или не может быть полезен в выяснении того, что пошло не так или как решить проблему.</p> <p>SQLException является проверяемым исключением, которое требует обработки в блоке catch. Но наиболее распространенные проблемы, такие как неспособность создать соединение с базой данных или неправильно набранный запрос, не могут быть решены в блоке catch и, вероятно, будут перепрофилированы для обработки в восходящем направлении. Теперь посмотрим чем отличается код с использованием JdbcTemplate.</p> <p>листинг 3.2 Запрос к базе данных с JdbcTemplate</p> <p>private JdbcTemplate jdbc;</p> <empty-line/><empty-line/> <p>@Override</p> <empty-line/> <p>public Ingredient findOne(String id) {</p> <empty-line/> <p> return jdbc.queryForObject(</p> <empty-line/> <p> "select id, name, type from Ingredient where id=?",</p> <empty-line/> <p> this::mapRowToIngredient, id);</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p>private Ingredient mapRowToIngredient(ResultSet rs, int rowNum)</p> <empty-line/> <p> throws SQLException {</p> <empty-line/> <p> return new Ingredient(</p> <empty-line/> <p> rs.getString("id"),</p> <empty-line/> <p> rs.getString("name"),</p> <empty-line/> <p> Ingredient.Type.valueOf(rs.getString("type")));</p> <empty-line/> <p>}</p> <p>Код в листинге 3.2 явно намного проще, чем исходный пример JDBC в листинге 3.1; никаких инструкций или соединений не создается. И, после того, как метод закончен, нет никакой очистки объектов. Наконец, нет никакой обработки исключений, которые не могут быть должным образом обработаны в блоке catch. То, что осталось - это код, который сосредоточился исключительно на выполнении запроса (вызова Jdbctemplate метода queryForObject()) и отображение результатов в объекте ингредиент (в mapRowToIngredient() методе).</p> <p>Код в листинге 3.2 представляет собой фрагмент того, что необходимо сделать для использования JdbcTemplate для сохранения и чтения данных в приложении Taco Cloud. Давайте предпримем следующие шаги, необходимые для улучшения приложения с сохранением JDBC. Начнем с нескольких настроек объектов домена.</p> <p>3.1.1 адаптация домена для сохранения.</p> <p>При сохранении объектов в базе данных обычно рекомендуется иметь одно поле, которое однозначно идентифицирует объект. В вашем классе ингредиентов уже есть поле id, но вам нужно добавить поля id как в Taco, так и в Order.</p> <p>Кроме того, может быть полезно знать, когда создан Taco и когда создан Order. Кроме того, к каждому объекту необходимо добавить поле для записи даты и времени сохранения объектов. В следующем списке показаны новые поля id и createdAt, необходимые в классе Taco.</p> <p>Листинг 3.3 Добавление ID и поля времени в класс Taco</p> <p>@Data</p> <empty-line/> <p>public class Taco {</p> <empty-line/> <p> private Long id;</p> <empty-line/> <p> private Date createdAt;</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Поскольку Lombok используется для автоматического создания методов доступа во время выполнения, нет необходимости делать что-либо большее, чем объявлять свойства id и createdAt. Они будут иметь соответствующие методы getter и setter по мере необходимости во время выполнения. Подобные изменения требуются и в классе Order, как показано здесь:</p> <p>@Data</p> <empty-line/> <p>public class Order {</p> <empty-line/> <p> private Long id;</p> <empty-line/> <p> private Date placedAt;</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Опять же, Lombok автоматически генерирует методы метода доступа, поэтому это единственные изменения, необходимые в Order. (Если по какой-то причине вы решили не использовать Lombok, вам нужно будет написать эти методы самостоятельно.)</p> <p>Классы домена теперь готовы к сохранению. Давайте посмотрим, как использовать JdbcTemplate для чтения и записи в базу данных.</p> <p>3.1.2 Работа с JdbcTemplate</p> <p>Перед началом использования JdbcTemplate необходимо добавить его в путь к классам проекта. Это можно легко сделать, добавив в сборку зависимость JDBC starter от Spring Boot:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-jdbc</artifactId></p> <empty-line/> <p></dependency></p> <p>Вам также понадобится база данных, в которой будут храниться ваши данные. Для наших целей, встроенная база данных будет идеальна. Я предпочитаю встроенную базу данных H2, поэтому я добавил следующую зависимость в сборку:</p> <p><dependency></p> <empty-line/> <p> <groupId>com.h2database</groupId></p> <empty-line/> <p> <artifactId>h2</artifactId></p> <empty-line/> <p> <scope>runtime</scope></p> <empty-line/> <p></dependency></p> <p>Позже, вы увидите, как настроить приложение для использования внешней базы данных. Но сейчас, давайте перейдем к написанию репозитория, который извлекает и сохраняет данные Ingredient.</p> <p>ОПРЕДЕЛЕНИЕ РЕПОЗИТОРИЕВ JDBC</p> <p>Репозиторий Ingredient должен выполнять следующие операции:</p> <p>Query запрос всех ингредиентов в коллекцию Ingredient объектов</p> <p>Запрос одного Ingredient по его id</p> <p>Сохранить объект Ingredient</p> <p>Следующий интерфейс IngredientRepository определяет эти три операции объявляя методы:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import tacos.Ingredient;</p> <empty-line/> <p>public interface IngredientRepository {</p> <empty-line/> <p> Iterable<Ingredient> findAll();</p> <empty-line/> <p> Ingredient findOne(String id);</p> <empty-line/> <p> Ingredient save(Ingredient ingredient);</p> <empty-line/> <p>}</p> <p>Несмотря на то, что интерфейс отражает суть того, что вам нужно сделать в репозитории ингредиентов, вам все равно нужно написать реализацию IngredientRepository, использующую JdbcTemplate для запроса к базе данных. Код, показанный далее, является первым шагом в написании этой реализации.</p> <p>листинг 3.4 -Начало репозиторий ингредиент с JdbcTemplate</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import org.springframework.beans.factory.annotation.Autowired;</p> <empty-line/> <p>import org.springframework.jdbc.core.JdbcTemplate;</p> <empty-line/> <p>import org.springframework.jdbc.core.RowMapper;</p> <empty-line/> <p>import org.springframework.stereotype.Repository;</p> <empty-line/> <p>import tacos.Ingredient;</p> <empty-line/><empty-line/> <p>@Repository</p> <empty-line/> <p>public class JdbcIngredientRepository implements IngredientRepository {</p> <empty-line/> <p> private JdbcTemplate jdbc;</p> <empty-line/><empty-line/> <p> @Autowired</p> <empty-line/> <p> public JdbcIngredientRepository(JdbcTemplate jdbc) {</p> <empty-line/> <p> this.jdbc = jdbc;</p> <empty-line/> <p> }</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, JdbcIngredientRepository аннотируется @Repository. Эта аннотация является одной из немногих аннотаций стереотипов, которые определяет Spring, включая @Controller и @Component. Аннотируя JdbcIngredientRepository с помощью @Repository, вы объявляете, что он должен быть автоматически обнаружен при сканировании компонентов Spring и создан как bean в контексте приложения Spring.</p> <p>Когда Spring создает bean JdbcIngredientRepository, он внедряет JdbcTemplate через аннотированную конструкцию @Autowired. Конструктор назначает JdbcTemplate переменной экземпляра, которая будет использоваться в других методах для запроса и вставки в базу данных. Говоря об остальных методах, давайте взглянем на реализации findAll () и findById ().</p> <p>Листинг 3.5 запросы к базе данных с JdbcTemplate</p> <p>@Override</p> <empty-line/> <p>public Iterable<Ingredient> findAll() {</p> <empty-line/> <p> return jdbc.query("select id, name, type from Ingredient",</p> <empty-line/> <p> this::mapRowToIngredient);</p> <empty-line/> <p>}</p> <empty-line/><empty-line/> <p>@Override</p> <empty-line/> <p>public Ingredient findOne(String id) {</p> <empty-line/> <p> return jdbc.queryForObject(</p> <empty-line/> <p> "select id, name, type from Ingredient where id=?",</p> <empty-line/> <p> this::mapRowToIngredient, id);</p> <empty-line/> <p>}</p> <empty-line/><empty-line/> <p>private Ingredient mapRowToIngredient(ResultSet rs, int rowNum) throws QLException {</p> <empty-line/> <p> return new Ingredient(</p> <empty-line/> <p> rs.getString("id"),</p> <empty-line/> <p> rs.getString("name"),</p> <empty-line/> <p> Ingredient.Type.valueOf(rs.getString("type")));</p> <empty-line/> <p>}</p> <p>findAll() и findById() используют JdbcTemplate аналогичным образом. Метод findAll(), ожидающий возврата коллекции объектов, использует JdbcTemplate метод запроса. Метод query() принимает SQL для запроса, а также реализацию Spring-овского RowMapper с целью сопоставления каждой строки в результирующем наборе объекту. findAll() также принимает в качестве окончательного аргумента (аргументов) список любых параметров, необходимых в запросе. Но, в данном случае, нет никаких обязательных параметров.</p> <p>Метод findById() возвращает только один объект ингредиента, поэтому он использует метод queryForObject() JdbcTemplate вместо query(). queryForObject() работает так же, как query(), за исключением того, что возвращает один объект вместо списка объектов. В этом случае ему дается запрос для выполнения, RowMapper и id Ingredient для выборки, который используется вместо ? в запросе.</p> <p>Как показано в листинге 3.5, параметр RowMapper для findAll() и findById() задается как ссылка на метод mapRowToIngredient(). Ссылки на методы Java 8 и лямбда-выражения удобны при работе с JdbcTemplate в качестве альтернативы явной реализации RowMapper. Но если по какой-то причине вы хотите или нуждаетесь в явном RowMapper, то следующая реализация findAll() показывает, как это сделать:</p> <p>@Override</p> <empty-line/> <p>public Ingredient findOne(String id) {</p> <empty-line/> <p> return jdbc.queryForObject(</p> <empty-line/> <p> "select id, name, type from Ingredient where id=?",</p> <empty-line/> <p> new RowMapper<Ingredient>() {</p> <empty-line/> <p> public Ingredient mapRow(ResultSet rs, int rowNum) throws SQLException {</p> <empty-line/> <p> return new Ingredient(</p> <empty-line/> <p> rs.getString("id"),</p> <empty-line/> <p> rs.getString("name"),</p> <empty-line/> <p> Ingredient.Type.valueOf(rs.getString("type")));</p> <empty-line/> <p> };</p> <empty-line/> <p> }, id);</p> <empty-line/> <p>}</p> <p>Чтение данных из базы данных-это только часть истории. В какой-то момент данные должны быть записаны в базу данных, чтобы их можно было прочитать. Итак, давайте рассмотрим реализацию метода save().</p> <p>ВСТАВКА СТРОКИ</p> <p>Метод update() JdbcTemplate может использоваться для любого запроса, который записывает или обновляет данные в базе данных. И, как показано в следующем листинге, его можно использовать для вставки данные в базу данных.</p> <p>Листинг 3.6 вставка данных с использованием JdbcTemplate</p> <p>@Override</p> <empty-line/> <p>public Ingredient save(Ingredient ingredient) {</p> <empty-line/> <p> jdbc.update(</p> <empty-line/> <p> "insert into Ingredient (id, name, type) values (?, ?, ?)",</p> <empty-line/> <p> ingredient.getId(),</p> <empty-line/> <p> ingredient.getName(),</p> <empty-line/> <p> ingredient.getType().toString());</p> <empty-line/> <p> return ingredient;</p> <empty-line/> <p>}</p> <p>Поскольку нет необходимости сопоставлять данные ResultSet с объектом, метод update() намного проще, чем query() или queryForObject (). Для него требуется только String, содержащий SQL, а также значения, для параметров запроса. В данном случае запрос имеет три параметра, которые соответствуют последним трем параметрам запроса метода save() - ID ингредиента, name и type.</p> <p>С JdbcIngredientRepository закончили, теперь вы можете внедрить его в DesignTacoController и использовать его для предоставления списка объектов Ingredient вместо использования жестко закодированных значений (как вы сделали в главе 2). Изменения в DesignTacoController показаны далее.</p> <p>Листинг 3.7 Внедрение и использование репозитория в контроллере</p> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/design")</p> <empty-line/> <p>@SessionAttributes("order")</p> <empty-line/> <p>public class DesignTacoController {</p> <empty-line/> <p> private final IngredientRepository ingredientRepo;</p> <empty-line/><empty-line/> <p> @Autowired</p> <empty-line/> <p> public DesignTacoController(IngredientRepository ingredientRepo) {</p> <empty-line/> <p> this.ingredientRepo = ingredientRepo;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @GetMapping</p> <empty-line/> <p> public String showDesignForm(Model model) {</p> <empty-line/> <p> List<Ingredient> ingredients = new ArrayList<>();</p> <empty-line/> <p> ingredientRepo.findAll().forEach(i -> ingredients.add(i));</p> <empty-line/> <p> Type[] types = Ingredient.Type.values();</p> <empty-line/> <p> for (Type type : types) {</p> <empty-line/> <p> model.addAttribute(type.toString().toLowerCase(),</p> <empty-line/> <p> filterByType(ingredients, type));</p> <empty-line/> <p> }</p> <p> return "design";</p> <p> }</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Обратите внимание, что вторая строка метода showDesignForm() теперь вызывает метод findAll() внедренного IngredientRepository. Метод findAll() извлекает все ингредиенты из базы данных перед их фильтрацией в различные типы в модели.</p> <p>Вы почти готовы запустить приложение и попробовать эти изменения. Но прежде чем начать чтение данных из таблицы Ingredient, которая используется в запросе, вероятно, следует создать эту таблицу и заполнить ее хоть какими-то данными ингредиентов.</p> <p>3.1.3 Создание схемы и предварительная загрузка данных</p> <p>Помимо таблицы Ingredient, вам также понадобятся некоторые таблицы, содержащие информацию о заказах и составе тако. На рисунке 3.1 показаны необходимые таблицы, а также связи между ними.</p> <empty-line/> <p><image l:href="#img_13"/></p> <p>Рисунок 3.1 таблицы схемы Taco Cloud</p> <p> </p> <p>Таблицы на рис. 3.1 служат следующим целям:</p> <p>Ingredient - содержит информацию об ингредиенте</p> <p>Taco - содержит важную информацию о составе taco</p> <p>Taco_Ingredients - содержит одну или несколько строк для каждой строки в Taco, сопоставляя taco с ингредиентами для этого taco</p> <p>Taco_Order-содержит важные данные order</p> <p>Taco_Order_Tacos - содержит одну или несколько строк для каждой строки в Taco_Order, сопоставляя order с taco-ми в заказе</p> <p>Следующий листинг показывает SQL, который создает таблицы.</p> <p>Листинг 3.8 Схема Taco Cloud</p> <p>create table if not exists Ingredient (</p> <empty-line/> <p> id varchar(4) not null,</p> <empty-line/> <p> name varchar(25) not null,</p> <empty-line/> <p> type varchar(10) not null</p> <empty-line/> <p>);</p> <empty-line/><empty-line/> <p>create table if not exists Taco (</p> <empty-line/> <p> id identity,</p> <empty-line/> <p> name varchar(50) not null,</p> <empty-line/> <p> createdAt timestamp not null</p> <empty-line/> <p>);</p> <empty-line/><empty-line/> <p>create table if not exists Taco_Ingredients (</p> <empty-line/> <p> taco bigint not null,</p> <empty-line/> <p> ingredient varchar(4) not null</p> <empty-line/> <p>);</p> <empty-line/> <p>alter table Taco_Ingredients add foreign key (taco) references Taco(id);</p> <empty-line/> <p>alter table Taco_Ingredients add foreign key (ingredient) references Ingredient(id);</p> <empty-line/> <p>create table if not exists Taco_Order (</p> <empty-line/> <p> id identity,</p> <empty-line/> <p> deliveryName varchar(50) not null,</p> <empty-line/> <p> deliveryStreet varchar(50) not null,</p> <empty-line/> <p> deliveryCity varchar(50) not null,</p> <empty-line/> <p> deliveryState varchar(2) not null,</p> <empty-line/> <p> deliveryZip varchar(10) not null,</p> <empty-line/> <p> ccNumber varchar(16) not null,</p> <empty-line/> <p> ccExpiration varchar(5) not null,</p> <empty-line/> <p> ccCVV varchar(3) not null,</p> <empty-line/> <p> placedAt timestamp not null</p> <empty-line/> <p>);</p> <empty-line/><empty-line/> <p>create table if not exists Taco_Order_Tacos (</p> <empty-line/> <p> tacoOrder bigint not null,</p> <empty-line/> <p> taco bigint not null</p> <empty-line/> <p>);</p> <empty-line/><empty-line/> <p>alter table Taco_Order_Tacos add foreign key (tacoOrder) references Taco_Order(id);</p> <empty-line/> <p>alter table Taco_Order_Tacos add foreign key (taco) references Taco(id);</p> <p>Большой вопрос заключается в том, куда поместить это определение схемы. Как оказалось, Spring Boot содержит ответ на этот вопрос.</p> <p>Если есть файл с именем schema.sql в корне classpath приложения, а затем SQL в этом файле будет выполняться в базе данных при запуске приложения. Поэтому содержимое листинга 3.8 следует поместить в проект в виде файла с именем schema.sql в папке src/main/resources.</p> <p>Вам также необходимо предварительно загрузить базу данных с данными по ингредиентам. К счастью, Spring Boot также выполнит файл с именем data.sql из корня classpath при запуске приложения. Таким образом, вы можете заполнить базу данных данными ингредиентов, используя инструкции insert в следующем листинге, размещенном в src/main/resources/data.sql.</p> <p>Листинг 3.9 Предзаполнение БД</p> <p>delete from Taco_Order_Tacos;</p> <empty-line/> <p>delete from Taco_Ingredients;</p> <empty-line/> <p>delete from Taco;</p> <empty-line/> <p>delete from Taco_Order;</p> <empty-line/> <p>delete from Ingredient;</p> <empty-line/><empty-line/> <p>insert into Ingredient (id, name, type) values ('FLTO', 'Flour Tortilla', 'WRAP');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('COTO', 'Corn Tortilla', 'WRAP');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('GRBF', 'Ground Beef', 'PROTEIN');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('CARN', 'Carnitas', 'PROTEIN');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('TMTO', 'Diced Tomatoes', 'VEGGIES');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('LETC', 'Lettuce', 'VEGGIES');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('CHED', 'Cheddar', 'CHEESE');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('JACK', 'Monterrey Jack', 'CHEESE');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('SLSA', 'Salsa', 'SAUCE');</p> <empty-line/> <p>insert into Ingredient (id, name, type) values ('SRCR', 'Sour Cream', 'SAUCE');</p> <p>Несмотря на то, что вы только разработали хранилище для данных ингредиентов, вы можете запустить приложение Taco Cloud на этом этапе и посетить страницу проектирования, чтобы увидеть JdbcIngredientRepository в действии. Ну же… попробуйте. Когда вы вернетесь к чтению, вы напишете репозитории для сохранения Taco, Order и data.</p> <p>3.1.4 Вставка данных</p> <p>Вы уже имели представление о том, как использовать JdbcTemplate для записи данных в базу данных. Метод save() в JdbcIngredientRepository использовал метод update() JdbcTemplate для сохранения объектов ингредиентов в базе данных.</p> <p>Хотя это был хороший первый пример, возможно, это было слишком просто. Как вы скоро увидите, сохранение данных может быть более сложным, чем то, что необходимо JdbcIngredientRepository. Два способа сохранения данных с помощью JdbcTemplate включают следующее:</p> <p>Напрямую, используя метод update()</p> <p>С помощью класса-оболочки SimpleJdbcInsert</p> <p>Давайте сначала посмотрим, как использовать метод update(), когда задача сложнее, чем та, что была при сохранение Ingredient.</p> <p>СОХРАНЕНИЕ ДАННЫХ С ПОМОЩЬЮ JDBCTEMPLATE</p> <p>На данный момент единственное, что нужно сделать в репозиториях taco и order, это сохранение их соответствующие объекты. Чтобы сохранить объекты Taco, TacoRepository объявляет метод save():</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import tacos.Taco;</p> <empty-line/> <p>public interface TacoRepository {</p> <empty-line/> <p> Taco save(Taco design);</p> <empty-line/> <p>}</p> <p>Аналогичным образом OrderRepository также объявляет метод save:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import tacos.Order;</p> <empty-line/><empty-line/> <p>public interface OrderRepository {</p> <empty-line/> <p> Order save(Order order);</p> <empty-line/> <p>}</p> <p>Кажется достаточно простым, верно? Не так быстро. Сохранение состава taco требует, чтобы вы также сохранили ингредиенты, связанные с этим taco в таблицу Taco_Ingredients. Точно так же сохранение заказа требует, чтобы вы также сохранили tacos, привязанные к заказу в таблице Taco_Order_Tacos. Это делает сохранение тако и заказов немного более сложным, чем то, что требовалось для сохранения ингредиента.</p> <p>Для реализации TacoRepository необходим метод save(), который начинается с сохранения основных деталей состава taco (например, имени и времени создания), а затем вставляет одну строку в Taco_Ingredients для каждого ингредиента в объекте Taco. Ниже приведен полный класс JdbcTacoRepository.</p> <p>Листинг 3.10 реализация TacoRepository с JdbcTemplate</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import java.sql.Timestamp;</p> <empty-line/> <p>import java.sql.Types;</p> <empty-line/> <p>import java.util.Arrays;</p> <empty-line/> <p>import java.util.Date;</p> <empty-line/> <p>import org.springframework.jdbc.core.JdbcTemplate;</p> <empty-line/> <p>import org.springframework.jdbc.core.PreparedStatementCreator;</p> <empty-line/> <p>import org.springframework.jdbc.core.PreparedStatementCreatorFactory;</p> <empty-line/> <p>import org.springframework.jdbc.support.GeneratedKeyHolder;</p> <empty-line/> <p>import org.springframework.jdbc.support.KeyHolder;</p> <empty-line/> <p>import org.springframework.stereotype.Repository;</p> <empty-line/><empty-line/> <p>import tacos.Ingredient;</p> <empty-line/> <p>import tacos.Taco;</p> <empty-line/><empty-line/> <p>@Repository</p> <empty-line/> <p>public class JdbcTacoRepository implements TacoRepository {</p> <empty-line/><empty-line/> <p> private JdbcTemplate jdbc;</p> <empty-line/><empty-line/> <p> public JdbcTacoRepository(JdbcTemplate jdbc) {</p> <empty-line/> <p> this.jdbc = jdbc;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public Taco save(Taco taco) {</p> <empty-line/> <p> long tacoId = saveTacoInfo(taco);</p> <empty-line/> <p> taco.setId(tacoId);</p> <empty-line/> <p> for (Ingredient ingredient : taco.getIngredients()) {</p> <empty-line/> <p> saveIngredientToTaco(ingredient, tacoId);</p> <empty-line/> <p> }</p> <empty-line/> <p> return taco;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> private long saveTacoInfo(Taco taco) {</p> <empty-line/> <p> taco.setCreatedAt(new Date());</p> <empty-line/> <p> PreparedStatementCreator psc = new PreparedStatementCreatorFactory(</p> <empty-line/> <p> "insert into Taco (name, createdAt) values (?, ?)",</p> <empty-line/> <p> Types.VARCHAR, Types.TIMESTAMP</p> <empty-line/> <p> ).newPreparedStatementCreator(</p> <empty-line/> <p> Arrays.asList(</p> <empty-line/> <p> taco.getName(),</p> <empty-line/> <p> new Timestamp(taco.getCreatedAt().getTime()))</p> <empty-line/> <p> );</p> <empty-line/> <p> KeyHolder keyHolder = new GeneratedKeyHolder();</p> <empty-line/> <p> jdbc.update(psc, keyHolder);</p> <empty-line/> <p> return keyHolder.getKey().longValue();</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> private void saveIngredientToTaco(Ingredient ingredient, long tacoId) {</p> <empty-line/> <p> jdbc.update(</p> <empty-line/> <p> "insert into Taco_Ingredients (taco, ingredient) " +</p> <empty-line/> <p> "values (?, ?)",</p> <empty-line/> <p> tacoId, ingredient.getId()</p> <empty-line/> <p> );</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, метод save() начинается с вызова private метода saveTacoInfo(), а затем использует ID taco, возвращенный из этого метода, для вызова saveIngredientToTaco(), который сохраняет каждый ингредиент. Дьявол кроется в деталях saveTacoInfo().</p> <p>Когда вы вставляете строку в Taco, вам нужно знать идентификатор, сгенерированный базой данных, чтобы вы могли ссылаться на него в каждом из ингредиентов. Метод update(), используемый при сохранении данных ингредиента, не помогает вам получить сгенерированный идентификатор, поэтому вам нужен другой метод update().</p> <p>Метод update () принимает PreparedStatementCreator и KeyHolder. Это KeyHolder, который предоставит сгенерированный идентификатор taco. Но чтобы использовать его, необходимо также создать PreparedStatementCreator.</p> <p>Как видно из листинга 3.10, создание PreparedStatementCreator нетривиально. Начните с создания PreparedStatementCreatorFactory, предоставив ему SQL, который вы хотите выполнить, а также типы каждого параметра запроса. Затем вызовите newPreparedStatementCreator() на этой фабрике, передав значения, необходимые в параметрах запроса для создания PreparedStatementCreator.</p> <p>С PreparedStatementCreator на руках, вы можете вызвать update(), передав в PreparedStatementCreator и KeyHolder (в этом случае экземпляр GeneratedKeyHolder). Как только update() закончено, можно возвратить ID taco, возвращая keyHolder.getKey().longValue().</p> <p>Возвращаясь к save(), в цикле для каждого каждый Ingredient в Taco, вызывается saveIngredientToTaco(). В saveIngredientToTaco() методе используется простая форма update() для сохранения списка ингредиентв таблицу Taco_Ingredients.</p> <p>Все, что осталось сделать с TacoRepository, - это внедрить его в DesignTacoController и использовать его при сохранении Taco. В следующем листинге показаны изменения, необходимые для внедрения репозитория.</p> <p>Листинг 3.11 Внедрение и использование TacoRepository</p> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/design")</p> <empty-line/> <p>@SessionAttributes("order")</p> <empty-line/> <p>public class DesignTacoController {</p> <empty-line/> <p> private final IngredientRepository ingredientRepo;</p> <empty-line/> <p> private TacoRepository designRepo;</p> <empty-line/><empty-line/> <p> @Autowired</p> <empty-line/> <p> public DesignTacoController( IngredientRepository ingredientRepo, TacoRepository designRepo) {</p> <empty-line/> <p> this.ingredientRepo = ingredientRepo;</p> <empty-line/> <p> this.designRepo = designRepo;</p> <empty-line/> <p> }</p> <empty-line/> <p> …</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, конструктор принимает как IngredientRepository, так и TacoRepository. Он назначает переменные экземпляра, чтобы их можно было использовать в методах showDesignForm() и processDesign().</p> <p>Говоря о методе processDesign(), его изменения немного более обширны, чем изменения, которые вы сделали в showDesignForm(). В следующем списке показан новый метод processDesign().</p> <p>Листинг 3.12 сохранение состава taco и их привязка к заказам</p> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/design")</p> <empty-line/> <p>@SessionAttributes("order")</p> <empty-line/> <p>public class DesignTacoController {</p> <empty-line/><empty-line/> <p> @ModelAttribute(name = "order")</p> <empty-line/> <p> public Order order() {</p> <empty-line/> <p> return new Order();</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @ModelAttribute(name = "taco")</p> <empty-line/> <p> public Taco taco() {</p> <empty-line/> <p> return new Taco();</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @PostMapping</p> <empty-line/> <p> public String processDesign( @Valid Taco design, Errors errors, @ModelAttribute Order order) {</p> <empty-line/> <p> if (errors.hasErrors()) {</p> <empty-line/> <p> return "design";</p> <empty-line/> <p> }</p> <empty-line/> <p> Taco saved = designRepo.save(design);</p> <empty-line/> <p> order.addDesign(saved);</p> <empty-line/> <p> return "redirect:/orders/current";</p> <empty-line/> <p> }</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Первое, что можно заметить в коде в листинге 3.12, это то, что DesignTacoController теперь аннотируется SessionAttributes("order") и что у него есть новый аннотированный @ModelAttribute метод order(). Как и в случае с методом taco(), аннотация @ModelAttribute для order() гарантирует, что объект Order будет создан в модели. Но в отличие от объекта Taco в сеансе необходимо, чтобы order присутствовал в нескольких запросах, чтобы можно было создать несколько тако и добавить их в заказ. Аннотация @SessionAttributes на уровне класса задает любые объекты модели, такие как атрибут order, которые должны храниться в сеансе и доступны для нескольких запросов.</p> <p>Реальная обработка состава taco происходит в методе processDesign(), который теперь принимает объект Order в качестве параметра, в дополнение к объектам Taco и Errors. Параметр Order аннотируется @ModelAttribute, чтобы указать, что его значение должно исходить из модели и что Spring MVC не должен пытаться привязать к нему параметры запроса.</p> <p>После проверки на наличие ошибок, processDesign() использует внедренный TacoRepository для сохранения taco. Затем он добавляет объект Taco в Order, который сохраняется в сеансе.</p> <p>Фактически объект Order остается в сеансе и не сохраняется в базе данных до тех пор, пока пользователь не завершит и не отправит форму заказа. В этот момент OrderController должен вызвать реализацию OrderRepository, чтобы сохранить заказ. Давайте напишем эту реализацию.</p> <p>ВСТАВКА ДАННЫХ С SempleJdbcInsert</p> <p>Вы помните, что сохранение тако связано не только с сохранением имени тако и времени создания в таблицу Taco, но и с сохранением ссылки на ингредиенты, связанные с тако, в таблицу Taco_Ingredients. И вы также помните, что это потребовало от вас знать идентификатор Taco, который вы получили с помощью KeyHolder и PreparedStatementCreator.</p> <p>Когда дело доходит до сохранения заказов, существует аналогичное обстоятельство. Необходимо не только сохранить данные заказа в таблице Taco_Order, но также и ссылки на каждый taco в заказе в таблице Taco_Order_Tacos. Но вместо того, чтобы использовать громоздкий PreparedStatementCreator, позвольте мне представить вам SimpleJdbcInsert, объект, который обертывает JdbcTemplate, чтобы упростить вставку данных в таблицу.</p> <p>Начнем с создания JDBCOrderRepository, implementation OrderRepository. Но прежде чем писать реализацию метода save(), давайте сосредоточимся на конструкторе, где вы создадите пару экземпляров SimpleJdbcInsert для вставки значений в таблицы Taco_Order и Taco_Order_Tacos. В следующем листинге показан JDBCOrderRepository (без метода save ()).</p> <p>Листинг 3.13 создание SimpleJdbcInsert из JdbcTemplate</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import java.util.Date;</p> <empty-line/> <p>import java.util.HashMap;</p> <empty-line/> <p>import java.util.List;</p> <empty-line/> <p>import java.util.Map;</p> <empty-line/> <p>import org.springframework.beans.factory.annotation.Autowired;</p> <empty-line/> <p>import org.springframework.jdbc.core.JdbcTemplate;</p> <empty-line/> <p>import org.springframework.jdbc.core.simple.SimpleJdbcInsert;</p> <empty-line/> <p>import org.springframework.stereotype.Repository;</p> <empty-line/> <p>import com.fasterxml.jackson.databind.ObjectMapper;</p> <empty-line/> <p>import tacos.Taco;</p> <empty-line/> <p>import tacos.Order;</p> <empty-line/><empty-line/> <p>@Repository</p> <empty-line/> <p>public class JdbcOrderRepository implements OrderRepository {</p> <empty-line/> <p> private SimpleJdbcInsert orderInserter;</p> <empty-line/> <p> private SimpleJdbcInsert orderTacoInserter;</p> <empty-line/> <p> private ObjectMapper objectMapper;</p> <empty-line/><empty-line/> <p> @Autowired</p> <empty-line/> <p> public JdbcOrderRepository(JdbcTemplate jdbc) {</p> <empty-line/> <p> this.orderInserter = new SimpleJdbcInsert(jdbc)</p> <empty-line/> <p> .withTableName("Taco_Order")</p> <empty-line/> <p> .usingGeneratedKeyColumns("id");</p> <empty-line/> <p> this.orderTacoInserter = new SimpleJdbcInsert(jdbc)</p> <empty-line/> <p> .withTableName("Taco_Order_Tacos");</p> <empty-line/> <p> this.objectMapper = new ObjectMapper();</p> <empty-line/> <p> }</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Как и JdbcTacoRepository, JdbcOrderRepository inject-ид JdbcTemplate через его конструктор. Но вместо назначения JdbcTemplate непосредственно переменной экземпляра конструктор использует его для создания нескольких экземпляров SimpleJdbcInsert.</p> <p>Первый экземпляр, который назначен переменной экземпляра orderInserter, настроен для работы с таблицей Taco_Order и предполагает, что свойство id будет предоставлено или сгенерировано базой данных. Второй экземпляр, назначенный orderTacoInserter, настроен для работы с таблицей Taco_Order_Tacos, но не содержит никаких инструкций о том, как ID будут генерироваться в этой таблице.</p> <p>Конструктор также создает экземпляр Jackson ObjectMapper и присваивает его переменной экземпляра. Хотя Jackson предназначен для обработки JSON, вы увидите, как мы перепрофилируем его, чтобы помочь вам сохранять заказы и связанные с ними тако.</p> <p>Теперь давайте посмотрим, как метод save() использует экземпляры SimpleJdbcInsert. В следующем списке показан метод save(), а также несколько частных методов save(), которые делегируются для реальной работы.</p> <p>Листинг 3.14 использование SimpleJdbcInsert для вставки данных</p> <p>@Override</p> <empty-line/> <p>public Order save(Order order) {</p> <empty-line/> <p> order.setPlacedAt(new Date());</p> <empty-line/> <p> long orderId = saveOrderDetails(order);</p> <empty-line/> <p> order.setId(orderId);</p> <empty-line/> <p> List<Taco> tacos = order.getTacos(); </p> <empty-line/> <p> for (Taco taco : tacos) {</p> <empty-line/> <p> saveTacoToOrder(taco, orderId);</p> <empty-line/> <p> }</p> <empty-line/> <p> return order;</p> <empty-line/> <p>}</p> <empty-line/><empty-line/> <p>private long saveOrderDetails(Order order) {</p> <empty-line/> <p> @SuppressWarnings("unchecked")</p> <empty-line/> <p> Map<String, Object> values = objectMapper.convertValue(order, Map.class);</p> <empty-line/> <p> values.put("placedAt", order.getPlacedAt());</p> <empty-line/> <p> long orderId =orderInserter</p> <empty-line/> <p> .executeAndReturnKey(values)</p> <empty-line/> <p> .longValue();</p> <empty-line/> <p> return orderId;</p> <empty-line/> <p>}</p> <empty-line/><empty-line/> <p>private void saveTacoToOrder(Taco taco, long orderId) {</p> <empty-line/> <p> Map<String, Object> values = new HashMap<>();</p> <empty-line/> <p> values.put("tacoOrder", orderId);</p> <empty-line/> <p> values.put("taco", taco.getId());</p> <empty-line/> <p> orderTacoInserter.execute(values);</p> <empty-line/> <p>}</p> <p>Метод save() ничего не сохраняет. Он определяет поток для сохранения Order и связанных с ним объектов Taco и делегирует работу saveOrderDetails() и saveTacoToOrder().</p> <p>SimpleJdbcInsert имеет несколько полезных методов для выполнения вставкиt: execute() и executeAndReturnKey(). Оба принимают Map<String, Object>, где map-ключи соответствуют именам столбцов в таблице, в которую вставляются данные. Map-значения вставляются в эти столбцы.</p> <p>Такую Map легко создать, скопировав значения из Order в записи Map. Но у Order есть несколько свойств, и все они имеют одинаковое имя со столбцами, в которые они входят. Из-за этого в saveOrderDetails() я решил использовать Jackson ObjectMapper и его метод convertValue() для преобразования Order в Map(Я признаю, что это хакерское использование ObjectMapper, но у вас уже есть Jackson в classpath; Spring Boot’s web starter включает его. Кроме того, использование ObjectMapper для сопоставления объекта с Map намного проще, чем копирование каждого свойства из объекта в Map. Не стесняйтесь заменить использование ObjectMapper любым кодом, который вы предпочитаете, который строит Map, который вы передадите на вставку объектов.). После создания Map задайте для записи placedAt значение свойства placedAt объекта Order. Это необходимо, поскольку в противном случае ObjectMapper преобразует свойство Date в long, что несовместимо с полем placedAt в таблице Taco_Order.</p> <p>С заполненным Map данными заказов, вы можете вызвать executeAndReturnKey() в orderInserter. Это сохраняет информацию о заказе в таблице Taco_Order и возвращает сгенерированный базой данных ID как объект типа Number, который преобразуется long с помощью вызова longValue(), и возвращается из метода.</p> <p>Метод saveTacoToOrder() значительно проще. Вместо того чтобы использовать ObjectMapper для преобразования объекта в Map, создается Map и задаются соответствующие значения. Еще раз, ключи Map соответствуют именам столбцов в таблице. Вызов метода orderTacoInserter.execute() выполняет insert.</p> <p>Теперь вы можете inject OrderRepository в OrderController и начать использовать его. Следующий листинг показывает OrderController, включая изменения для использования inject OrderRepository.</p> <p>Листинг 3.15 использование OrderRepository в OrderController</p> <p>package tacos.web;</p> <empty-line/><empty-line/> <p>import javax.validation.Valid;</p> <empty-line/> <p>import org.springframework.stereotype.Controller;</p> <empty-line/> <p>import org.springframework.validation.Errors;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.PostMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.RequestMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.SessionAttributes;</p> <empty-line/> <p>import org.springframework.web.bind.support.SessionStatus;</p> <empty-line/> <p>import tacos.Order;</p> <empty-line/> <p>import tacos.data.OrderRepository;</p> <empty-line/><empty-line/> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/orders")</p> <empty-line/> <p>@SessionAttributes("order")</p> <empty-line/> <p>public class OrderController {</p> <empty-line/> <p> private OrderRepository orderRepo;</p> <empty-line/><empty-line/> <p> public OrderController(OrderRepository orderRepo) {</p> <empty-line/> <p> this.orderRepo = orderRepo;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @GetMapping("/current")</p> <empty-line/> <p> public String orderForm() {</p> <empty-line/> <p> return "orderForm";</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @PostMapping</p> <empty-line/> <p> public String processOrder(@Valid Order order, Errors errors,SessionStatus sessionStatus) {</p> <empty-line/> <p> if (errors.hasErrors()) {</p> <empty-line/> <p> return "orderForm";</p> <empty-line/> <p> }</p> <empty-line/> <p> orderRepo.save(order);</p> <empty-line/> <p> sessionStatus.setComplete();</p> <empty-line/> <p> return "redirect:/";</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Помимо внедрения OrderRepository в контроллер, единственные существенные изменения в OrderController происходят в методе processOrder(). Здесь объект Order, представленный в форме (который также является тем же самым объектом Order, поддерживаемым в сеансе), сохраняется с помощью метода save() внедренного OrderRepository.</p> <p>После того, как заказ будет сохранен, вам больше не нужно, чтобы он висел в сеансе. Фактически, если вы не очистите его, заказ остается в сеансе, включая связанные с ним тако, и следующий заказ начнется с тако, содержащимися в старом заказе. Поэтому метод processOrder() запрашивает параметр состояния сеанса и вызывает метод setComplete() для сброса сеанса.</p> <p>Весь код сохранения JDBC закончен. Теперь вы можете запустить приложение Taco Cloud и проверить его работоспособность. Не стесняйтесь создавать столько тако и столько заказов, сколько вы хотите.</p> <p>Вы также можете найти полезным покопаться в базе данных. Поскольку вы используете H2 в качестве встроенной базы данных, и поскольку у вас есть Spring Boot DevTools, вы можете обратиться в вашем браузере по адресу http://localhost:8080/h2-console чтобы увидеть консоль H2. По умолчанию поле JDBC URL должно быть установлено как jdbc:h2:mem:testdb. После входа в систему, вы должны быть в состоянии выполнить любой запрос к таблицам схемы Taco Cloud.</p> <p>Spring JdbcTemplate, наряду с SimpleJdbcInsert, делает работу с реляционными базами данных значительно проще, чем простой vanilla JDBC. Но вы можете обнаружить, что JPA делает это еще проще. Давайте пересмотрим вашу работу и посмотрим, как использовать Spring Data, чтобы сделать сохранение данных еще проще.</p> <p>3.2 Сохранение данных с помощью Spring Data JPA</p> <p>Проект Spring Data представляет собой довольно крупный зонтичный (umbrella) проект, состоящий из нескольких подпроектов, большинство из которых сосредоточены на сохранении данных с различными типами баз данных. Некоторые из самых популярных Spring Data проектов включают в себя следующие:</p> <p>Spring Data JPA — Сохранение JPA в реляционной базе данных</p> <p>Spring Data MongoDB — Сохранение в базе данных документов Mongo</p> <p>Spring Data Neo4j — Сохранение в базе данных графов Neo4j</p> <p>Spring Data Redis — Сохранение в хранилище ключей и значений Redis</p> <p>Spring Data Cassandra — Сохранение в базе данных Cassandra</p> <p>Одной из наиболее интересных и полезных функций Spring Data для всех этих проектов является возможность автоматического создания репозиториев на основе интерфейса спецификации репозитория.</p> <p>Чтобы увидеть, как работают Spring Data, потребуется начать все сначала, заменив репозитории на основе JDBC из ранее в этой главе репозиториями, созданными Spring Data JPA. Но сначала нужно добавить Spring Data JPA в сборку проекта.</p> <p>3.2.1 Добавление Spring Data JPA в проект</p> <p>Spring Data JPA доступны для Spring Boot приложений с JPA starter-ом. Эта зависимость стартера не только приносит в Spring Data JPA, но и транзитивно включает Hibernate как реализацию JPA:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-data-jpa</artifactId></p> <empty-line/> <p></dependency></p> <p>Если вы хотите использовать другую реализацию JPA, то вам нужно, по крайней мере, исключить зависимость Hibernate и включить библиотеку JPA по вашему выбору. Например, чтобы использовать EclipseLink вместо Hibernate, необходимо изменить сборку следующим образом:</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-data-jpa</artifactId></p> <empty-line/> <p> <exclusions></p> <empty-line/> <p> <exclusion></p> <empty-line/> <p> <artifactId>hibernate-entitymanager</artifactId></p> <empty-line/> <p> <groupId>org.hibernate</groupId></p> <empty-line/> <p> </exclusion></p> <empty-line/> <p> </exclusions></p> <empty-line/> <p></dependency></p> <empty-line/> <p><dependency></p> <empty-line/> <p> <groupId>org.eclipse.persistence</groupId></p> <empty-line/> <p> <artifactId>eclipselink</artifactId></p> <empty-line/> <p> <version>2.5.2</version></p> <empty-line/> <p></dependency></p> <p>Обратите внимание, что могут потребоваться другие изменения в зависимости от выбранного варианта реализации JPA. Обратитесь к документации к выбранной реализации JPA для деталей. Теперь давайте вернемся к вашим доменным объектам и аннотируем их для сохранения JPA.</p> <p>3.2.2 Аннотирование домена как сущностей</p> <p>Как вы скоро увидите, Spring Data делает удивительные вещи, когда дело доходит до создания репозиториев. Но, к сожалению, это не очень помогает, когда дело доходит до аннотирования объектов домена аннотациями сопоставления JPA. Вам нужно будет открыть Ingredient, Taco и Order классы и добавить в них несколько аннотаций. Первым изменим класс Ingredient.</p> <p>Листинг 3.16 аннотирование Ingredient для сохранения JPA</p> <p>package tacos;</p> <empty-line/><empty-line/> <p>import javax.persistence.Entity;</p> <empty-line/> <p>import javax.persistence.Id;</p> <empty-line/> <p>import lombok.AccessLevel;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/> <p>import lombok.NoArgsConstructor;</p> <empty-line/> <p>import lombok.RequiredArgsConstructor;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>@RequiredArgsConstructor</p> <empty-line/> <p>@NoArgsConstructor(access=AccessLevel.PRIVATE, force=true)</p> <empty-line/> <p>@Entity</p> <empty-line/> <p>public class Ingredient {</p> <empty-line/> <p> @Id</p> <empty-line/> <p> private final String id;</p> <empty-line/> <p> private final String name;</p> <empty-line/> <p> private final Type type;</p> <empty-line/><empty-line/> <p> public static enum Type {</p> <empty-line/> <p> WRAP, PROTEIN, VEGGIES, CHEESE, SAUCE</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Чтобы объявить это как сущность JPA, Ingredient должен быть аннотирован @Entity. И его свойство id должно быть аннотировано @Id, чтобы обозначить его как свойство, которое будет однозначно идентифицировать сущность в базе данных.</p> <p>В дополнение к аннотациям, специфичным для JPA, вы также заметили, что вы добавили аннотацию @NoArgsConstructor на уровне класса. JPA требует, чтобы сущности имели конструктор без аргументов, поэтому @NoArgsConstructor Lombok-а делает это за вас. Однако, вы не хотите, чтобы имелась возможность использовать его, поэтому сделайте его private, установив атрибут доступа AccessLevel.PRIVATE. И поскольку есть final свойства, которые должны быть установлены, вы также устанавливаете атрибут force в true, что приводит к тому, что конструктор, сгенерированный Lombok-ом, устанавливает их в null.</p> <p>Также добавляется @RequiredArgsConstructor. @Data неявно добавляет конструктор обязательных аргументов, но при использовании @NoArgsConstructor этот конструктор удаляется. Явный @RequiredArgsConstructor гарантирует, что у вас все еще будет конструктор обязательных аргументов в дополнение к закрытому конструктору без аргументов.</p> <p>Теперь давайте перейдем к классу Taco и посмотрим, как аннотировать его как сущность JPA.</p> <p>Листинг 3.17 аннотирование Taco как сущности</p> <p>package tacos;</p> <empty-line/><empty-line/> <p>import java.util.Date;</p> <empty-line/> <p>import java.util.List;</p> <empty-line/> <p>import javax.persistence.Entity;</p> <empty-line/> <p>import javax.persistence.GeneratedValue;</p> <empty-line/> <p>import javax.persistence.GenerationType;</p> <empty-line/> <p>import javax.persistence.Id;</p> <empty-line/> <p>import javax.persistence.ManyToMany;</p> <empty-line/> <p>import javax.persistence.OneToMany;</p> <empty-line/> <p>import javax.persistence.PrePersist;</p> <empty-line/> <p>import javax.validation.constraints.NotNull;</p> <empty-line/> <p>import javax.validation.constraints.Size; </p> <empty-line/> <p>import lombok.Data; </p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>@Entity</p> <empty-line/> <p>public class Taco {</p> <empty-line/> <p> @Id</p> <empty-line/> <p> @GeneratedValue(strategy=GenerationType.AUTO)</p> <empty-line/> <p> private Long id;</p> <empty-line/><empty-line/> <p> @NotNull</p> <empty-line/> <p> @Size(min=5, message="Name must be at least 5 characters long")</p> <empty-line/> <p> private String name;</p> <empty-line/> <p> private Date createdAt;</p> <empty-line/><empty-line/> <p> @ManyToMany(targetEntity=Ingredient.class)</p> <empty-line/> <p> @Size(min=1, message="You must choose at least 1 ingredient")</p> <empty-line/> <p> private List<Ingredient> ingredients;</p> <empty-line/> <p> @PrePersist</p> <empty-line/> <p> void createdAt() {</p> <empty-line/> <p> this.createdAt = new Date();</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Как и в случае с Ingredient, класс Taco теперь аннотируется @Entity и имеет свойство id, аннотированное @Id. Поскольку вы полагаетесь на базу данных для автоматического создания значения идентификатора, вы также аннотируете свойство id с помощью @GeneratedValue, указывая стратегию AUTO.</p> <p>Чтобы объявить связь между Taco и связанным с ним списком Ingredient-ов, аннотируйте ingredients с помощью @ManyToMany. Taco может иметь много объектов -Ingredient, и Ingredient может быть частью многих Taco.</p> <p>Вы также заметили, что есть новый метод createdAt(), который аннотируется @PrePersist. Вы будете использовать его, чтобы установить свойство createdAt в текущую дату и время, прежде чем сохранить Taco. Наконец, давайте аннотируем объект Order как сущность. В следующем листинге показан новый класс Order.</p> <p>Листинг 3.18 Аннотирование Order как сущность JPA</p> <p>package tacos;</p> <empty-line/><empty-line/> <p>import java.io.Serializable;</p> <empty-line/> <p>import java.util.ArrayList;</p> <empty-line/> <p>import java.util.Date;</p> <empty-line/> <p>import java.util.List;</p> <empty-line/> <p>import javax.persistence.Entity;</p> <empty-line/> <p>import javax.persistence.GeneratedValue;</p> <empty-line/> <p>import javax.persistence.GenerationType;</p> <empty-line/> <p>import javax.persistence.Id;</p> <empty-line/> <p>import javax.persistence.ManyToMany;</p> <empty-line/> <p>import javax.persistence.OneToMany;</p> <empty-line/> <p>import javax.persistence.PrePersist;</p> <empty-line/> <p>import javax.persistence.Table;</p> <empty-line/> <p>import javax.validation.constraints.Digits;</p> <empty-line/> <p>import javax.validation.constraints.Pattern;</p> <empty-line/> <p>import org.hibernate.validator.constraints.CreditCardNumber;</p> <empty-line/> <p>import org.hibernate.validator.constraints.NotBlank;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>@Entity</p> <empty-line/> <p>@Table(name="Taco_Order")</p> <empty-line/> <p>public class Order implements Serializable {</p> <empty-line/> <p> private static final long serialVersionUID = 1L;</p> <empty-line/><empty-line/> <p> @Id</p> <empty-line/> <p> @GeneratedValue(strategy=GenerationType.AUTO)</p> <empty-line/> <p> private Long id;</p> <empty-line/> <p> private Date placedAt;</p> <empty-line/> <p> ...</p> <empty-line/><empty-line/> <p> @ManyToMany(targetEntity=Taco.class)</p> <empty-line/> <p> private List<Taco> tacos = new ArrayList<>();</p> <empty-line/><empty-line/> <p> public void addDesign(Taco design) {</p> <empty-line/> <p> this.tacos.add(design);</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @PrePersist</p> <empty-line/> <p> void placedAt() {</p> <empty-line/> <p> this.placedAt = new Date();</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, изменения Order похожи на изменения в Taco. Но есть одна новая аннотация на уровне класса: @Table. Это указывает, что сущности Order должны сохраняться в таблице с именем Taco_Order в базе данных.</p> <p>Хотя вы могли бы использовать эту аннотацию на любом из объектов, это необходимо с Order. Без него JPA по умолчанию сохранит сущности в таблице с именем Order, но order является зарезервированным словом в SQL и вызовет проблемы. Теперь, когда сущности должным образом аннотированы, пришло время написать ваши репозитории.</p> <p>3.2.3 Объявление репозиториев JPA</p> <p>В версиях репозиториев JDBC вы явным образом объявили методы, которые должен предоставить репозиторий. Но с Spring Data вместо этого можно расширить интерфейс CrudRepository. Например, вот новый интерфейс IngredientRepository:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import org.springframework.data.repository.CrudRepository;</p> <empty-line/> <p>import tacos.Ingredient;</p> <empty-line/><empty-line/> <p>public interface IngredientRepository</p> <empty-line/> <p> extends CrudRepository<Ingredient, String> {</p> <empty-line/> <p>}</p> <p>CrudRepository объявляет около десятка методов для операций CRUD (create, read, update, delete). Обратите внимание, что он параметризован, при этом первым параметром является тип сущности, который должен сохраняться в репозитории, а вторым параметром тип свойства entity ID. Для IngredientRepository параметрами должны быть Ingredient и String.</p> <p>Аналогичным образом можно определить TacoRepository следующим образом:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import org.springframework.data.repository.CrudRepository;</p> <empty-line/> <p>import tacos.Taco;</p> <empty-line/><empty-line/> <p>public interface TacoRepository</p> <empty-line/> <p> extends CrudRepository<Taco, Long> {</p> <empty-line/> <p>}</p> <p>Единственные существенные различия между IngredientRepositoryв и TacoRepository - это параметры CrudRepository. Здесь они установлены как Taco и Long, чтобы указать сущность Taco (и ее тип идентификатора) в качестве единицы сохранения для этого интерфейса репозитория. Наконец, те же изменения могут быть применены к OrderRepository:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import org.springframework.data.repository.CrudRepository;</p> <empty-line/> <p>import tacos.Order;</p> <empty-line/><empty-line/> <p>public interface OrderRepository</p> <empty-line/> <p> extends CrudRepository<Order, Long> {</p> <empty-line/> <p>}</p> <p>И теперь у вас есть три репозитория. Вы можете подумать, что вам нужно написать реализации для всех трех, включая дюжину методов для каждой реализации. Но в Spring Data JPA - нет необходимости писать реализацию! При запуске приложения Spring Data JPA автоматически создает реализацию на лету. Это означает, что репозитории готовы к использованию с самого начала. Просто вставьте их в контроллеры, как вы сделали для реализаций на основе JDBC, и все готово.</p> <p>Методы, предоставляемые CrudRepository обширны и отлично подходят для большинства наиболее распространенных задач. Но что, если у вас есть некоторые требования, выходящие за рамки базовой настойчивости? Давайте посмотрим как настроить репозитории для выполнения запросов, уникальных для вашего домена.</p> <p>3.2.4 Настройка репозиториев JPA</p> <p>Представьте, что в дополнение к основным операциям CRUD, предоставляемым CrudRepository, вам также необходимо получить все заказы, доставленные по заданному почтовому индексу. Как оказалось, это можно легко решить, добавив следующее объявление метода в OrderRepository:</p> <p>List<Order> findByDeliveryZip(String deliveryZip);</p> <p>При создании реализации репозитория Spring Data проверяет все методы в интерфейсе репозитория, анализирует имя метода и пытается понять назначение метода в контексте сохраняемого объекта (в данном случае-порядок). По сути, Spring Data определяет своего рода миниатюрный доменный язык (DSL), в котором сведения о сохраняемости выражаются в сигнатурах методов репозитория.</p> <p>Spring Data знает, что этот метод предназначен для поиска заказов, потому что вы параметризовали CrudRepository с Order. Имя метода, findByDeliveryZip(), дает понять, что этот метод должен найти все сущности Order, сопоставив их свойство deliveryZip со значением, переданным в качестве параметра в метод.</p> <p>Метод findByDeliveryZip() достаточно прост, но Spring Data может обрабатывать еще более интересные имена методов. Методы репозитория состоят из глагола, необязательного субъекта, слова By и предиката. В случае findByDeliveryZip() глагол find и предикат DeliveryZip; субъект не указан и подразумевается как Order.</p> <p>Рассмотрим другой, более сложный пример. Предположим, что вам нужно запросить все заказы, доставленные по заданному почтовому индексу в заданном диапазоне дат. В этом случае может оказаться полезным следующий метод в OrderRepository:</p> <p>List<Order> readOrdersByDeliveryZipAndPlacedAtBetween(String deliveryZip, Date startDate, Date endDate);</p> <p>На рис. 3.2 показано, как Spring Data анализирует и понимает readOrdersByDeliveryZipAndPlacedAtBetween() при генерации реализации репозитория. Как вы можете видеть, глагол в readOrdersByDeliveryZipAndPlacedAtBetween() read. Spring Data также понимает find, read и get как синонимы для извлечения одной или нескольких сущностей. Кроме того, можно также использовать count в качестве глагола, если требуется, чтобы метод возвращал значение int с числом совпадающих сущностей.</p> <p>-Этот метод будет считывать (read) данные (”get “и” find " также разрешены здесь).</p> <p>-Обозначает начало свойств для соответствия</p> <p>-...and…</p> <p>-Значение должно находиться между заданными значениями.</p> <p>-Соотвествие .deliveryZip или -.delivery.zip свойство</p> <p>-Соотвествие .placedAt или .placed.at свойство</p> <empty-line/> <p><image l:href="#img_14"/></p> <p>Рис. 3.2. Spring Data анализирует сигнатуры методов репозитория для определения запроса, который необходимо выполнить.</p> <p>Хотя объект метода является необязательным, здесь он Orders. Spring Data игнорирует большинство слов в объекте, поэтому вы можете назвать метод readPuppiesBy... и он все равно найдет сущности Order, так как это тип, с которым параметризуется CrudRepository.</p> <p>Сказуемое следует за словом в имени метода и является наиболее интересной частью сигнатуры метода. В этом случае предикат ссылается на два свойства заказа: deliveryZip и placedAt. Свойство deliveryZip должно быть равно значению, переданному в первый параметр метода. Ключевое слово Between указывает, что значение deliveryZip должно находиться между значениями, переданными в последние два параметра метода.</p> <p>В дополнение к неявной операции Equals и Between, подписи метода Spring Data могут также включать любой из этих операторов:</p> <p>-IsAfter,After,IsGreaterThan,GreaterThan</p> <p>-IsGreaterThanEqual,GreaterThanEqual</p> <p>-IsBefore,Before,IsLessThan,LessThan</p> <p>-IsLessThanEqual,LessThanEqual</p> <p>-IsBetween,Between</p> <p>-IsNull,Null</p> <p>-IsNotNull,NotNull</p> <p>-IsIn,In</p> <p>-IsNotIn,NotIn</p> <p>-IsStartingWith,StartingWith,StartsWith</p> <p>-IsEndingWith,EndingWith,EndsWith</p> <p>-IsContaining,Containing,Contains</p> <p>-IsLike,Like</p> <p>-IsNotLike,NotLike</p> <p>-IsTrue,True</p> <p>-IsFalse,False</p> <p>-Is,Equals</p> <p>-IsNot,Not</p> <p>-IgnoringCase,IgnoresCase</p> <p>В качестве альтернативы IgnoringCase и IgnoresCase можно использовать AllIgnoringCase либо AllIgnoresCase в методе, чтобы игнорировать регистр для всех сравнений строк. Например, рассмотрим следующий метод:</p> <p>List<Order> findByDeliveryToAndDeliveryCityAllIgnoresCase(String deliveryTo, String deliveryCity);</p> <p>Наконец, можно также разместить OrderBy в конце имени метода для сортировки результатов по указанному столбцу. Например, deliveryTo в order:</p> <p>List<Order> findByDeliveryCityOrderByDeliveryTo(String city);</p> <p>Хотя правила именования могут быть полезны для относительно простых запросов, это не займет много воображения, чтобы увидеть, что имена методов могут выйти из-под контроля для более сложных запросы. В этом случае не стесняйтесь называть метод как угодно и аннотировать его @Query, чтобы явно указать запрос, который будет выполняться при вызове метода, как показано в этом примере:</p> <p>@Query("Order o where o.deliveryCity='Seattle'")</p> <p>List<Order> readOrdersDeliveredInSeattle();</p> <p>В этом простом примере @Query вы запрашиваете все заказы, доставленные в Seattle. Но вы можете использовать @Query для выполнения практически любого запроса, который вы можете придумать, даже если трудно или невозможно выполнить запрос, следуя соглашению об именовании.</p> <p>ИТОГ</p> <p>-Spring JdbcTemplate значительно упрощает работу с JDBC.</p> <p>-PreparedStatementCreator и KeyHolder можно использовать вместе, если необходимо узнать значение идентификатора, созданного базой данных.</p> <p>-Для простого выполнения вставок данных, используйте SimpleJdbcInsert.</p> <p>-Spring Data JPA делает сохранение JPA таким же простым, как написание интерфейса репозитория.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/05/spring-in-action-covers-spring-50-4.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 4</a></p> <p>4. Securing Spring</p> <p><emphasis>Эта глава охватывает:</emphasis></p> <p><emphasis>Автоконфигурирование Spring Security</emphasis></p> <p><emphasis>Определение пользовательского хранилища пользователя</emphasis></p> <p><emphasis>Настройка страницы входа</emphasis></p> <p><emphasis>Защита от CSRF-атак</emphasis></p> <p><emphasis>Определение ваших пользователей </emphasis></p> <p>Вы когда-нибудь замечали, что большинство людей в телевизионных ситкомах не закрывают свои двери? Во времена Leave it to Beaver, не было ничего необычного в том, что люди оставляли свои двери незапертыми. Но кажется сумасшедшим, что в тот день, когда мы заботимся о конфиденциальности и безопасности, мы видим телевизионных персонажей, обеспечивающих беспрепятственный доступ к их квартирам и домам.</p> <p>Информация, вероятно, самый ценный элемент, который мы сейчас имеем; мошенники ищут способы, чтобы украсть наши данные и идентичности, пробираясь в незащищенных приложений. Как разработчики программного обеспечения, мы должны принять меры для защиты информации, которая находится в наших приложениях. Является ли это учетной записью электронной почты, защищенной парой имени пользователя и пароля, или брокерским счетом, защищенным торговым PIN-кодом, безопасность является важным аспектом большинства приложений.</p> <p>4.1 Включение Spring Security</p> <p>Самым первым шагом в обеспечении безопасности приложения Spring является добавление зависимости Spring Boot security starter в сборку. В pom.xml файле, добавьте следующую запись <dependency> :</p> <p><dependency></p> <empty-line/> <p> <groupId>org.springframework.boot</groupId></p> <empty-line/> <p> <artifactId>spring-boot-starter-security</artifactId></p> <empty-line/> <p></dependency></p> <p>Если вы используете Spring Tool Suite, это еще проще. Щелкните правой кнопкой мыши на pom.xml файле и выберите Edit Starters из контекстного меню Spring. Откроется диалоговое окно Starter Dependencies. Выберите запись Security под категорией Core, как показано на рисунке 4.1.</p> <empty-line/> <p> </p> <empty-line/> <p> <image l:href="#img_15"/></p> <empty-line/> <p>Рис. 4.1 добавление стартер безопасности с Spring Tool Suite</p> <p>Хотите верьте, хотите нет, но зависимость-это единственное, что требуется для защиты приложения. При запуске приложения автоконфигурация обнаружит, что Spring Security находится в пути к классам, и настроит базовую конфигурацию безопасности.</p> <p>Если вы хотите попробовать, запустите приложение и попробуйте посетить домашнюю страницу (или любую другую страницу). Вам будет предложено выполнить проверку подлинности с помощью обычного HTTP диалогового окна. Чтобы пройти проверку, вам нужно будет предоставить имя пользователя и пароль. Имя пользователя user. Что касается пароля, то он генерируется случайным образом и записывается в файл журнала приложения. Запись журнала будет выглядеть примерно так:</p> <p>Using default security password: 087cfc6a-027d-44bc-95d7-cbb3a798a1ea</p> <p>Если вы введете имя пользователя и пароль правильно, вам будет предоставлен доступ к приложению.</p> <p>Кажется, что обеспечение безопасности приложений Spring довольно простая работа. С защитой приложения Taco Cloud я полагаю, что закончено и я могу закончить эту главу сейчас и перейти к следующей теме. Но прежде чем мы забегаем вперед, давайте рассмотрим, какую автоконфигурацию безопасности мы обеспечили.</p> <p>Не делая ничего, кроме добавления стартера безопасности в сборку проекта, вы получаете следующие функции безопасности:</p> <p>-Все пути HTTP-запросов требуют аутентификации.</p> <p>-Никаких конкретных ролей или полномочий не требуется.</p> <p>-Нет страницы входа</p> <p>-Проверка подлинности предлагается с обычной проверкой подлинности http.</p> <p>-Есть только один пользователь; имя пользователя - <emphasis>user</emphasis>.</p> <p>Это хорошее начало, но я думаю, что потребности в безопасности большинства приложений (включая Taco Cloud) будут сильно отличаться от этих элементарных функций безопасности.</p> <p>От вас потребуется больше работы, если вы собираетесь правильно защитить приложение Taco Cloud. По крайней мере, необходимо настроить Spring Security для выполнения следующих действий:</p> <p>-Запрашивать аутентификацию на странице входа, а не в диалоговом окне HTTP basic.</p> <p>-Создать несколько пользователей и включить страницу регистрации, чтобы новые клиенты Taco Cloud могли зарегистрироваться.</p> <p>-Применять различные правила безопасности для различных путей запроса. Например, домашняя страница и страницы регистрации вообще не должны требовать аутентификации.</p> <p>Чтобы удовлетворить ваши потребности в безопасности для Taco Cloud, вам придется написать некоторую явную конфигурацию, переопределяя то, что дала вам автоконфигурация. Вы начнете с настройки надлежащего хранилища пользователей, чтобы иметь более одного пользователя.</p> <p>4.2 Конфигурирование Spring Security</p> <p>На протяжении многих лет существует несколько способов настройки Spring Security, включая долгую настройку на основе XML. К счастью, несколько последних версий Spring Security поддерживают конфигурацию на основе Java, которая намного проще для чтения и записи.</p> <p>Прежде чем эта глава будет закончена, вы настроите все все параметры безопасности Taco Cloud на основаннии Java-based Spring Security конфигурации. Но чтобы начать работу, вы упростите ее, написав класс заготовки (-barebones) конфигурации, показанный в следующем листинге.</p> <p>Листинг 4.1 Класс barebones конфигурации для Spring Security</p> <p>package tacos.security;</p> <empty-line/><empty-line/> <p>import org.springframework.context.annotation.Bean;</p> <empty-line/> <p>import org.springframework.context.annotation.Configuration;</p> <empty-line/> <p>import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;</p> <empty-line/> <p>import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;</p> <empty-line/><empty-line/> <p>@Configuration</p> <empty-line/> <p>@EnableWebSecurity</p> <empty-line/> <p>public class SecurityConfig extends WebSecurityConfigurerAdapter {</p> <empty-line/> <p>}</p> <p>Что делает эта barebones конфигурация для вас? Ну, не так много, но это делает вас на шаг ближе к функционалу безопасности который вам нужен. Если вы попытаетесь снова попасть на домашнюю страницу Taco Cloud, вам все равно будет предложено войти. Но вместо запроса диалогового окна обычной проверки подлинности HTTP вам будет показана форма входа в систему, как показано на рис. 4.2.</p> <p><image l:href="#img_16"/></p> <empty-line/> <p> </p> <p>Рисунок 4.2 Spring Security дает вам простую страницу входа бесплатно.</p> <p>TIP Переход в инкогнито: при ручном тестировании безопасности может оказаться полезным перевести браузер в частный режим или режим инкогнито. Это гарантирует, что у вас будет новая сессия каждый раз, когда вы открываете частное окно/инкогнито. Вам придется каждый раз входить в приложение, но вы можете быть уверены, что все изменения, внесенные в безопасность, будут применены, и что нет никаких остатков старого сеанса, которые не позволят вам увидеть ваши изменения.</p> <p>Это небольшое улучшение-запрос на вход с веб-страницы (даже если это довольно просто по внешнему виду) всегда более удобно для пользователя, чем диалоговое окно HTTP basic. Вы настроите страницу входа в раздел 4.3.2. Однако текущей задачей является настройка хранилища пользователей, которое может обрабатывать более одного пользователя.</p> <p>Как оказалось, Spring Security предлагает несколько вариантов настройки пользовательского хранилища, включая следующие:</p> <p>-Хранилище пользователей в памяти</p> <p>-Хранилище пользователей на основе JDBC</p> <p>-Хранилище пользователей в LDAP</p> <p>-Пользовательская (собственная) служба сведений о пользователе</p> <p>Независимо от того, какое пользовательское хранилище выбрано, его можно настроить, переопределив метод configure(), определенный в базовом классе конфигурации WebSecurityConfigurerAdapter. Для начала добавьте в класс SecurityConfig следующее переопределение метода:</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Теперь вам просто нужно заменить эти многоточия с кодом, который использует данный AuthenticationManagerBuilder, чтобы указать, как пользователи будут авторизоваться (looked) во время аутентификации. Сначала вы реализуете хранилище пользователей в памяти.</p> <p>4.2.1 Хранилище пользователей в памяти</p> <p>Одно из мест, где пользовательская информация может храниться - это в памяти. Предположим, у вас есть только несколько пользователей, ни один из которых, скорее всего, не изменится. В этом случае может быть достаточно просто определить этих пользователей как часть конфигурации безопасности.</p> <p>Листинг 4.2 Определение пользователей в хранилище пользователей в памяти</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception { </p> <empty-line/> <p> auth.inMemoryAuthentication()</p> <empty-line/> <p> .withUser("buzz")</p> <empty-line/> <p> .password("infinity")</p> <empty-line/> <p> .authorities("ROLE_USER")</p> <empty-line/> <p> .and()</p> <empty-line/> <p> .withUser("woody")</p> <empty-line/> <p> .password("bullseye")</p> <empty-line/> <p> .authorities("ROLE_USER");</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, AuthenticationManagerBuilder использует builder-style API, чтобы настроить параметры проверки подлинности. В этом случае вызов метода inMemoryAuthentication() дает возможность указать сведения о пользователе непосредственно в самой конфигурации безопасности.</p> <p>Каждый вызов withUser() запускает конфигурацию для пользователя. Значение, указанное в withUser() является имя пользователя, а пароль и полномочий указываются в методах password() и authorities(). Как показано в листинге 4.2, оба пользователя имеют права доступа ROLE_USER. Пользователь buzz настроен на infinity в качестве пароля. Аналогично, пароль woody -bullseye.</p> <p>Хранилище пользователей в памяти удобно для тестирования или очень простых приложений, но оно не позволяет легко редактировать пользователей. Если необходимо добавить, удалить или изменить пользователя, необходимо внести необходимые изменения, а затем пересобрать и повторно развернуть приложение.</p> <p>Для приложения Taco Cloud вы хотите, чтобы клиенты могли регистрироваться в приложении и управлять своими учетными записями пользователей. Это не соответствует ограничениям хранилища пользователей в памяти, поэтому давайте рассмотрим другой вариант, который позволяет использовать хранилище пользователей, поддерживаемое базой данных.</p> <p>4.2.2 Хранилище пользователей на основе JDBC</p> <p>Сведения о пользователях часто хранятся в реляционной базе данных, и хранилище пользователей на основе JDBC кажется подходящим. В следующем списке показано, как настроить Spring Security для проверки подлинности сведений о пользователях, хранящихся в реляционной базе данных с помощью JDBC.</p> <p>Листинг 4.3 Идентификация через JDBC-базу</p> <p>@Autowired</p> <empty-line/> <p>DataSource dataSource;</p> <empty-line/><empty-line/> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.jdbcAuthentication()</p> <empty-line/> <p> .dataSource(dataSource);</p> <empty-line/> <p>}</p> <p>Эта реализация configure() вызывает jdbcAuthentication() на данном AuthenticationManagerBuilder. Для этого необходимо установить DataSource, чтобы он знал, как получить доступ к DataSource. DataSource, используемый здесь, обеспечивается магией autowiring.</p> <p><strong>ПЕРЕОПРЕДЕЛЕНИЕ ПОЛЬЗОВАТЕЛЬСКИХ ЗАПРОСОВ ПО УМОЛЧАНИЮ</strong></p> <p>Хотя эта минимальная конфигурация будет работать, она делает некоторые предположения о схеме базы данных. Предполагается, что существуют определенные таблицы, в которых будут храниться пользовательские данные. В частности, следующий фрагмент кода из внутренних компонентов Spring Security показывает SQL-запросы, которые будут выполняться при поиске сведений о пользователе:</p> <p>public static final String DEF_USERS_BY_USERNAME_QUERY =</p> <empty-line/> <p> "select username,password,enabled " +</p> <empty-line/> <p> "from users " +</p> <empty-line/> <p> "where username = ?";</p> <empty-line/><empty-line/> <p>public static final String DEF_AUTHORITIES_BY_USERNAME_QUERY =</p> <empty-line/> <p> "select username,authority " +</p> <empty-line/> <p> "from authorities " +</p> <empty-line/> <p> "where username = ?";</p> <empty-line/><empty-line/> <p>public static final String DEF_GROUP_AUTHORITIES_BY_USERNAME_QUERY =</p> <empty-line/> <p> "select g.id, g.group_name, ga.authority " +</p> <empty-line/> <p> "from groups g, group_members gm, group_authorities ga " +</p> <empty-line/> <p> "where gm.username = ? " +</p> <empty-line/> <p> "and g.id = ga.group_id " +</p> <empty-line/> <p> "and g.id = gm.group_id";</p> <p>Первый запрос извлекает имя пользователя, пароль и информацию о том, включены они или нет. Эта информация используется для аутентификации пользователя. Следующий запрос ищет предоставленные полномочия пользователя для целей авторизации, а последний запрос ищет полномочия, предоставленные пользователю как члену группы.</p> <p>Если вы согласны с определением и заполнением таблиц в базе данных, удовлетворяющих этим запросам, вам больше нечего делать. Но, скорее всего, ваша база данных не выглядит так, и вам понадобится больше контроля над запросами. В этом случае можно настроить собственные запросы.</p> <p>Листинг 4.4 Настройка запросов сведений о пользователе</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.jdbcAuthentication()</p> <empty-line/> <p> .dataSource(dataSource)</p> <empty-line/> <p> .usersByUsernameQuery(</p> <empty-line/> <p> "select username, password, enabled from Users " +</p> <empty-line/> <p> "where username=?")</p> <empty-line/> <p> .authoritiesByUsernameQuery(</p> <empty-line/> <p> "select username, authority from UserAuthorities " +</p> <empty-line/> <p> "where username=?");</p> <empty-line/> <p>}</p> <p>В этом случае переопределяются только запросы проверки подлинности и обычной авторизации. Но можно также переопределить запрос полномочий группы, вызвав groupAuthoritiesByUsername () с помощью пользовательского запроса.</p> <p>При замене SQL-запросов по умолчанию, запросами собственной разработки важно придерживаться базового контракта запросов. Все они принимают имя пользователя в качестве единственного параметра. Запрос проверки подлинности выбирает username, password и enabled. Запрос привилегий выбирает ноль или более строк, содержащих username и authority. Запрос привилегий группы выбирает ноль или более строк, каждая с идентификатором группы, group_name и authority.</p> <p><strong>РАБОТА С ЗАКОДИРОВАННЫМИ ПАРОЛЯМИ</strong></p> <p>Сосредоточившись на запросе проверки подлинности, можно увидеть, что пароли пользователей должны храниться в базе данных. Единственная проблема с этим заключается в том, что если пароли хранятся в текстовом виде, они могут стать доступны для любопытных глаз хакеров. Но если вы закодируете пароли в базе данных, проверка подлинности завершится ошибкой, так как она не будет соответствовать паролю открытого текста, отправленному пользователем.</p> <p>Для решения этой проблемы, вам нужно указать кодировщик пароля, обратившись к методу passwordEncoder():</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.jdbcAuthentication()</p> <empty-line/> <p> .dataSource(dataSource)</p> <empty-line/> <p> .usersByUsernameQuery(</p> <empty-line/> <p> "select username, password, enabled from Users " +</p> <empty-line/> <p> "where username=?")</p> <empty-line/> <p> .authoritiesByUsernameQuery(</p> <empty-line/> <p> "select username, authority from UserAuthorities " +</p> <empty-line/> <p> "where username=?")</p> <empty-line/> <p> .passwordEncoder(new StandardPasswordEncoder("53cr3t");</p> <empty-line/> <p>}</p> <p>Метод passwordEncoder() принимает любую реализацию интерфейса PasswordEncoder Spring Security. Криптографический модуль Spring Security включает в себя несколько таких реализаций:</p> <p>-BCryptPasswordEncoder—применяется bcrypt строгое шифрование хэширования (Applies bcrypt strong hashing encryption)</p> <p>-NoOpPasswordEncoder—не применяется шифрование</p> <p>-Pbkdf2PasswordEncoder—применяется PBKDF2 шифрования</p> <p>-SCryptPasswordEncoder—применяется scrypt ширование хэширования (Applies scrypt hashing encryption)</p> <p>-StandardPasswordEncoder—применяется SHA-256 ширование хэширования (Applies SHA-256 hashing encryption)</p> <p>Предыдущий код использует StandardPasswordEncoder. Но можно выбрать любую из других реализаций или даже предоставить собственную пользовательскую реализацию, если ни одна из готовых реализаций не соответствует вашим потребностям. Интерфейс PasswordEncoder довольно прост:</p> <p>public interface PasswordEncoder {</p> <empty-line/> <p> String encode(CharSequence rawPassword);</p> <empty-line/> <p> boolean matches(CharSequence rawPassword, String encodedPassword);</p> <empty-line/> <p>}</p> <p>Независимо от того, какой кодировщик паролей вы используете, важно понимать, что пароль в базе данных никогда не декодируется. Вместо этого пароль, который пользователь вводит при входе в систему, кодируется с использованием того же алгоритма, а затем сравнивается с закодированным паролем в базе данных. Это сравнение выполняется в Passwordencoder методе matches().</p> <p>В конечном счете, вы будете хранить пользовательские данные Taco Cloud в базе данных. Однако вместо того, чтобы использовать jdbcAuthentication(), у меня есть другой вариант аутентификации. Но прежде чем мы к нему перейдем, давайте посмотрим, как можно настроить Spring Security полагаться на еще один источник данных пользователей: LDAP (облегченный протокол доступа к каталогам).</p> <p>4.2.3 Хранилище пользователей в LDAP</p> <p>Для настройки Spring Security для аутентификации на основе LDAP можно использовать метод ldapAuthentication(). Этот метод является LDAP аналогом jdbcAuthentication(). Следующий метод configure() показывает простую конфигурацию для аутентификации LDAP:</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchFilter("member={0}");</p> <empty-line/> <p>}</p> <p>Методы userSearchFilter() и groupSearchFilter() используются для предоставления фильтров для базовых запросов LDAP, которые используются для поиска пользователей и групп. По умолчанию базовые запросы как для пользователей, так и для групп пусты, что указывает на то, что поиск будет выполняться из корня иерархии LDAP. Но вы можете изменить это, указав базовый запрос:</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}");</p> <empty-line/> <p>}</p> <p>Метод userSearchBase() предоставляет базовый запрос для поиска пользователей. Аналогичным образом, метод groupSearchBase() определяет базовый запрос для поиска групп. Вместо поиска в корневом каталоге в этом примере указывается, что пользователей следует искать в организационном разделе людей. Группы следует искать в том месте, где находится организационный раздел групп.</p> <p><strong>НАСТРОЙКА СРАВНЕНИЯ ПАРОЛЕЙ</strong></p> <p>Стратегия по умолчанию для аутентификации перед LDAP должна выполнить операцию привязки, аутентифицируя пользователя непосредственно к серверу LDAP. Другой вариант - выполнить операцию сравнения. Для этого необходимо отправить введенный пароль в каталог LDAP и попросить сервер сравнить пароль с атрибутом пароля пользователя. Потому что сравнение делается в LDAP-сервером, пароль остается в тайне.</p> <p>Если вы предпочитаете аутентификацию путем сравнения паролей, вы можете реализваоть это с помощью метода passwordCompare():</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}")</p> <empty-line/> <p> .passwordCompare();</p> <empty-line/> <p>}</p> <p>По умолчанию пароль, указанный в форме входа, будет сравниваться со значением атрибута userPassword в записи LDAP пользователя. Если пароль хранится в другом атрибуте, можно указать имя атрибута пароля с помощью passwordAttribute():</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}")</p> <empty-line/> <p> .passwordCompare()</p> <empty-line/> <p> .passwordEncoder(new BCryptPasswordEncoder())</p> <empty-line/> <p> .passwordAttribute("passcode");</p> <empty-line/> <p>}</p> <p>В этом примере указывается, что атрибут passcode должен сравниваться с заданным паролем. Кроме того, вы также указываете кодировщик паролей. Приятно, что фактический пароль хранится в секрете на сервере при сравнении паролей на стороне сервера. Но попытка ввода пароля все равно передается по проводам на сервер LDAP и может быть перехвачена хакером. Чтобы предотвратить это, можно указать стратегию шифрования, вызвав метод passwordEncoder().</p> <p>В предыдущем примере пароли шифруются с помощью функции хэширования паролей bcrypt. Это предполагает, что пароли также зашифрованы с помощью bcrypt на сервере LDAP.</p> <p><strong>ОБРАЩЕНИЕ К УДАЛЕННОМУ СЕРВЕРУ LDAP</strong></p> <p>Единственное, я до сих пор так и не указал местоположение, где находится LDAP-сервер и на котором нужные данные фактически находяться. Вы успешно настроили Spring для аутентификации на сервере LDAP, но где этот сервер?</p> <p>По умолчанию аутентификация LDAP Spring Security предполагает, что сервер LDAP прослушивает порт 33389 на localhost. Но если ваш сервер LDAP находится на другой машине, вы можете использовать метод contextSource() для настройки его местоположения:</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}")</p> <empty-line/> <p> .passwordCompare()</p> <empty-line/> <p> .passwordEncoder(new BCryptPasswordEncoder())</p> <empty-line/> <p> .passwordAttribute("passcode")</p> <empty-line/> <p> .contextSource()</p> <empty-line/> <p> .url("ldap://tacocloud.com:389/dc=tacocloud,dc=com");</p> <empty-line/> <p>}</p> <p>Метод contextSource() возвращает ContextSourceBuilder, который, помимо прочего, предлагает метод url(), позволяющий указать расположение сервера LDAP.</p> <p><strong>НАСТРОЙКА ВСТРОЕННОГО СЕРВЕРА LDAP</strong></p> <p>Если у вас нет сервера LDAP, ожидающего аутентификации, Spring Security может предоставить вам встроенный сервер LDAP. Вместо установки URL-адреса удаленного сервера LDAP можно указать корневой суффикс для встроенного сервера с помощью метода root():</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}")</p> <empty-line/> <p> .passwordCompare()</p> <empty-line/> <p> .passwordEncoder(new BCryptPasswordEncoder())</p> <empty-line/> <p> .passwordAttribute("passcode")</p> <empty-line/> <p> .contextSource()</p> <empty-line/> <p> .root("dc=tacocloud,dc=com");</p> <empty-line/> <p>}</p> <p>Когда сервер LDAP запустится, он попытается загрузить данные из любых LDIF-файлов, которые он может найти в пути к классам. LDIF (формат обмена данными LDAP) - это стандартный способ представления данных LDAP в текстовом файле. Каждая запись состоит из одной или нескольких строк, каждая из которых содержит имя и значение. Записи отделяются друг от друга пустыми строками.</p> <p>Если вы предпочитаете, чтобы Spring не рылась в вашем classpath в поисках любых LDIF-файлов, которые он может найти, вы можете более четко указать, какой LDIF-файл загружается, вызвав метод ldif():</p> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.ldapAuthentication()</p> <empty-line/> <p> .userSearchBase("ou=people")</p> <empty-line/> <p> .userSearchFilter("(uid={0})")</p> <empty-line/> <p> .groupSearchBase("ou=groups")</p> <empty-line/> <p> .groupSearchFilter("member={0}")</p> <empty-line/> <p> .passwordCompare()</p> <empty-line/> <p> .passwordEncoder(new BCryptPasswordEncoder())</p> <empty-line/> <p> .passwordAttribute("passcode")</p> <empty-line/> <p> .contextSource()</p> <empty-line/> <p> .root("dc=tacocloud,dc=com")</p> <empty-line/> <p> .ldif("classpath:users.ldif");</p> <empty-line/> <p>}</p> <p>Здесь вы специально просите сервер LDAP загрузить его содержимое о пользователях. ldif-файл в корне classpath приложения. Если вам интересно, вот файл LDIF, который вы можете использовать для загрузки встроенного сервера LDAP с пользовательскими данными:</p> <p>dn: ou=groups,dc=tacocloud,dc=com</p> <empty-line/> <p>objectclass: top</p> <empty-line/> <p>objectclass: organizationalUnit</p> <empty-line/> <p>ou: groups</p> <empty-line/> <p>dn: ou=people,dc=tacocloud,dc=com</p> <empty-line/> <p>objectclass: top</p> <empty-line/> <p>objectclass: organizationalUnit</p> <empty-line/> <p>ou: people</p> <empty-line/> <p>dn: uid=buzz,ou=people,dc=tacocloud,dc=com</p> <empty-line/> <p>objectclass: top</p> <empty-line/> <p>objectclass: person</p> <empty-line/> <p>objectclass: organizationalPerson</p> <empty-line/> <p>objectclass: inetOrgPerson</p> <empty-line/> <p>cn: Buzz Lightyear</p> <empty-line/> <p>sn: Lightyear</p> <empty-line/> <p>uid: buzz</p> <empty-line/> <p>userPassword: password</p> <empty-line/> <p>dn: cn=tacocloud,ou=groups,dc=tacocloud,dc=com</p> <empty-line/> <p>objectclass: top</p> <empty-line/> <p>objectclass: groupOfNames</p> <empty-line/> <p>cn: tacocloud</p> <empty-line/> <p>member: uid=buzz,ou=people,dc=tacocloud,dc=com</p> <p>Spring Security’s built-in хранилища пользователей удобны и покрывают некоторые общие случаи использования. Но приложение Taco Cloud нуждается в чем-то особенном. Если готовые пользовательские хранилища не соответствуют вашим потребностям, вам потребуется создать и настроить собственную службу сведений о пользователе.</p> <p>4.2.4 Собственная служба сведений о пользователе</p> <p>В последней главе вы остановились на использовании Spring Data JPA в качестве опции сохранения для всех данных taco, ingredient и order. Таким образом, было бы целесообразно сохранить пользовательские данные таким же образом. Если вы сделаете это, данные будут в конечном счете находиться в реляционной базе данных, поэтому вы можете использовать аутентификацию на основе JDBC. Но было бы еще лучше использовать хранилище данных Spring, используемое для хранения пользователей.</p> <p>Но сначала о главном. Давайте создадим объект домена и интерфейс репозитория, который представляет и сохраняет информацию о пользователе.</p> <p><strong>ОПРЕДЕЛЕНИЕ ДОМЕНА ПОЛЬЗОВАТЕЛЯ И СОХРАНЯЕМОСТИ(PERSISTENCE)</strong></p> <p>Когда клиенты Taco Cloud регистрируются в приложении, им необходимо предоставить не только имя пользователя и пароль. Они также дадут вам свое полное имя, адрес и номер телефона. Эта информация может быть использована для различных целей, включая предварительное заполнение формы заказа (не говоря уже о потенциальных маркетинговых возможностях).</p> <p>Чтобы получить всю эту информацию, создайте класс User, как показано ниже.</p> <p>Листинг 4.5 Описание сущности user</p> <p>package tacos;</p> <empty-line/><empty-line/> <p>import java.util.Arrays;</p> <empty-line/> <p>import java.util.Collection;</p> <empty-line/> <p>import javax.persistence.Entity;</p> <empty-line/> <p>import javax.persistence.GeneratedValue;</p> <empty-line/> <p>import javax.persistence.GenerationType;</p> <empty-line/> <p>import javax.persistence.Id;</p> <empty-line/> <p>import org.springframework.security.core.GrantedAuthority;</p> <empty-line/> <p>import org.springframework.security.core.authority.</p> <empty-line/> <p>SimpleGrantedAuthority;</p> <empty-line/> <p>import org.springframework.security.core.userdetails.UserDetails;</p> <empty-line/> <p>import lombok.AccessLevel;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/> <p>import lombok.NoArgsConstructor;</p> <empty-line/> <p>import lombok.RequiredArgsConstructor;</p> <empty-line/><empty-line/> <p>@Entity</p> <empty-line/> <p>@Data</p> <empty-line/> <p>@NoArgsConstructor(access=AccessLevel.PRIVATE, force=true)</p> <empty-line/> <p>@RequiredArgsConstructor</p> <empty-line/> <p>public class User implements UserDetails {</p> <empty-line/> <p> private static final long serialVersionUID = 1L;</p> <empty-line/><empty-line/> <p> @Id</p> <empty-line/> <p> @GeneratedValue(strategy=GenerationType.AUTO)</p> <empty-line/> <p> private Long id;</p> <empty-line/><empty-line/> <p> private final String username;</p> <empty-line/> <p> private final String password;</p> <empty-line/> <p> private final String fullname;</p> <empty-line/> <p> private final String street;</p> <empty-line/> <p> private final String city;</p> <empty-line/> <p> private final String state;</p> <empty-line/> <p> private final String zip;</p> <empty-line/> <p> private final String phoneNumber;</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public Collection<? extends GrantedAuthority> getAuthorities() {</p> <empty-line/> <p> return Arrays.asList(new SimpleGrantedAuthority("ROLE_USER"));</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public boolean isAccountNonExpired() {</p> <empty-line/> <p> return true;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public boolean isAccountNonLocked() {</p> <empty-line/> <p> return true;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public boolean isCredentialsNonExpired() {</p> <empty-line/> <p> return true;</p> <empty-line/> <p> }</p> <empty-line/> <p> @Override</p> <empty-line/> <p> public boolean isEnabled() {</p> <empty-line/> <p> return true;</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Вы, несомненно, заметили, что класс User немного более связанный, чем любая другая сущность, определенная в главе 3. В дополнение к определению нескольких свойств, пользователь также реализует интерфейс UserDetails из Spring Security.</p> <p>Implementations UserDetails предоставит некоторую важную информацию о пользователе от framework, например, какие полномочия предоставлены пользователю и включена ли учетная запись пользователя.</p> <p>Метод getAuthorities() должен возвращать коллекцию полномочий, предоставленных пользователю. Различные методы is___Expired () возвращают логическое значение, указывающее, включена или нет учетная запись пользователя.</p> <p>Для сущности User метод getAuthorities () просто возвращает коллекцию, указывающую, что всем пользователям будут предоставлены полномочия ROLE_USER. И, по крайней мере, на данный момент, Taco Cloud не нужно отключать пользователей, поэтому все методы is___Expired() возвращают true, чтобы указать, что пользователи активны.</p> <p>Определив сущность User, вы можете определить интерфейс репозитория:</p> <p>package tacos.data;</p> <empty-line/><empty-line/> <p>import org.springframework.data.repository.CrudRepository;</p> <empty-line/> <p>import tacos.User;</p> <empty-line/><empty-line/> <p>public interface UserRepository extends CrudRepository<User, Long> {</p> <empty-line/> <p> User findByUsername(String username);</p> <empty-line/> <p>}</p> <p>Помимо операций CRUD, предоставляемых расширением CrudRepository, UserRepository определяет метод findByUsername(), который будет использоваться в сервисе сведений о пользователе для поиска пользователя по его имени пользователя.</p> <p>Как вы узнали в главе 3, Spring Data JPA будет автоматически генерировать реализацию этого интерфейса во время выполнения. Таким образом, теперь можно написать пользовательский сервис ,сведений о пользователе использующую этот репозиторий.</p> <p>СОЗДАНИЕ СЕРВИСА СВЕДЕНИЙ О ПОЛЬЗОВАТЕЛЕ</p> <p>UserDetailsService Spring Security - это довольно простой интерфейс:</p> <p>public interface UserDetailsService {</p> <empty-line/> <p> UserDetails loadUserByUsername(String username) throws UsernameNotFoundException;</p> <empty-line/> <p>}</p> <p>Как вы можете видеть, реализации этого интерфейса даны имя пользователя и должны либо вернуть объект UserDetails или бросить UsernameNotFoundException, если данный логин не появляется никаких результатов.</p> <p>Поскольку класс User implements UserDetails, а UserRepository предоставляет метод findByUsername(), они идеально подходят для использования в пользовательской реализации UserDetailsService. В следующем листинге показан сервис сведений о пользователе, который вы будете использовать в приложении Taco Cloud.</p> <p>Листинг 4.6 Определение собственного сервиса сведений о пользователе</p> <p>package tacos.security;</p> <empty-line/><empty-line/> <p>import org.springframework.beans.factory.annotation.Autowired;</p> <empty-line/> <p>import org.springframework.security.core.userdetails.UserDetails;</p> <empty-line/> <p>import org.springframework.security.core.userdetails.UserDetailsService;</p> <empty-line/> <p>import org.springframework.security.core.userdetails.UsernameNotFoundException;</p> <empty-line/> <p>import org.springframework.stereotype.Service;</p> <empty-line/> <p>import tacos.User;</p> <empty-line/> <p>import tacos.data.UserRepository;</p> <empty-line/><empty-line/> <p>@Service</p> <empty-line/> <p>public class UserRepositoryUserDetailsService implements UserDetailsService {</p> <empty-line/> <p> private UserRepository userRepo;</p> <empty-line/><empty-line/> <p> @Autowired</p> <empty-line/> <p> public UserRepositoryUserDetailsService(UserRepository userRepo) {</p> <empty-line/> <p> this.userRepo = userRepo;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @Override</p> <empty-line/> <p> public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {</p> <empty-line/> <p> User user = userRepo.findByUsername(username);</p> <empty-line/> <p> if (user != null) {</p> <empty-line/> <p> return user;</p> <empty-line/> <p> }</p> <empty-line/> <p> throw new UsernameNotFoundException("User '" + username + "' not found");</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>UserRepositoryUserDetailsService внедряется с экземпляром UserRepository через его конструктор. Затем в методе loadByUsername(), вызывается findByUsername () объекта UserRepository для поиска User.</p> <p>Метод loadByUsername () имеет одно простое правило: он никогда не должен возвращать null. Поэтому, если вызов findByUsername() возвращает null, loadByUsername() будет бросать UsernameNotFoundException. В противном случае будет возвращен найденный пользователь.</p> <p>Вы видите, что UserRepositoryUserDetailsService аннотируется @Service. Это еще одна из аннотаций стереотипа Spring, которые помечают его для включения в сканирование компонентов Spring, поэтому нет необходимости явно объявлять этот класс как bean. Spring автоматически обнаружит его и создаст его как bean.</p> <p>Однако по-прежнему необходимо настроить сервис сведений о пользователе с Spring Security. Таким образом, вы вернетесь к методу configure() еще раз:</p> <p>@Autowired</p> <empty-line/> <p>private UserDetailsService userDetailsService;</p> <empty-line/><empty-line/> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.userDetailsService(userDetailsService);</p> <empty-line/> <p>}</p> <p>На этот раз просто вызовите метод userDetailsService (), передав экземпляр UserDetailsService, который был autowired к SecurityConfig.</p> <p>Как и при аутентификации на основе JDBC, вы можете (и должны) также настроить кодировщик паролей, чтобы пароль мог быть закодирован в базе данных. Это можно сделать, сначала объявив bean типа PasswordEncoder, а затем внедрив (injecting) его в конфигурацию сервиса сведений о пользователе, вызвав passwordEncoder():</p> <p>@Bean</p> <empty-line/> <p>public PasswordEncoder encoder() {</p> <empty-line/> <p> return new StandardPasswordEncoder("53cr3t");</p> <empty-line/> <p>}</p> <empty-line/><empty-line/> <p>@Override</p> <empty-line/> <p>protected void configure(AuthenticationManagerBuilder auth) throws Exception {</p> <empty-line/> <p> auth.userDetailsService(userDetailsService)</p> <empty-line/> <p> .passwordEncoder(encoder());</p> <empty-line/> <p>}</p> <p>Важно обсудить последнюю строку в методе configure(). Казалось бы, вы вызываете метод encoder() и передаете его возвращаемое значение в passwordEncoder(). В действительности, однако, поскольку метод encoder() аннотируется @Bean, он будет использоваться для объявления компонента PasswordEncoder в контексте приложения Spring. Любые вызовы encoder() будут перехвачены, чтобы возвратить экземпляр bean из контекста приложения.</p> <p><strong>РЕГИСТРАЦИЯ ПОЛЬЗОВАТЕЛЕЙ</strong></p> <p>Несмотря на то, что Spring Security обрабатывает многие аспекты безопасности, она не принимает непосредственного участия в процессе регистрации пользователей, поэтому вы будете полагаться на Spring MVC для обработки этой задачи. Класс RegistrationController в следующем листинге представляет и обрабатывает регистрационные формы.</p> <p>Листинг 4.7 Контроллер регистрации пользователей</p> <p>package tacos.security;</p> <empty-line/><empty-line/> <p>import org.springframework.security.crypto.password.PasswordEncoder;</p> <empty-line/> <p>import org.springframework.stereotype.Controller;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.PostMapping;</p> <empty-line/> <p>import org.springframework.web.bind.annotation.RequestMapping;</p> <empty-line/> <p>import tacos.data.UserRepository;</p> <empty-line/><empty-line/> <p>@Controller</p> <empty-line/> <p>@RequestMapping("/register")</p> <empty-line/> <p>public class RegistrationController {</p> <empty-line/> <p> private UserRepository userRepo;</p> <empty-line/> <p> private PasswordEncoder passwordEncoder;</p> <empty-line/><empty-line/> <p> public RegistrationController(UserRepository userRepo, PasswordEncoder passwordEncoder) {</p> <empty-line/> <p> this.userRepo = userRepo;</p> <empty-line/> <p> this.passwordEncoder = passwordEncoder;</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @GetMapping</p> <empty-line/> <p> public String registerForm() {</p> <empty-line/> <p> return "registration";</p> <empty-line/> <p> }</p> <empty-line/><empty-line/> <p> @PostMapping</p> <empty-line/> <p> public String processRegistration(RegistrationForm form) {</p> <empty-line/> <p> userRepo.save(form.toUser(passwordEncoder));</p> <empty-line/> <p> return "redirect:/login";</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>Как любой типичный Spring MVC controller, RegistrationController аннотирован @Controller для того чтобы обозначить его как controller и отметить его для сканирования компонентов (component scanning). Он также аннотируется @RequestMapping, так что он будет обрабатывать запросы, путь которых /register.</p> <p>В частности, запрос GET для /register будет обрабатываться методом registerForm (), который просто возвращает логическое имя страницы регистрации. В следующем списке показан шаблон Thymeleaf, определяющий страницу регистрации.</p> <p>Листинг 4.8 Thymeleaf структура формы регистрации</p> <p><!DOCTYPE html></p> <empty-line/> <p><html xmlns="http://www.w3.org/1999/xhtml"</p> <empty-line/> <p> xmlns:th="http://www.thymeleaf.org"></p> <empty-line/> <p> <head></p> <empty-line/> <p> <title>Taco Cloud</title></p> <empty-line/> <p> </head></p> <empty-line/> <p> <body></p> <empty-line/> <p> <h1>Register</h1></p> <empty-line/> <p> <img th:src="@{/images/TacoCloud.png}"/></p> <empty-line/> <p> <form method="POST" th:action="@{/register}" id="registerForm"></p> <empty-line/> <p> <label for="username">Username: </label></p> <empty-line/> <p> <input type="text" name="username"/><br/></p> <empty-line/> <p> <label for="password">Password: </label></p> <empty-line/> <p> <input type="password" name="password"/><br/></p> <empty-line/> <p> <label for="confirm">Confirm password: </label></p> <empty-line/> <p> <input type="password" name="confirm"/><br/></p> <empty-line/> <p> <label for="fullname">Full name: </label></p> <empty-line/> <p> <input type="text" name="fullname"/><br/></p> <empty-line/> <p> <label for="street">Street: </label></p> <empty-line/> <p> <input type="text" name="street"/><br/></p> <empty-line/> <p> <label for="city">City: </label></p> <empty-line/> <p> <input type="text" name="city"/><br/></p> <empty-line/> <p> <label for="state">State: </label></p> <empty-line/> <p> <input type="text" name="state"/><br/></p> <empty-line/> <p> <label for="zip">Zip: </label></p> <empty-line/> <p> <input type="text" name="zip"/><br/></p> <empty-line/> <p> <label for="phone">Phone: </label></p> <empty-line/> <p> <input type="text" name="phone"/><br/></p> <empty-line/> <p> <input type="submit" value="Register"/></p> <empty-line/> <p> </form></p> <empty-line/> <p> </body></p> <empty-line/> <p></html></p> <p>После отправки данных формы, запрос HTTP POST будет обработан методом processRegistration(). Объект RegistrationForm, передаваемый в processRegistration(), привязан к данным запроса и описывается следующим классом:</p> <p>package tacos.security;</p> <empty-line/><empty-line/> <p>import org.springframework.security.crypto.password.PasswordEncoder;</p> <empty-line/> <p>import lombok.Data;</p> <empty-line/> <p>import tacos.User;</p> <empty-line/><empty-line/> <p>@Data</p> <empty-line/> <p>public class RegistrationForm {</p> <empty-line/> <p> private String username;</p> <empty-line/> <p> private String password;</p> <empty-line/> <p> private String fullname;</p> <empty-line/> <p> private String street;</p> <empty-line/> <p> private String city;</p> <empty-line/> <p> private String state;</p> <empty-line/> <p> private String zip;</p> <empty-line/> <p> private String phone;</p> <empty-line/><empty-line/> <p> public User toUser(PasswordEncoder passwordEncoder) {</p> <empty-line/> <p> return new User(</p> <empty-line/> <p> username, passwordEncoder.encode(password),</p> <empty-line/> <p> fullname, street, city, state, zip, phone);</p> <empty-line/> <p> }</p> <empty-line/> <p>}</p> <p>По большей части RegistrationForm - это простой класс с поддержкой Lombok и несколькими свойствами. Но метод toUser() использует эти свойства для создания нового пользовательского объекта, который будет сохранен с помощью внедренного UserRepository.</p> <p>Вы, без сомнения, заметили, что RegistrationController внедряется с PasswordEncoder. Это точно тот же bean PasswordEncoder который вы объявили ранее. При обработке данных формы, RegistrationController передает ее методу toUser(), который использует ее для кодирования пароля перед сохранением в базу данных. Таким образом, отправленный пароль записывается в закодированном виде, и сервис сведений о пользователе сможет пройти проверку подлинности с использованием этого закодированного пароля.</p> <p>Теперь приложение Taco Cloud имеет полную поддержку регистрации и аутентификации пользователей. Но если вы запустите его сейчас, вы заметите, что вы даже не можете попасть на страницу регистрации без запроса на вход. Потому что, по умолчанию, все запросы требуют проверки подлинности. Давайте посмотрим, как веб-запросы перехватываются и защищаются, чтобы вы могли исправить эту странную ситуацию с курицей и яйцом.</p> <p>4.3 Защита веб-запросов</p> <p>Требования безопасности для Taco Cloud должны требовать, чтобы пользователь аутентифицировался перед созданием тако или размещением заказов. Но домашняя страница, страница входа и страница регистрации должны быть доступны неавторизованным пользователям.</p> <p>Чтобы настроить эти правила безопасности, позвольте мне представить вам другой метод configure() класса WebSecurityConfigurerAdapter:</p> <p>@Override</p> <empty-line/> <p>protected void configure(HttpSecurity http) throws Exception {</p> <empty-line/> <p>...</p> <empty-line/> <p>}</p> <p>Этот метод configure() принимает объект HttpSecurity, который может использоваться для настройки обработки безопасности на веб-уровне. Среди многих вещей, которые вы можете настроить с помощью HttpSecurity следующие:</p> <p>-Требование соблюдения определенных условий безопасности перед обработкой запроса</p> <p>-Настройка пользовательской страницы входа</p> <p>-Возможность выхода пользователей из приложения</p> <p>-Настройка защиты от подделки межсайтовых запросов</p> <p>Перехват запросов, чтобы гарантировать, что у пользователя есть надлежащие полномочия, является одной из наиболее распространенных вещей, для которых вы настроите HttpSecurity. Давайте сделаем, чтобы ваши клиенты Taco Cloud отвечали этим требованиям.</p> <p>4.3.1 Защита запросов</p> <p>Необходимо убедиться, что запросы /design и /orders доступны только авторизованным пользователям; все остальные запросы должны быть разрешены для всех пользователей. Следующая реализация configure() делает именно это:</p> <p>@Override</p> <empty-line/> <p>protected void configure(HttpSecurity http) throws Exception {</p> <empty-line/> <p> http.authorizeRequests()</p> <empty-line/> <p> .antMatchers("/design", "/orders")</p> <empty-line/> <p> .hasRole("ROLE_USER")</p> <empty-line/> <p> .antMatchers(“/”, "/**").permitAll();</p> <empty-line/> <p>}</p> <p>Вызов метода AuthorizationRequests() возвращает объект (ExpressionInterceptUrlRegistry), в котором можно указать URL-пути, шаблоны и требования безопасности для этих путей. В этом случае необходимо указать два правила безопасности:</p> <p>-Запросы /design и /orders должны быть доступны для пользователей с предоставленными полномочиями ROLE_USER.</p> <p>-Все запросы должны быть разрешены всем пользователям.</p> <p>Порядок этих правил важен. Правила безопасности, объявленные первыми, имеют приоритет над правилами, объявленными ниже. Если бы вы поменяли порядок этих двух правил безопасности, все запросы имели бы permitAll(), примененный к ним; правило для /design и /orders запросов не имело бы никакого эффекта.</p> <p>Методы hasRole() и allowAll() - это всего лишь несколько методов объявления требований безопасности для путей запросов. Таблица 4.1 описывает все доступные методы.</p> <p>Табл. 4.1 Методы настройки для определения способа защиты пути</p> <empty-line/> <p>Метод</p> <p>Описание</p> <empty-line/> <p>access(String)</p> <p>Разрешает доступ, если данное выражение SpEL имеет значение true</p> <empty-line/> <p>anonymous()</p> <p>Разрешает доступ анонимным пользователям</p> <empty-line/> <p>authenticated()</p> <p>Разрешает доступ аутентифицированным пользователям</p> <empty-line/> <p>denyAll()</p> <p>Безоговорочно запрещает доступ</p> <empty-line/> <p>fullyAuthenticated()</p> <p>Разрешает доступ, если пользователь полностью аутентифицирован (не запоминается)</p> <empty-line/> <p>hasAnyAuthority(String...)</p> <p>Разрешает доступ, если у пользователя есть какие-либо из указанных полномочий</p> <empty-line/> <p>hasAnyRole(String...)</p> <p>Разрешает доступ, если пользователь имеет любую из указанных ролей</p> <empty-line/> <p>hasAuthority(String)</p> <p>Разрешает доступ, если пользователь имеет полномочия</p> <empty-line/> <p>hasIpAddress(String)</p> <p>Разрешает доступ, если запрос поступает с указанного IP-адреса</p> <empty-line/> <p>hasRole(String)</p> <p>Разрешает доступ, если пользователь имеет данную роль</p> <empty-line/> <p>not()</p> <p>Отрицает эффект любого другого метода доступа</p> <empty-line/> <p>permitAll()</p> <p>Разрешает безоговорочный доступ</p> <empty-line/> <p>rememberMe()</p> <p>Разрешает доступ пользователям, прошедшим проверку подлинности с помощью remember-me (запомни меня)</p> <empty-line/> <p> </p> <p>Большинство методов, описанных в табл. 4.1, предоставляют основные правила безопасности для обработки запросов, но они являются самоограничивающимися и разрешают только правила безопасности, определенные этими методами. Кроме того, можно использовать метод access() для предоставления выражения SpEL для объявления расширенных правил безопасности. Spring Security расширяет SpEL, чтобы включить несколько определенных для безопасности значений и функций, как указано в таблице 4.2.</p> <p>Таблица 4.2 Spring Security расширения Spring Expression Language</p> <empty-line/> <p>Выражение безопасности</p> <p>Возвращаемое значение</p> <empty-line/> <p>authentication</p> <p>Объект проверки подлинности пользователя</p> <empty-line/> <p>denyAll</p> <p>Всегда имеет значение false</p> <empty-line/> <p>hasAnyRole(list of roles)</p> <p>true, если пользователь имеет любую из заданных ролей</p> <empty-line/> <p>hasRole(role)</p> <p>true, если пользователь имеет заданную роль</p> <empty-line/> <p>hasIpAddress(IP address)</p> <p>true, если запрос пришел с заданого IP-адреса</p> <empty-line/> <p>isAnonymous()</p> <p>true, если пользователь является анонимным</p> <empty-line/> <p>isAuthenticated()</p> <p>true, если пользователь прошел проверку подлинности</p> <empty-line/> <p>isFullyAuthenticated()</p> <p>true, если пользователь полностью аутентифицирован (не включая аутентификацию с remember-me (запомни меня))</p> <empty-line/> <p>isRememberMe()</p> <p>true, если пользователь прошел аутентификацию через remember-me (запомни меня)</p> <empty-line/> <p>permitAll</p> <p>Всегда принимает значение true</p> <empty-line/> <p>principal</p> <p>Основной объект пользователя</p> <empty-line/> <p> </p> <p>Как вы можете видеть, большинство расширений выражений безопасности в таблице 4.2 соответствуют аналогичным методам в таблице 4.1. На самом деле, используя метод access() вместе с выражениями hasRole() и permitAll, вы можете переписать configure() следующим образом.</p> <p>Листинг 4.9 Использование выражений Spring для определения правил авторизации</p> <p>@Override</p> <empty-line/> <p>protected void configure(HttpSecurity http) throws Exception {</p> <empty-line/> <p> http.authorizeRequests()</p> <empty-line/> <p> .antMatchers("/design", "/orders")</p> <empty-line/> <p> .access("hasRole('ROLE_USER')")</p> <empty-line/> <p> .antMatchers(“/”, "/**").access("permitAll");</p> <empty-line/> <p>}</p> <p>Сначала это может показаться не таким уж большим делом. В конце концов, эти выражения отражают только то, что вы уже сделали с вызовами методов. Но выражения могут быть гораздо более гибкими. Например, предположите, что (по какой-то сумасшедшей причине) вы только хотели позволить пользователям с полномочиями ROLE_USER создавать новые тако в вторникам (например, Taco Tuesday); вы могли переписать выражение как показано в этой модифицированной версии configure():</p> <p>@Override</p> <empty-line/> <p>protected void configure(HttpSecurity http) throws Exception {</p> <empty-line/> <p> http.authorizeRequests()</p> <empty-line/> <p> .antMatchers("/design", "/orders")</p> <empty-line/> <p> .access("hasRole('ROLE_USER') && " +</p> <empty-line/> <p> "T(java.util.Calendar).getInstance().get("+</p> <empty-line/> <p> "T(java.util.Calendar).DAY_OF_WEEK) == " +</p> <empty-line/> <p> "T(java.util.Calendar).TUESDAY")</p> <empty-line/> <p> .antMatchers(“/”, "/**").access("permitAll");</p> <empty-line/> <p>}</p> <p>С SpEL-based ограничениями безопасности возможности практически безграничны. Бьюсь об заклад, что вы уже придумываете интересные ограничения безопасности, основанные на SpEL.</p> <p>Потребности в авторизации для приложения Taco Cloud удовлетворяются простым использованием access() и выражений SpEL в листинге 4.9. Теперь давайте посмотрим настройки страницы входа в систему приложения Taco Cloud.</p> <p>4.3.2 Создание пользовательской страницы входа</p> <p>Default-ная страница входа намного лучше, чем неуклюжее диалоговое окно HTTP basic, с которого вы начали, но она все еще довольно просто и не совсем вписывается в стиль остальной части приложения Taco Cloud.</p> <p>Чтобы заменить встроенную страницу входа, сначала необходимо сообщить Spring Security, по какому пути будет находиться ваша пользовательская страница входа. Это можно сделать, вызвав formLogin() для объекта HttpSecurity, переданного в configure():</p> <p>@Override</p> <empty-line/> <p>protected void configure(HttpSecurity http) throws Exception {</p> <empty-line/> <p> http.authorizeRequests()</p> <empty-line/> <p> .antMatchers("/design", "/orders")</p> <empty-line/> <p> .access("hasRole('ROLE_USER')")</p> <empty-line/> <p> .antMatchers(“/”, "/**").access("permitAll")</p> <empty-line/> <p> .and()</p> <empty-line/> <p> .formLogin()</p> <empty-line/> <p> .loginPage("/login");</p> <empty-line/> <p>}</p> <p>Обратите внимание, что перед вызовом formLogin() этот раздел конфигурации и предыдущий раздел соединяются вызовом and(). Метод and() означает, что вы завершили настройку авторизации и готовы применить некоторые дополнительные настройки HTTP. Вы будете использовать and() несколько раз, когда начнете новые разделы конфигурации.</p> <p>После перемычки and() вызовите formLogin(), чтобы начать настройку пользовательской формы входа. Вызов loginPage() после этого определяет путь, где будет предоставлена ваша пользовательская страница входа. Когда Spring Security определит, что пользователь не прошел проверку подлинности и должен войти в систему, он перенаправит их по этому пути.</p> <p>Теперь необходимо предоставить контроллер, обрабатывающий запросы по этому пути. Поскольку ваша страница входа в систему будет довольно простой (ничего, кроме представления) достаточно легко объявить ее контроллером представления в WebConfig. Следующие метод addViewControllers() устанавливает login page view контроллер наряду с контроллером представления, для "/" home контроллера:</p> <p>@Override</p> <empty-line/> <p>public void addViewControllers(ViewControllerRegistry registry) {</p> <empty-line/> <p> registry.addViewController("/").setViewName("home");</p> <empty-line/> <p> registry.addViewController("/login");</p> <empty-line/> <p>}</p> <p>Наконец, необходимо определить само представление страницы входа. Поскольку вы используете Thymeleaf в качестве механизма шаблонов, следующий шаблон Thymeleaf должен нам подойти:</p> <p><!DOCTYPE html></p> <empty-line/> <p><html xmlns="<a l:href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>" xmlns:th="http://www.thymeleaf.org"></p> <empty-line/> <p> <head></p> <empty-line/> <p> <title>Taco Cloud</title></p> <empty-line/> <p> </head></p> <empty-line/> <p> <body></p> <empty-line/> <p> <h1>Login</h1></p> <empty-line/> <p> <img th:src="@{/images/TacoCloud.png}"/></p> <empty-line/> <p> <div th:if="${error}"> Unable to login. Check your username and password. </div></p> <empty-line/> <p> <p>New here? Click</p> <empty-line/> <p> <a th:href="@{/register}">here</a> to register.</p></p> <empty-line/> <p> <!-- tag::thAction[] --></p> <empty-line/> <p> <form method="POST" th:action="@{/login}" id="loginForm"></p> <empty-line/> <p> <!-- end::thAction[] --></p> <empty-line/> <p> <label for="username">Username: </label></p> <empty-line/> <p> <input type="text" name="username" id="username" /><br/></p> <empty-line/> <p> <label for="password">Password: </label></p> <empty-line/> <p> <input type="password" name="password" id="password" /><br/></p> <empty-line/> <p> <input type="submit" value="Login"/></p> <empty-line/> <p> </form></p> <empty-line/> <p> </body></p> <empty-line/> <p></html></p> <p>Ключевые вещи, которые следует отметить об этой странице входа в систему, - это путь, который она публикует, и имена полей имени пользователя и пароля. По умолчанию Spring Security прослушивает запросы на вход в /login и ожидает, что поля username и password будут называться username и password. Но это можено настроить. Например, следующая конфигурация настраивает путь и имена полей :</p> <p>.and().formLogin()</p> <empty-line/> <p> .loginPage("/login")</p> <empty-line/> <p> .loginProcessingUrl("/authenticate")</p> <empty-line/> <p> .usernameParameter("user")</p> <empty-line/> <p> .passwordParameter("pwd")</p> <p>Здесь вы указываете, что Spring Security должна прослушивать запросы /authenticate для обработки запросов на вход. Кроме того, поля username и password теперь должны быть названы user и pwd.</p> <p>По умолчанию успешный вход приведет пользователя непосредственно к странице, на которую он переходил, когда Spring Security определила, что ему необходимо залогиниться. Если бы пользователь должен был перейти непосредственно на страницу входа в систему, успешный вход в систему привел бы его к корневому пути (например, к домашней странице). Но вы можете изменить это, указав страницу на которую переходить при успешном входе в систему по умолчанию:</p> <p>.and().formLogin()</p> <empty-line/> <p> .loginPage("/login")</p> <empty-line/> <p> .defaultSuccessUrl("/design")</p> <p>Как настроено здесь, если пользователь должен был успешно войти в систему после прямого перехода на страницу входа, он будет перенаправлен на страницу / design.</p> <p>При желании вы можете принудительно заставить пользователя перейти на страницу design после входа в систему, даже если он находился на другой странце до входа в систему, передав значение true в качестве второго параметра в defaultSuccessUrl:</p> <p>.and().formLogin()</p> <empty-line/> <p> .loginPage("/login")</p> <empty-line/> <p> .defaultSuccessUrl("/design", true)</p> <p>Теперь, когда вы имеете дело с пользовательской страницей входа, давайте перейдем на другую сторону монеты аутентификации и посмотрим, как вы можете позволить пользователю выйти из системы.</p> <p>4.3.3 Выход из системы</p> <p>Выход из системы так же важен, как и вход в приложение. Чтобы выйти, -вам просто нужно вызвать logout для объекта HttpSecurity:</p> <p>.and().logout()</p> <empty-line/> <p> .logoutSuccessUrl("/")</p> <p>Это настраивает фильтр безопасности, который перехватывает запросы POST для /logout. Поэтому, чтобы обеспечить возможность выхода из системы, вам просто нужно добавить форму и кнопку выхода из системы в представлениях вашего приложения:</p> <p><form method="POST" th:action="@{/logout}"></p> <empty-line/> <p> <input type="submit" value="Logout"/></p> <empty-line/> <p></form></p> <p>Когда пользователь нажимает кнопку, его сеанс очищается, и он выходит из приложения. По умолчанию он будет перенаправлен на страницу входа, где сможет снова войти в систему. Но если вы хотите, чтобы он был отправлен на другую страницу, вы можете вызвать logoutSucessFilter (), чтобы указать другую целевую страницу после выхода:</p> <p>.and().logout()</p> <empty-line/> <p> .logoutSuccessUrl("/")</p> <p>В этом случае, пользователи будут отправлены на главную страницу после выхода.</p> <p>4.3.4 Предотвращение подделки межсайтовых запросов</p> <p>Подделка межсайтовых запросов (CSRF) является обычной атакой безопасности. Он включает в себя предоставление пользователю кода на злонамеренно разработанной веб-странице, которая автоматически (и обычно тайно) отправляет форму другому приложению от имени пользователя, который часто является жертвой атаки. Например, пользователю может быть представлена форма на веб-сайте злоумышленника, которая автоматически публикует URL-адрес на банковском веб-сайте пользователя (который предположительно плохо спроектирован и уязвим для такой атаки) для перевода денег. Пользователь может даже не знать, что атака произошла, пока не заметит пропажу денег со своего счета.</p> <p>Для защиты от таких атак приложения могут создать токен CSRF при отображении формы, поместить этот токен в скрытое поле, а затем хранить его для последующего использования на сервере. После отправки формы токен отправляется обратно на сервер вместе с остальными данными формы. Затем запрос перехватывается сервером и сравнивается с первоначально созданным токеном. Если токены совпадают, запрос разрешается обработать. В противном случае форма должна быть отрисована вредоносным веб-сайтом без знания токена, сгенерированного сервером.</p> <p>К счастью, Spring Security имеет встроенную защиту CSRF. Еще более удачным является то, что она включена по умолчанию, и вам не нужно явно настраивать её. Необходимо только убедиться, что все формы, отправляемые приложением, содержат поле с именем _csrf, содержащее токен CSRF.</p> <p>Spring Security даже упрощает это, помещая токен CSRF в атрибут запроса с именем _csrf. Таким образом можно отобразить токен CSRF в скрытом поле в шаблоне Thymeleaf:</p> <p><input type="hidden" name="_csrf" th:value="${_csrf.token}"/></p> <p>Если вы используете библиотеку тегов Spring MVC’s JSP или Thymeleaf с Spring Security dialect, вам даже не нужно явно создавать скрытое поле. Скрытое поле будет создано автоматически.</p> <p>В Thymeleaf, вам просто нужно убедиться, что один из атрибутов элемента <form> с префиксом в качестве атрибута Thymeleaf. Это обычно не проблема, так как довольно часто Thymeleaf отображает путь как относительный контекст. Например, атрибут th:action-это все, что вам нужно для отображения скрытого поля Thymeleaf:</p> <p><form method="POST" th:action="@{/login}" id="loginForm"></p> <p>Можно отключить поддержку CSRF, но я не решаюсь показать вам, как это сделать. CSRF-защита важна и легко обрабатывается в формах, поэтому нет причин ее отключать. Но если вы настаиваете на его отключении, вы можете сделать это, вызвав disable() следующим образом:</p> <p>.and().csrf().disable()</p> <p>Опять же, я предупреждаю вас не отключать защиту CSRF, особенно для производственных приложений.</p> <p>Вся ваша безопасность веб-уровня теперь настроена для Taco Cloud. Помимо прочего, теперь у вас есть настраиваемая страница входа и возможность аутентификации пользователей в репозитории пользователей с поддержкой JPA. Теперь давайте посмотрим, как можно получить информацию о зарегистрированных пользователей.</p> <p>4.4 Определение пользователя</p> <p>Часто недостаточно просто знать, что пользователь вошел в систему. Обычно важно также знать, кто он, чтобы вы могли представить вид и функционал приложения в зависимости от вошедшего пользователя.</p> <p>Например, в OrderController при первоначальном создании объекта Order, связанного с формой заказа, было бы неплохо предварительно заполнить заказ именем и адресом пользователя, чтобы ему не пришлось повторно вводить его для каждого заказа. Возможно, еще более важно, что при сохранении заказа необходимо связать сущность Order с пользователем, создавшим заказ.</p> <p>Для достижения желаемой связи между сущностью Order и сущностью User необходимо добавить новое свойство в класс Order:</p> <p>@Data</p> <empty-line/> <p>@Entity</p> <empty-line/> <p>@Table(name="Taco_Order")</p> <empty-line/> <p>public class Order implements Serializable {</p> <empty-line/> <p>...</p> <empty-line/><empty-line/> <p>@ManyToOne</p> <empty-line/> <p>private User user;</p> <empty-line/> <p>...</p> <empty-line/> <p>}</p> <p>Аннотация @ManyToOne этого свойства указывает, что заказ принадлежит одному пользователю, и, наоборот, что у пользователя может быть много заказов. (Поскольку вы используете Lombok, вам не нужно явно определять методы доступа для свойства.)</p> <p>В OrderController метод processOrder() отвечает за сохранение заказа. Его необходимо изменить, чтобы определить, кто является аутентифицированным пользователем, и вызвать setUser () у объекта Order, чтобы связать заказ с пользователем.</p> <p>Существует несколько способов определить пользователя. Вот несколько из наиболее распространенных способов:</p> <p>-Inject основные(Principal) объекты в метод контроллера</p> <p>-Inject объект аутентификации(Authentication) в метод контроллера</p> <p>-Использовать SecurityContextHolder, чтобы получить в контексте безопасности</p> <p>-Используйте аннотированный метод @AuthenticationPrincipal</p> <p>Например, можно изменить processOrder(), чтобы он принимал java.security.Principal в качестве параметра. Затем вы можете использовать основное(principal) имя для поиска пользователя используя UserRepository:</p> <p>@PostMapping</p> <empty-line/> <p>public String processOrder(@Valid Order order, Errors errors, SessionStatus sessionStatus,</p> <empty-line/> <p> Principal principal) {</p> <empty-line/> <p> ...</p> <empty-line/> <p> User user = userRepository.findByUsername(</p> <empty-line/> <p> principal.getName());</p> <empty-line/> <p> order.setUser(user);</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>Это отлично работает, но засоряет код, который иначе не связан с безопасностью с кодом безопасности. Можно урезать часть кода безопасности, изменив processOrder(), чтобы он принимал Authentication объект в качестве параметра вместо Principal:</p> <p>@PostMapping</p> <empty-line/> <p>public String processOrder(@Valid Order order, Errors errors, SessionStatus sessionStatus,</p> <empty-line/> <p> Authentication authentication) {</p> <empty-line/> <p> ...</p> <empty-line/> <p> User user = (User) authentication.getPrincipal();</p> <empty-line/> <p> order.setUser(user);</p> <empty-line/> <p> ...</p> <empty-line/> <p>}</p> <p>С Authentication в руках, вы можете вызвать getPrincipal(), чтобы получить основной (principal) объект, который в этом случае является User. Обратите внимание, что getPrincipal() возвращает java.util.Object, поэтому вам нужно привести его к User.</p> <p>Однако, возможно, самым чистым решением является просто принимать на вход объект User в методе processOrder(), но аннотировать его @AuthenticationPrincipal, чтобы он был субъектом проверки подлинности:</p> <p>@PostMapping</p> <empty-line/> <p>public String processOrder(@Valid Order order, Errors errors, SessionStatus sessionStatus,</p> <empty-line/> <p> @AuthenticationPrincipal User user) {</p> <empty-line/> <p> if (errors.hasErrors()) {</p> <empty-line/> <p> return "orderForm";</p> <empty-line/> <p> }</p> <empty-line/> <p> order.setUser(user);</p> <empty-line/> <p> orderRepo.save(order);</p> <empty-line/> <p> sessionStatus.setComplete();</p> <empty-line/> <p> return "redirect:/";</p> <empty-line/> <p>}</p> <p>Что хорошо в @AuthenticationPrincipal, так это то, что он не требует приведения (как с Authentication), и он ограничивает код безопасности самой аннотацией. К моменту получения объекта User в processOrder() он готов к использованию для Оrder.</p> <p>Есть еще один способ определить, кто является аутентифицированным пользователем, хотя это немного грязно в том смысле, что он очень тяжел для кода, специфичного для безопасности. Вы можете получить объект аутентификации из контекста безопасности и затем запросить его участника (principal) следующим образом:</p> <p>Authentication authentication = SecurityContextHolder.getContext().getAuthentication();</p> <empty-line/> <p>User user = (User) authentication.getPrincipal();</p> <p>Несмотря на то, что этот фрагмент имеет большой объем кода для обеспечения безопасности, он имеет одно преимущество перед другими описанными подходами: его можно использовать в любом месте приложения, а не только в методах обработчика контроллера. Это делает его пригодным для использования на более низких уровнях кода.</p> <p>Итог:</p> <p>--Spring Security autoconfiguration отличный способ начать работу с безопасностью, но большинству приложений необходимо явно настроить безопасность для удовлетворения своих уникальных требований безопасности.</p> <p>-User details могут управляться в хранилищах пользователей, поддерживаемых реляционными базами данных,</p> <p>LDAP или полностью настраиваемыми реализациями.</p> <p>-Spring Security автоматически защищает от CSRF-атак.</p> <p>-Информация об аутентифицированном пользователе может быть получена через объект SecurityContext (возвращается из SecurityContextHolder.getContext () ) или внедряется в контроллеры с помощью @AuthenticationPrincipal.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/05/spring-in-action-covers-spring-50-5.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 5</a></p> <p>5. Работа со свойствами конфигурации</p> <p>В этой главе рассматриваются</p> <p>Тонкая настройка автоконфигурирования bean-ов</p> <p>Применение свойств конфигурации к компонентам приложения</p> <p>Работа с Spring профилями.</p> <p> </p> <p>Вы помните те времена, когда iPhone впервые вышел? Небольшой кусок металла и стекла едва ли соответствовал описанию того, что мир представлял себе как телефон. И все же, он стал пионером современной эпохи смартфонов, изменив все в том, как мы общаемся. Хотя сенсорные телефоны во многих отношениях проще и мощнее, чем их предшественник, флип-телефон, когда iPhone был впервые анонсирован, было трудно представить, как устройство с одной кнопкой может использоваться для звонков.</p> <p>В некотором смысле автоконфигурация Spring Boot выглядит также. Автоматическая конфигурация значительно упрощает разработку приложений Spring. Но после десятилетия установки значений свойств в конфигурации Spring XML и вызова методов setter в экземплярах bean не сразу видно, как установить свойства bean, для которых нет явной конфигурации.</p> <p>К счастью, Spring Boot предоставляет способ со свойствами конфигурации. Свойства конфигурации - это не что иное, как свойства компонентов в контексте приложения Spring, которые можно задать из нескольких источников свойств, включая системные свойства JVM, аргументы командной строки и переменные среды.</p> <p>В этой главе вы сделаете шаг назад от реализации новых функций в приложении Taco Cloud, чтобы изучить свойства конфигурации. То, что вы узнаете, несомненно, окажется полезным по мере продвижения вперед в последующих главах. Мы начнем с того, как использовать свойства конфигурации для точной настройки того, что Spring Boot автоматически настраивает.</p> <p>5.1 Тонкая настройка автоконфигурации</p> <p>Прежде чем мы слишком глубоко погрузимся в свойства конфигурации, важно установить, что в Spring: есть два разных (но связанных) типа конфигураций:</p> <p>-Bean wiring - конфигурация, которая объявляет компоненты приложения, которые будут созданы как bean в контексте приложения Spring и как они должны быть внедрены друг в друга.</p> <p>-Property injection - конфигурация, задающая значения для компонентов в контексте приложения Spring.</p> <p>И в конфигурации Spring на основе XML и Java конфигурации, эти два типа конфигураций часто объявляются явно в одном и том же месте. В конфигурации Java метод @Bean - аннотированный, вероятно, создаст экземпляр bean, а затем установит значения его свойств. Например, рассмотрим следующий метод @Bean, объявляющий источник данных для встроенной базы данных H2:</p> <p>@Bean</p> <p>public DataSource dataSource() {</p> <p> return new EmbeddedDataSourceBuilder()</p> <p> .setType(H2)</p> <p> .addScript("taco_schema.sql")</p> <p> .addScripts("user_data.sql", "ingredient_data.sql")</p> <p> .build();</p> <p>}</p> <p>Здесь методы addScript() и addScripts() задают некоторые строковые свойства с именами SQL-скриптов, которые должны применяться к базе данных после того, как источник данных готов. Таким образом вы можете настроить bean-компонент DataSource, если вы не используете Spring Boot. Автоконфигурация делает этот метод совершенно ненужным.</p> <p>Если зависимость (dependency) H2 доступна в пути к классам во время выполнения, Spring Boot автоматически создает соответствующий компонент DataSource в контексте приложения Spring. Bean применяет сценарии SQL schema.sql и data.sql.</p> <p>Но что, если вы хотите назвать сценарии SQL как-нибудь иначе? Или что, если вам нужно указать более двух сценариев SQL? Именно здесь вступают в силу свойства конфигурации. Но прежде чем вы сможете начать использовать свойства конфигурации, вам необходимо понять, откуда эти свойства берутся.</p> <p>5.1.1 Понимание абстракции среды Spring</p> <p>Абстракция среды Spring - это универсальный магазин для любого настраиваемого свойства. Он абстрагирует происхождение свойств, так что bean-ы, нуждающиеся в этих свойствах, могут получать их из среды Spring. Окружающая среда Spring получает их от нескольких источников свойств, включая:</p> <p>-Свойства системы JVM</p> <p>-Переменные среды операционной системы</p> <p>-Аргумент командной строки</p> <p>-Конфигурационные файлы приложения</p> <p>Затем он агрегирует эти свойства в один источник, из которого можно производить внедрения Spring bean-ов. На рис. 5.1 показано, как свойства из источников свойств перетекают через абстракцию среды Spring в Spring beans.</p> <p><image l:href="#img_17"/></p> <p><strong>Рисунок 5.1 Spring окружение подтягивает свойства из различных источников, и делает их доступными для bean-ов в контексте приложения.</strong></p> <p>Bean-компоненты, которые автоматически настраиваются Spring Boot, настраиваются свойствами, полученными из среды Spring. В качестве простого примера предположим, что вы хотите, чтобы базовый контейнер сервлета приложения прослушивал запросы на каком-либо порту, отличном от порта по умолчанию 8080. Для этого укажите другой порт, установив свойство server.port в src/main/resources/application.properties:</p> <p>server.port=9090</p> <p>Лично я предпочитаю использовать YAML при настройке свойств конфигурации. Поэтому, вместо того, чтобы использовать application.properties, я мог бы создал server.port в src / main/resources/application.yml:</p> <p>server:</p> <p> port: 9090</p> <p>Если вы предпочитаете настраивать это свойство извне, вы также можете указать порт при запуске приложения с помощью аргумента командной строки:</p> <p>$ java -jar tacocloud-0.0.5-SNAPSHOT.jar --server.port=9090</p> <p>Если вы хотите, чтобы приложение всегда запускалось на определенном порту, вы можете установить его один раз в качестве переменной среды операционной системы:</p> <p>$ export SERVER_PORT=9090</p> <p>Обратите внимание, что при установке свойств в качестве переменных среды стиль именования немного отличается, чтобы учесть ограничения, накладываемые операционной системой на имена переменных среды. Все нормально. Spring может интерпретировать SERVER_PORT как server.port без проблем.</p> <p>Как я уже сказал, существует несколько способов настройки свойств конфигурации. И когда мы перейдем к главе 14, вы увидите еще один способ установки свойств конфигурации на централизованном сервере конфигурации. Фактически, есть несколько сотен свойств конфигурации, которые вы можете использовать для настройки, в том числе и для настройки поведения Spring bean-ов. Вы уже видели несколько: server.port в этой главе и security.user.name и security.user.password в предыдущей главе.</p> <p>Невозможно изучить все доступные свойства конфигурации в этой главе. Тем не менее, давайте рассмотрим несколько наиболее полезных свойств конфигурации, с которыми вы обычно сталкиваетесь. Мы начнем с нескольких свойств, которые позволяют настроить источник данных с автоматической настройкой.</p> <p>5.1.2 Конфигурация источника данных</p> <p>На данный момент приложение Taco Cloud все еще не завершено, но у вас будет еще несколько глав, чтобы позаботиться об этом, прежде чем вы будете готовы развернуть приложение. Таким образом, встроенная база данных H2, которую вы используете в качестве источника данных, идеально подходит для ваших нужд. Но как только вы возьмете приложение в производство, вы, вероятно, захотите рассмотреть более постоянное решение для базы данных.</p> <p>Хотя вы можете явно настроить свой собственный компонент источника данных, это обычно не требуется. Вместо этого проще настроить URL-адрес и учетные данные для базы данных с помощью свойства конфигурации. Например, если бы вы должны были начать использовать базу данных MySQL, вы могли бы добавить следующие свойства конфигурации к приложению в формате YML:</p> <p>spring:</p> <p> datasource:</p> <p> url: jdbc:mysql://localhost/tacocloud</p> <p> username: tacodb</p> <p> password: tacopassword</p> <p>Хотя вам нужно будет добавить соответствующий драйвер JDBC в сборку, вам обычно не нужно будет указывать класс драйвера JDBC; Spring Boot может выяснить это из структуры URL базы данных. Но если возникнет проблема, вы можете установить свойство spring.datasource.driver-class-name :</p> <p>spring:</p> <p> datasource:</p> <p> url: jdbc:mysql://localhost/tacocloud</p> <p> username: tacodb</p> <p> password: tacopassword</p> <p> driver-class-name: com.mysql.jdbc.Driver</p> <p>Spring Boot использует эти данные подключения при автоконфигурировании компонента DataSource. Компонент DataSource будет объединен с помощью пула соединений JDBC Tomcat, если он доступен в пути к классам. Если нет, Spring Boot ищет и использует одну из этих реализаций пула соединений в пути к классам:</p> <p>-HikariCP</p> <p>-Commons DBCP 2</p> <p>Хотя это единственные параметры пула соединений, доступные через автоконфигурацию, вы всегда можете явно настроить компонент источника данных для использования любой реализации пула соединений, которую вы хотите.</p> <p>Ранее в этой главе мы предположили, что можно указать сценарии инициализации базы данных для запуска при запуске приложения. В этом случае,будут полезны свойства spring.datasource.schema и spring.datasource.data:</p> <p>spring:</p> <p> datasource:</p> <p> schema:</p> <p> - order-schema.sql</p> <p> - ingredient-schema.sql</p> <p> - taco-schema.sql</p> <p> - user-schema.sql</p> <p> data:</p> <p> - ingredients.sql</p> <p>Возможно, явная конфигурация источника данных не ваш стиль. Вместо этого, возможно, вы предпочтете настроить источник данных в JNDI и Spring найдет его там. В этом случае настройте источник данных, настроив spring.datasource.jndi-name:</p> <p>spring:</p> <p> datasource:</p> <p> jndi-name: java:/comp/env/jdbc/tacoCloudDS</p> <p>Если вы установите свойство spring.datasource.jndi-name, другие свойства соединения с источником данных (если задано) игнорируются.</p> <p>5.1.3 Настройка встроенного сервера</p> <p>Вы уже видели, как установить порт контейнера сервлета, установив server.port. Я не показал вам, что происходит, если server.port 0:</p> <p>server:</p> <p> port: 0</p> <p>Но базовый сервер-это не просто порт. Одна из наиболее распространенных вещей, которые вам нужно сделать с базовым контейнером, - настроить его для обработки HTTPS-запросов. Чтобы сделать это, первое, что вы должны сделать, это создать хранилище ключей с помощью утилиты командной строки keytool JDK:</p> <p>$ keytool -keystore mykeys.jks -genkey -alias tomcat -keyalg RSA</p> <p>Вам будет задано несколько вопросов о вашем имени и организации, большинство из которых не имеют никакого отношения к результату. Но когда вас спросят пароль, помните (а лучше запишите), что вы задаете. Для этого примера я выбрал letmein в качестве пароля.</p> <p>Затем вам нужно будет установить несколько свойств для включения HTTPS на встроенном сервере. Вы можете указать их все в командной строке, но это было бы ужасно неудобно. Вместо этого вы, вероятно, установите их в файле application.properties или In application.yml формате YML. В In application.yml, свойства могут выглядеть следующим образом:</p> <p>server:</p> <p> port: 8443</p> <p> ssl:</p> <p> key-store: file:///path/to/mykeys.jks</p> <p> key-store-password: letmein</p> <p> key-password: letmein</p> <p>Тут свойство server.port имеет значение 8443, что является общепринятым значением для разработки HTTPS-серверов. Свойство server.ssl.key-store должно быть задано значением пути, где расположен создаваемый файл keystore. Здесь он задан с file:// URL для загрузки его из файловой системы, но если вы упакуете его в файл JAR приложения, вы должны использовать classpath: URL для ссылки на него. И оба свойства server.ssl.key-store-password и задаются значением пароля, который был задан при создании хранилища ключей.</p> <p>При наличии этих свойств приложение должно прослушивать HTTPS-запросы на порту 8443. В зависимости от используемого браузера может появиться предупреждение о том, что сервер не может подтвердить свою личность. На это можно не обращать внимание при работе с localhost во время разработки.</p> <p>5.1.4 Конфигурация логирования</p> <p>Большинство приложений обеспечивают некоторую форму логирования. И даже если ваше приложение ничего не регистрирует напрямую, библиотеки, которые использует ваше приложение, обязательно логируют свою активность.</p> <p>По умолчанию Spring Boot настраивает ведение журнала через Logback (http://logback.qos.ch) для записи на консоль на информационном уровне. Вероятно, вы уже видели множество записей INFO уровня в журналах приложений при запуске приложения и других примерах.</p> <p>Для полного контроля над конфигурацией ведения журнала можно создать logback.xml-файл в корневом каталоге пути к классам (в src/main/resources). Вот пример простого logback.xml-файл, который можно использовать:</p> <p><configuration></p> <p> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"></p> <p> <encoder></p> <p> <pattern></p> <p> %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</p> <p> </pattern></p> <p> </encoder></p> <p> </appender></p> <p> <logger name="root" level="INFO"/></p> <p> <root level="INFO"></p> <p> <appender-ref ref="STDOUT" /></p> <p> </root></p> <p></configuration></p> <p>Помимо шаблона, используемого для ведения журнала, эта конфигурация Logback более или менее эквивалентна используемой по умолчанию, которое вы получите, если у вас нет logback.xml файл. Но путем редактирования logback.XML вы можете получить полный контроль над log файлами приложения.</p> <p>ПРИМЕЧАНИЕ: Особенности настройки logback.xml выходят за рамки этой книги. Обратитесь к документации Logback для получения дополнительной информации.</p> <p>Наиболее распространенные изменения, которые вы внесете в конфигурацию логирования, - это изменение уровней логирования и, возможно, указание файла, в который должны быть записаны логи. С помощью свойств конфигурации Spring Boot вы можете вносить эти изменения без необходимости создания файла logback.xml.</p> <p>Чтобы установить уровень логирования, нужно задать свойства, которые начинаются с logging.level, за которым следует имя регистратора, для которого вы хотите установить уровень ведения журнала. Например, предположим, что вы хотите установить корневой уровень (root logging level) логирования WARN, а логирование Spring Security в уровень DEBUG. Следующие записи в application.yml позаботятся об этом для вас:</p> <p>logging:</p> <p> level:</p> <p> root: WARN</p> <p> org:</p> <p> springframework:</p> <p> security: DEBUG</p> <p>При необходимости можно свернуть имя пакета Spring Security в одну строку для удобства чтения:</p> <p>logging:</p> <p> level:</p> <p> root: WARN</p> <p> org.springframework.security: DEBUG</p> <p>Теперь предположим, что вы хотите записать log-и в файл TacoCloud.log в /var/logs/. Свойства logging.path и logging.file могут помочь в этом:</p> <p>logging:</p> <p> path: /var/logs/</p> <p> file: TacoCloud.log</p> <p> level:</p> <p> root: WARN</p> <p> org:</p> <p> springframework:</p> <p> security: DEBUG</p> <p>Предполагая, что приложение имеет разрешения на запись в /var/logs/, записи журнала будут записаны в /var/logs/TacoCloud.log. По умолчанию log файлы создаются новые по достижении размера 10 МБ.</p> <p>5.1.5 Использование специальных значений свойств</p> <p>При настройке свойств вы не ограничиваетесь объявлением их значений как жестко закодированных строковых и числовых значений. Вместо этого можно получить их значения из других свойств конфигурации.</p> <p>Например, предположим (по какой-либо причине), что вы хотите установить свойство с именем greeting.welcome на основе значение другого свойства с именем spring.application.name. Для этого при настройке приветствия можно использовать маркеры-заполнители $ {} для задания свойства greeting.welcome:</p> <p>greeting:</p> <p> welcome: ${spring.application.name}</p> <p>Вы даже можете использовать этот заполнитель как часть другого текста:</p> <p>greeting:</p> <p> welcome: You are using ${spring.application.name}.</p> <p>Как вы уже видели, настройка собственных компонентов Spring со свойствами конфигурации позволяет легко вводить значения в свойства этих компонентов и настраивать автоконфигурацию. Свойства конфигурации не являются эксклюзивными для bean-компонентов, которые создает Spring. Приложив небольшое усилие, вы можете использовать свойства конфигурации в ваших собственных bean-компонентах. Посмотрим как.</p> <p>5.2 Создание ваших собственных свойств конфигурации</p> <p>Как я упоминал ранее, свойства конфигурации - это не что иное, как свойства bean-компонентов, предназначенных для получения конфигураций из абстракции среды Spring. Что я не упомянул, так это то, как эти компоненты предназначены для использования этих конфигураций.</p> <p>Для поддержки внедрения свойств конфигурации Spring Boot предоставляет аннотацию @ConfigurationProperties. При указании аннотации в любом Spring bean-компонен туказывается, что свойства этого bean-компонента могут быть внедрены из свойств среды Spring.</p> <p>Чтобы продемонстрировать, как работает @ConfigurationProperties, предположим, что вы добавили следующий метод в OrderController, чтобы вывести список прошлых заказов аутентифицированного пользователя:</p> <p>@GetMapping</p> <p>public String ordersForUser(</p> <p> @AuthenticationPrincipal User user, Model model) {</p> <p> model.addAttribute("orders",</p> <p> orderRepo.findByUserOrderByPlacedAtDesc(user));</p> <p> return "orderList";</p> <p>}</p> <p>Наряду с этим вы также добавили необходимый метод findByUser() в OrderRepository:</p> <p>List<Order> findByUserOrderByPlacedAtDesc(User user);</p> <p>Обратите внимание, что этот метод хранилища (репозитория) имеет в названии OrderByPlacedAtDesc. Часть OrderBy указывает свойство, по которому будут упорядочены результаты - в данном случае, свойство placeAt. Desc в конце заставляет упорядочение быть в порядке убывания. Таким образом, список возвращаемых заказов будет отсортирован от самых последних до наименее последних.</p> <p>Этот метод контроллера может быть полезен после того, как пользователь разместил несколько заказов. Но это может стать немного громоздким для самых заядлых ценителей тако. Несколько заказов, отображаемых в браузере, полезны; бесконечный список из сотен заказов - это просто шум. Допустим, вы хотите ограничить количество отображаемых заказов самыми последними 20 заказами. Вы можете изменить ordersForUser()</p> <p>@GetMapping</p> <p>public String ordersForUser(</p> <p> @AuthenticationPrincipal User user, Model model) {</p> <p> Pageable pageable = PageRequest.of(0, 20);</p> <p> model.addAttribute("orders",</p> <p> orderRepo.findByUserOrderByPlacedAtDesc(user, pageable));</p> <p> return "orderList";</p> <p>}</p> <p>вместе с соответствующими изменениями в OrderRepository:</p> <p>List<Order> findByUserOrderByPlacedAtDesc(User user, Pageable pageable);</p> <p>Вы изменили сигнатуру метода findByUserOrderByPlacedAtDesc(), чтобы принимать на вход Pageable в качестве параметра. Pageable - это способ Spring Data выбрать некоторое подмножество результатов по номеру страницы и размеру страницы. В методе контроллера ordersForUser() вы создали объект PageRequest, который реализовал Pageable для запроса первой страницы (нулевой страницы) с размером страницы 20, чтобы получить до 20 самых последних размещенных заказов для пользователя.</p> <p>Хотя это работает фантастически, мне немного неловко, что вы жестко закодировали размер страницы. Что, если позже вы решите, что 20 - это слишком много заказов, и вы решите изменить его на 10? Поскольку он жестко запрограммирован, вам придется пересобрать и повторно развернуть приложение.</p> <p>Вместо того, чтобы жестко задавать размер страницы, вы можете установить его с помощью пользовательского свойства конфигурации. Сначала вам нужно добавить новое свойство с именем pageSize в OrderController, а затем аннотировать OrderController с помощью @ConfigurationProperties, как показано в следующем листинге.</p> <p><strong>Листинг 5.1 Включение свойств конфигурации в OrderController</strong></p> <p>@Controller</p> <p>@RequestMapping("/orders")</p> <p>@SessionAttributes("order")</p> <p>@ConfigurationProperties(prefix="taco.orders")</p> <p>public class OrderController {</p> <p> private int pageSize = 20;</p> <p> public void setPageSize(int pageSize) {</p> <p> this.pageSize = pageSize;</p> <p> }</p> <p> ...</p> <p> @GetMapping</p> <p> public String ordersForUser(</p> <p> @AuthenticationPrincipal User user, Model model) {</p> <p> Pageable pageable = PageRequest.of(0, pageSize);</p> <p> model.addAttribute("orders",</p> <p> orderRepo.findByUserOrderByPlacedAtDesc(user, pageable));</p> <p> return "orderList";</p> <p> }</p> <p>}</p> <p>Наиболее значительным изменением, внесенным в листинг 5.1, является добавление аннотации @ConfigurationProperties. Его префиксный атрибут имеет значение taco.orders, что означает, что при установке свойства pageSize необходимо использовать свойство конфигурации с именем taco.orders.pageSize.</p> <p>Новое свойство pageSize по умолчанию равно 20. Но вы можете легко изменить его на любое желаемое значение, установив свойство taco.orders.pageSize. Например, вы можете установить это свойство в application.yml следующим образом:</p> <p>taco:</p> <p> orders:</p> <p> pageSize: 10</p> <p>Или, если вам нужно сделать быстрые изменения во время работы, вы можете сделать это без необходимости rebuild и redeploy приложения, задав свойство taco.orders.pageSize в качестве переменной среды:</p> <p>$ export TACO_ORDERS_PAGESIZE=10</p> <p>Любое средство, с помощью которого можно установить свойство конфигурации, можно использовать для настройки размера страницы последних заказов. Далее мы рассмотрим, как устанавливать данные конфигурации в хранилищах свойств (property holders).</p> <p>5.2.1 Определение хранилища свойств конфигурации (configuration properties holders)</p> <p>Ничто не указывает на то, что @ConfigurationProperties должен быть установлен на контроллере или любом другом конкретном компоненте. @ConfigurationProperties на самом деле часто размещаются на bean-компонентах, единственная цель которых в приложении - хранить данные конфигурации. Это исключает детали конфигурации из контроллеров и других классов приложений. Это также упрощает совместное использование общих свойств конфигурации несколькими компонентами, которые могут использовать эту информацию.</p> <p>В случае свойства pageSize в OrderController вы можете перенести его в отдельный класс. Следующий листинг демонстрирует такой класс OrderProps.</p> <p><strong>Листинг 5.2. Извлечение pageSize в класс хранилища свойств</strong></p> <p>package tacos.web;</p> <p>import org.springframework.boot.context.properties.ConfigurationProperties;</p> <p>import org.springframework.stereotype.Component;</p> <p>import lombok.Data;</p> <p> </p> <p>@Component</p> <p>@ConfigurationProperties(prefix="taco.orders")</p> <p>@Data</p> <p>public class OrderProps {</p> <p> private int pageSize = 20;</p> <p>}</p> <p>Как и в случае с OrderController, для свойства pageSize по умолчанию установлено значение 20, а для OrderProps добавлен @ConfigurationProperties с префиксом taco.orders. Он также помечен @Component, так что сканирование компонентов Spring автоматически обнаружит его и создаст как компонент в контексте приложения Spring. Это важно, так как следующим шагом является внедрение bean-компонента OrderProps в OrderController.</p> <p>В хранилище конфигурации нет ничего особенного. Это bean, чьи свойства поступают из среды Spring. Они могут быть введены в любой другой компонент, которому нужны эти свойства. Для OrderController это означает удаление свойства pageSize из OrderController и вместо этого внедрение и использование компонента OrderProps:</p> <p>@Controller</p> <p>@RequestMapping("/orders")</p> <p>@SessionAttributes("order")</p> <p>public class OrderController {</p> <p> private OrderRepository orderRepo;</p> <p> private OrderProps props;</p> <p> public OrderController(OrderRepository orderRepo,</p> <p> OrderProps props) {</p> <p> this.orderRepo = orderRepo;</p> <p> this.props = props;</p> <p> }</p> <p> ...</p> <p> @GetMapping</p> <p> public String ordersForUser(</p> <p> @AuthenticationPrincipal User user, Model model) {</p> <p> Pageable pageable = PageRequest.of(0, props.getPageSize());</p> <p> model.addAttribute("orders",</p> <p> orderRepo.findByUserOrderByPlacedAtDesc(user, pageable));</p> <p> return "orderList";</p> <p> }</p> <p> ...</p> <p>}</p> <p>Теперь OrderController больше не отвечает за обработку своих собственных свойств конфигурации. Это делает код OrderController немного аккуратнее и позволяет повторно использовать свойства из OrderProps в любом другом компоненте, который может в них нуждаться. Кроме того, вы группируете свойства конфигурации, которые относятся к заказам в одном месте: класс OrderProps. Если вам нужно добавить, удалить, переименовать или иным образом изменить содержащиеся в нем свойства, вам нужно только произвести эти изменения в OrderProps.</p> <p>Например, давайте представим, что вы используете свойство pageSize в нескольких других bean-компонентах, когда вдруг решили, что было бы лучше применить некоторую проверку к этому свойству, чтобы ограничить его значения не менее чем 5 и не более 25. Без отдельного bean-компонента вам нужно будет применить аннотации проверки к OrderController, свойству pageSize и во всех других классах, использующих это свойство. Но поскольку вы создали pageSize в OrderProps, вам нужно только внести изменения в OrderProps:</p> <p>package tacos.web;</p> <p>import javax.validation.constraints.Max;</p> <p>import javax.validation.constraints.Min;</p> <p>import org.springframework.boot.context.properties.ConfigurationProperties;</p> <p>import org.springframework.stereotype.Component;</p> <p>import org.springframework.validation.annotation.Validated;</p> <p>import lombok.Data;</p> <p> </p> <p>@Component</p> <p>@ConfigurationProperties(prefix="taco.orders")</p> <p>@Data</p> <p>@Validated</p> <p>public class OrderProps {</p> <p> @Min(value=5, message="must be between 5 and 25")</p> <p> @Max(value=25, message="must be between 5 and 25")</p> <p> private int pageSize = 20;</p> <p>}</p> <p>//end::validated[]</p> <p>Хотя вы могли бы так же легко применить аннотации @Validated, @Min и @Max к OrderController (и любым другим bean-компонентам, которые могут быть внедрены с помощью OrderProps), это просто намного больше загромождает OrderController. С помощью компонента-хранилища свойства конфигурации вы собрали спецификацию свойств конфигурации в одном месте, оставив классы, которым эти свойства нужны, относительно чистыми.</p> <p>5.2.2 Объявление метаданных свойства конфигурации</p> <p>В зависимости от вашей среды IDE вы, возможно, заметили, что запись taco.orders.pageSize в application.yml (или application.properties) имеет предупреждение о чем-то вроде неизвестного свойства «taco». Это предупреждение появляется из-за отсутствия метаданных, касающихся только что созданного свойства конфигурации. На рисунке 5.2 показано, как это выглядит, когда я наведу курсор мыши на тако-часть свойства в Spring Tool Suite.</p> <p><image l:href="#img_18"/></p> <p><strong>Рисунок 5.2 Предупреждение о отсутствующих метаданных свойства конфигурации</strong></p> <p>Метаданные свойств конфигурации не являются обязательными и не мешают работе свойств конфигурации. Но метаданные могут быть полезны для предоставления некоторой минимальной документации по свойствам конфигурации, особенно в IDE.</p> <p>Например, при наведении курсора на свойство security.user.password я вижу то, что показано на рисунке 5.3. Хотя помощь при наведении мыши минимальна, ее может быть достаточно, чтобы понять, для чего используется свойство и как его использовать.</p> <p><image l:href="#img_19"/></p> <p><strong>Рисунок 5.3. Документация при наведению указателя на свойства конфигурации в Spring Tool Suite</strong></p> <p>Чтобы помочь тем, кто может использовать свойства конфигурации, которые вы определяете - возможно, даже вы - обычно рекомендуется создать некоторые метаданные к этим свойствам. По крайней мере, это избавляет от этих надоедливых желтых предупреждений в IDE.</p> <p>Чтобы создать метаданные для пользовательских свойств конфигурации, вам нужно создать файл в META-INF (например, в проекте в каталоге src/main/resources/META-INF) с именем Additional-spring-configuration-metadata.json.</p> <p>БЫСТРОЕ ИСПРАВЛЕНИЕ ОТСУТСТВУЮЩИХ МЕТАДАННЫХ.</p> <p>Если вы используете Spring Tool Suite, у вас есть возможность быстрого исправления для создания отсутствующих метаданных свойств. Поместите курсор на строку с предупреждением об отсутствующих метаданных и откройте всплывающее окно быстрого исправления с CMD-1 на Mac или Ctrl-1 в Windows и Linux (см. Рисунок 5.4).</p> <p><image l:href="#img_20"/></p> <p><strong>Рисунок 5.4 Создание метаданных свойства конфигурации с помощью всплывающего быстрого исправления в Spring Tool Suite</strong></p> <p>Затем выберите параметр «Create Metadata for ...», чтобы добавить метаданные для свойства (в Additional-spring-configuration-metadata.json, как показано на этом рисунке), и создайте этот файл, если он еще не существует.</p> <p>Для свойства taco.orders.pageSize вы можете настроить метаданные с помощью следующего JSON:</p> <p>{</p> <p> "properties": [</p> <p> {</p> <p> "name": "taco.orders.page-size",</p> <p> "type": "java.lang.String",</p> <p> "description": "Sets the maximum number of orders to display in a list."</p> <p> }</p> <p> ]</p> <p>}</p> <p>Обратите внимание, что имя свойства, указанное в метаданных, имеет вид taco.orders.page-size. Гибкое именование свойств в Spring Boot допускает некоторые изменения в именах свойств, так что taco.orders.page-size эквивалентен taco.orders.pageSize.</p> <p>После задания метаданных предупреждения должны исчезнуть. Более того, если вы наведете указатель мыши на свойство taco.orders.pageSize, вы увидите описание, показанное на рисунке 5.5.</p> <p><image l:href="#img_21"/></p> <p><strong>Рисунок 5.5 Справка при наведении курсора на свойства пользовательской конфигурации</strong></p> <p>Кроме того, вы получаете справку по автозаполнению из IDE, так же как по стандартным предоставляемым Spring-ом свойствам конфигурации (как показано на рисунке 5.6).</p> <p><image l:href="#img_22"/></p> <p><strong>Рисунок 5.6. Автодополнение при заполнении свойств на основе метаданных.</strong></p> <p>Как вы уже видели, свойства конфигурации полезны для настройки как автоматически настраиваемых компонентов, так и деталей, внедряемых в компоненты вашего приложения. Но что, если вам нужно настроить разные свойства для разных сред развертывания? Давайте рассмотрим, как использовать профили Spring для настройки конкретной среды.</p> <p>5.3 Конфигурация профилей</p> <p>Когда приложения развертываются в разных средах выполнения, обычно некоторые детали конфигурации различаются. Например, подробности соединения с базой данных, вероятно, не одинаковы в среде разработки, в среде обеспечения качества,и в производственной среде (production). Одним из способов настройки уникальной свойств в каждой среде является использование переменных среды для указания свойств конфигурации вместо их определения в application.properties и application.yml.</p> <p>Например, во время разработки вы можете опираться на автоматически сконфигурированную встроенную базу данных H2. Но в производственной среде вы можете установить свойства конфигурации базы данных как переменные среды:</p> <p>% export SPRING_DATASOURCE_URL=jdbc:mysql://localhost/tacocloud</p> <p>% export SPRING_DATASOURCE_USERNAME=tacouser</p> <p>% export SPRING_DATASOURCE_PASSWORD=tacopassword</p> <p>Хотя это сработает, но как-то, несколько громоздко указывать более одного или двух свойств конфигурации в качестве переменных среды. Более того, нет хорошего способа отследить изменения переменных среды или откатить изменения в случае ошибки.</p> <p>Вместо этого я предпочитаю использовать профили Spring. Профили - это тип условной конфигурации, в которой различные компоненты, классы конфигурации и свойства конфигурации применяются или игнорируются в зависимости от того, какие профили активны во время выполнения.</p> <p>Например, допустим, что для целей разработки и отладки вы хотите использовать встроенную базу данных H2 и хотите, чтобы уровни ведения журнала для кода Taco Cloud были установлены на DEBUG. Но в продакшине вы хотите использовать внешнюю базу данных MySQL и установить уровень логирования WARN. В ситуации разработки достаточно просто не задавать какие-либо свойства источника данных и получить автоматически сконфигурированную базу данных H2. А что касается уровня логирования в отладке, вы можете установить для свойства logging.level.tacos для базового пакета tacos значение DEBUG в application.yml:</p> <p>logging:</p> <p> level:</p> <p> tacos: DEBUG</p> <p>Это именно то, что вам нужно для режима разработки. Но если бы вы развернули это приложение в режиме продакшен без каких-либо дальнейших изменений в application.yml, у вас все равно было бы логирование для пакета tacos и встроенная базы данных H2. Вам нужно определить профиль со свойствами, подходящими для продакшена.</p> <p>5.3.1 Определение свойств профиля</p> <p>Один из способов определения специфичных для профиля свойств - создать еще один YAML или файл свойств, содержащий только свойства для продакшена. Имя файла должно соответствовать следующему соглашению: application-{имя профиля}.yml или application-{имя профиля}.properties. Затем вы можете указать свойства конфигурации, соответствующие этому профилю. Например, вы можете создать новый файл с именем application-prod.yml, который содержит следующие свойства:</p> <p>spring:</p> <p> datasource: url: jdbc:mysql://localhost/tacocloud</p> <p> username: tacouser</p> <p> password: tacopassword</p> <p> logging:</p> <p> level:</p> <p> tacos: WARN</p> <p>Другой способ указать специфичные для профиля свойства работает только с конфигурацией YAML. Он включает размещение специфичных для профиля свойств вместе с непрофилированными свойствами в application.yml, разделенных тремя дефисами и свойством spring.profiles для присвоения имени профилю. При записи свойств для продакшена в application.yml файл будет выглядеть так:</p> <p>logging:</p> <p> level:</p> <p> tacos: DEBUG</p> <p>---</p> <p>spring:</p> <p> profiles: prod</p> <p> datasource: url: jdbc:mysql://localhost/tacocloud</p> <p> username: tacouser</p> <p> password: tacopassword</p> <p>logging:</p> <p> level:</p> <p> tacos: WARN</p> <p>Как вы можете видеть, этот файл application.yml разделен на две секции набором тройных дефисов (---). Во втором разделе указывается значение для spring.profiles, указывающее, что следующие свойства применяются к профилю prod. В первом разделе не указывается никакое значение для spring.profiles. Следовательно, его свойства являются общими для всех профилей или являются значениями по умолчанию, если активный профиль не переопределяет значение этих свойств.</p> <p>Независимо от того, какие профили активны при запуске приложения, уровень логирвоания для пакета tacos будет установлен на DEBUG с помощью свойства, установленного в профиле по умолчанию. Но если активен профиль с именем prod, то свойство logging.level.tacos будет переопределено как WARN. Аналогично, если профиль prod активен, то свойства источника данных будут установлены для использования внешней базы данных MySQL.</p> <p>Вы можете определить свойства для любого количества профилей, создав дополнительные файлы YAML или файлы свойств, названные по шаблону application-{имя профиля} .yml или application-{имя профиля} .properties. Или, если хотите, введите еще три черты в application.yml вместе с другим свойством spring.profiles, чтобы указать имя профиля. Затем добавьте все необходимые для профиля свойства.</p> <p>5.3.2 Активация профилей</p> <p>Установка специфичных для профиля свойств не принесет пользы, если эти профили не активны. Но как сделать профиль активным? Чтобы сделать профиль активным, достаточно лишь включить его в список имен профилей, заданный свойству spring.profiles.active. Например, вы можете установить его в application.yml следующим образом:</p> <p>spring:</p> <p> profiles:</p> <p> active:</p> <p> - prod</p> <p>Но это, пожалуй, худший из возможных способов установить активный профиль. Если вы установите активный профиль в application.yml, то этот профиль станет профилем по умолчанию, и вы не добьетесь ни одного из преимуществ использования профилей для отделения специфичных для продакшена свойств от свойств разработки. Вместо этого я рекомендую вам установить активные профили с переменными окружения. В продакшен среде вы должны установить SPRING_PROFILES_ACTIVE следующим образом:</p> <p>% export SPRING_PROFILES_ACTIVE=prod</p> <p>С этого момента любые приложения, развернутые на этом компьютере, будут иметь активный профиль prod, и соответствующие свойства конфигурации будут иметь приоритет над свойствами в профиле по умолчанию.</p> <p>Если вы запускаете приложение как исполняемый файл JAR, вы также можете установить активный профиль через аргумент командной строки, например:</p> <p>% java -jar taco-cloud.jar --spring.profiles.active=prod</p> <p>Обратите внимание, что имя свойства spring.profiles.active содержит слово множественного числа - profiles. Это означает, что вы можете указать более одного активного профиля. Зададим несколько активных профелей с разделением через запятую, также как можно установить и через переменную окружения:</p> <p>% export SPRING_PROFILES_ACTIVE=prod,audit,ha</p> <p>В YAML вы бы активные профили в виде списка:</p> <p>spring:</p> <p> profiles:</p> <p> active:</p> <p> - prod</p> <p> - audit</p> <p> - ha</p> <p>Стоит также отметить, что если вы развертываете приложение Spring в Cloud Foundry, для вас автоматически активируется профиль с именем cloud. Если Cloud Foundry является вашей производственной средой, вы обязательно должны указать специфичные для продакшена свойства в профиле cloud.</p> <p>Открою тайну - профили были бы достаточно бесполезны, если бы могли использоваться только для условной установки свойств конфигурации в приложении Spring. Давайте посмотрим, как объявить bean-компоненты, специфичные для активного профиля.</p> <p>5.3.3 Создание bean-ов в зависимости от профиля</p> <p>Иногда полезно предоставить уникальный набор bean-компонентов для разных профилей. Обычно любой компонент, объявленный в классе конфигурации Java, создается независимо от того, какой профиль активен. Но предположим, что есть некоторые bean-компоненты, которые вам нужно создать, только если определенный профиль активен. В этом случае аннотация @Profile может определять bean-компоненты как применимые только к данному профилю.</p> <p>Например, у вас есть компонент CommandLineRunner, объявленный в TacoCloudApplication, который используется для загрузки встроенной базы данных с данными об ингредиентах при запуске приложения. Это здорово для режима разработки, но было бы ненужным (и нежелательным) в приложении на продакшене. Чтобы предотвратить загрузку данных ингредиента при каждом запуске приложения при продакшен развертывании, вы можете аннотировать метод компонента CommandLineRunner с помощью @Profile следующим образом:</p> <p>@Bean</p> <p>@Profile("dev")</p> <p>public CommandLineRunner dataLoader(IngredientRepository repo,</p> <p> UserRepository userRepo, PasswordEncoder encoder) {</p> <p> ...</p> <p>}</p> <p>Или предположим, что вам нужно создать CommandLineRunner, если активен либо dev-профиль, либо qa-профиль. В этом случае вы можете перечислить профили, для которых должен быть создан компонент:</p> <p>@Bean</p> <p>@Profile({"dev", "qa"})</p> <p>public CommandLineRunner dataLoader(IngredientRepository repo,</p> <p> UserRepository userRepo, PasswordEncoder encoder) {</p> <p> ...</p> <p>}</p> <p>Теперь данные ингредиента будут загружены только если активны профили dev или qa. Это означало бы, что вам нужно активировать профиль разработчика при запуске приложения в среде разработки. Было бы еще удобнее, если бы этот компонент CommandLineRunner создавался всегда, если профиль prod не активен. В этом случае вы можете применить @Profile следующим образом:</p> <p>@Bean</p> <p>@Profile("!prod")</p> <p>public CommandLineRunner dataLoader(IngredientRepository repo,</p> <p> UserRepository userRepo, PasswordEncoder encoder) {</p> <p> ...</p> <p>}</p> <p>Здесь восклицательный знак (!) отменяет имя профиля. По сути, он утверждает, что bean-компонент CommandLineRunner будет создан, если профиль prod не активен.</p> <p>Также можно использовать @Profile для всего класса, аннотированного @Configuration. Например, предположим, что вы должны были извлечь компонент CommandLineRunner в отдельном классе конфигурации с именем DevelopmentConfig.Для этого достаточно аннотировать DevelopmentConfig с помощью @Profile:</p> <p>@Profile({"!prod", "!qa"})</p> <p>@Configuration</p> <p>public class DevelopmentConfig {</p> <p> @Bean</p> <p> public CommandLineRunner dataLoader(IngredientRepository repo,</p> <p> UserRepository userRepo, PasswordEncoder encoder) {</p> <p> ...</p> <p> }</p> <p>}</p> <p>Здесь bean-компонент CommandLineRunner (как и любые другие bean-компоненты, определенные в DevelopmentConfig) будет создан, только если ни prod, ни qa-профили не активны.</p> <p>Итог:</p> <p>Spring bean-компоненты могут быть аннотированы с помощью @ConfigurationProperties, чтобы включить внедрение значений из одного из нескольких источников свойств.</p> <p>Свойства конфигурации можно задавать в аргументах командной строки, переменных среды, системных свойствах JVM, файлах свойств или файлах YAML, а также в других параметрах.</p> <p>Свойства конфигурации можно использовать для переопределения параметров автоконфигурации, включая возможность указать URL-адрес источника данных и уровни логирования.</p> <p>Профили Spring можно использовать с источниками свойств для условной установки свойств конфигурации на основе активных профилей.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/05/spring-in-action-covers-spring-50-6.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 6</a></p> <p>6. Создание REST сервисов</p> <p> </p> <p><strong>Эта глава охватывает</strong></p> <p><strong>Определение</strong><strong> REST endpoints </strong><strong>в</strong><strong> Spring MVC</strong></p> <p><strong>Включение гиперссылочных REST ресурсов</strong></p> <p><strong>Автоматические REST endpoints на основе репозитория</strong></p> <p> </p> <p>«Веб-браузер мертв. Что теперь?"</p> <p>Примерно дюжину лет назад я слышал, как кто-то предположил, что веб-браузер приближается к статусу legacy и что что-то другое возьмет верх. Но как такое могло случиться? Что может свергнуть почти вездесущий веб-браузер? Как бы мы использовали растущее количество сайтов и онлайн-сервисов, если бы не веб-браузер? Конечно, это был бред сумасшедшего!</p> <p>Вернемся в день сегодняшний и станет очевидно, что веб-браузер не исчез. Но он больше не является основным средством доступа к Интернету. Мобильные устройства, планшеты, умные часы и голосовые устройства стали обычным явлением. И даже многие браузерные приложения на самом деле работают с приложениями JavaScript, а не позволяют браузеру быть тупым терминалом для рендеринга контента на сервере.</p> <p>С таким широким выбором вариантов на стороне клиента многие приложения приняли общий дизайн, в котором пользовательский интерфейс перемещается ближе к клиенту, а сервер предоставляет API, через который все типы клиентов могут взаимодействовать с функциональностью бэкэнда.</p> <p>В этой главе вы собираетесь использовать Spring для предоставления REST API для приложения TacoCloud. Вы будете использовать то, что узнали о Spring MVC в главе 2, для создания endpoints RESTful с контроллерами Spring MVC. Вы также автоматически выставите REST endpoints для Spring Data repository-ев, которые вы определили в главе 4. Наконец, мы рассмотрим способы тестирования и защиты этих endpoint.</p> <p>Но сначала вы напишите несколько новых контроллеров Spring MVC, которые предоставляют функциональные возможности бэкэнда с endpoint REST, которые будут использоваться богатым веб-интерфейсом.</p> <p>6.1 Написание RESTful контроллеров</p> <p>Надеюсь, вы не возражаете, но пока вы переворачивали страницу и читали введение к этой главе, я взял на себя смелость переосмыслить пользовательский интерфейс для TacoCloud. То, с чем вы работали, было прекрасно для начала, но этого не хватало по части эстетики.</p> <p>Рисунок 6.1 - это просто пример того, как выглядит Taco Cloud. Довольно шикарно, а?</p> <p><image l:href="#img_23"/></p> <p><strong>Рисунок 6.1 Новая домашняя страница Taco Cloud</strong></p> <p>Когда я любовался внешним видом Taco Cloud, я решил создать веб-интерфейс в виде одностраничного приложения с использованием популярной платформы Angular. В конечном счете, этот новый пользовательский интерфейс браузера заменит серверные страницы, созданные вами в главе 2. Но для этого вам потребуется создать REST API, с которым пользовательский интерфейс построенный на Angular (Я решил использовать Angular, но выбор среды интерфейса не должен иметь никакого отношения к написанию бэккенд кода Spring. Не стесняйтесь выбирать Angular, React, Vue.js или любую другую технологию веб-интерфейса, которая подходит вам больше всего) будет связываться, чтобы сохранять и извлекать данные тако.</p> <p>SPA или не SPA?</p> <p>Вы разработали традиционное многостраничное приложение (MPA) с Spring MVC в главе 2, и теперь вы заменяете его одностраничным приложением (SPA) на основе Angular. Но я не утверждаю, что SPA всегда лучший выбор, чем MPA.</p> <p>Поскольку представление в значительной степени отделено от серверной обработки в SPA, это дает возможность разработать более одного пользовательского интерфейса (такого как собственное мобильное приложение) для одной и той же функциональности сервера. Это также открывает возможность для интеграции с другими приложениями, которые могут использовать API. Но не все приложения требуют такой гибкости, и MPA - это более простой дизайн, если все, что вам нужно, это отображать информацию на веб-странице.</p> <p> </p> <p>Это не книга по Angular, поэтому код в этой главе будет сосредоточен в основном на бэккенд Spring-коде. Я покажу достаточно Angular-кода, чтобы вы могли понять, как работает клиентская часть. Будьте уверены, что полный набор кода, включая Angular frontend, доступен как часть загружаемого кода для книги и по адресу https://github.com/habuma/spring-in-action-5-samples. Вас также может заинтересовать чтение Angular in Action Джереми Уилкена (Manning, 2018) и Angular Development with TypeScript, второе издание Якова Файна и Антона Моисеева (Manning, 2018).</p> <p>В двух словах, клиентский код Angular будет взаимодействовать с API, который вы создадите в этой главе посредством HTTP-запросов. В главе 2 вы использовали аннотации @GetMapping и @PostMapping для извлечения и публикации данных на сервере. Те же самые аннотации по-прежнему пригодятся, когда вы определите свой REST API. Кроме того, Spring MVC поддерживает несколько других аннотаций для различных типов HTTP-запросов, как указано в таблице 6.1.</p> <p>Таблица 6.1. Spring MVC HTTP аннотации обработки запросов (Сопоставление методов HTTP для создания, чтения, обновления и удаления (CRUD) операций не является идеальным соответствием, но на практике именно так они часто используются и как вы будете их использовать в Taco Cloud.)</p> <p>Аннотация - HTTP метод - Стандартное применение</p> <p>@GetMapping - HTTP GET requests - Чтение данных</p> <p>@PostMapping - HTTP POST requests - Создание данных</p> <p>@PutMapping - HTTP PUT requests - Изменение данных</p> <p>@PatchMapping - HTTP PATCH requests - Изменение данных</p> <p>@DeleteMapping - HTTP DELETE requests - Удаление данных</p> <p>@RequestMapping - Обработка запросов общего назначения; HTTP - метод, указанный как атрибут метода</p> <p>Чтобы увидеть эти аннотации в действии, вы начнете с создания простой REST endpoint, которая выбирает несколько самых последних созданных тако.</p> <p>6.1.1 Получение данных с сервера</p> <p>Одна из самых крутых вещей в Taco Cloud - это то, что он позволяет фанатикам тако создавать свои собственные творения тако и делиться ими со своими коллегами-любителями тако. Для этого в Taco Cloud должна быть возможность отображать список самых последних созданных тако при нажатии на ссылку «Latest Designs».</p> <p>В коде Angular я определил компонент RecentTacosComponent, который будет отображать самые последние созданные тако. Полный код TypeScript для RecentTacosComponent показан в следующем листинге.</p> <p><strong>Листинг 6.1. Angular компонент для отображения последних тако</strong></p> <p>import { Component, OnInit, Injectable } from '@angular/core';</p> <p>import { Http } from '@angular/http';</p> <p>import { HttpClient } from '@angular/common/http';</p> <p> </p> <p>@Component({</p> <p> selector: 'recent-tacos',</p> <p> templateUrl: 'recents.component.html',</p> <p> styleUrls: ['./recents.component.css']</p> <p>})</p> <p> </p> <p> @Injectable()</p> <p> export class RecentTacosComponent implements OnInit {</p> <p> recentTacos: any;</p> <p> constructor(private httpClient: HttpClient) { }</p> <p> ngOnInit() {</p> <p> this.httpClient.get('<a l:href="http://localhost%3a8080/design/recent">http://localhost:8080/design/recent</a>') //Получает последние тако с сервера</p> <p> .subscribe(data => this.recentTacos = data);</p> <p> }</p> <p>}</p> <p>Обратите ваше внимание на метод ngOnInit(). В этом методе RecentTacosComponent использует внедренный модуль Http для выполнения HTTP-запроса GET к http://localhost:8080/design/latest, ожидая, что ответ будет содержать список дизайнов тако, который будет помещен в переменную модели recentTacos. Визуализация ( recents.component.html) представит данные этой модели в виде HTML, которые будут отображаться в браузере. Конечный результат может выглядеть примерно так, как показано на рисунке 6.2, после создания трех тако.</p> <p><image l:href="#img_24"/></p> <p><strong>Рисунок 6.2 Отображение последних созданных тако</strong></p> <p>Недостающий фрагмент этой головоломки - это конечная точка (endpoint), которая обрабатывает запросы GET для /design/recent и отдает списком недавно созданных тако. Вы создадите новый контроллер для обработки такого запроса. Следующий листинг показывает этот контроллер.</p> <p><strong>Листинг 6.2. Контроллер RESTful для API запросов дизайнов тако</strong></p> <p>package tacos.web.api;</p> <p>import java.util.Optional;</p> <p>import org.springframework.beans.factory.annotation.Autowired;</p> <p>import org.springframework.data.domain.PageRequest;</p> <p>import org.springframework.data.domain.Sort;</p> <p>import org.springframework.hateoas.EntityLinks;</p> <p>import org.springframework.http.HttpStatus;</p> <p>import org.springframework.web.bind.annotation.CrossOrigin;</p> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <p>import org.springframework.web.bind.annotation.PathVariable;</p> <p>import org.springframework.web.bind.annotation.RequestMapping;</p> <p>import org.springframework.web.bind.annotation.ResponseStatus;</p> <p>import org.springframework.web.bind.annotation.RestController;</p> <p>import tacos.Taco;</p> <p>import tacos.data.TacoRepository;</p> <p> </p> <p>@RestController</p> <p>@RequestMapping(path="/design", produces="application/json") //Обрабатывает запросы на /design</p> <p>@CrossOrigin(origins="*") //Позволяет перекрестные запросы</p> <p>public class DesignTacoController {</p> <p> private TacoRepository tacoRepo;</p> <p> </p> <p>@Autowired</p> <p> EntityLinks entityLinks;</p> <p> </p> <p> public DesignTacoController(TacoRepository tacoRepo) {</p> <p> this.tacoRepo = tacoRepo;</p> <p> }</p> <p> </p> <p> @GetMapping("/recent")</p> <p> public Iterable<Taco> recentTacos() { //Формирует и отдает последние дизайны тако</p> <p> PageRequest page = PageRequest.of(</p> <p> 0, 12, Sort.by("createdAt").descending());</p> <p> return tacoRepo.findAll(page).getContent();</p> <p> }</p> <p>}</p> <p>Аннотация @RestController служит двум целям. Во-первых, это аннотация стереотипа, такая как @Controller и @Service, которая отмечает класс для обнаружения при сканировании компонентов. Но наиболее релевантным для обсуждения REST, аннотация @RestController сообщает Spring, что все методы-обработчики в контроллере должны иметь свое возвращаемое значение, записанное непосредственно в тело ответа, а не записываться в модель в представление для визуализации.</p> <p>В качестве альтернативы, вы могли бы аннотировать DesignTacoController с помощью @Controller, как и с любым контроллером Spring MVC. Но тогда вам также нужно аннотировать все методы-обработчики с помощью @ResponseBody для достижения того же результата. Еще один вариант - вернуть объект ResponseEntity, о котором мы поговорим чуть позже.</p> <p>Аннотация @RequestMapping на уровне класса работает с аннотацией @GetMapping в методе recentTacos(), чтобы указать, что метод recentTacos() отвечает за обработку запросов GET для /design/recent (именно это необходимо для вашего кода Angular).</p> <p>Вы заметите, что аннотация @RequestMapping также устанавливает атрибут produces. Это указывает, что любой из методов-обработчиков в DesignTacoController будет обрабатывать запросы только в том случае, если заголовок Accept запроса включает в себя «application/json». Это не только ограничивает ваш API только выдачей результатов в виде JSON, но также позволяет другому контроллеру (возможно, DesignTacoController из главы 2) обрабатывать запросы с одинаковыми путями, если эти запросы не имеют требований к вывода в формате JSON. Несмотря на то, что это ограничивает ваш API-интерфейс только JSON (что подходит для ваших нужд), вы можете установить produces как массив String нескольких типов контента. Например, чтобы разрешить вывод XML, вы можете добавить” text/html " в атрибут produces:</p> <p>@RequestMapping(path="/design", produces={"application/json", "text/xml"})</p> <p>То что еще вы, возможно, заметили в листинге 6.2, это то, что класс аннотирован @CrossOrigin. Поскольку Angular-часть приложения будет работать на отдельном хосте и/или порту по API (по крайней мере, на данный момент), веб-браузер не позволит вашему Angular-клиенту использовать API. Это ограничение можно обойти, включив заголовки CORS (Cross-Origin Resource Sharing) в ответы сервера. Spring упрощает применение CORS с аннотацией @CrossOrigin. В данном случае @CrossOrigin позволяет клиентам из любого домена использовать API.</p> <p>Логика в методе recentTacos() довольно проста. Он создает объект PageRequest, который указывает, что вы хотите получить первую (0-я) страницу с первыми 12 результатами сортировки в порядке убывания по дате создания тако. Короче говоря, вы хотите дюжину самых последних созданных дизайнов тако. PageRequest передается в вызов метода findAll() объекта TacoRepository, и содержимое этой страницы результатов возвращается клиенту (ответ, как вы видели в листинге 6.1, будет использоваться в качестве данных модели для отображения пользователю).</p> <p>Теперь предположим, что вы хотите создать endpoint, который извлекает один тако по его идентификатору. Используя переменную-заполнитель в пути метода обработчика и принимая переменную path, вы можете получить ID и использовать его для поиска объекта Taco используя репозиторий:</p> <p>@GetMapping("/{id}")</p> <p>public Taco tacoById(@PathVariable("id") Long id) {</p> <p> Optional<Taco> optTaco = tacoRepo.findById(id);</p> <p> if (optTaco.isPresent()) {</p> <p> return optTaco.get();</p> <p> }</p> <p> return null;</p> <p>}</p> <p>Поскольку базовый (корневой) путь контроллера - /design, этот метод контроллера обрабатывает запросы GET для /design/{id}, где часть пути {id} является заполнителем. Фактическое значение в запросе задается параметру id, который сопоставляется с заполнителем {id} с помощью @PathVariable.</p> <p>Внутри tacoById () параметр id передается методу findById() в репозиторий для получения Taco. findById() возвращает Optional<Taco>, потому что возможна ситуация, что нет тако с переданным ID. Поэтому перед тем как получить результат необходимо проверить, существует ли тако по переданному идентификатору. Если такой тако существует, вы вызываете метод get() для Optional<Taco>, чтобы получить Taco.</p> <p>Если идентификатор не соответствует ни одному известному tacos, вы возвращаете null. Однако это далеко не идеально. Возвращая значение null, клиент получает ответ с пустым телом и кодом состояния HTTP 200 (OK). Клиент получает ответ, который он не может использовать, но код состояния указывает, что все в порядке. Лучшим подходом было бы вернуть ответ со статусом HTTP 404 (не найден).</p> <p>Текущая реализация не имеет простого способа, чтобы возвращать код статуса 404 от tacoById(). Но если произвести небольшие изменения, это станет возможным:</p> <p>@GetMapping("/{id}")</p> <p>public ResponseEntity<Taco> tacoById(@PathVariable("id") Long id) {</p> <p> Optional<Taco> optTaco = tacoRepo.findById(id);</p> <p> if (optTaco.isPresent()) {</p> <p> return new ResponseEntity<>(optTaco.get(), HttpStatus.OK);</p> <p> }</p> <p> return new ResponseEntity<>(null, HttpStatus.NOT_FOUND);</p> <p>}</p> <p>Теперь вместо возврата объекта Taco функция tacoById () возвращает ResponseEntity <Taco>. Если тако найдено, вы оборачиваете объект Taco в ResponseEntity с HTTP-статусом OK (что и было ранее). Но если тако не найдено, вы добавляете в ResponseEntity значение null вместе с HTTP-статусом NOT FOUND, чтобы указать, что клиент пытается получить тако, которого не существует.</p> <p>Начало API Taco Cloud для вашего Angular-овского (или любого другого, по вашим предпочтениям) клиента положено. Для тестирования разработки вы также можете использовать утилиты командной строки, такие как curl или HTTPie (https://httpie.org/) чтобы лучше понимать API. Например, следующая командная строка показывает, как вы могли бы получить недавно созданные тако с curl:</p> <p>$ curl localhost:8080/design/recent</p> <p>Или такой командой, если вы предпочитаете HTTPie:</p> <p>$ http :8080/design/recent</p> <p>Но реализация endpoint, которая возвращает информацию, - это только начало. Что делать, если ваш API должен получать данные от клиента? Давайте посмотрим, как вы можете написать методы контроллера, которые обрабатывают входные данные запросов.</p> <p>6.1.2 Отправка данных на сервер</p> <p>Сейчас приложение может вернуть дюжину самых последних созданных тако. Но как эти тако были созданы изначально?</p> <p>Вы еще не удалили ни один код из главы 2, поэтому у вас все еще есть оригинальный DesignTacoController, который отображает форму дизайна Taco и обрабатывает отправку формы. Это отличный способ получить некоторые тестовые данные для тестирования созданного вами API. Но если вы собираетесь преобразовать Taco Cloud в одностраничное приложение, вам нужно будет создать компоненты Angular и соответствующие endpoint-ы, чтобы заменить форму дизайна Taco из главы 2.</p> <p>Я уже переработал клиентский код для формы дизайна taco, создав новый Angular компонент с именем DesignComponent (в файле с именем design.component.ts). Поскольку в нем должен присутствовать функционал отправки данных формы, DesignComponent имеет метод onSubmit (), который выглядит следующим образом:</p> <p>onSubmit() {</p> <p> this.httpClient.post(</p> <p> 'http://localhost:8080/design',</p> <p> this.model, {</p> <p> headers: new HttpHeaders().set('Content-type', 'application/json'),</p> <p> }).subscribe(taco => this.cart.addToCart(taco));</p> <p> this.router.navigate(['/cart']);</p> <p>}</p> <p>В методе onSubmit() вместо get() вызывается метод post(). Это означает, что вместо извлечения данных из API, вы отправляете данные в API. В частности, вы отправляете дизайн тако, который хранится в переменной model, в API endpoint /design с request-ом HTTP POST.</p> <p>Это означает, что вам нужно будет написать метод в DesignTacoController для обработки этого запроса и сохранения дизайна. Добавив следующий метод postTaco() в DesignTacoController, вы реализуете функционал в контроллере для этой цели:</p> <p>@PostMapping(consumes="application/json")</p> <p>@ResponseStatus(HttpStatus.CREATED)</p> <p>public Taco postTaco(@RequestBody Taco taco) {</p> <p> return tacoRepo.save(taco);</p> <p>}</p> <p>Поскольку postTaco() будет обрабатывать HTTP POST request , он аннотируется @PostMapping вместо @GetMapping. Вы не указываете здесь атрибут path, поэтому метод postTaco() будет обрабатывать запросы для /design, как указано в классе @RequestMapping у DesignTacoController.</p> <p>Вы устанавливаете атрибут consumes. Здесь вы используете consumes, чтобы сказать, что метод будет обрабатывать только запросы, Content-type которых соответствует application/json.</p> <p>Параметр Taco для метода помечается @RequestBody, чтобы указать, что тело запроса должно быть преобразовано в объект Taco и привязано к параметру. Эта аннотация важна, без нее Spring MVC предполагает, что вы хотите, чтобы параметры запроса (либо параметры запроса, либо параметры формы) были связаны с объектом Taco. Но аннотация @RequestBody гарантирует, что вместо этого JSON в теле запроса будет связан с объектом Taco.</p> <p>Как только postTaco() получает объект Taco, он передает его методу save() в TacoRepository.</p> <p>Возможно, вы также заметили, что я аннотировал метод postTaco() с помощью @ResponseStatus (HttpStatus.CREATED). При нормальных обстоятельствах (когда не генерируются исключения) все ответы будут иметь код состояния HTTP 200 (ОК), что указывает на успешность запроса. Хотя ответ HTTP 200 всегда приветствуется, он не всегда достаточно описательный. В случае запроса POST HTTP-статус 201 (CREATED) является более информативным. Он сообщает клиенту, что запрос был не только успешным, но в результате был создан ресурс. Всегда целесообразно использовать @ResponseStatus, где это уместно, для передачи клиенту наиболее описательного и точного кода состояния HTTP.</p> <p>Хотя вы использовали @PostMapping для создания нового ресурса Taco, POST-запросы также можно использовать для обновления ресурсов. Тем не менее, запросы POST обычно используются для создания ресурсов, а запросы PUT и PATCH используются для обновления ресурсов. Давайте посмотрим, как вы можете обновить данные, используя @PutMapping и @PatchMapping.</p> <p>6.1.3 Обновление данных на сервере</p> <p>Прежде чем написать какой-либо код контроллера для обработки команд HTTP PUT или PATCH, вам следует уделить время рассмотрению слона в комнате: почему существуют два разных метода HTTP для обновления ресурсов?</p> <p>Хотя это правда, что PUT часто используется для обновления данных ресурсов, на самом деле это семантическая противоположность GET. В то время как запросы GET предназначены для передачи данных с сервера на клиент, запросы PUT предназначены для отправки данных с клиента на сервер.</p> <p>В этом смысле PUT действительно предназначен для выполнения операции оптовой замены, а не операции обновления. Напротив, целью HTTP PATCH является выполнение исправления или частичное обновление данных ресурса.</p> <p>Например, предположим, что вы хотите изменить адрес заказа. Один из способов добиться этого с помощью REST API - обработать запрос PUT следующим образом:</p> <p>@PutMapping("/{orderId}")</p> <p>public Order putOrder(@RequestBody Order order) {</p> <p> return repo.save(order);</p> <p>}</p> <p>Это может сработать, но для этого потребуется, чтобы клиент передал полные данные заказа в запросе PUT. Семантически PUT означает «передать эти данные по этому URL», по сути, заменяя любые данные, которые уже есть. Если какое-либо из свойств заказа будет опущено, значение этого свойства будет заменено на ноль. Даже тако в заказе необходимо будет передать вместе с данными заказа, иначе они будут удалены из заказа.</p> <p>Если PUT выполняет оптовую замену данных объекта, то как вам следует обрабатывать запросы, чтобы выполнить только частичное обновление? Вот для чего хороши запросы HTTP PATCH и Spring @PatchMapping. Вот как вы можете написать метод контроллера для обработки запроса PATCH для заказа:</p> <p>@PatchMapping(path="/{orderId}", consumes="application/json")</p> <p>public Order patchOrder(@PathVariable("orderId") Long orderId,</p> <p> @RequestBody Order patch) {</p> <p> Order order = repo.findById(orderId).get();</p> <p> if (patch.getDeliveryName() != null) {</p> <p> order.setDeliveryName(patch.getDeliveryName());</p> <p> }</p> <p> if (patch.getDeliveryStreet() != null) {</p> <p> order.setDeliveryStreet(patch.getDeliveryStreet());</p> <p> }</p> <p> if (patch.getDeliveryCity() != null) {</p> <p> order.setDeliveryCity(patch.getDeliveryCity());</p> <p> }</p> <p> if (patch.getDeliveryState() != null) {</p> <p> order.setDeliveryState(patch.getDeliveryState());</p> <p> }</p> <p> if (patch.getDeliveryZip() != null) {</p> <p> order.setDeliveryZip(patch.getDeliveryState());</p> <p> }</p> <p> if (patch.getCcNumber() != null) {</p> <p> order.setCcNumber(patch.getCcNumber());</p> <p> }</p> <p> if (patch.getCcExpiration() != null) {</p> <p> order.setCcExpiration(patch.getCcExpiration());</p> <p> }</p> <p> if (patch.getCcCVV() != null) {</p> <p> order.setCcCVV(patch.getCcCVV());</p> <p> }</p> <p> return repo.save(order);</p> <p>}</p> <p>Первое, на что следует обратить внимание, это то, что метод patchOrder() имеет аннотацию @PatchMapping вместо @PutMapping, что указывает на то, что он должен обрабатывать запросы HTTP PATCH вместо запросов PUT.</p> <p>Но одна вещь, которую вы, несомненно, заметили, это то, что метод patchOrder() немного сложнее, чем метод putOrder(). Это потому, что аннотации сопоставления Spring MVC, включая @Pathmapping и @PutMapping, указывают только, какие типы запросов должен обрабатывать метод. Эти аннотации не определяют, как будет обрабатываться запрос. Даже если PATCH семантически подразумевает частичное обновление, вы должны написать код в методе-обработчике, который фактически выполняет такое обновление.</p> <p>В случае метода putOrder() вы приняли полные данные для заказа и сохранили их, придерживаясь семантики HTTP PUT. Но для того, чтобы patchMapping() придерживался семантики HTTP PATCH, тело метода требует большего интеллекта. Вместо полной замены заказа новыми отправленными данными, он проверяет каждое поле входящего объекта заказа и применяет любые не-null значения к существующему заказу. Этот подход позволяет клиенту отправлять только те свойства, которые должны быть изменены, и позволяет серверу сохранять существующие данные для любых свойств, не указанных клиентом.</p> <p>Существует более одного подхода к реализации PATCH</p> <p>Подход исправления, применяемый в методе patchOrder(), имеет несколько ограничений:</p> <p>Если null значения предназначены для указания отсутствия изменений, как клиент может указать, что поле должно быть установлено в null?</p> <p>Невозможно удалить или добавить подмножество элементов из коллекции. Если клиент хочет добавить или удалить запись из коллекции, он должен отправить полную измененную коллекцию.</p> <p>На самом деле не существует строгого правила о том, как обрабатывать запросы PATCH или как должны выглядеть входящие данные. Вместо того, чтобы отправлять фактические данные домена, клиент может отправить специфическое для патча описание изменений, которые будут применены. Конечно, обработчик запроса должен был бы быть написан для обработки инструкций патча вместо данных домена.</p> <p>Обратите внимание, что и в @PutMapping, и в @PatchMapping путь запроса ссылается на ресурс, который необходимо изменить. Это те же самые пути что обрабатываются с помощью методов аннотированных @GetMapping.</p> <p>Теперь вы видели, как получать и обновлять ресурсы с помощью @GetMapping и @PostMapping. И вы видели два разных способа обновления ресурса с помощью @PutMapping и @PatchMapping. Осталось только обработать запросы на удаление ресурса.</p> <p>6.1.4 Удаление данных с сервера</p> <p>Иногда данные просто больше не нужны. В этих случаях клиент должен иметь возможность запросить удаление ресурса с помощью HTTP DELETE request.</p> <p>Spring MVC @DeleteMapping пригодится для объявления методов, которые обрабатывают запросы на удаление. Например, предположим, вы хотите, чтобы ваш API разрешал удаление ресурса заказа. Следующий метод контроллера должен реализовать этот функционал:</p> <p>@DeleteMapping("/{orderId}")</p> <p>@ResponseStatus(code=HttpStatus.NO_CONTENT)</p> <p>public void deleteOrder(@PathVariable("orderId") Long orderId) {</p> <p> try {</p> <p> repo.deleteById(orderId);</p> <p> } catch (EmptyResultDataAccessException e) {}</p> <p>}</p> <p>К этому моменту принцип построения аннотаций должна быть вам знакома. Вы уже видели @GetMapping, @PostMapping, @PutMapping и @ PatchMapping, каждый из которых указывает, что метод должен обрабатывать HTTP запросы соответствующие им методов. Возможно, вас не удивит, что @DeleteMapping используется для указания того, что метод deleteOrder() отвечает за обработку запросов DELETE для /orders/{orderId}.</p> <p>Код в методе - это то, что фактически выполняет удаление заказа. В этом случае он принимает идентификатор заказа, предоставленный в качестве переменной пути в URL-адресе, и передает его в метод deleteById () репозитория. Если заказ существует при вызове этого метода, он будет удален. Если заказ не существует, будет выброшено исключение EmptyResultDataAccessException.</p> <p>Я решил отлавливать EmptyResultDataAccessException и ничего с ними не делать. Я думаю, что если вы попытаетесь удалить ресурс, который не существует, результат будет таким же, как если бы он существовал до удаления. То есть ресурс перестанет существовать. Существовал ли он раньше или нет не имеет значения. Кроме того, я мог бы написать deleteOrder(), чтобы вернуть ResponseEntity, установив тело в null и код состояния HTTP NOT FOUND.</p> <p>Единственное, на что следует обратить внимание в методе deleteOrder(), это то, что он аннотирован @ResponseStatus, чтобы гарантировать, что HTTP-статус ответа равен 204 (NO CONTENT). Нет необходимости передавать какие-либо данные ресурса обратно клиенту для ресурса, который больше не существует, поэтому ответы на запросы DELETE обычно не имеют тела и, следовательно, должны сообщать код состояния HTTP, чтобы клиент знал, что не стоит ожидать никакого содержимого.</p> <p>Ваш Taco Cloud API начинает обретать форму. Клиентский код теперь может легко использовать этот API для отображения ингредиентов, принятия заказов и отображения недавно созданных тако. Но есть кое-что, что вы можете сделать, что сделает ваш API еще проще для клиента. Давайте посмотрим, как вы можете добавить hypermedia в Taco Cloud API.</p> <p>6.2 Добавление hypermedia</p> <p>API, который вы создали до сих пор, довольно прост, но он работает, пока клиент, который его использует, знает схему URL API. Например, клиент может быть жестко закодирован, чтобы знать, что он может получить список недавно созданных тако, выполнив запрос GET для /design/recent. Аналогично, он должен понимать, что он может добавить идентификатор любого taco из полученного перечня в /design, чтобы получить URL для этого конкретного taco.</p> <p>Использование жестко закодированных шаблонов URL и манипулирование строками распространено среди клиентского кода API. Но представьте на мгновение, что произойдет, если изменится схема URL API. Жестко закодированный клиентский код будет иметь устаревшее понимание API и, таким образом, будет не корректен. Жесткое кодирование URL-адресов API и использование строковых манипуляций с ними делает клиентский код хрупким.</p> <p>Гипермедиа как движок состояния приложения, или HATEOAS, является средством создания API с функционалом самоописания, в которых ресурсы, возвращаемые из API, содержат ссылки на связанные ресурсы. Это позволяет клиентам перемещаться по API с минимальным пониманием URL-адресов API. Вместо этого он понимает взаимосвязи между ресурсами, обслуживаемыми API, и использует свое понимание этих взаимосвязей для обнаружения URL-адресов API по мере их прохождения.</p> <p>Например, предположим, что клиент должен был запросить список недавно разработанных тако. В необработанном виде, без гиперссылок, список последних тако будет получен в клиенте с JSON, который выглядит следующим образом (для краткости все, кроме первого тако в списке, вырезаны):</p> <p>[</p> <p> {</p> <p> "id": 4,</p> <p> "name": "Veg-Out",</p> <p> "createdAt": "2018-01-31T20:15:53.219+0000",</p> <p> "ingredients": [</p> <p> {"id": "FLTO", "name": "Flour Tortilla", "type": "WRAP"},</p> <p> {"id": "COTO", "name": "Corn Tortilla", "type": "WRAP"},</p> <p> {"id": "TMTO", "name": "Diced Tomatoes", "type": "VEGGIES"},</p> <p> {"id": "LETC", "name": "Lettuce", "type": "VEGGIES"},</p> <p> {"id": "SLSA", "name": "Salsa", "type": "SAUCE"}</p> <p> ]</p> <p> },</p> <p> ...</p> <p>]</p> <p>Если клиент желает получить или выполнить какую-либо другую HTTP-операцию над конкретным тако, ему необходимо знать (с помощью жесткого кодирования), что он может добавить значение свойства id к URL-адресу, путь которого - /design. Аналогично, если бы он хотел выполнить операцию HTTP над одним из ингредиентов, ему нужно было бы знать, что он может добавить значение свойства id ингредиента к URL-адресу, путь которого равен /ingredients. В любом случае ему также необходимо добавить префикс к этому пути с http: // или https: // и имя хоста API.</p> <p>Напротив, если API включен с гипермедиа, API будет описывать свои собственные URL-адреса, освобождая клиента от необходимости жестко кодировать эти знания. Тот же список недавно созданных тако мог бы выглядеть как следующий список, если бы были вставлены гиперссылки.</p> <p><strong>Листинг 6.3. Список тако-ресурсов с гиперссылками</strong></p> <p>{</p> <p> "_embedded": {</p> <p> "tacoResourceList": [</p> <p> {</p> <p> "name": "Veg-Out",</p> <p> "createdAt": "2018-01-31T20:15:53.219+0000",</p> <p> "ingredients": [</p> <p> {</p> <p> "name": "Flour Tortilla", "type": "WRAP",</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/ingredients/FLTO" }</p> <p> }</p> <p> },</p> <p> {</p> <p> "name": "Corn Tortilla", "type": "WRAP",</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/ingredients/COTO" }</p> <p> }</p> <p> },</p> <p> {</p> <p> "name": "Diced Tomatoes", "type": "VEGGIES",</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/ingredients/TMTO" }</p> <p> }</p> <p> },</p> <p> {</p> <p> "name": "Lettuce", "type": "VEGGIES",</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/ingredients/LETC" }</p> <p> }</p> <p> },</p> <p> {</p> <p> "name": "Salsa", "type": "SAUCE",</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/ingredients/SLSA" }</p> <p> }</p> <p> }</p> <p> ],</p> <p> "_links": {</p> <p> "self": { "href": "http://localhost:8080/design/4" }</p> <p> }</p> <p> },</p> <p> ...</p> <p> ]</p> <p> },</p> <p> "_links": {</p> <p> "recents": {</p> <p> "href": "http://localhost:8080/design/recent"</p> <p> }</p> <p> }</p> <p>}</p> <p>Этот конкретный вариант HATEOAS известен как HAL (Hypertext Application Language; http://stateless.co/hal_specification.html), простой и обычно используемый формат для встраивания гиперссылок в JSON ответы.</p> <p>Хотя этот листинг не такой лаконичный, как раньше, он предоставляет некоторую полезную информацию. Каждый элемент в этом новом списке тако включает в себя свойство с именем _links, которое содержит гиперссылки для клиента для навигации по API. В этом примере у обоих тако и ингредиентов есть собственные ссылки для ссылки на эти ресурсы, и весь список имеет ссылку recents, которая ссылается на себя.</p> <p>Если клиентскому приложению необходимо выполнить HTTP-запрос к тако в массиве, его не нужно формировать на основе знания, как будет выглядеть URL ресурса тако. Вместо известно, что нужно запросить собственную ссылку, которая отображается на http: //localhost:8080/design/4. Если клиент хочет иметь дело с конкретным ингредиентом, ему нужно только перейти по ссылке на себя для этого ингредиента.</p> <p>Проект Spring HATEOAS обеспечивает поддержку гиперссылок в Spring. Он предлагает набор классов и ассемблеров ресурсов, которые можно использовать для добавления ссылок на ресурсы перед их возвратом из контроллера Spring MVC.</p> <p>Чтобы включить гипермедиа в Taco Cloud API, вам нужно добавить starter Spring HATEOAS в зависимости:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-hateoas</artifactId></p> <p></dependency></p> <p>Этот стартер не только добавляет Spring HATEOAS в classpath проекта, но также предоставляет автоконфигурацию для включения Spring HATEOAS. Все, что вам нужно сделать, это переработать ваши контроллеры так, чтобы они возвращали типы ресурсов вместо типов доменов.</p> <p>Вы начнете с добавления гипермедиа-ссылок в список последних тако, возвращаемых GET-запросом в /design/recent.</p> <p>6.2.1 Добавление гиперлинков</p> <p>Spring HATEOAS предоставляет два основных типа, которые представляют гиперссылочные ресурсы: Resource и Resources. Тип Resource представляет один ресурс, тогда как Resources представляет собой набор ресурсов. Оба типа способны содержать ссылки на другие ресурсы. При возврате из метода Spring MVC REST контроллера ссылок, они будут включены в JSON (или XML), полученный клиентом.</p> <p>Чтобы добавить гиперссылки к списку недавно созданных тако, вам нужно будет вернуться к методу recentTacos(), показанному в листинге 6.2. Исходная реализация возвращает List<Taco>, который был прекрасным решением несколько страниц назад, но вам понадобилось, чтобы возвращались объекты ресурсов вместо этого. В следующем листинге показана новая реализация recentTacos(), которая включает в себя первые шаги по внедрению гиперссылок в списке недавно разработанных тако.</p> <p>Листинг 6.4. Добавление гиперссылок на ресурсы</p> <p>@GetMapping("/recent")</p> <p>public Resources<Resource<Taco>> recentTacos() {</p> <p> PageRequest page = PageRequest.of(</p> <p> 0, 12, Sort.by("createdAt").descending());</p> <p> List<Taco> tacos = tacoRepo.findAll(page).getContent();</p> <p> Resources<Resource<Taco>> recentResources = Resources.wrap(tacos);</p> <p> recentResources.add(</p> <p> new Link("http://localhost:8080/design/recent", "recents"));</p> <p> return recentResources;</p> <p>}</p> <p>В этой новой версии recentTacos(), вы больше не возвращаете непосредственно список тако. Вместо этого вы используете Resources.wrap() для переноса списка тако в качестве экземпляра Resources<Resource <Taco >>, который в конечном итоге возвращается из метода. Но перед возвратом объекта Resources вы добавляете ссылку, имя отношения которой - recents, а URL-адрес которой http://localhost:8080/design/recent. Как следствие, следующий фрагмент JSON включен в ресурс, возвращаемый из запроса API:</p> <p>"_links": {</p> <p> "recents": {</p> <p> "href": "http://localhost:8080/design/recent"</p> <p> }</p> <p>}</p> <p>Это хорошее начало, но у вас еще есть работа. На данный момент единственная добавленная вами ссылка - на весь перечень; никакие ссылки не добавляются ни к самим ресурсам тако, ни к ингредиентам каждого тако. Вы добавите их в ближайшее время. Но сначала давайте обратимся к жестко закодированному URL, который вы задали для ссылки на recents.</p> <p>Жесткое кодирование URL-адреса это достаточно плохая идея. Если ваши амбиции Taco Cloud не ограничиваются только тем, что приложение запускается только на вашей собственной машине где разрабатывается ресурс, вам нужен способ не хардкодить localhost:8080. К счастью, Spring HATEOAS предоставляет помощь в виде компоновщиков ссылок.</p> <p>Наиболее полезным из компоновщиков ссылок Spring HATEOAS является ControllerLinkBuilder. Этот компоновщик ссылок достаточно умен, чтобы знать, что такое имя хоста, без необходимости его жесткого кодирования. Кроме того, он предоставляет удобный API для создания ссылок относительно базового URL-адреса любого контроллера.</p> <p>Используя ControllerLinkBuilder, вы можете переписать хардкордное задание Link в RecentTacos() следующими строками:</p> <p>Resources<Resource<Taco>> recentResources = Resources.wrap(tacos);</p> <p>recentResources.add(</p> <p> ControllerLinkBuilder.linkTo(DesignTacoController.class)</p> <p> .slash("recent")</p> <p> .withRel("recents"));</p> <p>Вам не только больше не нужно хардкодить имя хоста, вам также не нужно указывать путь /design. Вместо этого вы запрашиваете ссылку на DesignTacoController, базовый путь которого /design. ControllerLinkBuilder использует базовый путь контроллера в качестве основы создаваемого вами объекта Link.</p> <p>Далее следует вызов одного из моих любимых методов в любом Spring проекте : slash (). Мне нравится этот метод, потому что он так кратко описывает, что именно он собирается делать. Он буквально добавляет косую черту (/) и заданное значение в URL. В результате путь URL-адреса /design/recent.</p> <p>Наконец, вы указываете имя отношения для ссылки. В этом примере отношение называется recents.</p> <p>Хотя я большой поклонник метода slash(), у ControllerLinkBuilder есть еще один метод, который может помочь устранить любое жесткое кодирование, связанное с URL-адресами ссылок. Вместо того, чтобы вызывать slash(), вы можете вызвать linkTo(), передав ему в метод контроллер, чтобы ControllerLinkBuilder получал базовый URL как из базового пути контроллера, так и из сопоставленного пути метода. Следующий код написан с использованием метода linkTo():</p> <p>Resources<Resource<Taco>> recentResources = Resources.wrap(tacos);</p> <p>recentResources.add(</p> <p> linkTo(methodOn(DesignTacoController.class).recentTacos())</p> <p> .withRel("recents"));</p> <p>Здесь я решил статически включить методы linkTo() и methodOn() (оба из ControllerLinkBuilder), чтобы облегчить чтение кода. Метод methodOn() берет класс контроллера и позволяет вам вызвать метод recentTacos(), который перехватывается ControllerLinkBuilder и используется для определения не только базового пути контроллера, но и пути, сопоставленного с recentTacos(). Теперь весь URL-адрес получен из сопоставлений контроллера, и нет никакого хардкода. Великолепно!</p> <p>6.2.2 Создание ресурсов ассемблеров (assemblers)</p> <p>Теперь вам нужно добавить ссылки на ресурс тако, содержащийся в списке. Один из вариантов - циклически проходить по каждому из элементов Resource<Taco>, содержащихся в объекте Resources, добавляя ссылку на каждый из них по отдельности. Но это немного утомительно, и вам нужно будет повторять этот код цикла в API везде, где вы возвращаете список ресурсов тако.</p> <p>Нам нужна другая тактика.</p> <p>Вместо того чтобы позволить Resources.wrap () создать объект Resource для каждого тако в списке, вы определите служебный класс, который преобразует объекты Taco в новый объект TacoResource. Объект TacoResource будет очень похож на Taco, но он также будет иметь возможность переносить ссылки. Следующий листинг показывает, как может выглядеть TacoResource.</p> <p><strong>Листинг 6.5. Тако-ресурс, несущий данные домена и список гиперссылок</strong></p> <p>package tacos.web.api;</p> <p>import java.util.Date;</p> <p>import java.util.List;</p> <p>import org.springframework.hateoas.ResourceSupport;</p> <p>import lombok.Getter;</p> <p>import tacos.Ingredient;</p> <p>import tacos.Taco;</p> <p> </p> <p>public class TacoResource extends ResourceSupport {</p> <p> @Getter</p> <p> private final String name;</p> <p> @Getter</p> <p> private final Date createdAt;</p> <p> @Getter</p> <p> private final List<Ingredient> ingredients;</p> <p> </p> <p> public TacoResource(Taco taco) {</p> <p> this.name = taco.getName();</p> <p> this.createdAt = taco.getCreatedAt();</p> <p> this.ingredients = taco.getIngredients();</p> <p> }</p> <p>}</p> <p>Во многом TacoResource ничем не отличается от доменного типа Taco. У них обоих есть свойства name, createAt и ingredients. Но TacoResource расширяет ResourceSupport для наследования списка объектов Link и методов для управления списком ссылок.</p> <p>Более того, TacoResource не включает свойство id из Taco. Это потому, что нет необходимости предоставлять какие-либо специфичные для базы данных идентификаторы в API. Самостоятельная ссылка ресурса будет служить идентификатором ресурса с точки зрения клиента API.</p> <p><strong>ПРИМЕЧАНИЕ </strong>Домены и ресурсы: отдельные или одинаковые? Некоторые разработчики Spring могут объединить свои доменные типы и ресурсные в один тип, если их типы доменов расширяют ResourceSupport. Так тоже можно, нет правильного или неправильного ответа относительно того, какой путь правильный. Я выбрал создание отдельного типа ресурса, чтобы в Taco не было ненужных загромождений ссылками на ресурсы в тех случаях, когда ссылки не нужны. Кроме того, создав отдельный тип ресурса, я смог легко опустить свойство id, чтобы оно не отображалось в API.</p> <p>TacoResource имеет единственный конструктор, который принимает Taco и копирует соответствующие свойства из Taco в его собственные свойства. Это облегчает преобразование объекта Taco в TacoResource. Но если вы остановитесь на этом, вам все равно понадобится цикл для преобразования списка объектов Taco в Resources<TacoResource>.</p> <p>Чтобы помочь в преобразовании объектов Taco в объекты TacoResource, вы также собираетесь создать ассемблер ресурсов. Следующий список - это то, что вам нужно.</p> <p><strong>Листинг 6.6. Ассемблер ресурсов, который собирает тако-ресурсы</strong></p> <p>package tacos.web.api;</p> <p>import org.springframework.hateoas.mvc.ResourceAssemblerSupport;</p> <p>import tacos.Taco;</p> <p> </p> <p>public class TacoResourceAssembler</p> <p> extends ResourceAssemblerSupport<Taco, TacoResource> {</p> <p> public TacoResourceAssembler() {</p> <p> super(DesignTacoController.class, TacoResource.class);</p> <p> }</p> <p> </p> <p>@Override</p> <p> protected TacoResource instantiateResource(Taco taco) {</p> <p> return new TacoResource(taco);</p> <p> }</p> <p> </p> <p> @Override</p> <p> public TacoResource toResource(Taco taco) {</p> <p> return createResourceWithId(taco.getId(), taco);</p> <p> }</p> <p>}</p> <p>TacoResourceAssembler имеет конструктор по умолчанию, который сообщает суперклассу (ResourceAssemblerSupport), что он будет использовать DesignTacoController для определения базового пути для любых URL-адресов в ссылках, которые он создает при создании TacoResource.</p> <p>Метод instantiateResource() переопределяется для создания экземпляра TacoResource с данным Taco. Этот метод необязательный, если TacoResource имеет конструктор по умолчанию. В этом случае, однако, TacoResource требует для построения Taco, поэтому вы должны переопределить его.</p> <p>Метод toResource() является единственным методом, строго обязательным при расширении ResourceAssemblerSupport. Здесь вы говорите ему создать объект TacoResource из Taco и автоматически дать ему собственную ссылку с URL-адресом, полученным из свойства id объекта Taco.</p> <p>На первый взгляд, toResource(), похоже, имеет аналогичное назначение что и instantiateResource(), но они служат несколько иным целям. В то время как instantiateResource() предназначен только для создания экземпляра объекта Resource, метод toResource() предназначен не только для создания объекта Resource, но и для заполнения его ссылками. Под капотом toResource() находиться вызов instantiateResource().</p> <p>Теперь настройте метод recentTacos(), чтобы использовать TacoResourceAssembler:</p> <p>@GetMapping("/recent")</p> <p>public Resources<TacoResource> recentTacos() {</p> <p> PageRequest page = PageRequest.of(</p> <p> 0, 12, Sort.by("createdAt").descending());</p> <p> List<Taco> tacos = tacoRepo.findAll(page).getContent();</p> <p> List<TacoResource> tacoResources =</p> <p> new TacoResourceAssembler().toResources(tacos);</p> <p> Resources<TacoResource> recentResources =</p> <p> new Resources<TacoResource>(tacoResources);</p> <p> recentResources.add(</p> <p> linkTo(methodOn(DesignTacoController.class).recentTacos())</p> <p> .withRel("recents"));</p> <p> return recentResources;</p> <p>}</p> <p>Вместо того чтобы возвращать Resources<Resource<Taco >>, recentTacos() теперь возвращает Resources<TacoResource>, чтобы воспользоваться вашим новым типом TacoResource. После извлечения тако из репозитория вы передаете список объектов Taco методу toResources() класса TacoResourceAssembler. Этот удобный метод циклически перебирает все объекты Taco, вызывая метод toResource(), который вы переопределили в TacoResourceAssembler, чтобы создать список объектов TacoResource.</p> <p>Используюя этот список TacoResource вы затем создаете объект Resources<TacoResource>, а затем заполняете его ссылкой на recents, как и в предыдущей версии recentTacos().</p> <p>На этом этапе GET-запрос /design/ recent создаст список тако, каждый из которых имеет self ссылку и recents ссылку в самом списке. Но ингредиенты все равно останутся без ссылок. Чтобы решить эту проблему, вы создадите новый ассемблер ресурсов для ингредиентов:</p> <p>package tacos.web.api;</p> <p>import org.springframework.hateoas.mvc.ResourceAssemblerSupport;</p> <p>import tacos.Ingredient;</p> <p> </p> <p> class IngredientResourceAssembler extends</p> <p> ResourceAssemblerSupport<Ingredient, IngredientResource> {</p> <p> public IngredientResourceAssembler() {</p> <p> super(IngredientController2.class, IngredientResource.class);</p> <p> }</p> <p> </p> <p> @Override</p> <p> public IngredientResource toResource(Ingredient ingredient) {</p> <p> return createResourceWithId(ingredient.getId(), ingredient);</p> <p> }</p> <p> </p> <p> @Override</p> <p> protected IngredientResource instantiateResource(</p> <p> Ingredient ingredient) {</p> <p> return new IngredientResource(ingredient);</p> <p> }</p> <p>}</p> <p>Как видите, IngredientResourceAssembler очень похож на TacoResourceAssembler, но работает с объектами Ingredient и IngredientResource вместо объектов Taco и TacoResource.</p> <p>Говоря о IngredientResource, он выглядит так:</p> <p>package tacos.web.api;</p> <p>import org.springframework.hateoas.ResourceSupport;</p> <p>import lombok.Getter;</p> <p>import tacos.Ingredient;</p> <p>import tacos.Ingredient.Type;</p> <p> </p> <p>public class IngredientResource extends ResourceSupport {</p> <p> @Getter</p> <p> private String name;</p> <p> @Getter</p> <p> private Type type;</p> <p> </p> <p> public IngredientResource(Ingredient ingredient) {</p> <p> this.name = ingredient.getName();</p> <p> this.type = ingredient.getType();</p> <p> }</p> <p>}</p> <p>Как и в случае с TacoResource, IngredientResource расширяет ResourceSupport и копирует соответствующие свойства из типа домена в свой собственный набор свойств (исключая свойство id).</p> <p>Осталось лишь немного изменить TacoResource, чтобы он содержал объекты IngredientResource вместо объектов Ingredient:</p> <p>package tacos.web.api;</p> <p>import java.util.Date;</p> <p>import java.util.List;</p> <p>import org.springframework.hateoas.ResourceSupport;</p> <p>import lombok.Getter;</p> <p>import tacos.Taco;</p> <p> </p> <p>public class TacoResource extends ResourceSupport {</p> <p> private static final IngredientResourceAssembler ingredientAssembler = new IngredientResourceAssembler();</p> <p> </p> <p> @Getter</p> <p> private final String name;</p> <p> @Getter</p> <p> private final Date createdAt;</p> <p> @Getter</p> <p> private final List<IngredientResource> ingredients;</p> <p> </p> <p> public TacoResource(Taco taco) {</p> <p> this.name = taco.getName();</p> <p> this.createdAt = taco.getCreatedAt();</p> <p> this.ingredients =ingredientAssembler.toResources(taco.getIngredients());</p> <p> }</p> <p>}</p> <p>Эта новая версия TacoResource создает final статический экземпляр IngredientResourceAssembler и использует его метод toResource() для преобразования списка Ingredient для данного объекта Taco в список IngredientResource.</p> <p>Ваш недавний список тако теперь полностью снабжен гиперссылками, причем не только на себя (ссылка на recents), но также для всех его записей тако и ингредиентов этих тако. Ответ должен быть очень похож на JSON в листинге 6.3.</p> <p>Вы можете остановиться здесь и перейти к следующей теме. Но сначала я расскажу о том, что меня беспокоило в листинге 6.3.</p> <p>6.2.3 Именование встроенных отношений</p> <p>Если вы внимательнее посмотрите на листинг 6.3, вы заметите, что элементы верхнего уровня выглядят так:</p> <p>{</p> <p> "_embedded": {</p> <p> "tacoResourceList": [</p> <p> ...</p> <p> ]</p> <p> }</p> <p>}</p> <p>Прежде всего, позвольте мне обратить ваше внимание на имя tacoResourceList под embedded. Это имя было получено из того факта, что объект Resources был создан из List<TacoResource>. Не то чтобы это было невероятно, но если бы вы реорганизовали имя класса TacoResource в другое, имя поля в результирующем JSON изменится, чтобы соответствовать ему. Это, вероятно, сломало бы любых клиентов, закодированных, чтобы рассчитывать на это имя.</p> <p>Аннотация @Relation может помочь разорвать связь между именем поля JSON и именами классов типов ресурсов, как это определено в Java. Аннотируя TacoResource с помощью @Relation, вы можете указать, как Spring HATEOAS должен называть поле в результирующем JSON:</p> <p>@Relation(value="taco", collectionRelation="tacos")</p> <p>public class TacoResource extends ResourceSupport {</p> <p> ...</p> <p>}</p> <p>Здесь вы указали, что когда список объектов TacoResource используется в объекте Resources, он должен называться tacos. И хотя вы не используете это в нашем API, один объект TacoResource должен называться в JSON как taco.</p> <p>В результате JSON, возвращенный из /design/recent, теперь будет выглядеть следующим образом (независимо от того, какой рефакторинг вы выполните в TacoResource):</p> <p>{</p> <p> "_embedded": {</p> <p> "tacos": [</p> <p> ...</p> <p> ]</p> <p> }</p> <p>}</p> <p>Spring HATEOAS делает добавление ссылок на ваш API довольно простым и понятным. Тем не менее, он добавил несколько строк кода, которые в противном случае вам не понадобились бы. По этой причине некоторые разработчики могут отказаться от использования HATEOAS в своих API, даже если это означает, что клиентский код может стать некорректным при изменении схемы URL API. Я призываю вас серьезно относиться к HATEOAS, а не лениться, не добавляя гиперссылки в ваши ресурсы.</p> <p>Но если вы настаиваете на лени, то, возможно, для вас есть беспроигрышный сценарий, если вы используете Spring Data для своих репозиториев. Давайте посмотрим, как Spring Data REST может помочь вам автоматически создавать API на основе репозиториев, созданных с помощью Spring Data в главе 3.</p> <p>6.3 Включение служб с поддержкой данных</p> <p>Как вы видели в главе 3, Spring Data выполняет особую магию, автоматически создавая реализации репозитория на основе интерфейсов, которые вы определили в своем коде. Но у Spring Data есть еще одна хитрость, которая может помочь вам сгенерировать API для вашего приложения.</p> <p>Spring Data REST - это еще один член семейства Spring Data, который автоматически создает API REST для репозиториев, созданных на основе Spring Data. Делая чуть больше, чем просто добавление Spring Data REST в вашу сборку, вы получаете API с операциями для каждого интерфейса репозитория, который вы определили.</p> <p>Чтобы начать использовать Spring Data REST, добавьте в свою сборку следующую зависимость:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-data-rest</artifactId></p> <p></dependency></p> <p>Хотите верьте, хотите нет, но это все, что необходимо для предоставления REST API в проекте, который уже использует Spring Data для автоматизации репозиториев. Просто имея стартовый Spring REST в сборке, приложение получает автоконфигурацию, которая позволяет автоматически создавать REST API для любых репозиториев, которые были созданы Spring Data (включая Spring Data JPA, Spring Data Mongo и т. д.).</p> <p>REST endpoint, которые создает Spring Data REST, по крайней мере так же хороши (и, возможно, даже лучше) тех, которые вы создали сами. Поэтому на данном этапе не стесняйтесь выполнить небольшую работу по удалению всех классов аннотированных @RestController, которые вы создали до этого момента, прежде чем двигаться дальше.</p> <p>Чтобы опробовать endpoint, предоставляемые Spring Data REST, вы можете запустить приложение и начать тыкать в некоторые URL-адреса. Исходя из набора репозиториев, который вы уже определили для Taco Cloud, вы сможете выполнять запросы GET для тако, ингредиентов, заказов и пользователей.</p> <p>Например, вы можете получить список всех ингредиентов, сделав запрос GET для /ingredients. Используя curl, вы можете получить что-то похожее на это (сокращенно, чтобы показать только первый ингредиент):</p> <p>$ curl localhost:8080/ingredients</p> <p>{</p> <p> "_embedded" : {</p> <p> "ingredients" : [ {</p> <p> "name" : "Flour Tortilla",</p> <p> "type" : "WRAP",</p> <p> "_links" : {</p> <p> "self" : {</p> <p> "href" : "http://localhost:8080/ingredients/FLTO"</p> <p> },</p> <p> "ingredient" : {</p> <p> "href" : "http://localhost:8080/ingredients/FLTO"</p> <p> }</p> <p> }</p> <p> },</p> <p> ...</p> <p> ]</p> <p> },</p> <p> "_links" : {</p> <p> "self" : {</p> <p> "href" : "http://localhost:8080/ingredients"</p> <p> },</p> <p> "profile" : {</p> <p> "href" : "http://localhost:8080/profile/ingredients"</p> <p> }</p> <p> }</p> <p>}</p> <p>Вот Это Да! Не делая ничего, кроме добавления зависимости к вашей сборке, вы получаете не endpoint для ингредиентов, но и возвращающиеся ресурсы также содержат гиперссылки! Притворяясь клиентом этого API, вы также можете использовать curl, чтобы перейти по ссылке self для записи мучной лепешки (FLTO):</p> <p>$ curl http://localhost:8080/ingredients/FLTO</p> <p>{</p> <p> "name" : "Flour Tortilla",</p> <p> "type" : "WRAP",</p> <p> "_links" : {</p> <p> "self" : {</p> <p> "href" : "http://localhost:8080/ingredients/FLTO"</p> <p> },</p> <p> "ingredient" : {</p> <p> "href" : "http://localhost:8080/ingredients/FLTO"</p> <p> }</p> <p> }</p> <p>}</p> <p>Чтобы не отвлекаться, мы не будем тратить больше времени в этой книге, копаясь во всех endpoint и опциях, созданных Spring Data REST. Но вы должны знать, что он также поддерживает методы POST, PUT и DELETE для endpoint, которые он создал. Верно: вы можете вызвать POST для /ingredients, чтобы создать новый ингредиент, и DELETE для /ingredients/FLTO, чтобы удалить лепешки из меню.</p> <p>Одна вещь, которую вы, возможно, захотите сделать, это установить базовый путь для API, чтобы его endpoints были различны и не конфликтовали ни с какими контроллерами, которые вы пишете. (Фактически, если вы не удалите созданный ранее IngredientsController, он будет мешать endpoints /ingredients, предоставляемой Spring Data REST.) Чтобы настроить базовый путь для API, установите свойство spring.data.rest.base-path:</p> <p>spring:</p> <p> data:</p> <p> rest:</p> <p> base-path: /api</p> <p>Это установит базовый путь для endpoint Spring Data REST в /api. Следовательно, конечной точкой ингредиентов теперь является /api/ingredients. Теперь проверим новый базовый путь, запросив список тако:</p> <p>$ curl http://localhost:8080/api/tacos</p> <p>{</p> <p>"timestamp": "2018-02-11T16:22:12.381+0000",</p> <p>"status": 404,</p> <p>"error": "Not Found",</p> <p>"message": "No message available",</p> <p>"path": "/api/tacos"</p> <p>}</p> <p>О, Боже! Это сработало не совсем так, как ожидалось. У вас есть сущность Ingredient и интерфейс IngredientRepository, которые Spring Data REST предоставляет с помощью endpoint /api/ingredients. Итак, если у вас есть сущность Taco и интерфейс TacoRepository, почему Spring Data REST не предоставляет endpoint /api/tacos?</p> <p>6.3.1 Настройка путей ресурсов и имен отношений</p> <p>На самом деле Spring Data REST предоставляет вам endpoint для работы с тако. Но насколько бы умным ни был Spring Data REST, он показывает несколько странным, в том как он предоставляет конечную точку tacos.</p> <p>При создании endpoint для репозиториев Spring Data, Spring Data REST пытается мультиплицировать связанный класс сущностей. Для объекта Ingredient endpoint является /ingredients. Для сущностей Order и User это /orders и /users. Пока все логично.</p> <p>Но иногда, например, с “taco”,, оно путается в слове, и множественная версия не совсем верна. Как выяснилось, Spring Data REST назвала“taco” как “tacoes”, поэтому, чтобы сделать запрос на тако, вы должны учесть это и запросить /api/tacoes:</p> <p>% curl localhost:8080/api/tacoes</p> <p>{</p> <p> "_embedded" : {</p> <p> "tacoes" : [ {</p> <p> "name" : "Carnivore",</p> <p> "createdAt" : "2018-02-11T17:01:32.999+0000",</p> <p> "_links" : {</p> <p> "self" : {</p> <p> "href" : "http://localhost:8080/api/tacoes/2"</p> <p> },</p> <p> "taco" : {</p> <p> "href" : "http://localhost:8080/api/tacoes/2"</p> <p> },</p> <p> "ingredients" : {</p> <p> "href" : "http://localhost:8080/api/tacoes/2/ingredients"</p> <p> }</p> <p> }</p> <p> }]</p> <p> },</p> <p> "page" : {</p> <p> "size" : 20,</p> <p> "totalElements" : 3,</p> <p> "totalPages" : 1,</p> <p> "number" : 0</p> <p> }</p> <p>}</p> <p>Вы можете быть удивлены, откуда я знал, что “taco” будет истолковано как “tacoes”. Оказывается, Spring Data REST также предоставляет домашний ресурс, содержащий ссылки для всех открытых endpoint. Просто сделайте запрос GET к базовому пути API:</p> <p>$ curl localhost:8080/api</p> <p>{</p> <p> "_links" : {</p> <p> "orders" : {</p> <p> "href" : "http://localhost:8080/api/orders"</p> <p> },</p> <p> "ingredients" : {</p> <p> "href" : "http://localhost:8080/api/ingredients"</p> <p> },</p> <p> "tacoes" : {</p> <p> "href" : "http://localhost:8080/api/tacoes{?page,size,sort}",</p> <p> "templated" : true</p> <p> },</p> <p> "users" : {</p> <p> "href" : "http://localhost:8080/api/users"</p> <p> },</p> <p> "profile" : {</p> <p> "href" : "http://localhost:8080/api/profile"</p> <p> }</p> <p> }</p> <p>}</p> <p>Как вы можете видеть, здесь есть ссылки для всех ваших сущностей. Все выглядит хорошо, за исключением ссылки tacos, где и имя отношения, и URL имеют нечетное множественное число “taco”.</p> <p>Хорошей новостью является то, что вам не нужно мириться с этой маленькой причудой Spring Data REST. Добавив простую аннотацию к классу Taco, вы можете настроить как имя отношения, так и этот путь:</p> <p>@Data</p> <p>@Entity</p> <p>@RestResource(rel="tacos", path="tacos")</p> <p>public class Taco {</p> <p> ...</p> <p>}</p> <p>Аннотация @RestResource позволяет вам присвоить сущности любое имя и путь отношения. В этом случае вы устанавливаете их обоих на “tacos”. Теперь, когда вы запрашиваете домашний ресурс, вы видите ссылку tacos с правильным множественным числом:</p> <p>"tacos" : {</p> <p> "href" : "http://localhost:8080/api/tacos{?page,size,sort}",</p> <p> "templated" : true</p> <p>},</p> <p>Это также сортирует путь для endpoint, чтобы вы могли создавать запросы к /api/tacos для работы с ресурсами taco.</p> <p>Говоря о сортировке, давайте посмотрим, как можно отсортировать результаты с Spring Data REST endpoint.</p> <p>6.3.2 Paging и sorting</p> <p>Возможно, вы заметили, что все ссылки на домашнем ресурсе предлагают дополнительные параметры page, size, и sort. По умолчанию запросы возвращающие коллекцию, например /api/tacos, возвращают первую страницу с количеством объектов на ней числом до 20-ти. Но вы можете настроить размер страницы и отображаемую страницу, указав параметры page и size в своем запросе.</p> <p>Например, чтобы запросить первую страницу тако, где размер страницы равен 5, вы можете выполнить следующий запрос GET (используя curl):</p> <p>$ curl "localhost:8080/api/tacos?size=5"</p> <p>Предположим, что общее количество тако более пяти, вы можете запросить вторую страницу тако, добавив параметр page:</p> <p>$ curl "localhost:8080/api/tacos?size=5&page=1"</p> <p>Обратите внимание, что параметр страницы начинается с нуля, что означает, что запрос страницы 1 на самом деле запрашивает вторую страницу. (Вы также заметите, что многие запросы командной строки смещаются над амперсандом в запросе, поэтому я привел весь URL в предыдущей команде curl.)</p> <p>Вы можете использовать манипуляции со строками, чтобы добавить эти параметры в URL, но HATEOAS приходит на помощь, предлагая ссылки на первую, последнюю, следующую и предыдущие страницы в ответе:</p> <p>"_links" : {</p> <p> "first" : {</p> <p> "href" : "http://localhost:8080/api/tacos?page=0&size=5"</p> <p> },</p> <p> "self" : {</p> <p> "href" : "http://localhost:8080/api/tacos"</p> <p> },</p> <p> "next" : {</p> <p> "href" : "http://localhost:8080/api/tacos?page=1&size=5"</p> <p> },</p> <p> "last" : {</p> <p> "href" : "http://localhost:8080/api/tacos?page=2&size=5"</p> <p> },</p> <p> "profile" : {</p> <p> "href" : "http://localhost:8080/api/profile/tacos"</p> <p> },</p> <p> "recents" : {</p> <p> "href" : "http://localhost:8080/api/tacos/recent"</p> <p> }</p> <p>}</p> <p>С этими ссылками клиент API не должен отслеживать, на какой странице он находится, и объединять параметры с URL. Вместо этого он должен просто знать, что нужно искать одну из этих навигационных ссылок на странице по ее имени и следовать за ней.</p> <p>Параметр sort позволяет сортировать полученный список по любому свойству объекта. Например, вам нужен способ получить 12 последних созданных тако. Вы можете сделать это, указав следующее сочетание параметров страницы и сортировки:</p> <p>$ curl "localhost:8080/api/tacos?sort=createdAt,desc&page=0&size=12"</p> <p>Здесь параметр sort указывает, что должна произвестись сортировка по свойству createdDate в порядке убывания (чтобы самые новые тако были первыми). Параметры page и size указывают, что вы должны увидеть первую страницу с 12 тако.</p> <p>Это именно то, что нужно UI, чтобы показать самые последние созданные тако. Результат примерно такой же, как /design/recent endpoint, которую вы определили в DesignTacoController ранее в этой главе.</p> <p>Однако есть небольшая проблема. Код пользовательского интерфейса должен быть жестко запрограммирован, чтобы запросить список тако с этими параметрами. Конечно, это будет работать. Но вы добавляете некоторую хрупкость клиенту, делая его слишком осведомленным о том, как создать запрос API. Было бы здорово, если бы клиент мог найти URL-адрес из списка ссылок. И было бы еще круче, если бы URL был более лаконичным, как /design/recent endpoint, которую вы использовали ранее.</p> <p>6.3.3 Добавление пользовательских endpoint</p> <p>Spring Data REST отлично подходит для создания endpoint для выполнения операций CRUD с репозиториями Spring Data. Но иногда вам нужно отойти от CRUD API по умолчанию и создать endpoint, которая доходит до сути проблемы.</p> <p>Ничто не мешает вам реализовать любой endpoint, который вы хотите, в аннотированном компоненте @RestController, чтобы дополнить то, что Spring Data REST генерирует автоматически. Фактически, вы можете воскресить DesignTacoController, описанный ранее в этой главе, и он все равно будет работать вместе с конечными точками, предоставленными Spring Data REST.</p> <p>Но когда вы пишете свои собственные API контроллеров, их endpoint кажутся несколько оторванными от endpoint Spring Data REST по нескольким причинам:</p> <p>Ваши собственные endpoint контроллера не отображаются в соответствии с базовым путем Spring Data REST. Вы можете принудительно назначить префиксу их сопоставлений любой базовый путь, который вы хотите, включая базовый путь Spring Data REST, но если базовый путь должен был измениться, вам необходимо отредактировать сопоставления контроллера, чтобы они соответствовали.</p> <p>Любые endpoint, которые вы определяете в своих собственных контроллерах, не будут автоматически включены в качестве гиперссылок в ресурсы, возвращаемые endpoint Spring Data REST. Это означает, что клиенты не смогут обнаружить ваши пользовательские endpoint с именем отношения.</p> <p>Давайте сначала обратимся к проблеме базового пути. Spring Data REST включает в себя @RepositoryRestController, новую аннотацию для аннотирования классов контроллеров, чьи отображения должны принимать базовый путь, который совпадает с тем, который настроен для endpoint Spring Data REST. Проще говоря, все сопоставления в контроллере, помеченном @RepositoryRestController, будут иметь свой путь с префиксом со значением свойства spring.data.rest.base-path (которое вы настроили как / api).</p> <p>Вместо того, чтобы воскрешать DesignTacoController, в котором было несколько методов-обработчиков, которые вам не нужны, вы создадите новый контроллер, который содержит только метод recentTacos(). RecentTacosController в следующем листинге помечен аннотацией @RepositoryRestController для принятия базового пути Spring Data REST для его сопоставлений запросов (для request mapping).</p> <p><strong>Листинг 6.7. Применение базового пути Spring Data REST к контроллеру</strong></p> <p>package tacos.web.api;</p> <p>import static org.springframework.hateoas.mvc.ControllerLinkBuilder.*;</p> <p>import java.util.List;</p> <p>import org.springframework.data.domain.PageRequest;</p> <p>import org.springframework.data.domain.Sort;</p> <p>import org.springframework.data.rest.webmvc.RepositoryRestController;</p> <p>import org.springframework.hateoas.Resources;</p> <p>import org.springframework.http.HttpStatus;</p> <p>import org.springframework.http.ResponseEntity;</p> <p>import org.springframework.web.bind.annotation.GetMapping;</p> <p>import tacos.Taco;</p> <p>import tacos.data.TacoRepository;</p> <p> </p> <p>@RepositoryRestController</p> <p>public class RecentTacosController {</p> <p> private TacoRepository tacoRepo;</p> <p> public RecentTacosController(TacoRepository tacoRepo) {</p> <p> this.tacoRepo = tacoRepo;</p> <p> }</p> <p> </p> <p> @GetMapping(path="/tacos/recent", produces="application/hal+json")</p> <p> public ResponseEntity<Resources<TacoResource>> recentTacos() {</p> <p> PageRequest page = PageRequest.of(</p> <p> 0, 12, Sort.by("createdAt").descending());</p> <p> List<Taco> tacos = tacoRepo.findAll(page).getContent();</p> <p> List<TacoResource> tacoResources = new TacoResourceAssembler().toResources(tacos);</p> <p> Resources<TacoResource> recentResources = new Resources<TacoResource>(tacoResources);</p> <p> recentResources.add(</p> <p> linkTo(methodOn(RecentTacosController.class).recentTacos())</p> <p> .withRel("recents"));</p> <p> return new ResponseEntity<>(recentResources, HttpStatus.OK);</p> <p> }</p> <p>}</p> <p>Несмотря на то, что @GetMapping сопоставляется с путем /tacos/recent, аннотация @RepositoryRestController на уровне класса гарантирует, что к нему будет добавлен базовый путь Spring Data REST. Метод recentTacos() будет обрабатывать запросы GET для /api/tacos/recent.</p> <p>Важно отметить, что хотя @RepositoryRestController назван так же, как @RestController, он не обладает той же семантикой, что и @RestController. В частности, он не гарантирует, что значения, возвращаемые из методов-обработчиков, автоматически записываются в тело ответа. Поэтому вам нужно либо аннотировать метод с помощью @ResponseBody, либо возвращать ResponseEntity, который оборачивает данные ответа. Здесь решили вернуть ResponseEntity.</p> <p>При использовании RecentTacosController в запросах на /api/tacos/recent будет возвращено до 15 самых последних созданных тако без необходимости разбивать на страницы и сортировать параметры в URL-адресе. Но он все еще не появляется в списке гиперссылок при запросе /api/tacos. Давайте исправим это.</p> <p>6.3.4 Добавление пользовательских гиперссылок в endpoint Spring Data</p> <p>Если endpoint недавно созданных тако не входит в число гиперссылок, возвращаемых из /api/tacos, как клиент будет знать, как получить самые последние тако? Он должен либо угадать, либо использовать параметры страницы и сортировки. В любом случае, это будет жестко закодировано в клиентском коде, что не идеально.</p> <p>Однако, объявив ресурс обработчик bean-компонентов (resource processor bean), вы можете добавить ссылки в список ссылок Spring Data REST. Spring Data HATEOAS предлагает ResourceProcessor, интерфейс для управления ресурсами до их возврата через API. Для ваших целей вам нужна реализация ResourceProcessor, которая добавляет recents ссылку на любой ресурс типа PagedResources<Resource<Taco> > (тип, возвращаемый для /api/tacos endpoint). В следующем листинге показан метод объявления bean-компонента, определяющий ResourceProcessor.</p> <p><strong>Листинг 6.8. Добавление пользовательских ссылок в REST Spring Data endpoint</strong></p> <p>@Bean</p> <p>public ResourceProcessor<PagedResources<Resource<Taco>>></p> <p> tacoProcessor(EntityLinks links) {</p> <p> return new ResourceProcessor<PagedResources<Resource<Taco>>>() {</p> <p> @Override</p> <p> public PagedResources<Resource<Taco>> process(</p> <p> PagedResources<Resource<Taco>> resource) {</p> <p> resource.add(</p> <p> links.linkFor(Taco.class)</p> <p> .slash("recent")</p> <p> .withRel("recents"));</p> <p> return resource;</p> <p> }</p> <p> };</p> <p>}</p> <p>ResourceProcessor, показанный в листинге 6.8, определяется как анонимный внутренний класс и объявляется как bean-компонент, создаваемый в контексте приложения Spring. Spring HATEOAS обнаружит этот bean-компонент (как и любые другие bean-компоненты типа ResourceProcessor) автоматически и применяет их к соответствующим ресурсам. В этом случае, если из контроллера возвращается PagedResources<Resource<Taco>>, он получит ссылку на самые последние созданные тако. Это включает в себя ответ на запросы для /api/tacos.</p> <p>Итог</p> <p>REST endpoint могут быть созданы с помощью Spring MVC с контроллерами, которые следуют той же модели программирования, что и контроллеры, ориентированные на браузер.</p> <p>Методы обработчика контроллера могут быть аннотированы с помощью @ResponseBody или возвращать объекты ResponseEntity для обхода модели, просмотра и записи данных непосредственно в тело ответа.</p> <p>Аннотация @RestController упрощает контроллеры REST, устраняя необходимость использования @ResponseBody в методах-обработчиках.</p> <p>Spring HATEOAS обеспечивает включение гиперссылок ресурсов, возвращаемых контроллерами Spring MVC.</p> <p>Репозитории Spring Data могут автоматически отображаться как API REST с помощью Spring Data REST.</p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/05/spring-in-action-covers-spring-50-7.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 7</a></p> <p> REST сервисы</p> <p> В этой главе рассматриваются</p> <p>Использование RestTemplate для REST API</p> <p>Навигация по API гипермедиа с помощью Traverson</p> <p> </p> <p>Вы когда-нибудь ходили в кино и были единственный человек в театре? Это, безусловно, замечательный опыт, который по сути является приватным просмотром фильма. Вы можете выбрать любое место, которое захотите, поговорить с персонажами на экране и, возможно, даже открыть свой телефон и написать об этом в Твиттере, чтобы никто не рассердился за то, что нарушил их просмотр фильма. И самое приятное то, что никто больше не портит фильм для вас!</p> <p>Это случалось не часто со мной. Но когда это произошло, я подумал, что бы случилось, если бы я не появился. Они все еще показали бы фильм? Герой все еще спас бы день? Должны ли сотрудники театра убирать театр после окончания фильма?</p> <p>Фильм без аудитории - это как API без клиента. Он готов принимать и предоставлять данные, но если API никогда не вызывается, действительно ли это API? Как и кот Шредингера, мы не можем знать, активен ли API или возвращает ответы HTTP 404, пока мы не отправим к нему запрос.</p> <p>В предыдущей главе мы сосредоточились на определении REST endpoint, которые могут использоваться некоторыми клиентами, внешними по отношению к вашему приложению. Хотя движущей силой для разработки такого API было одностраничное приложение Angular, которое служило веб-сайтом Taco Cloud, реальность такова, что клиент может быть любым приложением на любом языке - даже другим приложением Java.</p> <p>Приложения Spring нередко предоставляют API и отправляют запросы к API другого приложения. Фактически, это становится распространенным в мире микросервисов. Поэтому стоит потратить немного времени на изучение того, как использовать Spring для взаимодействия с REST API.</p> <p>Приложение Spring может использовать REST API с</p> <p>RestTemplate - простой, синхронный REST-клиент, предоставляемый ядром Spring Framework.</p> <p>Traverson - синхронный REST-клиент с поддержкой гиперссылок, предоставляемый Spring HATEOAS. Вдохновленный из одноименной библиотеки JavaScript.</p> <p>WebClient - реактивный, асинхронный клиент REST, представленный в Spring 5.</p> <p>Я отложу обсуждение WebClient до тех пор, пока мы не рассмотрим реактивную веб-инфраструктуру Spring в главе 11. Сейчас мы сосредоточимся на двух других REST клиентах, начиная с RestTemplate.</p> <p>7.1 Использование REST endpoint с RestTemplate</p> <p>Есть много, что входит во взаимодействие с ресурсом REST с точки зрения клиента-в основном скука и шаблонность. Работая с низкоуровневыми библиотеками HTTP, клиент должен создать экземпляр клиента и объект запроса, выполнить запрос, интерпретировать ответ, сопоставить ответ с объектами домена и обработать любые исключения, которые могут быть брошены по пути. И все это шаблонное повторяется, независимо от того, какой HTTP-запрос отправляется.</p> <p>Чтобы избежать такого стандартного кода, Spring предоставляет RestTemplate. Так же, как JDBCTemplate обрабатывает уродливые части работы с JDBC, RestTemplate освобождает вас от скуки при использовании ресурсов REST.</p> <p>RestTemplate предоставляет 41 метод для взаимодействия с ресурсами REST. Вместо того чтобы изучать все методы, которые он предлагает, проще рассмотреть только дюжину уникальных операций, каждая из которых перегружена, и в конечном итоге составляет полный набор в 41 метод. Эти 12 операций описаны в таблице 7.1.</p> <p><strong>Таблица 7.1 RestTemplate определяет 12 уникальных операций, каждая из которых перегружена, обеспечивая в общей сложности 41 метод.</strong></p> <p>Метод - Описание</p> <p>delete(...) - Выполняет HTTP-запрос на удаление ресурса по указанному URL-адресу</p> <p>exchange(...) - Выполняет указанный метод HTTP для URL, возвращая ResponseEntity, содержащий объект, сопоставленный с телом ответа</p> <p>execute(...) - Выполняет указанный метод HTTP для URL, возвращая объект, сопоставленный с телом ответа</p> <p>getForEntity(...) - Отправляет HTTP-запрос GET, возвращая ResponseEntity, содержащий объект, сопоставленный с телом ответа.</p> <p>getForObject(...) - Отправляет HTTP-запрос GET, возвращая объект, сопоставленный с телом ответа.</p> <p>headForHeaders(...) - Отправляет запрос HTTP HEAD, возвращая заголовки HTTP для указанного URL ресурса</p> <p>optionsForAllow(...) - Отправляет запрос HTTP OPTIONS, возвращая заголовок Allow для указанного URL</p> <p>patchForObject(...) - Отправляет запрос HTTP PATCH, возвращая полученный объект, сопоставленный с телом ответа.</p> <p>postForEntity(...) - помещает POST данные в URL, возвращая ResponseEntity, содержащий объект, сопоставленный с телом ответа</p> <p>postForLocation(...) - помещает POST данные в URL, возвращая URL вновь созданного ресурса</p> <p>postForObject(...) - помещает POST данные в URL, возвращая объект, сопоставленный с телом ответа</p> <p>put(...) - Помещает PUT данные ресурса в указанный URL</p> <p>За исключением TRACE, RestTemplate имеет по крайней мере один метод для каждого из стандартных методов HTTP. Кроме того, execute () и exchange () предоставляют низкоуровневые методы общего назначения для отправки запросов любым методом HTTP.</p> <p>Большинство методов в таблице 7.1 перегружены в три формы методов:</p> <p>Можно принять спецификацию String URL с параметрами URL, указанными в списке переменных аргументов.</p> <p>Можно принять спецификацию String URL с параметрами URL, указанными в Map<String,String>.</p> <p>В качестве спецификации URL-адреса принимается java.net.URI без поддержки параметризованных URL-адресов.</p> <p>Как только вы разберетесь с 12 операциями, предоставляемыми RestTemplate, и с тем, как работает каждая с вариантами форм методов, вы сможете приступить к написанию ресурсоемких REST-клиентов.</p> <p>Чтобы использовать RestTemplate, вам нужно либо создать экземпляр там, где вам это нужно</p> <p>RestTemplate rest = new RestTemplate();</p> <p>или вы можете объявить его как bean и внедрить его там, где вам это нужно:</p> <p>@Bean</p> <p>public RestTemplate restTemplate() {</p> <p> return new RestTemplate();</p> <p>}</p> <p>Давайте рассмотрим операции RestTemplate, рассмотрев те из них, которые поддерживают четыре основных метода HTTP: GET, PUT, DELETE и POST. Начнем с getForObject() и getForEntity() - метод GET.</p> <p>7.1.1 GET (получение) ресурсов</p> <p>Предположим, вы хотите получить компонент из Taco Cloud API. Предполагая, что API не поддерживает HATEOAS, вы можете использовать getForObject() для извлечения ингредиента. Например, следующий код использует RestTemplate для извлечения объекта Ingredient по его идентификатору:</p> <p>public Ingredient getIngredientById(String ingredientId) {</p> <p> return rest.getForObject("http://localhost:8080/ingredients/{id}",</p> <p> Ingredient.class, ingredientId);</p> <p>}</p> <p>Здесь вы используете вариант getForObject(), который принимает String URL и использует список переменных для переменных URL. Параметр ingredientId, передаваемый в getForObject(), используется для заполнения элемента {id} в указанном URL. Хотя в этом примере есть только одна переменная URL, важно знать, что параметры переменных назначаются местозаполнителям в том порядке, в котором они указаны.</p> <p>Второй параметр в getForObject() - это тип, к которому должен быть приведен ответ. В этом случае данные ответа (вероятно, в формате JSON) должны быть десериализованы в объект Ingredient, который будет возвращен.</p> <p>Кроме того, вы можете использовать Map, чтобы указать переменные URL:</p> <p>public Ingredient getIngredientById(String ingredientId) {</p> <p> Map<String,String> urlVariables = new HashMap<>();</p> <p> urlVariables.put("id", ingredientId);</p> <p> return rest.getForObject("http://localhost:8080/ingredients/{id}",</p> <p> Ingredient.class, urlVariables);</p> <p>}</p> <p>В этом случае значение ingredientId отображается на ключ id. Когда запрос выполняется, заполнитель {id} заменяется записью map-ы, ключом которой является id.</p> <p>Использование параметра URI является более сложным процессом, требующим создания объекта URI перед вызовом getForObject(). В остальном он похож на оба других варианта:</p> <p>public Ingredient getIngredientById(String ingredientId) {</p> <p> Map<String,String> urlVariables = new HashMap<>();</p> <p> urlVariables.put("id", ingredientId);</p> <p> URI url = UriComponentsBuilder</p> <p> .fromHttpUrl("http://localhost:8080/ingredients/{id}")</p> <p> .build(urlVariables);</p> <p> return rest.getForObject(url, Ingredient.class);</p> <p>}</p> <p>Здесь объект URI определен из спецификации String, а его заполнители заполнены из записей в Map, как и в предыдущем варианте getForObject(). Метод getForObject() - это простой способ извлечения ресурса. Но если клиенту нужно больше, чем содержимое body, вы можете рассмотреть возможность использования getForEntity().</p> <p>getForEntity() работает почти так же, как getForObject(), но вместо возврата объекта домена, представляющего содержимым body ответа, он возвращает объект ResponseEntity, который оборачивает этот объект домена. ResponseEntity предоставляет доступ к дополнительным деталям ответа, таким как заголовки ответа.</p> <p>Например, предположим, что в дополнение к данным ингредиента вы хотите посмотреть заголовок Date из ответа. С getForEntity() это становится простым:</p> <p>public Ingredient getIngredientById(String ingredientId) {</p> <p> ResponseEntity<Ingredient> responseEntity = rest.getForEntity("http://localhost:8080/ingredients/{id}",</p> <p> Ingredient.class, ingredientId);</p> <p> log.info("Fetched time: " +</p> <p> responseEntity.getHeaders().getDate());</p> <p> return responseEntity.getBody();</p> <p>}</p> <p>Метод getForEntity() перегружен теми же параметрами, что и getForObject(), поэтому вы можете предоставить переменные URL-адреса в качестве параметра списка переменных или вызвать getForEntity() с объектом URI.</p> <p>7.1.2 PUT ресурсов</p> <p>Для отправки HTTP PUT-запросов, RestTemplate предлагает метод put(). Все три перегруженных варианта put() принимают Object, который должен быть сериализован и отправлен по указанному URL. Что касается самого URL, он может быть указан как объект URI или как String. И как c getForObject() и getForEntity(), переменные URL-адреса могут быть предоставлены либо как список аргументов переменной, либо как Map.</p> <p>Предположим, что вы хотите заменить ресурс ингредиента данными из нового объекта Ingredient. Следующий код должен сделать это:</p> <p>public void updateIngredient(Ingredient ingredient) {</p> <p> rest.put("http://localhost:8080/ingredients/{id}",</p> <p> ingredient,</p> <p> ingredient.getId());</p> <p>}</p> <p>Здесь URL задан в виде строки и содержит заполнитель, который заменяется свойством id данного объекта Ingredient. Данные для отправки - это сам объект Ingredient. Метод put() возвращает void, поэтому вам ничего не нужно делать для обработки возвращаемого значения.</p> <p>7.1.3 DELETE ресурсов</p> <p>Предположим, что Taco Cloud больше не предлагает ингредиент и хочет полностью удалить его в качестве опции. Чтобы это произошло, вы можете вызвать метод delete() из RestTemplate:</p> <p>public void deleteIngredient(Ingredient ingredient) {</p> <p> rest.delete("http://localhost:8080/ingredients/{id}",</p> <p> ingredient.getId());</p> <p>}</p> <p>В этом примере для delete() передаются только URL-адрес (указанный как String) и значение переменной URL-адреса. Но, как и в случае с другими методами RestTemplate, URL-адрес может быть указан как объект URI или параметры URL-адреса представлены как Map.</p> <p>7.1.4 POST данных ресурсов</p> <p>Теперь допустим, что вы добавили новый ингредиент в меню Taco Cloud. Это сделает HTTP POST-запрос к .../ingredients endpoint с данными ингредиентов в теле запроса. RestTemplate имеет три способа отправки запроса POST, каждый из которых имеет одинаковые перегруженные варианты для указания URL. Если вы хотите получить вновь созданный ресурс Ingredient после POST-запроса, вы должны использовать postForObject() следующим образом:</p> <p>public Ingredient createIngredient(Ingredient ingredient) {</p> <p> return rest.postForObject("http://localhost:8080/ingredients",</p> <p> ingredient,</p> <p> Ingredient.class);</p> <p>}</p> <p>Этот вариант метода postForObject() принимает String URL спецификацию, объект, который должен быть отправлен на сервер, и доменный тип, с которым должно быть связано тело ответа. Хотя в этом случае вы не пользуетесь этим но, четвертым параметром может быть Map значения переменной URL-адреса или список переменных параметров для замены в URL.</p> <p>Если для нужд клиента требуется получить ссылку на расположении только что созданного ресурса, вы можете вызвать postForLocation() :</p> <p>public URI createIngredient(Ingredient ingredient) {</p> <p> return rest.postForLocation("http://localhost:8080/ingredients",ingredient);</p> <p>}</p> <p>Обратите внимание, что postForLocation() работает так же, как postForObject(), за исключением того, что он возвращает URI вновь созданного ресурса вместо самого объекта ресурса. Возвращенный URI получен из заголовка Location ответа. В случае, если вам понадобятся как местоположение, так и полезная нагрузка ответа, вы можете вызвать postForEntity():</p> <p>public Ingredient createIngredient(Ingredient ingredient) {</p> <p> ResponseEntity<Ingredient> responseEntity = rest.postForEntity("http://localhost:8080/ingredients",</p> <p> ingredient, Ingredient.class);</p> <p> log.info("New resource created at " +</p> <p> responseEntity.getHeaders().getLocation());</p> <p> return responseEntity.getBody();</p> <p>}</p> <p>Хотя методы RestTemplate отличаются по своему назначению, они очень похожи в том, как они используются. Это позволяет легко понять RestTemplate и использовать его в клиентском коде.</p> <p>С другой стороны, если API, который вы используете, включает в свой ответ гиперссылки, RestTemplate не так полезен. Конечно, можно получить более подробные данные ресурса с помощью RestTemplate и работать с содержимым и ссылками, содержащимися в нем, но это не тривиально. Вместо того, чтобы бороться с использованием гипермедиа API с RestTemplate, давайте обратим наше внимание на клиентскую библиотеку, созданную для таких целей - Traverson.</p> <p>7.2 Навигация REST API с помощью Traverson</p> <p>Traverson поставляется с Spring Data HATEOAS как готовое решение для использования гипермедиа API в приложениях Spring. Эта библиотека на основе Java основана на аналогичной библиотеке JavaScript с тем же именем (<a l:href="https://github.com/traverson/traverson">https://github.com/traverson/traverson</a>).</p> <p>Возможно, вы заметили, что имя Трэверсон звучит как «traverse on», что является хорошим способом описать, как оно используется. В этом разделе вы будете использовать API путем обхода API по именам отношений.</p> <p>Работа с Traverson начинается с создания экземпляра объекта Traverson с базовым API URI:</p> <p>Traverson traverson = new Traverson(URI.create("http://localhost:8080/api"), MediaTypes.HAL_JSON);</p> <p>Здесь я указал Traverson на базовый URL Taco Cloud (работает локально). Это единственный URL, который вам нужно указать Traverson-у. С этого момента вы будете перемещаться по API по именам отношений ссылок. Вы также укажете, что API будет генерировать ответы JSON с гиперссылками в стиле HAL, чтобы Traverson знал, как анализировать входящие данные ресурса. Как и RestTemplate, вы можете создать экземпляр объекта Traverson перед его использованием или объявить его как компонент, который будет введен везде, где это необходимо.</p> <p>С объектом Traverson вы можете начать использовать API, перейдя по ссылкам. Например, предположим, что вы заинтересованы в получении списка всех ингредиентов. Из раздела 6.3.1 вы знаете, что ссылка ингредиентов имеет свойство href, которое ссылается на ресурс ingredients. Вам нужно перейти по этой ссылке:</p> <p>ParameterizedTypeReference<Resources<Ingredient>> ingredientType =</p> <p> new ParameterizedTypeReference<Resources<Ingredient>>() {};</p> <p>Resources<Ingredient> ingredientRes =</p> <p> traverson</p> <p> .follow("ingredients")</p> <p> .toObject(ingredientType);</p> <p> Collection<Ingredient> ingredients = ingredientRes.getContent();</p> <p>Вызвав метод follow() для объекта Traverson, вы можете перейти к ресурсу, имя связи которого - ingredients. Теперь, когда клиент перешел к ингредиентам, вам нужно принять содержимое этого ресурса, вызвав toObject().</p> <p>Метод toObject () требует, чтобы вы указали, в какой тип объекта считывать данные. Это может быть немного сложнее, учитывая, что вам нужно прочитать его как объект Resources<Ingredient>, а стирание типа Java затрудняет предоставление информации о типе для generic типа. Но создание ParameterizedTypeReference помогает в этом.</p> <p>В качестве аналогии представьте, что вместо REST API это была домашняя страница на веб-сайте. И вместо кода REST клиента представьте, что вы просматриваете эту домашнюю страницу в браузере. Вы видите ссылку на странице с надписью «Ингредиенты» и переходите по этой ссылке, щелкая ее. По прибытии на следующую страницу вы читаете страницу, которая аналогична тому, как Traverson принял содержимое как объект Resources<Ingredient>.</p> <p>Теперь давайте рассмотрим немного более интересный вариант использования. Допустим, вы хотите получить самые последние созданные тако. Начиная с домашнего ресурса, вы можете перейти к ресурсу с последними тако, например так:</p> <p>ParameterizedTypeReference<Resources<Taco>> tacoType =</p> <p> new ParameterizedTypeReference<Resources<Taco>>() {};</p> <p>Resources<Taco> tacoRes =</p> <p> traverson</p> <p> .follow("tacos")</p> <p> .follow("recents")</p> <p> .toObject(tacoType);</p> <p> Collection<Taco> tacos = tacoRes.getContent();</p> <p>Здесь вы переходите по ссылке tacos, а затем оттуда по ссылке recents. Это приведет вас к интересующему вас ресурсу, поэтому вызов toObject() с соответствующей ParameterizedTypeReference даст вам то, что вы хотите. Метод .follow() можно упростить, перечислив имена отношений через запятую:</p> <p>Resources<Taco> tacoRes =</p> <p> traverson</p> <p> .follow("tacos", "recents")</p> <p> .toObject(tacoType);</p> <p>Как видите, Traverson упрощает навигацию по API с поддержкой HATEOAS и использование его ресурсов. Но он не предлагает никаких методов для записи или удаления по этим API. С другой стороны, RestTemplate может писать и удалять ресурсы, но не облегчает навигацию по API.</p> <p>Если вам нужно не только перемещаться по API, но и обновлять или удалять ресурсы, вам нужно использовать RestTemplate и Traverson вместе. Traverson по-прежнему можно использовать для перехода по ссылке, где будет создан новый ресурс. Затем RestTemplate может быть предоставлена эта ссылка для выполнения POST, PUT, DELETE или любого другого HTTP-запроса.</p> <p>Например, предположим, что вы хотите добавить новый ингредиент в меню Taco Cloud. Следующий метод addIngredient() объединяет Traverson и RestTemplate для добавления нового ингредиента по API:</p> <p>private Ingredient addIngredient(Ingredient ingredient) {</p> <p> String ingredientsUrl = traverson</p> <p> .follow("ingredients")</p> <p> .asLink()</p> <p> .getHref();</p> <p> return rest.postForObject(ingredientsUrl,</p> <p> ingredient,</p> <p> Ingredient.class);</p> <p>}</p> <p>После перехода по ссылке ingredients вы запрашиваете саму ссылку, вызывая asLink(). По этой ссылке вы запрашиваете URL ссылки, вызывая getHref(). Имея URL-адрес, у вас есть все, что нужно для вызова postForObject() в экземпляре RestTemplate и сохранения нового ингредиента.</p> <p>ИТОГ:</p> <p>Клиенты могут использовать RestTemplate для выполнения HTTP-запросов к REST API.</p> <p>Traverson позволяет клиентам перемещаться по API с помощью гиперссылок, встроенных в ответы.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/07/spring-in-action-covers-spring-50-8.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 8</a></p> <p><strong>8.Отправка сообщений асинхронно</strong></p> <p>Эта глава охватывает</p> <p><emphasis>Асинхронный обмен сообщениями</emphasis></p> <p><emphasis>Messages Отправка сообщений с помощью JMS, RabbitMQ и Kafka</emphasis></p> <p><emphasis>Вытягивание сообщений из broker</emphasis></p> <p><emphasis>Листинер для сообщений</emphasis></p> <p> </p> <p>Сейчас 4:55 вечера пятницы. В нескольких минутах от долгожданного отпуска. У вас достаточно времени, чтобы доехать до аэропорта и успеть на самолет. Но прежде чем собраться и отправиться в путь, вы должны быть уверены, что ваш начальник и коллеги знают о состоянии работы, которую вы выполняли, чтобы в понедельник они могли узнать, где вы остановились. К сожалению, некоторые из ваших коллег уже пропустили выходные, а ваш начальник связывается с вами с митинга. Чем ты занимаешься?</p> <p>Самый практичный способ сообщить о своем статусе и при этом сесть на самолет - это отправить быстрое электронное письмо своему боссу и коллегам с подробным описанием вашего прогресса и обещанием отправить открытку. Вы не знаете, где они находятся и когда они будут читать электронную почту, но вы знаете, что они в конечном итоге вернутся за свои столы и прочитают ее. Тем временем вы едете в аэропорт.</p> <p>Синхронное взаимодействие, которое мы видели в REST, имеет свое предназначение. Но это не единственный стиль взаимодействия между приложениями, доступный для разработчиков. Асинхронный обмен сообщениями - это способ косвенной отправки сообщений из одного приложения в другое без ожидания ответа. Эта косвенность обеспечивает более слабую связь и большую масштабируемость между взаимодействующими приложениями.</p> <p>В этой главе вы будете использовать асинхронный обмен сообщениями для отправки заказов с веб-сайта Taco Cloud в отдельное приложение кухни Taco Cloud, где будут готовиться тако. Мы рассмотрим три варианта, которые Spring предлагает для асинхронного обмена сообщениями: Java Message Service (JMS), RabbitMQ и Advanced Message Queuing Protocol (AMQP), Apache Kafka. В дополнение к базовой отправке и получению сообщений, мы рассмотрим поддержку Spring для POJO, управляемых сообщениями: способ получения сообщений, который напоминает EJB-компоненты, управляемые сообщениями (MDB).</p> <p>8.1 Отправка сообщений с помощью JMS</p> <p>JMS - это стандарт Java, который определяет общий API для работы с брокерами (broker) сообщений. Впервые представленный в 2001 году, JMS был подходом для асинхронного обмена сообщениями в Java в течение очень долгого времени. До JMS каждый брокер сообщений имел собственный API, что делало код обмена сообщениями приложения менее переносимым между брокерами. Но с JMS все совместимые реализации могут работать через общий интерфейс почти так же, как JDBC предоставил операциям с реляционными базами данных общий интерфейс.</p> <p>Spring поддерживает JMS через абстракцию на основе шаблонов, известную как JmsTemplate. Используя JmsTemplate, легко отправлять сообщения по очередям и темам со стороны производителя (producer) и получать эти сообщения на стороне потребителя. Spring также поддерживает понятие сообщение-упраляемые POJO: простые объекты Java, которые реагируют на сообщения, поступающие в очередь или тему асинхронно.</p> <p>Мы собираемся изучить поддержку Spring JMS, включая JmsTemplate и сообщение-упраляемые POJO. Но прежде чем вы сможете отправлять и получать сообщения, вам нужен брокер сообщений, который готов передавать эти сообщения между производителями и потребителями. Давайте начнем наше исследование Spring JMS, настроив брокер сообщений в Spring.</p> <p>8.1.1 Настройка JMS</p> <p>Прежде чем вы сможете использовать JMS, вы должны добавить JMS-клиент в сборку вашего проекта. С Spring Boot это очень просто. Все, что вам нужно сделать, это добавить starter зависимость в сборку. Однако сначала вы должны решить, собираетесь ли вы использовать Apache ActiveMQ или более нового брокера Apache ActiveMQ Artemis.</p> <p>Если вы используете ActiveMQ, вам нужно добавить следующую зависимость в файл pom.xml вашего проекта:</p> <p><emphasis><dependency></emphasis></p> <p><emphasis> <groupId>org.springframework.boot</groupId></emphasis></p> <p><emphasis> <artifactId>spring-boot-starter-activemq</artifactId></emphasis></p> <p><emphasis></dependency></emphasis></p> <p>Если вы решили использовать ActiveMQ Artemis, starter зависимость должна выглядеть следующим образом:</p> <p><emphasis><dependency></emphasis></p> <p><emphasis> <groupId>org.springframework.boot</groupId></emphasis></p> <p><emphasis> <artifactId>spring-boot-starter-artemis</artifactId></emphasis></p> <p><emphasis></dependency></emphasis></p> <p>Artemis - это новое воплощение ActiveMQ следующего поколения, которое делает ActiveMQ устаревшим вариантом. Поэтому для Taco Cloud вы выберете Artemis. Но выбор в конечном итоге мало влияет на то, как вы будете писать код, который отправляет и получает сообщения. Единственным существенным отличием будет то, как вы настраиваете Spring для создания соединений с брокером.</p> <p>По умолчанию Spring предполагает, что ваш брокер Artemis прослушивает localhost на порту 61616. Это хорошо для целей разработки, но как только вы будете готовы отправить свое приложение в продакшен, вам нужно будет установить несколько свойств, которые сообщат Spring, как получить доступ к брокеру. Свойства, которые вы найдете наиболее полезными, перечислены в таблице 8.1.</p> <p><strong>Таблица 8.1 Свойства для настройки расположения и учетных данных брокера Artemis</strong></p> <p>Свойство - Описание</p> <p><emphasis>spring.artemis.host</emphasis> - broker host</p> <p><emphasis>spring.artemis.port</emphasis> - broker’s port</p> <p><emphasis>spring.artemis.user</emphasis> - user использующийся для доступа к broker (опционально)</p> <p><emphasis>spring.artemis.password</emphasis> - password использующийся для доступа к broker (опционально)</p> <p>Например, рассмотрим следующую запись файла application.yml, который может использоваться в параметрах, не относящихся к режиму разработке:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> artemis:</emphasis></p> <p><emphasis> host: artemis.tacocloud.com</emphasis></p> <p><emphasis> port: 61617</emphasis></p> <p><emphasis> user: tacoweb</emphasis></p> <p><emphasis> password: l3tm31n</emphasis></p> <p>Это настраивает Spring для создания подключений к брокеру Artemis, который прослушивает artemis.tacocloud.com, порт 61617. Он также устанавливает учетные данные для приложения, которое будет взаимодействовать с этим брокером. Учетные данные не являются обязательными, но они рекомендуются для рабочих развертываний.</p> <p>Если бы вы использовали ActiveMQ вместо Artemis, вам нужно было бы использовать специфичные для ActiveMQ свойства, перечисленные в таблице 8.2.</p> <p><strong>Таблица 8.2 Свойства для настройки расположения и учетных данных брокера ActiveMQ</strong></p> <p>Свойство - Описание</p> <p><emphasis>spring.activemq.broker-url</emphasis> - URL broker-а</p> <p><emphasis>spring.activemq.user </emphasis>- user использующийся для доступа к broker (опционально)</p> <p><emphasis>spring.activemq.password</emphasis> - password использующийся для доступа к broker (опционально)</p> <p><emphasis>spring.activemq.in-memory</emphasis> - Стоит ли запускать брокер в памяти (по умолчанию: true)</p> <p>Обратите внимание, что вместо того, чтобы предлагать отдельные свойства для имени хоста и порта брокера (посредника), адрес брокера ActiveMQ указывается с помощью одного свойства, spring.activemq.broker-url. URL должен быть tcp://URL , как показано в следующем фрагменте YAML:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> activemq:</emphasis></p> <p><emphasis> broker-url: tcp://activemq.tacocloud.com</emphasis></p> <p> <emphasis>user: tacoweb</emphasis></p> <p><emphasis> password: l3tm31n</emphasis></p> <p>Независимо от того, выбираете ли вы Artemis или ActiveMQ, вам не нужно настраивать эти свойства для разработки, когда брокер работает локально.</p> <p>Если вы используете ActiveMQ, вам, однако, необходимо установить для свойства spring.activemq.in-memory значение false, чтобы Spring не запускал брокер в памяти. Брокер в памяти может показаться полезным, но он полезен только тогда, когда вы будете использовать сообщения из того же приложения, которое их публикует (что имеет ограниченную полезность).</p> <p>Вместо использования встроенного брокера вы должны установить и запустить брокера Artemis (или ActiveMQ), прежде чем двигаться дальше. Вместо того, чтобы повторять инструкции по установке здесь, я отсылаю вас к документации брокера:</p> <p>Artemis—https://activemq.apache.org/artemis/docs/latest/using-server.html</p> <p>ActiveMQ—http://activemq.apache.org/getting-started.html#GettingStarted-Pre-InstallationRequirements</p> <p>С JMS-стартером в вашей сборке и брокером, ожидающим пересылки сообщений из одного приложения в другое, вы готовы начать отправку сообщений.</p> <p>8.1.2 Отправка сообщений с помощью JmsTemplate</p> <p>С JMS starter зависимостью (Artemis или ActiveMQ) в вашей сборке Spring Boot автоматически настроит JmsTemplate (среди прочего), который вы можете внедрить и использовать для отправки и получения </p> <p>JmsTemplate является центральным элементом поддержки интеграции Spring JMS. Подобно другим шаблонно-ориентированным компонентам Spring, JmsTemplate устраняет много стандартного кода, который в противном случае потребовался бы для работы с JMS. Без JmsTemplate вам нужно было бы написать код для создания соединения и сеанса с брокером сообщений, а также дополнительный код для обработки любых исключений, которые могут возникнуть в процессе отправки сообщения. JmsTemplate фокусируется на том, что вы действительно хотите сделать: отправить сообщение.</p> <p>JmsTemplate имеет несколько методов, которые полезны для отправки сообщений, включая следующие:</p> <p>// Отправка сырых (raw) сообщений</p> <p><emphasis>void send(MessageCreator messageCreator) throws JmsException;</emphasis></p> <p><emphasis>void send(Destination destination, MessageCreator messageCreator) throws JmsException;</emphasis></p> <p><emphasis>void send(String destinationName, MessageCreator messageCreator) throws JmsException;</emphasis></p> <p>// Отправка сообщений сконвертированных из объектов</p> <p><emphasis>void convertAndSend(Object message) throws JmsException;</emphasis></p> <p><emphasis>void convertAndSend(Destination destination, Object message) throws JmsException;</emphasis></p> <p><emphasis>void convertAndSend(String destinationName, Object message) throws JmsException;</emphasis></p> <p>// Отправка сообщений, преобразованных из объектов с post-обработкойvoid convertAndSend(Object message,</p> <p><emphasis>MessagePostProcessor postProcessor) throws JmsException;</emphasis></p> <p><emphasis>void convertAndSend(Destination destination, Object message,</emphasis></p> <p><emphasis>MessagePostProcessor postProcessor) throws JmsException;</emphasis></p> <p><emphasis>void convertAndSend(String destinationName, Object message,</emphasis></p> <p><emphasis>MessagePostProcessor postProcessor) throws JmsException;</emphasis></p> <p>Как видите, на самом деле есть только два метода, send() и convertAndSend(), каждый из которых переопределен для поддержки различных параметров. И если вы посмотрите поближе, вы заметите, что различные формы convertAndSend() можно разбить на две подкатегории. Чтобы понять, что делают все эти методы, рассмотрим следующий список:</p> <p>Три метода send() требуют, чтобы MessageCreator создал объект Message.</p> <p>Три метода convertAndSend() принимают Object и автоматически преобразуют этот Object в Message.</p> <p>Три метода convertAndSend() автоматически преобразуют Object в Message, но также принимают MessagePostProcessor, позволяющий настроить Message до его отправки.</p> <p>Кроме того, каждая из этих трех категорий методов состоит из трех переопределяющих методов, которые различаются тем, как указывается место назначения JMS (очередь или тема):</p> <p>Один метод не принимает параметр пункта назначения и отправляет сообщение в пункт назначения по умолчанию.</p> <p>Один метод принимает объект Destination, который указывает место назначения для сообщения.</p> <p> Один метод принимает String, которая указывает место назначения для сообщения по наименованию.</p> <p>Чтобы эти методы работали, рассмотрим JmsOrderMessagingService в следующем листинге, который использует самую основную форму метода send().</p> <p><strong>Листинг 8.1. Отправка заказа с помощью .send() в пункт назначения по умолчанию</strong></p> <p><emphasis>package tacos.messaging;</emphasis></p> <p><emphasis>import javax.jms.JMSException;</emphasis></p> <p><emphasis>import javax.jms.Message;</emphasis></p> <p><emphasis>import javax.jms.Session;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.jms.core.JmsTemplate;</emphasis></p> <p><emphasis>import org.springframework.jms.core.MessageCreator;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Service;</emphasis></p> <p> </p> <p><emphasis>@Service</emphasis></p> <p><emphasis>public class JmsOrderMessagingService implements OrderMessagingService {</emphasis></p> <p><emphasis> private JmsTemplate jms;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public JmsOrderMessagingService(JmsTemplate jms) {</emphasis></p> <p><emphasis> this.jms = jms;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> @Override</emphasis></p> <p><emphasis> public void sendOrder(Order order) {</emphasis></p> <p><emphasis> jms.send(new MessageCreator() {</emphasis></p> <p><emphasis> @Override</emphasis></p> <p><emphasis> public Message createMessage(Session session)</emphasis></p> <p><emphasis> throws JMSException {</emphasis></p> <p><emphasis> return session.createObjectMessage(order);</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> );</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis>}</emphasis></p> <p>Метод sendOrder() вызывает jms.send(), передавая анонимную внутреннюю реализацию класса MessageCreator. Эта реализация переопределяет createMessage() для создания нового сообщения объекта из заданного объекта Order.</p> <p>Я не уверен насчет вас, но я думаю, что код в листинге 8.1, хотя и простой, немного неуклюжий. Церемония, связанная с объявлением анонимного внутреннего класса, усложняет простой вызов метода. Признавая, что MessageCreator является функциональным интерфейсом, вы можете немного привести в порядок метод sendOrder() с помощью лямбды:</p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> jms.send(session -> session.createObjectMessage(order));</emphasis></p> <p><emphasis>}</emphasis></p> <p>Но обратите внимание, что вызов jms.send() не указывает адресата. Чтобы это работало, вы также должны указать имя получателя по умолчанию в свойстве spring.jms.template.default-destination. Например, вы можете установить свойство в вашем файле application.yml следующим образом:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> jms:</emphasis></p> <p><emphasis> template:</emphasis></p> <p><emphasis> default-destination: tacocloud.order.queue</emphasis></p> <p>Во многих случаях использование пункта назначения по умолчанию является самым простым выбором. Это позволяет вам указать имя получателя один раз, позволяя коду относиться только к отправке сообщений, независимо от того, куда они отправляются. Но если вам когда-либо понадобится отправить сообщение в пункт назначения, отличный от пункта назначения по умолчанию, вам нужно будет указать этот пункт назначения в качестве параметра send().</p> <p>Один из способов сделать это - передать объект Destination в качестве первого параметра send(). Самый простой способ сделать это - объявить bean-объект Destination, а затем внедрить его в bean-компонент, выполняющий обмен сообщениями. Например, следующий bean-компонент объявляет Destination очереди Taco Cloud:</p> <p><emphasis>@Bean</emphasis></p> <p><emphasis>public</emphasis> <emphasis>Destination</emphasis> <emphasis>orderQueue</emphasis><emphasis>() {</emphasis></p> <p> <emphasis>return new ActiveMQQueue("tacocloud.order.queue");</emphasis></p> <p><emphasis>}</emphasis></p> <p>Важно отметить, что ActiveMQQueue, использованный здесь, на самом деле от Artemis (из пакета org.apache.activemq.artemis.jms.client). Если вы используете ActiveMQ (не Artemis), есть также класс с именем ActiveMQQueue (из пакета org.apache.activemq.command).</p> <p>Если этот целевой объект внедряется в JmsOrderMessagingService, вы можете использовать его для указания получателя при вызове send():</p> <p><emphasis>private Destination orderQueue;</emphasis></p> <p><emphasis>@Autowired</emphasis></p> <p><emphasis>public JmsOrderMessagingService(JmsTemplate jms, Destination orderQueue) {</emphasis></p> <p><emphasis> this.jms = jms;</emphasis></p> <p><emphasis> this.orderQueue = orderQueue;</emphasis></p> <p><emphasis>}</emphasis></p> <p><emphasis>...</emphasis></p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> jms.send(</emphasis></p> <p><emphasis> orderQueue,</emphasis></p> <p><emphasis> session -> session.createObjectMessage(order));</emphasis></p> <p><emphasis>}</emphasis></p> <p>Указание адресата с помощью объекта Destination, подобного этому, дает вам возможность настроить Destination с использованием не только имени пункта назначения. Но на практике вы почти никогда не будете указывать ничего, кроме имени пункта назначения. Часто проще просто отправить имя в качестве первого параметра send():</p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> jms.send(</emphasis></p> <p><emphasis> "tacocloud.order.queue",</emphasis></p> <p> <emphasis>session -> session.createObjectMessage(order));</emphasis></p> <p><emphasis>}</emphasis></p> <p>Хотя метод send() не особенно сложен в использовании (особенно, когда MessageCreator задается как лямбда-выражение), добавляется небольшая сложность, требующая предоставления MessageCreator. Разве не проще, если вам нужно только указать объект, который должен быть отправлен (и, возможно, пункт назначения)? Это кратко описывает, как работает convertAndSend (). Давайте взглянем.</p> <p>Конвертация сообщения перед отправкой</p> <p>Метод convertAndSend() в JmsTemplates упрощает публикацию сообщений, устраняя необходимость предоставлять MessageCreator. Вместо этого вы передаете объект, который должен быть отправлен напрямую, в convertAndSend(), и перед отправкой объект будет преобразован в Message.</p> <p>Например, следующая переопределение sendOrder() использует convertAndSend() для отправки Order в заданный пункт назначения:</p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> jms.convertAndSend("tacocloud.order.queue", order);</emphasis></p> <p><emphasis>}</emphasis></p> <p>Как и метод send(), метод convertAndSend () примет значение Destination или String, чтобы указать адресата, или вы можете вообще не указывать адресата, чтобы отправить сообщение в пункт назначения по умолчанию.</p> <p>Какую бы реализацию convertAndSend() вы ни выбрали, Order, переданный в convertAndSend(), перед отправкой преобразуется в Message. Под капотом это достигается с помощью реализации MessageConverter, которая выполняет грязную работу по преобразованию объектов в Message -ы.</p> <p>НАСТРОЙКА КОНВЕРТЕРА СООБЩЕНИЙ</p> <p>MessageConverter - это Spring-определнный интерфейс, который имеет только два метода для реализации:</p> <p><emphasis>public interface MessageConverter {</emphasis></p> <p><emphasis> Message toMessage(Object object, Session session)</emphasis></p> <p><emphasis> throws JMSException, MessageConversionException;</emphasis></p> <p><emphasis> Object fromMessage(Message message)</emphasis></p> <p><emphasis>}</emphasis></p> <p>Хотя этот интерфейс достаточно прост для реализации, вам часто не нужно создавать собственную реализацию. Spring уже предлагает несколько реализаций, таких как описанные в таблице 8.3.</p> <p><strong>Таблица 8.3. Spring message конвертеры для общих задач преобразования (все в пакете org.springframework.jms.support.converter)</strong></p> <p>Message конвертер - Что он делает</p> <p><emphasis>MappingJackson2MessageConverter</emphasis> - Использует Jackson 2 JSON библиотеку конвертирования сообщений в и из JSON</p> <p><emphasis>MarshallingMessageConverter </emphasis>- Использует JAXB для конвертирования сообщений в и из XML</p> <p><emphasis>MessagingMessageConverter </emphasis>- Конвертирует Message из абстракции в и из Message используя базовый MessageConverter для полезной нагрузки и JmsHeaderMapper для сопоставления заголовков JMS в и из стандартных заголовков сообщений</p> <p><emphasis>SimpleMessageConverter</emphasis> - Преобразует String в и из TextMessage, байтовые массивы в и из BytesMessage, Maps в и из MapMessage, и Serializable объекты в и из ObjectMessage.</p> <p>SimpleMessageConverter является значением по умолчанию, но требует, чтобы отправляемый объект реализовывал Serializable. Это может быть хорошей идеей, но вы можете предпочесть использовать один из других конвертеров сообщений, например MappingJackson2MessageConverter, чтобы избежать этого ограничения.</p> <p>Чтобы применить другой конвертер сообщений, все, что вам нужно сделать, - это объявить экземпляр выбранного конвертера как bean-компонент. Например, следующее объявление компонента позволит использовать MappingJackson2MessageConverter вместо SimpleMessageConverter:</p> <p><emphasis>@Bean</emphasis></p> <p><emphasis>public MappingJackson2MessageConverter messageConverter() {</emphasis></p> <p> <emphasis>MappingJackson2MessageConverter messageConverter =</emphasis></p> <p><emphasis> new MappingJackson2MessageConverter();</emphasis></p> <p><emphasis> messageConverter.setTypeIdPropertyName("_typeId");</emphasis></p> <p><emphasis> return messageConverter;</emphasis></p> <p><emphasis>}</emphasis></p> <p>Обратите внимание, что вы вызвали setTypeIdPropertyName() для MappingJackson2MessageConverter, прежде чем возвращать его. Это очень важно, так как позволяет получателю знать, в какой тип конвертировать входящее сообщение. По умолчанию он будет содержать полное имя класса конвертируемого типа. Но это несколько негибко, требуя, чтобы получатель также имел тот же тип, с тем же полностью определенным именем класса.</p> <p>Чтобы обеспечить большую гибкость, вы можете сопоставить синтетическое имя типа с реальным типом, вызвав setTypeIdMappings() в конвертере сообщений. Например, следующее изменение метода bean-объекта конвертера сообщений отображает синтетический идентификатор типа order в класс Order:</p> <p><emphasis>@Bean</emphasis></p> <p><emphasis>public MappingJackson2MessageConverter messageConverter() {</emphasis></p> <p><emphasis> MappingJackson2MessageConverter messageConverter =</emphasis></p> <p><emphasis> new MappingJackson2MessageConverter();</emphasis></p> <p><emphasis> messageConverter.setTypeIdPropertyName("_typeId");</emphasis></p> <p><emphasis> Map<String, Class<?>> typeIdMappings = new HashMap<String, Class<?>>();</emphasis></p> <p><emphasis> typeIdMappings.put("order", Order.class);</emphasis></p> <p><emphasis> messageConverter.setTypeIdMappings(typeIdMappings);</emphasis></p> <p><emphasis> return messageConverter;</emphasis></p> <p><emphasis>}</emphasis></p> <p>Вместо того, чтобы полное имя класса отправлялось в свойстве _typeId сообщения, будет отправлено значение order. В принимающем приложении будет сконфигурирован аналогичный конвертер сообщений, отображающий order в собственном понимании order-а. Эта реализация order может быть в другом пакете, иметь другое имя и даже иметь подмножество свойств Order отправителя.</p> <p>POST-ОБРАБОТКА СООБЩЕНИЙ</p> <p>Предположим, что в дополнение к своему прибыльному веб-бизнесу Taco Cloud решила открыть несколько магазинов в строительном секторе. Учитывая, что любой из их ресторанов также может быть центром для веб-бизнеса, им нужен способ сообщить источник заказа на кухню в ресторан. Это позволит кухонному персоналу использовать другой процесс для заказов в магазине, нежели для заказов через Интернет.</p> <p>Было бы разумно добавить новое свойство источника в объект Order для переноса этой информации, установв его как WEB для заказов, размещенных в Интернете, и STORE для заказов, размещенных в магазинах. Но для этого потребуется изменить как класс Order на веб-сайте, так и класс Order для кухонного приложения, когда на самом деле это информация, которая требуется только для составителей тако.</p> <p>Более простым решением было бы добавить пользовательский заголовок к сообщению для установки источника заказа. Если бы вы использовали метод send() для отправки тако-заказов, это можно легко сделать, вызвав setStringProperty() для объекта Message:</p> <p><emphasis>jms.send("tacocloud.order.queue",</emphasis></p> <p><emphasis> session -> {</emphasis></p> <p><emphasis> Message message = session.createObjectMessage(order);</emphasis></p> <p><emphasis> message.setStringProperty("X_ORDER_SOURCE", "WEB");</emphasis></p> <p><emphasis>});</emphasis></p> <p>Проблема в том, что вы не используете send(). При выборе использования convertAndSend() объект Message создается в обертке, и у вас нет к нему доступа.</p> <p>К счастью, есть способ настроить Message, созданное в обертке, до его отправки. Передав MessagePostProcessor в качестве последнего параметра для convertAndSend(), вы можете делать с сообщением все, что захотите, после его создания. Следующий код по-прежнему использует convertAndSend(), но использует MessagePostProcessor для добавления заголовка X_ORDER_SOURCE до отправки сообщения:</p> <p><emphasis>jms.convertAndSend("tacocloud.order.queue", order, new MessagePostProcessor() {</emphasis></p> <p><emphasis> @Override</emphasis></p> <p><emphasis> public Message postProcessMessage(Message message) throws JMSException {</emphasis></p> <p><emphasis> message.setStringProperty("X_ORDER_SOURCE", "WEB");</emphasis></p> <p> <emphasis>return message;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis>});</emphasis></p> <p>Возможно, вы заметили, что MessagePostProcessor - это функциональный интерфейс. Это означает, что вы можете немного упростить его, заменив анонимный внутренний класс лямбда-выражением:</p> <p><emphasis>jms.convertAndSend("tacocloud.order.queue", order,</emphasis></p> <p><emphasis> message -> {</emphasis></p> <p><emphasis> message.setStringProperty("X_ORDER_SOURCE", "WEB");</emphasis></p> <p><emphasis> return message;</emphasis></p> <p><emphasis>});</emphasis></p> <p>Хотя вам нужен только этот конкретный MessagePostProcessor для этого одного вызова метода convertAndSend(), вы можете использовать один и тот же MessagePostProcessor для нескольких различных вызовов convertAndSend(). В этих случаях, возможно, ссылка на метод является лучшим выбором, чем лямбда, во избежание ненужного дублирования кода:</p> <p><emphasis>@GetMapping("/convertAndSend/order")</emphasis></p> <p><emphasis>public String convertAndSendOrder() {</emphasis></p> <p><emphasis> Order order = buildOrder();</emphasis></p> <p><emphasis> jms.convertAndSend("tacocloud.order.queue", order,</emphasis></p> <p><emphasis> this::addOrderSource);</emphasis></p> <p><emphasis> return "Convert and sent order";</emphasis></p> <p><emphasis>}</emphasis></p> <p> </p> <p><emphasis>private Message addOrderSource(Message message) throws JMSException {</emphasis></p> <p><emphasis> message.setStringProperty("X_ORDER_SOURCE", "WEB");</emphasis></p> <p> <emphasis>return message;</emphasis></p> <p><emphasis>}</emphasis></p> <p>Теперь вы видели несколько способов отправки сообщений. Но не стоит отправлять сообщение, если никто его не получит. Давайте посмотрим, как вы можете получать сообщения с помощью Spring и JMS.</p> <p>8.1.3 Получение JMS сообщений</p> <p>Когда дело доходит до получения сообщений, у вас есть выбор pull (получения) модель, где ваш код запрашивает сообщение и ожидает его получение, или push (проталкивания) модель, в которой сообщения передаются в ваш код по мере их поступления.</p> <p>JmsTemplate предлагает несколько методов для получения сообщений, но все они используют pull модель. Вы вызываете один из этих методов для запроса сообщения, и поток блокируется до тех пор, пока сообщение не станет доступным (что может быть немедленно или может занять некоторое время).</p> <p>С другой стороны, у вас также есть возможность использовать push-модель, в которой вы определяете слушатель (listener) сообщений, который вызывается каждый раз, когда сообщение доступно.</p> <p>Оба варианта подходят для различных вариантов использования. Общепринято, что push-модель - лучший выбор, так как она не блокирует поток. Но в некоторых случаях использование слушателя (listener) может быть перегружено, если сообщения приходят слишком быстро. Pull (извлечения) модель позволяет потребителю заявить, что он готов обработать новое сообщение.</p> <p>Давайте рассмотрим оба способа получения сообщений. Начнем с pull модели, предлагаемой JmsTemplate.</p> <p><strong>ПОЛУЧЕНИЕ С JmsTemplate</strong></p> <p>JmsTemplate предлагает несколько методов для методов извлечения из брокера, включая следующие:</p> <p><emphasis>Message receive() throws JmsException;</emphasis></p> <p><emphasis>Message receive(Destination destination) throws JmsException;</emphasis></p> <p><emphasis>Message receive(String destinationName) throws JmsException;</emphasis></p> <p> </p> <p><emphasis>Object receiveAndConvert() throws JmsException;</emphasis></p> <p><emphasis>Object receiveAndConvert(Destination destination) throws JmsException;</emphasis></p> <p><emphasis>Object receiveAndConvert(String destinationName) throws JmsException;</emphasis></p> <p>Как видите, эти шесть методов отражение методов send() и convertAndSend () из JmsTemplate. Методы receive() получают необработанное Message, а методы receiveAndConvert() используют сконфигурированный конвертер сообщений для преобразования сообщений в типы доменов. И для каждого из них вы можете указать либо Destination, либо String, содержащую имя пункта назначения, или вы можете получить сообщение из пункта назначения по умолчанию.</p> <p>Чтобы увидеть их в действии, вы напишите некоторый код, который извлекает Order из пункта назначения tacocloud.order.queue. В следующем листинге показан OrderReceiver, компонент службы, который получает данные заказа с помощью JmsTemplate.receive().</p> <p><strong>Листинг 8.2. Получение заказов из очереди</strong></p> <p><emphasis>package tacos.kitchen.messaging.jms;</emphasis></p> <p><emphasis>import javax.jms.Message;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.jms.core.JmsTemplate;</emphasis></p> <p><emphasis>import org.springframework.jms.support.converter.MessageConverter;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class JmsOrderReceiver implements OrderReceiver {</emphasis></p> <p><emphasis> private JmsTemplate jms;</emphasis></p> <p><emphasis> private MessageConverter converter;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public JmsOrderReceiver(JmsTemplate jms, MessageConverter converter) {</emphasis></p> <p><emphasis> this.jms = jms;</emphasis></p> <p><emphasis> this.converter = converter;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> public Order receiveOrder() {</emphasis></p> <p><emphasis> Message message = jms.receive("tacocloud.order.queue");</emphasis></p> <p><emphasis> return (Order) converter.fromMessage(message);</emphasis></p> <p> <emphasis>}</emphasis></p> <p><emphasis>}</emphasis></p> <p>Здесь вы использовали String, чтобы указать пункт назначения для получения заказа. Метод receive() возвращает не конвертированный Message. Нам нужен Order, который находится внутри, Message, поэтому следующее, что происходит, - это использование конвертера сообщения для его преобразования. Свойство type ID в сообщении поможет конвертеру преобразовать его в Order, но ответ будет в виде Object, который придется привести к нужному типу перед тем, как вы сможете его вернуть.</p> <p>Получение необработанного объекта Message может быть полезно в некоторых случаях, когда вам необходимо проверить свойства и заголовки сообщения. Но часто вам нужна только полезная нагрузка. Преобразование этой полезной нагрузки в тип домена является двухэтапным процессом и требует, чтобы преобразователь сообщений был внедрен в компонент. Когда вы заботитесь только о полезной нагрузке сообщения, использовать receiveAndConvert() будет намного проще. В следующем листинге показано, как JmsOrderReceiver может быть переработан для использования receiveAndConvert () вместо receive().</p> <p><strong>Листинг 8.3 Получение преобразованного объекта Order</strong></p> <p><emphasis>package tacos.kitchen.messaging.jms;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.jms.core.JmsTemplate;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class JmsOrderReceiver implements OrderReceiver {</emphasis></p> <p><emphasis> private JmsTemplate jms;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public JmsOrderReceiver(JmsTemplate jms) {</emphasis></p> <p><emphasis> this.jms = jms;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> public Order receiveOrder() {</emphasis></p> <p><emphasis> return (Order) jms.receiveAndConvert("tacocloud.order.queue");</emphasis></p> <p> <emphasis>}</emphasis></p> <p><emphasis>}</emphasis></p> <p>Эта новая версия JmsOrderReceiver имеет метод receieveOrder (), который был сокращен до одной строки. И вам больше не нужно внедрять MessageConverter, потому что все преобразования сообщений будут выполняться под капотом в receiveAndConvert ().</p> <p>Прежде чем двигаться дальше, давайте рассмотрим, как receiveOrder() может быть использован в кухонном приложении Taco Cloud. Повар на одной из кухонь Taco Cloud может нажать кнопку или предпринять какие-либо действия, чтобы указать, что они готовы начать создание тако. В этот момент будет вызван receiveOrder(), и вызов метода receive() или receiveAndConvert() будет заблокирован. Больше ничего не произойдет, пока сообщение о заказе не будет готово. Как только заказ поступит, он будет возвращен функцией receiveOrder(), и его информация будет использоваться для отображения деталей заказа, чтобы повар мог приступить к работе. Это кажется естественным выбором для модели тянуть (pull).</p> <p>Теперь давайте посмотрим, как работает push-модель, объявив JMS-слушатель.</p> <p><strong>ОБЪЯВЛЕНИЕ ЛИСТЕНЕРА СООБЩЕНИЙ</strong></p> <p>В отличие от модели извлечения (pull), где для получения сообщения требовался явный вызов метода receive() или receiveAndConvert(), листенер сообщений является пассивным компонентом, который простаивает до получения сообщения.</p> <p>Чтобы создать листенер сообщений, который реагирует на сообщения JMS, вы просто должны аннотировать метод в компоненте с помощью @JmsListener. В следующем листинге показан новый компонент OrderListener, который пассивно прослушивает сообщения, а не активно запрашивает их.</p> <p><strong>Листинг 8.4. Компонент OrderListener, который прослушивает заказы</strong></p> <p><emphasis>package tacos.kitchen.messaging.jms.listener;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.jms.annotation.JmsListener;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class OrderListener {</emphasis></p> <p><emphasis> private KitchenUI ui;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public OrderListener(KitchenUI ui) {</emphasis></p> <p><emphasis> this.ui = ui;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> @JmsListener(destination = "tacocloud.order.queue")</emphasis></p> <p><emphasis> public void receiveOrder(Order order) {</emphasis></p> <p> <emphasis>ui.displayOrder(order);</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis>}</emphasis></p> <p>Метод receiveOrder () аннотирован JmsListener для «прослушивания» сообщений в месте назначения tacocloud.order.queue. Он не имеет отношения к JmsTemplate и не вызывается явно кодом вашего приложения. Вместо этого, каркасный код в Spring ожидает поступления сообщений в указанный пункт назначения, и когда они приходят, метод receiveOrder() вызывается автоматически с полезной нагрузкой Order в качестве параметра.</p> <p>Во многих отношениях аннотация @JmsListener похожа на одну из аннотаций сопоставления запросов Spring MVC, например, @GetMapping или @PostMapping. В Spring MVC методы, аннотированные одним из методов отображения запросов, реагируют на запросы по указанному пути. Точно так же методы, аннотированные @JmsListener, реагируют на сообщения, поступающие в пункт назначения.</p> <p>Слушатели сообщений часто советуются как лучший выбор, потому что они не блокируют и могут быстро обрабатывать несколько сообщений. Однако в контексте приложения Taco Cloud они, возможно, не лучший выбор. Повара являются существенным узким местом в системе и могут не иметь возможности готовить тако так быстро, как поступают заказы. Повар может наполовину выполнить заказ, когда на экране отображается новый заказ. Пользовательский интерфейс кухни должен был бы буферизовать заказы по мере их поступления, чтобы не перегружать кухонный персонал.</p> <p>Нельзя сказать, что слушатели сообщений плохие. Напротив, они идеально подходят для быстрой обработки сообщений. Но когда обработчики сообщений должны иметь возможность запрашивать бОльшую часть сообщений в свое время, модель извлечения, предлагаемая JmsTemplate, кажется более подходящей.</p> <p>Поскольку JMS определяется стандартной спецификацией Java и поддерживается многими реализациями брокера сообщений, это обычный выбор для обмена сообщениями в Java. Но у JMS есть несколько недостатков, не последним из которых является то, что в качестве спецификации Java его использование ограничено приложениями Java. Новые опции обмена сообщениями, такие как RabbitMQ и Kafka, устраняют эти недостатки и доступны для других языков и платформ, помимо JVM. Давайте отложим JMS и посмотрим, как вы могли бы реализовать обмен сообщениями о заказах тако с RabbitMQ.</p> <p>8.2 Работа с RabbitMQ и AMQP</p> <p>Как, возможно, самая известная реализация AMQP, RabbitMQ предлагает более продвинутую стратегию маршрутизации сообщений, чем JMS. Принимая во внимание, что сообщения JMS адресуются с именем пункта назначения, из которого получатель получит их, сообщения AMQP адресуются с именем обмена и ключом маршрутизации, которые отделены от очереди, которую прослушивает получатель. Эта связь между обменом и очередями показана на рисунке 8.1.</p> <p><image l:href="#img_25"/></p> <p><strong>Рис. 8.1. Сообщения, отправляемые на обмен RabbitMQ, направляются в одну или несколько очередей на основе ключей маршрутизации и привязок.</strong></p> <p>Когда сообщение приходит к брокеру RabbitMQ, оно отправляется на тот обмен (exchange), для которого оно было адресовано. Exchange отвечает за маршрутизацию сообщения в одну или несколько очередей в зависимости от типа exchange, привязки между exchange и очередями (queue) и значения ключа маршрутизации сообщения.</p> <p>Существует несколько видов обмена, включая следующие:</p> <p><emphasis>Default </emphasis>— обмен, который автоматически создается брокером. Он направляет сообщения в очереди, чье имя совпадает с ключом маршрутизации сообщения. Все очереди по умолчанию привязаны к default exchange.</p> <p><emphasis>Direct </emphasis>- направляет сообщения в очередь, ключ привязки которой совпадает с ключом маршрутизации сообщения.</p> <p><emphasis>Topic </emphasis>- направляет сообщение в одну или несколько очередей, в которых ключ привязки (который может содержать символы подстановки) соответствует ключу маршрутизации сообщения.</p> <p><emphasis>Fanout </emphasis>- маршрутизирует сообщения во все связанные очереди без учета ключей привязки или ключей маршрутизации.</p> <p><emphasis>Headers </emphasis>- аналогичны обмену topic, за исключением того, что маршрутизация основана на значениях заголовков сообщений, а не на ключах маршрутизации.</p> <p><emphasis>Dead letter</emphasis> - универсальное сообщение для всех сообщений, которые невозможно доставить (это означает, что они не соответствуют какой-либо определенной привязке обмена к очереди).</p> <p>Простейшие формы обмена это Default и Fanout, так как они примерно соответствуют очереди и теме JMS. Но другие типы обмена позволяют задать более гибкие схемы маршрутизации.</p> <p>Самая важная вещь для понимания - это то, что сообщения отправляются на обменники (exchanges) с ключами маршрутизации, и они берутся из очередей. То, как они попадают из обмена в очередь, зависит от определений привязки и того, что лучше всего подходит для ваших сценариев использования.</p> <p>Какой тип обмена вы используете и как вы определяете привязки между обменами и очередями, мало влияет на то, как сообщения отправляются и принимаются в ваших приложениях Spring. Поэтому мы сосредоточимся на том, как написать код, который отправляет и получает сообщения с помощью Rabbit.</p> <p>П р и м е ч а н и е - Более подробное обсуждение того, как лучше связать очереди с обменниками , см. RabbitMQ in Action Alvaro Videla and Jason J.W. Williams (Manning, 2012).</p> <p>8.2.1 Добавление RabbitMQ в Spring</p> <p>Прежде чем вы сможете начать отправку и получение сообщений RabbitMQ с помощью Spring, вам нужно добавить в свою сборку зависимость AMQP-стартера Spring Boot вместо Artemis или ActiveMQ-стартера, которые вы добавили в предыдущем разделе:</p> <p><emphasis><dependency></emphasis></p> <p><emphasis> <groupId>org.springframework.boot</groupId></emphasis></p> <p><emphasis> <artifactId>spring-boot-starter-amqp</artifactId></emphasis></p> <p><emphasis></dependency></emphasis></p> <p>Добавление стартера AMQP в вашу сборку вызовет автоконфигурацию, которая создаст фабрику соединений AMQP и компоненты RabbitTemplate, а также другие вспомогательные компоненты. Просто добавьте эту зависимость, чтобы начать отправку и получение сообщений от брокера RabbitMQ с помощью Spring. Но есть несколько полезных свойств, о которых вы захотите узнать, перечисленных в таблице 8.4.</p> <p><strong>Таблица 8.4 Свойства для настройки местоположения и учетных данных RabbitMQ брокера</strong></p> <p><emphasis>spring.rabbitmq.addresses </emphasis>- Разделенный запятыми список адресов брокера RabbitMQ</p> <p><emphasis>spring.rabbitmq.host</emphasis> - Хост брокера (по умолчанию localhost)</p> <p><emphasis>spring.rabbitmq.port </emphasis>- Порт брокера (по умолчанию 5672)</p> <p><emphasis>spring.rabbitmq.username </emphasis>- Имя пользователя для доступа к брокеру (необязательно)</p> <p><emphasis>spring.rabbitmq.password </emphasis>- Пароль пользователя для доступа к брокеру (необязательно)</p> <p>В целях разработки у вас, вероятно, будет брокер RabbitMQ, для которого не требуется проверка подлинности на вашем локальном компьютере с слушателем порта 5672. Эти свойства, скорее всего, не будут особенно полезны, пока вы еще в разработке, но они без сомнения, окажутся полезными, когда ваши приложения будут запущены в продакшен.</p> <p>Например, предположим, что при переходе в продакшен ваш брокер RabbitMQ находится на сервере с именем rabbit.tacocloud.com, прослушивает порт 5673 и требует учетных данных. В этом случае следующая конфигурация в вашем файле application.yml установит эти свойства, когда профиль prod активен:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> profiles: prod</emphasis></p> <p><emphasis> rabbitmq:</emphasis></p> <p><emphasis> host: rabbit.tacocloud.com</emphasis></p> <p><emphasis> port: 5673</emphasis></p> <p><emphasis> username: tacoweb</emphasis></p> <p><emphasis> password: l3tm31n</emphasis></p> <p>Теперь, когда RabbitMQ настроен в вашем приложении, пришло время начать отправку сообщений с RabbitTemplate.</p> <p>8.2.2 Отправка сообщений с RabbitTemplate</p> <p>В основе поддержки обмена сообщениями RabbitMQ от Spring лежит RabbitTemplate. RabbitTemplate похож на JmsTemplate, предлагая аналогичный набор методов. Однако, как вы увидите, есть некоторые тонкие различия, которые соответствуют уникальному способу работы RabbitMQ.</p> <p>Что касается отправки сообщений с помощью RabbitTemplate, методы send() и convertAndSend() аналогичны методам с такими же именами из JmsTemplate. Но в отличие от методов JmsTemplate, которые направляют сообщения только в определенную очередь или тему, методы RabbitTemplate отправляют сообщения в с точки зрения обмена и ключей маршрутизации. Вот несколько наиболее важных методов отправки сообщений с RabbitTemplate (эти методы определены в AmqpTemplate, интерфейсе, реализованном RabbitTemplate.):</p> <p>// Отправка необработанных сообщений</p> <p><emphasis>void send(Message message) throws AmqpException;</emphasis></p> <p><emphasis>void send(String routingKey, Message message) throws AmqpException;</emphasis></p> <p><emphasis>void send(String exchange, String routingKey, Message message) throws AmqpException;</emphasis></p> <p>// Отправлять сообщения, преобразованные из объектов</p> <p><emphasis>void convertAndSend(Object message) throws AmqpException;</emphasis></p> <p><emphasis>void convertAndSend(String routingKey, Object message) throws AmqpException;</emphasis></p> <p><emphasis>void convertAndSend(String exchange, String routingKey, Object message) throws AmqpException;</emphasis></p> <p>// Отправка сообщений, преобразованных из объектов с последующей обработкой (post-processing)</p> <p><emphasis>void convertAndSend(Object message, MessagePostProcessor mPP) throws AmqpException;</emphasis></p> <p><emphasis>void convertAndSend(String routingKey, Object message, MessagePostProcessor messagePostProcessor) throws AmqpException;</emphasis></p> <p><emphasis>void convertAndSend(String exchange, String routingKey, Object message, MessagePostProcessor messagePostProcessor) throws AmqpException;</emphasis></p> <p>Как видите, эти методы следуют шаблону, аналогичному их близнецам в JmsTemplate. Первые три метода send() отправляют необработанный объект Message. Следующие три метода convertAndSend() принимают объект, который будет преобразован в Message за кулисами перед отправкой. Последние три метода convertAndSend() похожи на предыдущие три, но они принимают MessagePostProcessor, который можно использовать для манипулирования объектом Message до его отправки брокеру.</p> <p>Эти методы отличаются от своих аналогов JmsTemplate тем, что они принимают значения String, чтобы указать ключ обмена и маршрутизации, а не имя назначения (или Destination назначения). Методы, которые не принимают exchange, будут отправлять свои сообщения в exchange по умолчанию. Аналогично, методы, которые не принимают ключ маршрутизации, будут маршрутизировать свои сообщения с ключом маршрутизации по умолчанию.</p> <p>Давайте включим RabbitTemplate для работы с отправкой тако-заказов. Один из способов сделать это - использовать метод send(), как показано в листинге 8.5. Но прежде чем вы сможете вызвать send(), вам нужно преобразовать объект Order в a Message. Это может быть утомительной работой, если бы не тот факт, что RabbitTemplate делает свой конвертер сообщений доступным с помощью метода getMessageConverter().</p> <p><strong>Листинг 8.5 Отправка сообщений с RabbitTemplate.send()</strong></p> <p><emphasis>package tacos.messaging;</emphasis></p> <p><emphasis>import org.springframework.amqp.core.Message;</emphasis></p> <p><emphasis>import org.springframework.amqp.core.MessageProperties;</emphasis></p> <p><emphasis>import org.springframework.amqp.rabbit.core.RabbitTemplate;</emphasis></p> <p><emphasis>import org.springframework.amqp.support.converter.MessageConverter;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Service;</emphasis></p> <p><emphasis>import tacos.Order;</emphasis></p> <p><emphasis>@Service</emphasis></p> <p><emphasis>public class RabbitOrderMessagingService implements OrderMessagingService {</emphasis></p> <p><emphasis> private RabbitTemplate rabbit;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public RabbitOrderMessagingService(RabbitTemplate rabbit) {</emphasis></p> <p><emphasis> this.rabbit = rabbit;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> public void sendOrder(Order order) {</emphasis></p> <p><emphasis> MessageConverter converter = rabbit.getMessageConverter();</emphasis></p> <p><emphasis> MessageProperties props = new MessageProperties();</emphasis></p> <p><emphasis> Message message = converter.toMessage(order, props);</emphasis></p> <p><emphasis> rabbit.send("tacocloud.order", message);</emphasis></p> <p> <emphasis>}</emphasis></p> <p><emphasis>}</emphasis></p> <p>Если у вас есть MessageConverter, конвертировать Order в Message становится просто. Вы должны задать любые свойства сообщения с MessageProperties, но если вам не нужно устанавливать какие-либо такие свойства, то подойдет экземпляр MessageProperties по умолчанию. Затем все, что осталось - это вызвать send(), передав ключ обмена и маршрутизации (оба из которых являются необязательными) вместе с сообщением. В этом примере вы указываете только ключ маршрутизации - tacocloud.order - вместе с сообщением, поэтому будет использоваться exchange (обмен) по умолчанию.</p> <p>Говоря об default exchange, именем обмена по умолчанию является «» (пустая строка), что соответствует default exchange, автоматически создаваемому брокером RabbitMQ. Точно так же ключом маршрутизации по умолчанию является «» (маршрутизация которого зависит от рассматриваемого обмена и привязок (exchange and binding)). Вы можете переопределить эти значения по умолчанию, установив свойства spring.rabbitmq.template.exchange и spring.rabbitmq.template.routing-key:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> rabbitmq:</emphasis></p> <p><emphasis> template:</emphasis></p> <p><emphasis> exchange: tacocloud.orders</emphasis></p> <p><emphasis> routing-key: kitchens.central</emphasis></p> <p>В этом случае все сообщения, отправленные без указания exchange, будут автоматически отправлены на exchange, имя которого - tacocloud.orders. Если ключ маршрутизации также не указан в вызове send() или convertAndSend(), у сообщений будет ключ маршрутизации kitchens.central.</p> <p>Создать объект Message из конвертера сообщений достаточно просто, но еще проще использовать convertAndSend(), чтобы RabbitTemplate обрабатывал всю работу по преобразованию за вас:</p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> rabbit.convertAndSend("tacocloud.order", order);</emphasis></p> <p><emphasis>}</emphasis></p> <p><strong>НАСТРОЙКА ПРЕОБРАЗОВАТЕЛЯ СООБЩЕНИЙ</strong></p> <p>По умолчанию преобразование сообщений выполняется с помощью SimpleMessageConverter, который может преобразовывать простые типы (например, String) и объекты Serializable в объекты Message. Но Spring предлагает несколько конвертеров сообщений для RabbitTemplate, включая следующие:</p> <p><emphasis>Jackson2JsonMessageConverter</emphasis>—Ковертирует объекты В и ИЗ JSON используя Jackson 2 JSON processor</p> <p><emphasis>MarshallingMessageConverter</emphasis>—Конвертирует используя Spring Marshaller и Unmarshaller</p> <p><emphasis>SerializerMessageConverter</emphasis>—Ковертирует String aи нативные объекты любого типа используя Spring-овый Serializer и Deserializer абстракции</p> <p><emphasis>SimpleMessageConverter </emphasis>- преобразует строки, байтовые массивы и Serializable типы.</p> <p><emphasis>ContentTypeDelegatingMessageConverter </emphasis>- делегирует другому MessageConverter на основе заголовка contentType.</p> <p><emphasis>MessagingMessageConverter </emphasis>- делегирует базовый MessageConverter для преобразования сообщений и AmqpHeaderConverter для заголовков.</p> <p>Если вам нужно изменить конвертер сообщений, все, что вам нужно сделать, это настроить bean-компонент типа MessageConverter. Например, для преобразования сообщений на основе JSON вы можете настроить конвертер Jackson2JsonMessageConver следующим образом:</p> <p><emphasis>@Bean</emphasis></p> <p><emphasis>public MessageConverter messageConverter() {</emphasis></p> <p><emphasis> return new Jackson2JsonMessageConverter();</emphasis></p> <p><emphasis>}</emphasis></p> <p>Автоконфигурация Spring Boot обнаружит этот bean-компонент и вставит его в RabbitTemplate вместо конвертера сообщений по умолчанию.</p> <p><strong>НАСТРОЙКА СВОЙСТВ СООБЩЕНИЙ</strong></p> <p>Как и в случае с JMS, вам может потребоваться установить некоторые заголовки в отправляемых вами сообщениях. Например, допустим, вам нужно отправить X_ORDER_SOURCE для всех заказов, представленных через веб-сайт Taco Cloud. При создании ваших собственных объектов Message вы можете установить заголовок через экземпляр MessageProperties, который вы передаете конвертеру сообщений. Возвращаясь к методу sendOrder() из листинга 8.5, вам понадобится всего одна дополнительная строка кода для установки заголовка:</p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> MessageConverter converter = rabbit.getMessageConverter();</emphasis></p> <p><emphasis> MessageProperties props = new MessageProperties();</emphasis></p> <p><emphasis> props.setHeader("X_ORDER_SOURCE", "WEB");</emphasis></p> <p><emphasis> Message message = converter.toMessage(order, props);</emphasis></p> <p><emphasis> rabbit.send("tacocloud.order", message);</emphasis></p> <p><emphasis>}</emphasis></p> <p>Однако при использовании convertAndSend() у вас нет быстрого доступа к объекту MessageProperties. В этом вам может помочь MessagePostProcessor:</p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p><emphasis> rabbit.convertAndSend("tacocloud.order.queue", order,</emphasis></p> <p><emphasis> new MessagePostProcessor() {</emphasis></p> <p><emphasis> @Override</emphasis></p> <p><emphasis> public Message postProcessMessage(Message message)</emphasis></p> <p><emphasis> throws AmqpException {</emphasis></p> <p><emphasis> MessageProperties props = message.getMessageProperties();</emphasis></p> <p><emphasis> props.setHeader("X_ORDER_SOURCE", "WEB");</emphasis></p> <p><emphasis> return message;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> });</emphasis></p> <p><emphasis>}</emphasis></p> <p>Здесь вы предоставляете convertAndSend() анонимной внутренней реализацией MessagePostProcessor. В методе postProcessMessage() вы извлекаете свойства MessageProperties из сообщения и затем вызываете setHeader(), чтобы установить заголовок X_ORDER_SOURCE.</p> <p>Теперь, когда вы увидели, как отправлять сообщения с помощью RabbitTemplate, давайте переключимся на код, который получает сообщения из очереди RabbitMQ.</p> <p>8.2.3 Получение сообщения от RabbitMQ</p> <p>Вы видели, что отправка сообщений с помощью RabbitTemplate не сильно отличается от отправки сообщений с помощью JmsTemplate. И, как выясннится, получение сообщений из очереди RabbitMQ не сильно отличается от JMS.</p> <p>Как и в случае с JMS, у вас есть два варианта:</p> <p>-Получение сообщений из очереди с помощью RabbitTemplate</p> <p>-Отправка сообщений в методе, аннотированным @RabbitListener.</p> <p>Давайте начнем с рассмотрения pull-овского метода RabbitTemplate.receive(), основанного на извлечении.</p> <p><strong>ПОЛУЧЕНИЕ СООБЩЕНИЙ С RABBITTEMPLATE</strong></p> <p>RabbitTemplate поставляется с несколькими методами для извлечения сообщений из очереди. Несколько наиболее полезных из них перечислены здесь:</p> <p>// Получение сообщений</p> <p><emphasis>Message receive() throws AmqpException;</emphasis></p> <p><emphasis>Message receive(String queueName) throws AmqpException;</emphasis></p> <p><emphasis>Message receive(long timeoutMillis) throws AmqpException;</emphasis></p> <p><emphasis>Message receive(String queueName, long timeoutMillis) throws AmqpException;</emphasis></p> <p>// Получать объекты, преобразованные из сообщений</p> <p><emphasis>Object receiveAndConvert() throws AmqpException;</emphasis></p> <p><emphasis>Object receiveAndConvert(String queueName) throws AmqpException;</emphasis></p> <p><emphasis>Object receiveAndConvert(long timeoutMillis) throws AmqpException;</emphasis></p> <p><emphasis>Object receiveAndConvert(String queueName, long timeoutMillis) throws</emphasis></p> <p> <emphasis>AmqpException;</emphasis></p> <p>// Получать типобезопасные объекты, преобразованные из сообщений</p> <p><emphasis><T> T receiveAndConvert(ParameterizedTypeReference<T> type) throws</emphasis></p> <p><emphasis> AmqpException;</emphasis></p> <p><emphasis><T> T receiveAndConvert(String queueName, ParameterizedTypeReference<T> type)</emphasis></p> <p><emphasis> throws AmqpException;</emphasis></p> <p><emphasis><T> T receiveAndConvert(long timeoutMillis, ParameterizedTypeReference<T></emphasis></p> <p><emphasis> type) throws AmqpException;</emphasis></p> <p><emphasis><T> T receiveAndConvert(String queueName, long timeoutMillis,</emphasis></p> <p><emphasis> ParameterizedTypeReference<T> type) throws AmqpException;</emphasis></p> <p>Эти методы являются зеркальными изображениями методов send() и convertAndSend(), описанных ранее. Принимая во внимание, что send() используется для отправки необработанных объектов Message, а receive() получает необработанные объекты Message из очереди. Аналогично, receiveAndConvert() получает сообщения и использует конвертер сообщений для преобразования их в объекты домена перед их возвратом.</p> <p>Но есть несколько очевидных различий в сигнатурах методов. Во-первых, ни один из этих методов не принимает ключ обмена или маршрутизации в качестве параметра. Это связано с тем, что обмены и ключи маршрутизации используются для маршрутизации сообщений в очереди, но как только сообщения находятся в очереди, их следующим пунктом назначения является потребитель, который вытаскивает их из очереди. Приложения-потребители не должны заниматься обменом или маршрутизацией ключей. Очередь - это единственное, что нужно знать приложениям-потребителям.</p> <p>Вы также заметите, что многие методы принимают long параметр, указывающий тайм-аут для получения сообщений. По умолчанию время ожидания приема составляет 0 миллисекунд. То есть вызов метода receive() будет возвращен немедленно, потенциально с null значением, если сообщения недоступны. Это явное отличие от того, как ведут себя методы receive() в JmsTemplate. Передав значение тайм-аута, методы receive() и receiveAndConvert() блокируются до прибытия сообщения или до истечения времени ожидания. Но даже при ненулевом таймауте ваш код должен быть готов к null возврату.</p> <p>Давайте посмотрим, как вы можете применить это на практике. Следующий листинг показывает новую реализацию OrderReceiver на основе Rabbit, которая использует RabbitTemplate для получения заказов.</p> <p><strong>Листинг 8.6. Получение заказов от RabbitMQ с помощью </strong><strong>RabbitTemplate</strong></p> <p><emphasis>package tacos.kitchen.messaging.rabbit;</emphasis></p> <p><emphasis>import org.springframework.amqp.core.Message;</emphasis></p> <p><emphasis>import org.springframework.amqp.rabbit.core.RabbitTemplate;</emphasis></p> <p><emphasis>import org.springframework.amqp.support.converter.MessageConverter;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class RabbitOrderReceiver {</emphasis></p> <p><emphasis> private RabbitTemplate rabbit;</emphasis></p> <p><emphasis> private MessageConverter converter;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public RabbitOrderReceiver(RabbitTemplate rabbit) {</emphasis></p> <p><emphasis> this.rabbit = rabbit;</emphasis></p> <p><emphasis> this.converter = rabbit.getMessageConverter();</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> public Order receiveOrder() {</emphasis></p> <p><emphasis> Message message = rabbit.receive("tacocloud.orders");</emphasis></p> <p><emphasis> return message != null ? (Order) converter.fromMessage(message) : null;</emphasis></p> <p> <emphasis>}</emphasis></p> <p><emphasis>}</emphasis></p> <p>Метод receiveOrder() - это место, где происходит все действие. Он вызывает метод receive() на внедренном шаблоне RabbitTemplate для получения заказа из очереди tacocloud.orders. Он не предоставляет значения времени ожидания, поэтому вы можете только предполагать, что вызов немедленно возвращается либо с Message, либо с null значением. Если Message возвращается, вы используете MessageConverter из шаблона RabbitTemplate для преобразования Message в Order. Иначе, если receive() возвращает null, вы возвращаете null.</p> <p>В зависимости от варианта использования вы можете установить небольшую задержку. Например, на верхнем дисплее кухни Taco Cloud вы можете подождать некоторое время, если нет заказов. Допустим, вы решили подождать до 30 секунд, прежде чем сдаться. Метод receiveOrder() может быть изменен для передачи 30 000 миллисекундной задержки для receive():</p> <p><emphasis>public Order receiveOrder() {</emphasis></p> <p><emphasis> Message message = rabbit.receive("tacocloud.order.queue", 30000);</emphasis></p> <p><emphasis> return message != null ? (Order) converter.fromMessage(message) : null;</emphasis></p> <p><emphasis>}</emphasis></p> <p>Если вы похожи на меня, то, увидев такой захардкоженный элемент, вы почувствуете дискомфорт. Вы можете подумать, что было бы неплохо создать аннотированный класс @ConfigurationProperties, чтобы можно было настроить это время ожидания с помощью свойства конфигурации Spring Boot. Я бы согласился с вами, если бы не тот факт, что Spring Boot уже предлагает такое свойство конфигурации. Если вы хотите установить время ожидания с помощью конфигурации, просто удалите значение времени ожидания в вызове receive() и установите его в своей конфигурации с помощью свойства spring.rabbitmq.template.receive-timeout:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> rabbitmq:</emphasis></p> <p><emphasis> template:</emphasis></p> <p><emphasis> receive-timeout: 30000</emphasis></p> <p>Вернемся к методу receiveOrder(), обратите внимание, что вам пришлось использовать конвертер сообщений из RabbitTemplate для преобразования входящего объекта Message в объект Order. Но если RabbitTemplate использует конвертер сообщений, почему он не может выполнить преобразование для вас? Именно для этого и предназначен метод receiveAndConvert(). Используя receiveAndConvert(), вы можете переписать receiveOrder() следующим образом:</p> <p><emphasis>public Order receiveOrder() {</emphasis></p> <p><emphasis> return (Order) rabbit.receiveAndConvert("tacocloud.order.queue");</emphasis></p> <p><emphasis>}</emphasis></p> <p>Это намного проще, не так ли? Единственная тревожная вещь, которую я вижу, это приведение Object к Order. Однако есть альтернатива. Вместо этого вы можете передать ParameterizedTypeReference в receiveAndConvert() для непосредственного получения объекта Order:</p> <p><emphasis>public Order receiveOrder() {</emphasis></p> <p><emphasis> return rabbit.receiveAndConvert("tacocloud.order.queue", new ParameterizedTypeReference<Order>() {});</emphasis></p> <p><emphasis>}</emphasis></p> <p>Спорный вопрос, чем это лучше, но это более типобезопасный подход. Единственное требование для использования ParameterizedTypeReference с receiveAndConvert() состоит в том, что конвертер сообщений должен быть реализацией SmartMessageConverter; Jackson2JsonMessageConverter - единственная готовая реализация на выбор.</p> <p>Модель pull, предлагаемая JmsTemplate, подходит для многих случаев использования, но часто лучше иметь код, который прослушивает сообщения и который вызывается при поступлении сообщений. Давайте посмотрим, как вы можете создавать управляемые сообщениями bean-компоненты, которые отвечают на сообщения RabbitMQ.</p> <p><strong>ОБРАБОТКА СООБЩЕНИЙ RABBITMQ СО СЛУШАТЕЛЯМИ</strong></p> <p>Для управляемых сообщениями компонентов RabbitMQ Spring предлагает RabbitListener, аналог RabbitMQ для JmsListener. Чтобы указать, что метод должен вызываться при поступлении сообщения в очередь RabbitMQ, аннотируйте метод компонента с помощью @RabbitTemplate.</p> <p>Например, в следующем листинге показана реализация OrderReceiver в RabbitMQ, аннотированная для прослушивания сообщений заказа, а не для их запроса с помощью RabbitTemplate.</p> <p><strong>Листинг 8.7 объявление метода в качестве листенера сообщений RabbitMQ</strong></p> <p><emphasis>package tacos.kitchen.messaging.rabbit.listener;</emphasis></p> <p><emphasis>import org.springframework.amqp.rabbit.annotation.RabbitListener;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class OrderListener {</emphasis></p> <p><emphasis> private KitchenUI ui;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public OrderListener(KitchenUI ui) {</emphasis></p> <p><emphasis> this.ui = ui;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> @RabbitListener(queues = "tacocloud.order.queue")</emphasis></p> <p><emphasis> public void receiveOrder(Order order) {</emphasis></p> <p> <emphasis>ui.displayOrder(order);</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis>}</emphasis></p> <p>Вы без сомнения заметите, что это очень похоже на код из листинга 8.4. Действительно, единственное, что изменилось, это аннотация слушателя - вместо @JmsListener используется @RabbitListener. Каким бы замечательным ни был @RabbitListener, это почти дублирование кода оставляет мне мало что сказать о @RabbitListener, чего я еще не говорил о @JmsListener. Они оба отлично подходят для написания кода, который отвечает на сообщения, отправляемые им соответствующими брокерами - брокером JMS для @JmsListener и брокером RabbitMQ для @RabbitListener.</p> <p>Хотя вы можете чувствовать отсутствие энтузиазма в отношении @RabbitListener в предыдущем абзаце, будьте уверены, что я не специально. По правде говоря, тот факт, что @RabbitListener работает так же, как @JmsListener, на самом деле очень интересен! Это означает, что вам не нужно изучать совершенно другую модель программирования при работе с RabbitMQ против Artemis или ActiveMQ. То же самое справедливо для сходства между RabbitTemplate и JmsTemplate.</p> <p>Завершая эту главу, рассмотрим еще один вариант обмена сообщениями, поддерживаемый Spring: Apache Kafka.</p> <p>8.3 Обмен сообщениями с Kafka</p> <p>Apache Kafka - это новейший вариант обмена сообщениями, который мы рассмотрим в этой главе. На первый взгляд, Kafka - это брокер сообщений, такой же, как ActiveMQ, Artemis или Rabbit. Но у Кафки есть несколько уникальных козырей в рукавах.</p> <p>Kafka предназначена для работы в кластере, обеспечивая отличную масштабируемость. И разделяя свои темы по всем экземплярам в кластере добивается особой устойчивости. Принимая во внимание, что RabbitMQ имеет дело главным образом с очередями на слушателях, Kafka использует темы только для обмена сообщениями в pub/sub - сообщениях.</p> <p>Темы Кафки распространяются на всех брокеров в кластере. Каждый узел в кластере выступает в качестве лидера для одной или нескольких тем, отвечая за данные этой темы и реплицируя их на другие узлы в кластере.</p> <p>Далее, каждая тема может быть разделена на несколько разделов. В этом случае каждый узел в кластере является лидером для одного или нескольких разделов темы, но не для всей темы. Ответственность за тему распределена по всем узлам. Рисунок 8.2 иллюстрирует, как это работает.</p> <p><image l:href="#img_26"/></p> <p><strong>Рис. 8.2. Кластер Kafka состоит из нескольких брокеров, каждый из которых выступает в роли лидера по разделам тем.</strong></p> <p>Kafka обладает уникальной архитектурой, и я призываю вас прочитать больше об этом в Kafka in Action Дилана Скотта (Manning, 2017). Для наших целей мы сосредоточимся на том, как отправлять сообщения и получать их от Kafka с помощью Spring.</p> <p>8.3.1 Настройка Spring для обмена сообщениями Kafka</p> <p>Чтобы начать использовать Kafka для обмена сообщениями, вам нужно добавить соответствующие зависимости в вашу сборку. Однако, в отличие от параметров JMS и RabbitMQ, для Kafka нет стартового Spring Boot. Но не бойтесь; вам понадобится только одна зависимость:</p> <p><emphasis><dependency></emphasis></p> <p><emphasis> <groupId>org.springframework.kafka</groupId></emphasis></p> <p> <emphasis><artifactId>spring-kafka</artifactId></emphasis></p> <p><emphasis></dependency></emphasis></p> <p>Эта зависимость вносит все, что нужно для Кафки в проект. Более того, её присутствие инициирует автоконфигурацию Spring Boot для Kafka, которая, помимо прочего, организует KafkaTemplate в контексте приложения Spring. Все, что вам нужно сделать, это заинжектить KafkaTemplate и приступить к отправке и получению сообщений.</p> <p>Однако прежде чем приступить к отправке и получению сообщений, вы должны знать о некоторых свойствах, которые пригодятся при работе с Kafka. В частности, KafkaTemplate по умолчанию работает с брокером Kafka на локальном хосте, прослушивая порт 9092. Это нормально, если брокер Kafka запускается локально при разработке приложения, но когда придет время перейти к продакшену, вам потребуется настроить другой хост и порт.</p> <p>Свойство spring.kafka.bootstrap-servers задает расположение одного или нескольких серверов Kafka, используемых для установления начального соединения с кластером Kafka. Например, если один из серверов Kafka в кластере работает kafka.tacocloud.com и прослушивая порт 9092, вы можете настроить его местоположение в YAML следующим образом:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> kafka:</emphasis></p> <p><emphasis> bootstrap-servers:</emphasis></p> <p><emphasis> - kafka.tacocloud.com:9092</emphasis></p> <p>Но обратите внимание spring.kafka.bootstrap-servers - является множественным числом и принимает список. Таким образом, вы можете предоставить ему несколько серверов Kafka в кластере:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> kafka:</emphasis></p> <p><emphasis> bootstrap-servers:</emphasis></p> <p><emphasis> - kafka.tacocloud.com:9092</emphasis></p> <p><emphasis> - kafka.tacocloud.com:9093</emphasis></p> <p><emphasis> - kafka.tacocloud.com:9094</emphasis></p> <p>С настройкой Kafka в вашем проекте вы готовы отправлять и получать сообщения. Начнем с отправки объектов Order в Kafka с помощью KafkaTemplate.</p> <p>8.3.2 Отправка сообщений с помощью KafkaTemplate</p> <p>Во многих отношениях KafkaTemplate похож на своих аналогов в JMS и RabbitMQ. В то же время, это совсем другое. Это становится очевидным, когда мы рассмотрим методы отправки сообщений:</p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(String topic, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(String topic, K key, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(String topic, Integer partition, K key, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(String topic, Integer partition, Long timestamp, K key, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(ProducerRecord<K, V> record);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> send(Message<?> message);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> sendDefault(V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> sendDefault(K key, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> sendDefault(Integer partition, K key, V data);</emphasis></p> <p><emphasis>ListenableFuture<SendResult<K, V>> sendDefault(Integer partition, Long timestamp, K key, V data);</emphasis></p> <p>Первое, что вы могли заметить, это то, что нет методов convertAndSend(). Это потому, что KafkaTemplate написана с помощью дженериков и может работать с типами доменов непосредственно при отправке сообщений. В некотором смысле, все методы send() выполняют функцию convertAndSend ().</p> <p>Вы также могли заметить, что есть несколько параметров send() и sendDefaul (), которые сильно отличаются от тех, которые вы использовали с JMS и Rabbit. При отправке сообщений в Kafka вы можете указать следующие параметры, которые будут определять способ отправки сообщения:</p> <p>-<emphasis>topic </emphasis>- тема для отправки сообщения (требуется для send())</p> <p>-<emphasis>partition </emphasis>- раздел для записи topic (необязательно)</p> <p>-<emphasis>key </emphasis>- ключ для отправки на запись (необязательно)</p> <p>-<emphasis>timestamp </emphasis>- время (необязательно; по умолчанию используется System.currentTimeMillis())</p> <p>-<emphasis>полезные данные</emphasis> (полезная нагрузка) (обязательно)</p> <p>Тема и полезные данные являются двумя наиболее важными параметрами. Разделы и ключи мало влияют на то, как вы используете KafkaTemplate, кроме дополнительной информации, предоставляемой в качестве параметров для send() и sendDefault(). Для наших целей мы собираемся сосредоточиться на отправке полезной нагрузки сообщения в заданную тему и не беспокоиться о разделах и ключах.</p> <p>Для метода send() вы также можете выбрать отправку ProducerRecord, который является немногим больше, чем тип, который содержит все предыдущие параметры в одном объекте. Вы также можете отправить объект Message, но для этого потребуется преобразовать ваши доменные объекты в Message. Как правило, проще использовать один из других методов, чем создавать и отправлять объект ProducerRecord или Message.</p> <p>Используя KafkaTemplate и его метод send(), вы можете написать реализацию OrderMessagingService на основе Kafka. Следующий листинг показывает, как может выглядеть такая реализация.</p> <p><strong>Листинг 8.8. Отправка заказов с помощью KafkaTemplate</strong></p> <p><emphasis>package tacos.messaging;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.kafka.core.KafkaTemplate;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Service;</emphasis></p> <p><emphasis>@Service</emphasis></p> <p><emphasis>public class KafkaOrderMessagingService implements OrderMessagingService {</emphasis></p> <p><emphasis> private KafkaTemplate<String, Order> kafkaTemplate;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public KafkaOrderMessagingService(</emphasis></p> <p><emphasis> KafkaTemplate<String, Order> kafkaTemplate) {</emphasis></p> <p><emphasis> this.kafkaTemplate = kafkaTemplate;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> @Override</emphasis></p> <p><emphasis> public void sendOrder(Order order) {</emphasis></p> <p><emphasis> kafkaTemplate.send("tacocloud.orders.topic", order);</emphasis></p> <p> <emphasis>}</emphasis></p> <p><emphasis>}</emphasis></p> <p>В этой новой реализации OrderMessagingService метод sendOrder() использует метод send() внедренного KafkaTemplate для отправки Order в тему с именем tacocloud.orders.topic. За исключением слова «Кафка», разбросанного по коду, оно не сильно отличается от кода, который вы написали для JMS и Rabbit.</p> <p>Если задать тему по умолчанию, можно немного упростить метод sendOrder(). Во-первых, установить тему по умолчанию в tacocloud.orders.topic, установив свойство spring.kafka.template.default-topic:</p> <p><emphasis>spring:</emphasis></p> <p><emphasis> kafka:</emphasis></p> <p><emphasis> template:</emphasis></p> <p><emphasis> default-topic: tacocloud.orders.topic</emphasis></p> <p>Затем в методе sendOrder() вы можете вызвать sendDefault() вместо send() и не указывать имя темы:</p> <p><emphasis>@Override</emphasis></p> <p><emphasis>public void sendOrder(Order order) {</emphasis></p> <p> <emphasis>kafkaTemplate.sendDefault(order);</emphasis></p> <p><emphasis>}</emphasis></p> <p>Теперь, когда ваш код для отправки сообщений был написан, давайте обратим наше внимание на написание кода, который будет получать эти сообщения от Kafka.</p> <p>8.3.3 Написание Kafka листинеров</p> <p>Помимо уникальных сигнатур методов для send() и sendDefault(), KafkaTemplate отличается от JmsTemplate и RabbitTemplate тем, что не предлагает никаких методов для получения сообщений. Это означает, что единственный способ использовать сообщения из темы Kafka с помощью Spring - написать листинер сообщений.</p> <p>Для Kafka листинеры сообщений определяются как методы, аннотированные @KafkaListener. Аннотация @KafkaListener примерно аналогична @JmsListener и @RabbitListener и используется практически одинаково. В следующем листинге показано, как может выглядеть получатель заказа на основе слушателя, если он написан для Kafka.</p> <p><strong>Листинг 8.9. Получение заказов с помощью @KafkaListener</strong></p> <p><emphasis>package tacos.kitchen.messaging.kafka.listener;</emphasis></p> <p><emphasis>import org.springframework.beans.factory.annotation.Autowired;</emphasis></p> <p><emphasis>import org.springframework.kafka.annotation.KafkaListener;</emphasis></p> <p><emphasis>import org.springframework.stereotype.Component;</emphasis></p> <p><emphasis>import tacos.Order;</emphasis></p> <p><emphasis>import tacos.kitchen.KitchenUI;</emphasis></p> <p><emphasis>@Component</emphasis></p> <p><emphasis>public class OrderListener {</emphasis></p> <p><emphasis> private KitchenUI ui;</emphasis></p> <p><emphasis> @Autowired</emphasis></p> <p><emphasis> public OrderListener(KitchenUI ui) {</emphasis></p> <p><emphasis> this.ui = ui;</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis> @KafkaListener(topics="tacocloud.orders.topic")</emphasis></p> <p><emphasis> public void handle(Order order) {</emphasis></p> <p><emphasis> ui.displayOrder(order);</emphasis></p> <p><emphasis> }</emphasis></p> <p><emphasis>}</emphasis></p> <p>Метод handle() имеет аннотацию @KafkaListener, чтобы указать, что его следует вызывать при поступлении сообщения в теме с именем tacocloud.orders.topic. Как написано в листинге 8.9, для handle() предоставляется только Order (полезная нагрузка). Но если вам нужны дополнительные метаданные из сообщения, он также может принять объект ConsumerRecord или Message.</p> <p>Например, следующая реализация handle() принимает ConsumerRecord, чтобы вы могли регистрировать раздел и метку времени сообщения:</p> <p><emphasis>@KafkaListener(topics="tacocloud.orders.topic")</emphasis></p> <p><emphasis>public void handle(Order order, ConsumerRecord<Order> record) {</emphasis></p> <p><emphasis> log.info("Received from partition {} with timestamp {}",</emphasis></p> <p><emphasis> record.partition(), record.timestamp());</emphasis></p> <p><emphasis> ui.displayOrder(order);</emphasis></p> <p><emphasis>}</emphasis></p> <p>Точно так же вы можете запросить Message вместо ConsumerRecord и достичь того же:</p> <p><emphasis>@KafkaListener(topics="tacocloud.orders.topic")</emphasis></p> <p><emphasis>public void handle(Order order, Message<Order> message) {</emphasis></p> <p><emphasis> MessageHeaders headers = message.getHeaders();</emphasis></p> <p><emphasis> log.info("Received from partition {} with timestamp {}",</emphasis></p> <p><emphasis> headers.get(KafkaHeaders.RECEIVED_PARTITION_ID)</emphasis></p> <p><emphasis> headers.get(KafkaHeaders.RECEIVED_TIMESTAMP));</emphasis></p> <p><emphasis> ui.displayOrder(order);</emphasis></p> <p><emphasis>}</emphasis></p> <p>Стоит отметить, что полезная нагрузка сообщения также доступна через ConsumerRecord.value() или Message.getPayload(). Это означает, что вы можете запросить Order через эти объекты вместо того, чтобы запрашивать его напрямую как параметр handle().</p> <p>ИТОГ</p> <p>-Асинхронный обмен сообщениями обеспечивает уровень перенаправления между взаимодействующими приложениями, что обеспечивает более слабую связь и большую масштабируемость.</p> <p>-Spring поддерживает асинхронный обмен сообщениями с JMS, RabbitMQ или Apache Kafka.</p> <p>-Приложения могут использовать основанные на шаблонах клиенты (JmsTemplate, RabbitTemplate или KafkaTemplate) для отправки сообщений через брокер сообщений.</p> <p>-Приложения могут использовать сообщения в модели на основе запросов, используя те же клиенты на основе шаблонов.</p> <p>-Сообщения также можно передавать потребителям, применяя аннотации листенеров сообщений(@JmsListener, @RabbitListener или @KafkaListener) к методам bean.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/08/spring-in-action-covers-spring-50-9.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 9</a></p> <p><strong>9. Integrating Spring</strong></p> <p><strong>Эта глава охватывает</strong></p> <p><strong>-Обработка данных в режиме реального времени</strong></p> <p><strong>-Определение интеграционных потоков</strong></p> <p><strong>-Использование определения JAVA DSL Spring Integration</strong></p> <p><strong>-Интеграция с электронной почтой, файловыми системами и другими внешними системами</strong></p> <p> </p> <p>Одна из самых неприятных вещей, с которыми я сталкиваюсь во время путешествия - это длительный перелет и плохое или несуществующее интернет-соединение в полете. Мне нравится использовать свое свободное время, чтобы выполнить некоторую работу, включая написание страниц этой книги. Если нет сетевого подключения, я в невыгодном положении, если мне нужно получить библиотеку или найти Java Doc, и я не могу выполнить большую часть работы. Я научился брать с собой книгу для чтения в таких случаям.</p> <p>Точно так же, как нам необходимо подключиться к Интернету для продуктивной работы, многие приложения должны подключаться к внешним системам для выполнения своей работы. Приложению может потребоваться читать или отправлять электронные письма, взаимодействовать с внешним API или использовать данные, содержащиеся в базе данных. И поскольку данные поступают из этих внешних систем или записываются в эти внешние системы, приложению может потребоваться каким-то образом обрабатывать данные, чтобы перевести их в собственный домен приложения или из него.</p> <p>В этой главе вы узнаете, как использовать общие шаблоны интеграции Spring Integration. Spring Integration - это готовая к использованию реализация многих шаблонов интеграции, которые каталогизированы в Enterprise Integration Patterns by Gregor Hohpe and Bobby Woolf (Addison-Wesley, 2003). Каждый шаблон реализован как компонент, через который сообщения передают данные в конвейер. Используя конфигурацию Spring, вы можете собрать эти компоненты в конвейер, по которому проходят потоки данных. Давайте начнем с определения простого потока интеграции, который познакомит вас со многие функциями и характеристиками работы с Spring Integration.</p> <p>9.1 Объявление простого потока интеграции</p> <p>Вообще говоря, Spring Integration позволяет создавать интеграционные потоки, через которые приложение может получать или отправлять данные на некоторый ресурс, внешний по отношению к самому приложению. Одним из таких ресурсов, с которым приложение может интегрироваться, является файловая система. Поэтому среди многих компонентов Spring Integration есть канальные адаптеры для чтения и записи файлов.</p> <p>Чтобы получить удовольствие от Spring Integration, вы создадите поток интеграции, который записывает данные в файловую систему. Для начала вам нужно добавить Spring Integration в ваш проект. Для Maven необходимы следующие зависимости:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-integration</artifactId></p> <p></dependency></p> <p><dependency></p> <p> <groupId>org.springframework.integration</groupId></p> <p> <artifactId>spring-integration-file</artifactId></p> <p></dependency></p> <p>Первая зависимость - это стартер Spring Boot для Spring Integration. Эта зависимость важна для разработки потока Spring Integration, независимо от того, с чем он будет интегрироваться. Как и все starter зависимости Spring Boot, он доступен в виде флажка в форме Initializr.</p> <p>Вторая зависимость - для файла Spring Integration endpoint модуля. Этот модуль является одним из более двух десятков endpoint модулей, используемых для интеграции с внешними системами. Мы поговорим подробнее о endpoint модулях в разделе 9.2.9. Но на данный момент известно, что endpoint модуль файлов предлагает возможность загружать файлы из файловой системы в поток интеграции и / или записывать данные из потока на файловую систему.</p> <p>Затем необходимо создать способ для приложения, чтобы отправить данные в поток интеграции, так что он может быть записан в файл. Для этого вы создадите интерфейс шлюза, например, показанный ниже.</p> <p><strong>Листинг 9.1 Интерфейс шлюза сообщений для преобразования вызовов методов в сообщения</strong></p> <p>package sia5;</p> <p>import org.springframework.integration.annotation.MessagingGateway;</p> <p>import org.springframework.integration.file.FileHeaders;</p> <p>import org.springframework.messaging.handler.annotation.Header;</p> <p>@MessagingGateway(defaultRequestChannel="textInChannel") //Объявляет шлюз сообщений</p> <p>public interface FileWriterGateway {</p> <p> void writeToFile(@Header(FileHeaders.FILENAME) String filename,String data); //Пишет в файл</p> <p>}</p> <p>Хотя это простой Java интерфейс, о FileWriterGateway можно многое сказать. Первое, что вы заметите, это то, что он аннотирован @MessagingGateway. Эта аннотация указывает Spring Integration на создание реализации этого интерфейса должно поисходить во время выполнения - подобно тому, как Spring Data автоматически генерирует реализации интерфейсов репозитория. Другие части кода будут использовать этот интерфейс, когда им нужно будет переписать файл.</p> <p>Атрибут defaultRequestChannel @MessagingGateway указывает, что любые сообщения, полученные в результате вызова методов интерфейса, должны быть отправлены в данный канал сообщений. В этом случае вы заявляете, что любые сообщения, возникающие в результате вызова writeToFile(), должны отправляться на канал, имя которого textInChannel.</p> <p>Что касается метода writeToFile(), он принимает имя файла в виде String и String, содержащий текст, который должен быть записан в файл. Что примечательно в сигнатуре этого метода, так это то, что параметр имени файла аннотирован @Header. В этом случае аннотация @Header указывает, что значение, переданное в filename, должно быть помещено в заголовок сообщения (указанный как FileHeaders.FILENAME, который разрешается в file_name), а не в полезную нагрузку сообщения. Значение параметра data, помещается в полезную нагрузку сообщения.</p> <p>Теперь, когда у вас есть шлюз сообщений, вам нужно настроить интеграционный поток. Несмотря на то, что начальная зависимость Spring Integration, которую вы добавили в свою сборку, обеспечивает необходимую автоконфигурацию для Spring Integration, вы все равно должны написать дополнительные конфигурации, чтобы определить потоки, отвечающие потребностям приложения. Вот три варианта конфигурации для объявления потоков интеграции:</p> <p>-XML конфигурация </p> <p>-Java конфигурация</p> <p>- Java конфигурация с DSL</p> <p>Мы рассмотрим все три из этих стилей конфигурации для Spring Integration, начиная с устаревшей конфигурации XML.</p> <p>9.1.1 Определение потоков интеграции через XML</p> <p>Хотя я избегал использования конфигурации XML в этой книге, Spring Integration имеет долгую историю интеграционных потоков, определенных в XML. Поэтому я считаю, что мне стоит показать хотя бы один пример потока интеграции, определенного через XML. В следующем списке показано, как настроить пример потока через XML.</p> <p><strong>Листинг 9.2 Определение потоков интеграции через XML</strong></p> <p><?xml version="1.0" encoding="UTF-8"?></p> <p><beans xmlns="http://www.springframework.org/schema/beans"</p> <p> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</p> <p> xmlns:int="http://www.springframework.org/schema/integration"</p> <p> xmlns:int-file="http://www.springframework.org/schema/integration/file"</p> <p> xsi:schemaLocation="http://www.springframework.org/schema/beans</p> <p> http://www.springframework.org/schema/beans/spring-beans.xsd</p> <p> http://www.springframework.org/schema/integration</p> <p> http://www.springframework.org/schema/integration/spring-integration.xsd</p> <p> http://www.springframework.org/schema/integration/file</p> <p> http://www.springframework.org/schema/integration/file/springintegration-file.xsd"></p> <p> </p> <p><int:channel id="textInChannel" /> //Объявление textInChannel</p> <p> </p> <p><int:transformer id="upperCase"</p> <p> input-channel="textInChannel"</p> <p> output-channel="fileWriterChannel"</p> <p> expression="payload.toUpperCase()" /> // Преобразование текста</p> <p><int:channel id="fileWriterChannel" /> //Объявление fileWriterChanne</p> <p><int-file:outbound-channel-adapter id="writer"</p> <p> channel="fileWriterChannel"</p> <p> directory="/tmp/sia5/files"</p> <p> mode="APPEND"</p> <p> append-new-line="true" /> //Записывает текст в файл</p> <p></beans></p> <p>Детализация XML в листинге 9.2:</p> <p>Настаиваем канал с именем textInChannel. Это тот же канал что установлен для запроса FileWriterGateway. При вызове метода writeToFile() в FileWriterGateway, результирующее сообщение публикуется на этом канале.</p> <p>Настроили преобразователь (transformer), который получает сообщения от textInChannel. Он использует выражение Spring Expression Language (SpEL) для вызова toUpperCase() в полезной нагрузке сообщения. Результат операции верхнего регистра затем публикуется в fileWriterChannel.</p> <p>Настроили канал с именем fileWriterChannel. Этот канал служит проводником, который соединяет transformer с адаптером исходящего канала.</p> <p>Наконец, настроили адаптер исходящего канала, используя пространство имен int-file. Это пространство имен XML предоставляется модулем Spring Integration для записи файлов. Он настроен так что получает сообщения от fileWriterChannel и записывает полезные данные сообщения в файл, имя которого указано в заголовке file_name сообщения в каталоге, указанном в атрибуте каталога. Если файл уже существует, в него будут добавлены новые данные, а не перезаписан.</p> <p>Этот поток показан на рис. 9.1 с использованием графических элементов, стилизованных под Enterprise Integration Patterns.</p> <p><image l:href="#img_27"/></p> <p>Шлюз записи файлов - Текст в канале - Uppercase transformer - Канал записи файлов - Адаптер исходящего канала файла</p> <p><strong>Рисунок 9.1 Поток интеграции записи файлов</strong></p> <p>Если вы хотите использовать конфигурацию XML в приложении Spring Boot, вам необходимо импортировать XML как ресурс в приложение Spring. Самый простой способ сделать это - использовать аннотацию Spring @ImportResource в одном из классов конфигурации вашего приложения:</p> <p>@Configuration </p> <p>@ImportResource("classpath:/filewriter-config.xml") </p> <p>public class FileWriterIntegrationConfig { ... }</p> <p>Хотя конфигурация на основе XML хорошо послужила Spring Integration, большинство разработчиков опасаются использовать XML. (И, как я уже сказал, я избегаю конфигурации через XML в этой книге.) Давайте отложим эти угловые скобки и обратим наше внимание на стиль конфигурации через Java в Spring Integration.</p> <p><emphasis>9.1.2 Настройка потоков интеграции через Java</emphasis></p> <p>Большинство современных приложений Spring отказались от конфигурации XML в пользу конфигурации Java. Фактически в приложениях Spring Boot конфигурация Java является естественным стилем, дополняющим автоконфигурацию. Поэтому, если вы добавляете поток интеграции в приложение Spring Boot, имеет смысл определить поток посредством Java.</p> <p>В качестве примера того, как написать поток интеграции используя Java конфигурацию, взгляните на следующий листинг. Это показывает тот же процесс интеграции записи файлов, что и раньше, но на этот раз он написан на Java.</p> <p>package sia5;</p> <p>import java.io.File; import org.springframework.context.annotation.Bean; </p> <p>import org.springframework.context.annotation.Configuration;</p> <p>import org.springframework.integration.annotation.ServiceActivator; </p> <p>import org.springframework.integration.annotation.Transformer; </p> <p>import org.springframework.integration.file.FileWritingMessageHandler; </p> <p>import org.springframework.integration.file.support.FileExistsMode;</p> <p> import org.springframework.integration.transformer.GenericTransformer; </p> <p>@Configuration </p> <p>public class FileWriterIntegrationConfig {</p> <p> @Bean</p> <p> @Transformer(inputChannel="textInChannel", //Объявляем transformer</p> <p> outputChannel="fileWriterChannel")</p> <p> public GenericTransformer<String, String> upperCaseTransformer() {</p> <p> return text -> text.toUpperCase();</p> <p> }</p> <p> @Bean</p> <p> @ServiceActivator(inputChannel="fileWriterChannel")</p> <p> public FileWritingMessageHandler fileWriter() { //Объявляем запись в файл</p> <p> FileWritingMessageHandler handler =</p> <p> new FileWritingMessageHandler(new File("/tmp/sia5/files"));</p> <p> handler.setExpectReply(false);</p> <p> handler.setFileExistsMode(FileExistsMode.APPEND);</p> <p> handler.setAppendNewLine(true);</p> <p> return handler;</p> <p> }</p> <p>}</p> <p>В Java конфигурации вы объявляете два bean-компонента: преобразователь (transformer) и обработчик сообщения для записи файла. Трансформатор является универсальным трансформатором. Поскольку GenericTransformer является функциональным интерфейсом, вы можете предоставить его реализацию в виде лямбды, которая вызывает toUpperCase() в тексте сообщения. Преобразователь bean аннотируется @Transformer, определяющим его как преобразователь в потоке интеграции, который принимает сообщения в канале с именем textInChannel и записывает сообщения в канал с именем fileWriterChannel.</p> <p>Что касается bean для записи файлов, он помечается @ServiceActivator, чтобы указать, что он будет принимать сообщения от fileWriterChannel и передавать эти сообщения сервису, определенному экземпляром FileWritingMessageHandler. FileWritingMessageHandler - это обработчик сообщений, который записывает полезную нагрузку сообщения в файл в указанном каталоге, используя имя файла, указанное в заголовке file_name сообщения. Как и в примере с XML, FileWritingMessageHandler настроен на добавление в файл новой записи.</p> <p>Уникальной особенностью конфигурации bean-компонента FileWritingMessageHandler является то, что существует вызов метода setExpectReply(false), который указывает, что активатору службы не следует ожидать ответный канал (канал, через который значение может быть возвращено вышестоящим компонентам в потоке). Если вы не вызываете setExpectReply(), для записи файла bean по умолчанию имеет значение true, и, хотя функция по-прежнему работает должным образом, вы увидите несколько ошибок, указывающих, что канал ответа не настроен.</p> <p>Вы также заметите, что вам не нужно явно объявлять каналы. Каналы textInChannel и fileWriterChannel будут созданы автоматически, если бинов с этими именами не существует. Но если вам нужен больший контроль над конфигурацией каналов, вы можете явно создать их как bean-компоненты:</p> <p>@Bean</p> <p>public MessageChannel textInChannel() {</p> <p> return new DirectChannel();</p> <p>}</p> <p>...</p> <p>@Bean</p> <p>public MessageChannel fileWriterChannel() {</p> <p> return new DirectChannel();</p> <p>}</p> <p>Конфигурация посредством Java, возможно, проще для чтения и немного короче, и, безусловно, соответствует конфигурации “только Java”, о которой я рассказываю в этой книге. Но это можно сделать еще более упорядоченным с помощью стиля конфигурации Spring Integration Java DSL (предметно-ориентированного языка).</p> <p>9.1.3 Использование конфигурации DSL Spring Integration</p> <p>Давайте еще раз попробуем настроить поток интеграции записи файлов. На этот раз вы все равно настроите его через Java, но вы будете использовать Spring Integration Java DSL. Вместо объявления отдельного bean для каждого компонента в потоке, вы объявите один bean, который определяет весь поток.</p> <p><strong>Листинг 9.4. Предоставление свободного API для проектирования потоков интеграции</strong></p> <p>package sia5;</p> <p>import java.io.File;</p> <p>import org.springframework.context.annotation.Bean;</p> <p>import org.springframework.context.annotation.Configuration;</p> <p>import org.springframework.integration.dsl.IntegrationFlow;</p> <p>import org.springframework.integration.dsl.IntegrationFlows;</p> <p>import org.springframework.integration.dsl.channel.MessageChannels;</p> <p>import org.springframework.integration.file.dsl.Files;</p> <p>import org.springframework.integration.file.support.FileExistsMode;</p> <p>@Configuration</p> <p>public class FileWriterIntegrationConfig {</p> <p> @Bean</p> <p> public IntegrationFlow fileWriterFlow() {</p> <p> return IntegrationFlows</p> <p> .from(MessageChannels.direct("textInChannel")) //Входящий канал</p> <p> .<String, String>transform(t -> t.toUpperCase()) //Объявление transformer</p> <p> .handle(Files //Обрабатывает запись в файл</p> <p> .outboundAdapter(new File("/tmp/sia5/files"))</p> <p> .fileExistsMode(FileExistsMode.APPEND)</p> <p> .appendNewLine(true))</p> <p> .get();</p> <p> }</p> <p>}</p> <p>Эта новая конфигурация настолько кратка, насколько это возможно, захватывая весь поток одним bean</p> <p>методом. Класс IntegrationFlows инициирует builder API, из которого можно объявить поток.</p> <p>В листинге 9.4 вы начинаете с получения сообщений из канала с именем textInChannel, которые затем направляются в transformer, который преобразует в верхний регистр текст полезной нагрузки сообщения. После transformer сообщения обрабатываются адаптером исходящего канала, созданным из типа Files, предоставленного в файловом модуле Spring Integration. Наконец, вызов get() создает IntegrationFlow для возврата. Вкратце, этот одиночный bean метод создает тот же поток интеграции, что и примеры конфигурации XML и Java.</p> <p>Заметьте, что, как и в примере Java конфигурации, вам не нужно явно объявлять bean-компоненты канала. Несмотря на то, что вы ссылаетесь на textInChannel, он автоматически создается Spring Integration, потому что не существует никакого bean-компонента канала с таким именем. Но вы можете явно объявить bean-компонент канала, если хотите.</p> <p>Что касается канала, соединяющего преобразователь (transformer) с адаптером исходящего канала, вы даже не ссылаетесь на него по имени. Если необходимо явно настроить канал, вы можете ссылаться на него по имени в определении потока с помощью вызова channel():</p> <p>@Bean</p> <p>public IntegrationFlow fileWriterFlow() {</p> <p> return IntegrationFlows</p> <p> .from(MessageChannels.direct("textInChannel"))</p> <p> .<String, String>transform(t -> t.toUpperCase())</p> <p> .channel(MessageChannels.direct("fileWriterChannel"))</p> <p> .handle(Files</p> <p> .outboundAdapter(new File("/tmp/sia5/files"))</p> <p> .fileExistsMode(FileExistsMode.APPEND)</p> <p> .appendNewLine(true))</p> <p> .get();</p> <p>}</p> <p>При работе с Java DSL от Spring Integration (как и с любым свободно распространяемым API) нужно помнить, что для обеспечения удобочитаемости вы должны использовать пробелы. В приведенном здесь примере я старался делать отступы для обозначения блоков связанного кода. Для более длинных и сложных потоков вы можете даже рассмотреть выделение частей потока в отдельные методы или подпотоки для лучшей читаемости.</p> <p>Теперь, когда вы увидели простой поток, определенный с использованием трех разных стилей конфигурации, давайте вернемся назад и взглянем на общую картину Spring Integration.</p> <p>9.2. Обзор представления Spring Integration</p> <p>Spring Integration охватывает множество сценариев интеграции. Попытка включить все это в одну главу - это все равно, что поместить слона в конверт. Вместо всестороннего рассмотрения Spring Integration, я представлю фотографию слона Spring Integration, чтобы дать вам некоторое представление о том, как он работает. Затем вы создадите еще один поток интеграции, который добавит функциональность в приложение Taco Cloud.</p> <p>Поток интеграции состоит из одного или нескольких компонентов. Прежде чем писать больше кода, мы кратко рассмотрим роль каждого из этих компонентов в процессе интеграции:</p> <p>-Channels (Каналы) —Передача сообщений от одного элемента к другому..</p> <p>-Filters (Фильтры)—Позволяет сообщениям проходить через поток при соблюдении определенных условий.</p> <p>-Transformers (Трансформаторы)—Меняют значение сообщения и/или преобразуют полезные нагрузки сообщений из одного типа в другой.</p> <p>-Routers (Маршрутизаторы)—Направляет сообщения на один из нескольких каналов, обычно на основе заголовков сообщений</p> <p>-Splitters (Разделить)—Разделяет входящие сообщения на два или более сообщений, каждое из которых отправляется на разные каналы.</p> <p>-Aggregators (Агрегаторы)— Противоположность разделителям, объединяет несколько сообщений, поступающих из отдельных каналов, в одно сообщение.</p> <p>-Service activators (Активаторы службы)—Передает сообщение какому-либо методу Java для обработки, а затем опубликует возвращаемое значение в выходном канале.</p> <p>-Channel adapters (Канальные адаптеры)—Подключает канал к какой-либо внешней системе или транспорту. Может принимать входные данные или записывать данные во внешнюю систему.</p> <p>-Gateways (Шлюзы)—Передает данные в интеграционный поток через интерфейс.</p> <p>Вы уже видели некоторые из этих компонентов в действии, когда вы описали процесс интеграции записи файлов. Интерфейс FileWriterGateway был gateway, через который приложение отправляло текст для записи в файл. Вы также определили transformer для преобразования данного текста в верхний регистр; затем вы объявили сервисный gateway, который выполнял задачу записи текста в файл. И у потока было два канала, textInChannel и fileWriterChannel, которые связывали другие компоненты друг с другом. Теперь краткий обзор компонентов потока интеграции, как и было обещано.</p> <p>9.2.1 Каналы сообщений</p> <p>Каналы сообщений - это средства, с помощью которых сообщения проходят через интеграционный конвейер (рисунок 9.2). Это трубы, которые соединяют между собой все остальные части Spring Integration.</p> <p><image l:href="#img_28"/></p> <p><strong>Рисунок 9.2 Каналы сообщений - это каналы, по которым потоки данных проходят между другими компонентами в потоке интеграции.</strong></p> <p>Spring Integration предоставляет несколько реализаций канала, включая следующие:</p> <p>-PublishSubscribeChannel—Сообщения, опубликованные в PublishSubscribeChannel, передаются одному или нескольким потребителям. Если есть несколько потребителей, все они получают сообщение.</p> <p>-QueueChannel—Сообщения, опубликованные в QueueChannel, сохраняются в очереди до тех пор, пока пользователь не извлечет их в порядке поступления (FIFO). Если есть несколько потребителей, только один из них получает сообщение.</p> <p>-PriorityChannel—Как и QueueChannel, но вместо поведения FIFO сообщения извлекаются потребителями на основе заголовка приоритета сообщения.</p> <p>-RendezvousChannel—Как и QueueChannel, за исключением того, что отправитель блокирует канал до тех пор, пока потребитель не получит сообщение, эффективно синхронизируя отправителя с потребителем.</p> <p>-DirectChannel - Подобно PublishSubscribeChannel, но отправляет сообщение одному потребителю, вызывая потребителя в том же потоке, что и отправитель. Это позволяет транзакциям распространяться по каналу.</p> <p>-ExecutorChannel - аналогичен DirectChannel, но отправка сообщения происходит через TaskExecutor, происходящий в отдельном потоке от отправителя. Этот тип канала не поддерживает транзакции, которые охватывают канал.</p> <p>-FluxMessageChannel - канал сообщений Reactive Streams Publisher, основанный на Flux в Project Reactor. (Мы поговорим подробнее о Reactive Streams, Reactor и Flux в главе 10.)</p> <p>Как в конфигурации Java, так и в стилях Java DSL входные каналы создаются автоматически с DirectChannel по умолчанию. Но если вы хотите использовать другую реализацию канала, вам необходимо явно объявить канал как bean-компонент и сослаться на него в потоке интеграции. Например, чтобы объявить PublishSubscribeChannel, вы должны объявить следующий метод @Bean:</p> <p>@Bean</p> <p>public MessageChannel orderChannel() {</p> <p> return new PublishSubscribeChannel();</p> <p>}</p> <p>Тогда вы будете ссылаться на этот канал по имени в определении потока интеграции. Например, если канал использовался bean-компонентом-активатором службы, вы бы ссылались на него в атрибуте inputChannel @ServiceActivator:</p> <p>@ServiceActivator(inputChannel="orderChannel")</p> <p>Или, если вы используете стиль конфигурации JAVA DSL, вы должны ссылаться на него с помощью вызова channel():</p> <p>@Beanpublic</p> <p>IntegrationFlow orderFlow() {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .channel("orderChannel")</p> <p> …</p> <p> .get();</p> <p>}</p> <p>Важно отметить, что если вы используете QueueChannel, потребители должны быть настроены с помощью средства опроса. Например, предположим, что вы объявили QueueChannel bean следующим образом:</p> <p>@Bean</p> <p>public MessageChannel orderChannel() {</p> <p> return new QueueChannel();</p> <p>}</p> <p>Вам нужно будет убедиться, что потребитель настроен на опрос канала для сообщений. В случае службы активатора аннотация @ServiceActivator может выглядеть следующим образом:</p> <p>@ServiceActivator(inputChannel="orderChannel", poller=@Poller(fixedRate="1000"))</p> <p>В этом примере служба активатора опрашивает канал с именем orderChannelevery каждую 1 секунду (или 1000 мс).</p> <p>9.2.2 Фильтры</p> <p>Фильтры могут быть размещены в середине конвейера интеграции, чтобы разрешить или запретить переход сообщений к следующему шагу в потоке (рис.9.3).</p> <p><image l:href="#img_29"/></p> <p>Рисунок 9.3 Фильтры, основанные на некоторых критериях, разрешают или запрещают передачу сообщений в конвейере.</p> <p>Например, предположим, что сообщения, содержащие целочисленные значения, публикуются через канал с именем numberChannel, но вы хотите, чтобы на канал с именем evenNumberChannel передавались только четные числа. В этом случае вы можете объявить фильтр с аннотацией @Filter следующим образом:</p> <p>@Filter(inputChannel="numberChannel", outputChannel="evenNumberChannel")</p> <p>public boolean evenNumberFilter(Integer number) {</p> <p> return number % 2 == 0;</p> <p>}</p> <p>Кроме того, если вы используете стиль конфигурации JAVA DSL для определения потока интеграции, вы можете сделать вызов filter() следующим образом:</p> <p>@Bean</p> <p>public IntegrationFlow evenNumberFlow(AtomicInteger integerSource) {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .<Integer>filter((p) -> p % 2 == 0)</p> <p> …</p> <p> .get();</p> <p>}</p> <p>В этом случае для реализации фильтра используется лямбда. Но, по правде говоря, метод filter() принимает GenericSelector в качестве аргумента. Это означает, что вы можете реализовать интерфейс GenericSelector вместо этого, если ваша фильтрация слишком сложна для простой лямбды.</p> <p>9.2.3 Трансформаторы</p> <p>Трансформаторы выполняют некоторые операции над сообщениями, обычно приводя к другому сообщению и, возможно, с другим типом полезной нагрузки (см. рис.9.4). Преобразование может быть чем-то простым, например, выполнение математических операций над числом или манипулирование строковым значением. Или преобразование может быть более сложным,например, использование строкового значения, представляющего ISBN, для поиска и возврата сведений о соответствующей книге.</p> <p><image l:href="#img_30"/></p> <p><strong>Рисунок 9.4 Трансформаторы преобразуют сообщения по мере их прохождения через поток интеграции.</strong></p> <p>Например, предположим, что целочисленные значения публикуются на канале с именем numberChannel, и вы хотите преобразовать эти числа в String, содержащую Римский числовой эквивалент. В этом случае вы можете объявить bean GenericTransformer и аннотировать его с помощью @Transformer следующим образом:</p> <p>@Bean</p> <p>@Transformer(inputChannel="numberChannel", outputChannel="romanNumberChannel")</p> <p>public GenericTransformer<Integer, String> romanNumTransformer() {</p> <p> return RomanNumbers::toRoman;</p> <p>}</p> <p>Аннотация @Transformer определяет этот компонент как компонент transformer, который получает целочисленные значения из канала с именем numberChannel и использует статический метод с именем toRoman() для выполнения преобразования. (Метод toRoman () статически определен в классе с именем RomanNumbers и ссылается здесь со ссылкой на метод) Результат будет опубликован на канале с именем romanNumberChannel.</p> <p>В стиле конфигурации Java DSL еще проще с вызовом transform(), передавая ссылку на метод toRoman():</p> <p>@Bean</p> <p>public IntegrationFlow transformerFlow() {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .transform(RomanNumbers::toRoman)</p> <p> …</p> <p> .get();</p> <p>}</p> <p>Хотя вы использовали ссылку на метод в обоих примерах кода преобразователя, знайте, что преобразователь также можно указать как лямбду. Или, если преобразователь достаточно сложен, чтобы потребовался отдельный класс Java, вы можете внедрить его как bean-компонент в конфигурацию потока и передать ссылку на метод transform():</p> <p>@Bean</p> <p>public RomanNumberTransformer romanNumberTransformer() {</p> <p> return new RomanNumberTransformer();</p> <p>}</p> <p>@Bean</p> <p>public IntegrationFlow transformerFlow( RomanNumberTransformer romanNumberTransformer) {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .transform(romanNumberTransformer)</p> <p> …</p> <p> .get();</p> <p>}</p> <p>Здесь вы объявляете bean-компонент типа RomanNumberTransformer, который сам является реализацией Spring Integration Transformer или интерфейса GenericTransformer. Bean внедряется в метод transformerFlow() и передается в метод transform() при определении потока интеграции.</p> <p>9.2.4 Маршрутизаторы</p> <p>Маршрутизаторы, основанные на некоторых критериях маршрутизации, позволяют разветвляться в потоке интеграции,направляя сообщения в разные каналы (см. рисунок 9.5).</p> <p><image l:href="#img_31"/></p> <p><strong>Рис. 9.5 Маршрутизаторы направляют сообщения в различные каналы на основе некоторых критериев, применяемых к сообщениям.</strong></p> <p>Например, предположим, что у вас есть канал с именем numberChannel, через который проходят целочисленные значения. Допустим, вы хотите направить все сообщения с четными номерами в канал с именем evenChannel, а сообщения с нечетными номерами направляются в канал с именем oddChannel. Чтобы создать такую маршрутизацию в потоке интеграции, вы можете объявить bean-компонент типа AbstractMessageRouter и аннотировать bean-компонент с помощью @Router:</p> <p>@Bean</p> <p>@Router(inputChannel="numberChannel")</p> <p>public AbstractMessageRouter evenOddRouter() {</p> <p> return new AbstractMessageRouter() {</p> <p> @Override</p> <p> protected Collection<MessageChannel></p> <p> determineTargetChannels(Message<?> message) {</p> <p> Integer number = (Integer) message.getPayload();</p> <p> if (number % 2 == 0) {</p> <p> return Collections.singleton(evenChannel());</p> <p> } </p> <p> return Collections.singleton(oddChannel());</p> <p> }</p> <p> };</p> <p>}</p> <p> </p> <p>@Bean</p> <p>public MessageChannel evenChannel() {</p> <p> return new DirectChannel();</p> <p>}</p> <p>@Bean</p> <p>public MessageChannel oddChannel() {</p> <p> return new DirectChannel();</p> <p>}</p> <p>Объявленный здесь bean AbstractMessageRouter принимает сообщения от входного канала с именем numberChannel. Реализация, определенная как анонимный внутренний класс, проверяет полезную нагрузку сообщения и, если это четное число, возвращает канал с именем evenChannel (объявленный как bean). В противном случае число в полезной нагрузке канала должно быть нечетным; в этом случае возвращается канал с именем oddChannel (также созданный как bean).</p> <p>В Java DSL маршрутизаторы объявляются путем вызова route() в ходе определения потока, как показано ниже:</p> <p>@Bean</p> <p>public IntegrationFlow numberRoutingFlow(AtomicInteger source) {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .<Integer, String>route(n -> n%2==0 ? "EVEN":"ODD", mapping -> mapping </p> <p> .subFlowMapping("EVEN", sf -> sf .<Integer, Integer>transform(n -> n * 10)</p> <p> .handle((i,h) -> { ... })</p> <p> )</p> <p> .subFlowMapping("ODD", sf -> sf .transform(RomanNumbers::toRoman) .handle((i,h) -> { ... })</p> <p> )</p> <p> )</p> <p> .get();</p> <p>}</p> <p>Хотя по-прежнему можно объявить AbstractMessageRouter и передать его в router(), в этом примере используется лямбда для определения того, является ли полезная нагрузка сообщения четной или нечетной. Если она четная, то возвращается строковое значение EVEN. Если нечетная, то возвращается ODD.Эти значения затем используются для определения того, какое под-сопоставление будет обрабатывать сообщение.</p> <p>9.2.5 Разделители</p> <p>Иногда в потоке интеграции может быть полезно разделить сообщение на несколько сообщений, которые будут обрабатываться независимо. Разделители, как показано на рис.9.6, будут разделять и обрабатывать эти сообщения для вас.</p> <p><image l:href="#img_32"/></p> <p><strong>Рис. 9.6 Hазделители разбивают сообщения на два или более отдельных сообщения, которые могут обрабатываться отдельными подпотоками.</strong></p> <p>Splitter-ы полезны во многих случаях, но есть два основных варианта использования, для которых вы можете использовать сплиттер:</p> <p>-Полезная нагрузка сообщения содержит коллекцию элементов того же типа, которые вы хотите обработать как отдельные полезные нагрузки сообщений. Например, сообщение, содержащее список продуктов, может быть разделено на несколько сообщений с полезной нагрузкой по одному продукту в каждом</p> <p>-Полезная нагрузка сообщения содержит информацию, которая, хотя и связана, может быть разделена на два или более сообщений разных типов. Например, заказ на покупку может содержать информацию о поставках, выставлении счетов и номенклатуре. Сведения о доставке могут обрабатываться одним подпотоком, выставление счетов-другим, а номенклатура - еще одним. В этом случае за разделителем обычно следует маршрутизатор, который направляет сообщения по типу полезной нагрузки, чтобы гарантировать, что данные обрабатываются правильным подпотоком.</p> <p>При разделении полезной нагрузки сообщения на два или более сообщений разных типов обычно достаточно определить POJO, который извлекает отдельные части входящей полезной нагрузки и возвращает их как элементы коллекции.</p> <p>Например, предположим, что вы хотите разделить сообщение, содержащее заказ на покупку, на два сообщения: одно содержит платежную информацию, а другое-список элементов списка. Следующий OrderSplitter сделает работу:</p> <p>public class OrderSplitter {</p> <p> public Collection<Object> splitOrderIntoParts(PurchaseOrder po) </p> <p> ArrayList<Object> parts = new ArrayList<>();</p> <p> parts.add(po.getBillingInfo());</p> <p> parts.add(po.getLineItems());</p> <p> return parts;</p> <p> }</p> <p>}</p> <p>Затем вы можете объявить bean OrderSplitter как часть потока интеграции, аннотируя его с помощью @Splitter следующим образом:</p> <p>@Bean</p> <p>@Splitter(inputChannel="poChannel", outputChannel="splitOrderChannel")</p> <p>public OrderSplitter orderSplitter() {</p> <p> return new OrderSplitter();</p> <p>}</p> <p>Здесь заказы на поставку поступают на канал с именем poChannel и делятся на OrderSplitter. Затем каждый элемент в возвращенной коллекции публикуется как отдельное сообщение в потоке интеграции в канал с именем splitOrderChannel. На этом этапе потока вы можете объявить PayloadTypeRouter для маршрутизации платежной информации и позиций в их собственный подпоток:</p> <p>@Bean</p> <p>@Router(inputChannel="splitOrderChannel")</p> <p>public MessageRouter splitOrderRouter() {</p> <p> PayloadTypeRouter router = new PayloadTypeRouter();</p> <p> router.setChannelMapping(</p> <p> BillingInfo.class.getName(), "billingInfoChannel");</p> <p> router.setChannelMapping(</p> <p> List.class.getName(), "lineItemsChannel");</p> <p> return router;</p> <p>}</p> <p>Как следует из его названия, PayloadTypeRouter направляет сообщения на разные каналы на основе их типа полезной нагрузки. Здесь сконфигурировано так что, сообщения, чья полезная нагрузка имеет тип BillingInfo, направляются в канал с именем billingInfoChannel для дальнейшей обработки. Что касается позиций, они находятся в коллекции java.util.List; следовательно, вы сопоставили полезные нагрузки типа List для направления на канал с именем lineItemsChannel.</p> <p>В настоящее время поток разделяется на два подпотока: один, через который проходят объекты BillingInfo, и другой, через который проходит List<LineItem>. Но что, если вы хотите разбить его дальше так, чтобы вместо работы со списком LineItems вы обрабатывали каждый LineItem отдельно? Все, что вам нужно сделать, чтобы разделить список элементов строки на несколько сообщений, по одному для каждой позиции, - это написать метод (не bean-компонент), который аннотируется с помощью @Splitter и возвращает коллекцию LineItems, возможно, что-то вроде этого:</p> <p>@Splitter(inputChannel="lineItemsChannel", outputChannel="lineItemChannel")</p> <p>public List<LineItem> lineItemSplitter(List<LineItem> lineItems) {</p> <p> return lineItems;</p> <p>}</p> <p>Когда сообщение, несущее полезную нагрузку List<LineItem>, поступает в канал с именем lineItemsChannel, оно передается методу lineItemSplitter(). Согласно правилам разделителя, метод должен возвращать коллекцию элементов, подлежащих разделению. В этом случае у вас уже есть коллекция LineItems, поэтому вы просто возвращаете коллекцию напрямую. В результате каждый LineItem в коллекции публикуется в своем собственном сообщении для канала с именем lineItemChannel.</p> <p>Если вы предпочитаете использовать Java DSL для объявления конфигурации сплиттера/маршрутизатора, вы можете сделать это с помощью вызовов функций split() и route():</p> <p>return IntegrationFlows</p> <p> …</p> <p> .split(orderSplitter())</p> <p> .<Object, String> route(</p> <p> p -> {</p> <p> if (p.getClass().isAssignableFrom(BillingInfo.class)) {</p> <p> return "BILLING_INFO";</p> <p> } else {</p> <p> return "LINE_ITEMS";</p> <p> }</p> <p> }, mapping -> mapping</p> <p> .subFlowMapping("BILLING_INFO", sf -> sf</p> <p> .<BillingInfo> handle((billingInfo, h) -> {</p> <p> …</p> <p> }))</p> <p> .subFlowMapping("LINE_ITEMS", sf -> sf</p> <p> .split()</p> <p> .<LineItem> handle((lineItem, h) -> {</p> <p> …</p> <p> }))</p> <p> )</p> <p> .get();</p> <p>Форма определения потока в DSL определенно более краткая, но и более трудная для понимания. Для разделения порядка используется тот же OrderSplitter, что и в примере конфигурации Java. После разделения заказ разбивается по типу на два отдельных подпотока.</p> <p>9.2.6 Активаторы службы</p> <p>Активаторы службы получают сообщения из входного канала и отправляют эти сообщения в реализацию MessageHandler, как показано на рисунке 9.7.</p> <p><image l:href="#img_33"/></p> <p><strong>Рис. 9.7. Активаторы службы вызывают некоторую службу посредством MessageHandler при получении сообщения.</strong></p> <p>Spring Integration предлагает несколько реализаций MessageHandler «из коробки» (даже PayloadTypeRouter - это реализация MessageHandler), но вам часто потребуется предоставить некоторую пользовательскую реализацию, которая будет действовать как активатор службы. Например, в следующем коде показано, как объявить bean MessageHandler, настроенный как активатор службы:</p> <p>@Bean</p> <p>@ServiceActivator(inputChannel="someChannel")</p> <p>public MessageHandler sysoutHandler() {</p> <p> return message -> {</p> <p> System.out.println("Message payload: " + message.getPayload());</p> <p> };</p> <p>}</p> <p>Bean аннотируется @ServiceActivator, чтобы обозначить его как активатор службы, который обрабатывает сообщения из канала с именем someChannel. Что касается MessageHandler, он реализован через лямбду. Несмотря на то, что это простой MessageHandler, при получении сообщения он передает свою полезную нагрузку в стандартный поток вывода.</p> <p>Кроме того, можно объявить активатор службы, который обрабатывает данные во входящем сообщении перед возвратом новой полезной нагрузки. В этом случае компонент должен быть GenericHandler, а не MessageHandler:</p> <p>@Bean</p> <p>@ServiceActivator(inputChannel="orderChannel", outputChannel="completeOrder")</p> <p>public GenericHandler<Order> orderHandler( OrderRepository orderRepo) {</p> <p> return (payload, headers) -> {</p> <p> return orderRepo.save(payload);</p> <p> };</p> <p>}</p> <p>В этом случае активатор службы является GenericHandler, который ожидает сообщения с полезной нагрузкой типа Order. Когда заказ поступает, он сохраняется через репозиторий; полученный сохраненный заказ возвращается для отправки в выходной канал, имя которого completeChannel.</p> <p>Вы могли заметить, что GenericHandler предоставляет не только полезную нагрузку, но и заголовки сообщений (даже если пример не использует эти заголовки в любом случае). Вы также можете использовать активаторы служб в стиле конфигурации JAVA DSL, передавая MessageHandler или GenericHandler для метода handle () в определении потока:</p> <p>public IntegrationFlow someFlow() {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .handle(msg -> {</p> <p> System.out.println("Message payload: " + msg.getPayload());</p> <p> })</p> <p> .get();</p> <p>}</p> <p>В этом случае MessageHandler задается как лямбда, но вы также можете предоставить его как ссылку на метод или даже как экземпляр класса, который реализует интерфейс MessageHandler. Если вы даете ему ссылку на лямбду или метод, имейте в виду, что он принимает сообщение в качестве параметра.</p> <p>Аналогично, handle() может быть написан для принятия GenericHandler, если активатор службы не предназначен для завершения потока. Применяя ранее описанный активатор службы сохранения заказов, вы можете настроить поток с помощью Java DSL следующим образом:</p> <p>public IntegrationFlow orderFlow(OrderRepository orderRepo) {</p> <p> return IntegrationFlows</p> <p> …</p> <p> .<Order>handle((payload, headers) -> {</p> <p> return orderRepo.save(payload);</p> <p> })</p> <p> …</p> <p> .get();</p> <p>}</p> <p>При работе с GenericHandler, ссылка на лямбду или метод принимает полезную нагрузку и заголовки сообщений в качестве параметров. Кроме того, если вы решите использовать GenericHandler в конце потока, вам нужно будет вернуть null, иначе вы получите ошибки, указывающие, что нет указанного выходного канала.</p> <p>9.2.7 Шлюзы</p> <p>Шлюзы-это средства, с помощью которых приложение может передавать данные в поток интеграции и, при необходимости, получать ответ, который является результатом потока. Реализованные с помощью Spring Integration шлюзы реализуются как интерфейсы, которые приложение может вызывать для отправки сообщений в поток интеграции (рис.9.8).</p> <p><image l:href="#img_34"/></p> <p>Рисунок 9.8 Сервисные шлюзы - это интерфейсы, через которые приложение может отправлять сообщения в интеграционный поток.</p> <p>Вы уже видели пример шлюза сообщений со шлюзом FileWriterGateway. FileWriterGateway был односторонним шлюзом с методом, принимающим String для записи в файл, возвращая void. Примерно так же легко написать двусторонний шлюз. При написании интерфейса шлюза убедитесь, что метод возвращает некоторое значение для публикации в потоке интеграции.</p> <p>В качестве примера представьте себе шлюз, который находится в простом интеграционном потоке, который принимает String и переводит данную строку в верхний регистр. Интерфейс шлюза может выглядеть примерно так:</p> <p>package com.example.demo;</p> <p>import org.springframework.integration.annotation.MessagingGateway;</p> <p>import org.springframework.stereotype.Component;</p> <p>@Component</p> <p>@MessagingGateway(defaultRequestChannel="inChannel", </p> <p> defaultReplyChannel="outChannel")</p> <p>public interface UpperCaseGateway {</p> <p> String uppercase(String in);</p> <p>}</p> <p>Что удивительно в этом интерфейсе, так это то, что его не нужно реализовывать. Spring Integration автоматически предоставляет реализацию во время выполнения, которая отправляет и получает данные по указанным каналам.</p> <p>При вызове метода uppercase() данная String публикуется в потоке интеграции в канал с именем inChannel. И, независимо от того, как определяется поток или что он делает, когда данные поступают в канал с именем outChannel, он возвращается из метода верхнего uppercase().</p> <p>Что касается потока интеграции в верхнем регистре, то это упрощенный процесс интеграции с единственным шагом преобразования String в верхний регистр. Опишем в конфигурации Java DSL:</p> <p>@Bean</p> <p>public IntegrationFlow uppercaseFlow() {</p> <p> return IntegrationFlows</p> <p> .from("inChannel")</p> <p> .<String, String> transform(s -> s.toUpperCase())</p> <p> .channel("outChannel")</p> <p> .get();</p> <p>}</p> <p>Здесь описано, поток начинается с данных, поступающих в канал с именем inChannel. Затем полезная нагрузка сообщения преобразуется преобразователем, который здесь определен как лямбда-выражение, для выполнения операции преобразования в верхний регистр. Полученное сообщение затем публикуется в канал с именем outChannel, который вы объявили в качестве канала ответа для интерфейса UpperCaseGateway.</p> <p>9.2.8 Канальные адаптеры</p> <p>Канальные адаптеры представляют точки входа и выхода потока интеграции. Данные входят в поток интеграции через адаптер входящего канала и выходят из потока интеграции через адаптер исходящего канала. Это показано на рисунке 9.9.</p> <p><image l:href="#img_35"/></p> <p><strong>Рис. 9.9. Адаптеры канала - это точки входа и выхода потока интеграции.</strong></p> <p>Адаптеры входящего канала могут принимать различные формы в зависимости от источника данных, вводимых в поток. Например, вы можете объявить адаптер входящего канала, который вводит инкрементные числа из AtomicInteger в поток. При использовании Java конфигурации это может выглядеть так:</p> <p>@Bean</p> <p>@InboundChannelAdapter(</p> <p> poller=@Poller(fixedRate="1000"), channel="numberChannel")</p> <p>public MessageSource<Integer> numberSource(AtomicInteger source) {</p> <p> return () -> {</p> <p> return new GenericMessage<>(source.getAndIncrement());</p> <p> };</p> <p>}</p> <p>Этот @Bean метод объявляет компонент адаптера входящего канала, который в соответствии с аннотацией @InboundChannelAdapter отправляет число из введенного AtomicInteger в канал с именем numberChannel каждые 1 секунду (или 1000 мс).</p> <p>Принимая во внимание, что @InboundChannelAdapter указывает адаптер входящего канала при использовании конфигурации Java, метод from() - это то, как это делается при использовании Java DSL для определения потока интеграции. В следующем фрагменте определения потока показан аналогичный адаптер входящего канала, определенный в Java DSL:</p> <p>@Bean</p> <p>public IntegrationFlow someFlow(AtomicInteger integerSource) {</p> <p> return IntegrationFlows</p> <p> .from(integerSource, "getAndIncrement", c -> c.poller(Pollers.fixedRate(1000)))</p> <p> …</p> <p> .get();</p> <p>}</p> <p>Часто адаптеры каналов предоставляются одним из множества модулей конечной точки Spring Integration. Предположим, например, что вам нужен адаптер входящего канала, который отслеживает указанный каталог и отправляет любые файлы, которые записываются в этот каталог, как сообщения в канал с именем file-channel. Следующая конфигурация Java использует FileReadingMessageSource из модуля Spring Integration’s file endpoint для достижения этой цели:</p> <p>@Bean</p> <p>@InboundChannelAdapter(channel="file-channel", poller=@Poller(fixedDelay="1000"))</p> <p>public MessageSource<File> fileReadingMessageSource() {</p> <p> FileReadingMessageSource sourceReader = new FileReadingMessageSource();</p> <p> sourceReader.setDirectory(new File(INPUT_DIR));</p> <p> sourceReader.setFilter(new SimplePatternFileListFilter(FILE_PATTERN));</p> <p> return sourceReader;</p> <p>}</p> <p>При записи эквивалентного адаптера входящего канала для чтения файлов в Java DSL метод inboundAdapter() из класса Files выполняет то же самое. Адаптер внешнего канала - это конец строки для процесса интеграции, передающий окончательное сообщение приложению или какой-либо другой системе:</p> <p>@Bean</p> <p>public IntegrationFlow fileReaderFlow() {</p> <p> return IntegrationFlows</p> <p> .from(Files.inboundAdapter(new File(INPUT_DIR))</p> <p> .patternFilter(FILE_PATTERN))</p> <p> .get();</p> <p>}</p> <p>Активаторы сервисов, реализованные как обработчики сообщений, часто служат для адаптера исходящего канала, особенно когда данные должны быть переданы самому приложению. Мы уже обсуждали сервисы активаторы, поэтому нет смысла повторять это обсуждение.</p> <p>Однако стоит отметить, что модули Spring Integration endpoint предоставляют полезные обработчики сообщений для нескольких распространенных случаев использования. Вы видели пример такого адаптера исходящего канала, FileWritingMessageHandler, в листинге 9.3. Говоря о модулях Spring Integration endpoint, давайте кратко рассмотрим, какие готовые к использованию модули конечных точек интеграции доступны.</p> <p>9.2.9 Модули конечных точек (endpoint)</p> <p>Замечательно, что Spring Integration позволяет вам создавать свои собственные адаптеры канала. Но еще лучше то, что Spring Integration предоставляет более двух десятков модулей конечных точек, содержащих адаптеры каналов - как входящие, так и исходящие - для интеграции с различными общими внешними системами, в том числе перечисленными в таблице 9.1.</p> <p><strong>Таблица 9.1. Spring Integration предоставляет более двух десятков моделей конечных точек для интеграции с внешними системами.</strong></p> <p><strong><emphasis>Модуль : Идентификатор артефакта зависимости (идентификатор группы: org.springframework.integration)</emphasis></strong></p> <p><strong>AMQP</strong>: spring-integration-amqp</p> <p><strong>Spring application events</strong> : spring-integration-event</p> <p><strong>RSS and Atom</strong> : spring-integration-feed</p> <p><strong>Filesystem</strong> : spring-integration-file</p> <p><strong>FTP/FTPS</strong> : spring-integration-ftp</p> <p><strong>GemFire </strong>: spring-integration-gemfire</p> <p><strong>HTTP </strong>: spring-integration-http</p> <p><strong>JDBC </strong>: spring-integration-jdbc</p> <p><strong>JPA </strong>: spring-integration-jpa</p> <p><strong>JMS </strong>: spring-integration-jms</p> <p><strong>Email </strong>: spring-integration-mail</p> <p><strong>MongoDB </strong>: spring-integration-mongodb</p> <p><strong>MQTT </strong>: spring-integration-mqtt</p> <p><strong>Redis </strong>: spring-integration-redis</p> <p><strong>RMI </strong>: spring-integration-rmi</p> <p><strong>SFTP </strong>: spring-integration-sftp</p> <p><strong>STOMP </strong>: spring-integration-stomp</p> <p><strong>Stream </strong>: spring-integration-stream</p> <p><strong>Syslog </strong>: spring-integration-syslog</p> <p><strong>TCP/UDP</strong> : spring-integration-ip</p> <p><strong>Twitter </strong>: spring-integration-twitter</p> <p><strong>Web Services</strong> : spring-integration-ws</p> <p><strong>WebFlux </strong>: spring-integration-webflux</p> <p><strong>WebSocket </strong>: spring-integration-websocket</p> <p><strong>XMPP </strong>: spring-integration-xmpp</p> <p><strong>ZooKeeper </strong>: spring-integration-zookeeper</p> <p>Из таблицы 9.1 ясно, что Spring Integration предоставляет обширный набор компонентов для удовлетворения многих потребностей интеграции. Большинству приложений никогда не потребуется даже часть того, что предлагает Spring Integration. Но хорошо знать, что Spring Integration может, на случай если вам вдруг что-то из этого перечня понадобится.</p> <p>Более того, было бы невозможно охватить все адаптеры каналов, предоставляемые модулями, перечисленными в таблице 9.1, в этой главе. Вы уже видели примеры, которые используют модуль файловой системы для записи в файловую систему. И вы скоро будете использовать модуль электронной почты для чтения электронных писем.</p> <p>Каждый из модулей конечных точек предлагает канальные адаптеры, которые могут быть либо объявлены как bean-ы при использовании Java конфигурации, либо ссылаться на статические методы при использовании Java DSL конфигурации. Я рекомендую вам изучить любые другие endpoint модули, которые вас интересуют больше всего. Вы обнаружите, что они довольно последовательны в том, как они используются. Но сейчас давайте обратим наше внимание на endpoint модуль электронной почты, чтобы узнать, как вы можете использовать его в приложении Taco Cloud.</p> <p><strong>9.3 Создание интеграционного потока электронной почты</strong></p> <p>Вы решили, что Taco Cloud должна позволить своим клиентам отправлять свои тако-дизайны и размещать заказы по электронной почте. Вы рассылаете листовки и размещаете рекламу в газетах, предлагая всем отправлять свои заказы тако по электронной почте. Это огромный успех! К сожалению, это слишком успешно. На адрес электронной почты поступает так много писем, что вам нужно нанять отдельного человека, чтобы читать все письма и отправлять детали заказа в систему заказов.</p> <p>В этом разделе вы реализуете интеграционный поток, который опрашивает почтовый ящик Taco Cloud на наличие электронных писем с заказами, анализирует электронные письма на предмет деталей заказа и отправляет заказы в Taco Cloud для обработки. Короче говоря, поток интеграции, который вам понадобится, будет использовать адаптер входящего канала из модуля конечной точки электронной почты для загрузки электронной почты из папки входящих сообщений Taco Cloud в поток интеграции.</p> <p>Следующим шагом в процессе интеграции будет разбор электронных писем в объекты заказов, которые передаются другому обработчику для отправки заказов в REST API Taco Cloud, где они будут обрабатываться так же, как и любой заказ. Для начала давайте определим простой класс свойств конфигурации, чтобы отразить особенности обработки электронной почты Taco Cloud:</p> <p>@Data</p> <p>@ConfigurationProperties(prefix="tacocloud.email")</p> <p>@Component</p> <p>public class EmailProperties {</p> <p> private String username;</p> <p> private String password;</p> <p> private String host;</p> <p> private String mailbox;</p> <p> private long pollRate = 30000;</p> <p> public String getImapUrl() {</p> <p> return String.format("imaps://%s:%s@%s/%s",</p> <p> this.username, this.password, this.host, this.mailbox);</p> <p> }</p> <p>}</p> <p>Как вы можете видеть, EmailProperties содержит свойства, которые используются для создания URL-адреса IMAP. Этот поток использует этот URL-адрес для подключения к серверу электронной почты Taco Cloud и опроса электронных писем. К числу свойств относятся имя пользователя и пароль пользователя электронной почты, а также имя хоста сервера IMAP, почтовый ящик для опроса и скорость, с которой опрашивается почтовый ящик (по умолчанию каждые 30 секунд).</p> <p>Класс EmailProperties аннотируется на уровне класса @ConfigurationProperties с атрибутом prefix, установленным в tacocloud.email. Это означает, что вы можете настроить детали использования электронной почты в файле application.yml следующим образом:</p> <p>tacocloud:</p> <p> email:</p> <p> host: imap.tacocloud.com</p> <p> mailbox: INBOX</p> <p> username: taco-in-flow</p> <p> password: 1L0v3T4c0s</p> <p> poll-rate: 10000</p> <p>Теперь давайте воспользуемся EmailProperties для настройки потока интеграции. Поток, который вы создадите, будет немного похож на рисунок 9.10.</p> <p><image l:href="#img_36"/></p> <p>1)Email (IMAP)адаптер входящего канала </p> <p>3)Mail-to-ordertransformer</p> <p>5)Отправить заказ на адаптер исходящего канала</p> <p><strong>Рисунок 9.10 Поток интеграции для приема заказов тако по электронной почте</strong></p> <p>У вас есть два варианта определения этого потока:</p> <p>-Определить внутри приложения Taco Cloud - в конце потока сервис-активатор вызовет репозитории, которые вы определили, чтобы создать заказ тако.</p> <p>-Определите как отдельное приложение.- В конце потока активатор службы отправит запрос POST в Taco Cloud API для отправки заказа тако.</p> <p>Что вы выберете, мало влияет на сам поток, помимо того, как реализован сервисный активатор. Но поскольку вам потребуются некоторые типы, которые представляют собой тако, заказы и ингредиенты, которые несколько отличаются от тех, которые вы уже определили в основном приложении Taco Cloud, продолжите определение определять интеграционный поток в отдельном приложении, чтобы избежать путаница с существующими типами доменов.</p> <p>У вас также есть выбор определения потока с использованием XML конфигурации, Java конфигурации или Java DSL. Мне нравится элегантность Java DSL, так что и вы вслед за мной будете ее использовать. Не стесняйтесь писать поток, используя один из других стилей конфигурации, если вам требуются какие-то дополнительные возможности. А пока давайте взглянем на Java DSL конфигурацию для потока электронной почты заказа тако, как показано ниже.</p> <p><strong>Листинг 9.5. Определение потока интеграции для приема электронных писем и отправки их в качестве заказов</strong></p> <p>package tacos.email;</p> <p>import org.springframework.context.annotation.Bean;</p> <p>import org.springframework.context.annotation.Configuration;</p> <p>import org.springframework.integration.dsl.IntegrationFlow;</p> <p>import org.springframework.integration.dsl.IntegrationFlows;</p> <p>import org.springframework.integration.dsl.Pollers;</p> <p>@Configuration</p> <p>public class TacoOrderEmailIntegrationConfig {</p> <p> @Bean</p> <p> public IntegrationFlow tacoOrderEmailFlow(</p> <p> EmailProperties emailProps,</p> <p> EmailToOrderTransformer emailToOrderTransformer,</p> <p> OrderSubmitMessageHandler orderSubmitHandler) {</p> <p> return IntegrationFlows</p> <p> .from(Mail.imapInboundAdapter(emailProps.getImapUrl()),</p> <p> e -> e.poller(</p> <p> Pollers.fixedDelay(emailProps.getPollRate())))</p> <p> .transform(emailToOrderTransformer)</p> <p> .handle(orderSubmitHandler)</p> <p> .get();</p> <p> }</p> <p>}</p> <p>Поток электронной почты заказа тако, определенный в методе tacoOrderEmailFlow(), состоит из трех отдельных компонентов:</p> <p>-Адаптер входящего канала электронной почты IMAP - этот адаптер канала создается с помощью URL-адреса IMP, созданного методом getImapUrl() объекта EmailProperties, и опрашивает с задержкой, установленной в свойстве pollRate объекта EmailProperties. Входящие письма передаются по каналу, соединяющему его с трансформатором.</p> <p>-Трансформатор, который преобразует электронную почту в объект заказа - Преобразователь реализуется в EmailToOrderTransformer, который внедряется в метод tacoOrderEmailFlow(). Заказы, полученные в результате преобразования, передаются конечному компоненту через другой канал.</p> <p>-Обработчик (выступающий в качестве адаптера исходящего канала)- Обработчик принимает объект заказа и отправляет его по REST API Taco Cloud.</p> <p>Вызов Mail.imapInboundAdapter() стал возможен благодаря включению endpoint модуля электронной почты в качестве зависимости в сборку проекта. Зависимость Maven выглядит так:</p> <p><dependency></p> <p> <groupId>org.springframework.integration</groupId></p> <p> <artifactId>spring-integration-file</artifactId></p> <p></dependency></p> <p>Класс EmailToOrderTransformer является реализацией интерфейса Spring Integration Transformer посредством расширения AbstractMailMessageTransformer (показано в следующем листинге).</p> <p><strong>Листинг 9.6. Преобразование входящих писем в тако-заказы с использованием интеграционного преобразователя</strong></p> <p>@Component</p> <p>public class EmailToOrderTransformer</p> <p> extends AbstractMailMessageTransformer<Order> {</p> <p> @Override</p> <p> protected AbstractIntegrationMessageBuilder<Order> doTransform(Message mailMessage)</p> <p> throws Exception {</p> <p> Order tacoOrder = processPayload(mailMessage);</p> <p> return MessageBuilder.withPayload(tacoOrder);</p> <p> }</p> <p> …</p> <p>}</p> <p>AbstractMailMessageTransformer - удобный базовый класс для обработки сообщений, чья полезная нагрузка - это электронная почта. Он заботится о извлечении информации электронной почты из входящего сообщения в объект Message, который передается в метод doTransform().</p> <p>В методе doTransform() вы передаете Message private методу с именем processPayload() для анализа электронной почты на получения объекта Order. Несмотря на то, что этот объект Order не похож на объект Order, используемый в основном приложении TacoCloud; это немного проще:</p> <p>package tacos.email;</p> <p>import java.util.ArrayList;</p> <p>import java.util.List;</p> <p>import lombok.Data;</p> <p>@Data</p> <p>public class Order {</p> <p> private final String email;</p> <p> private List<Taco> tacos = new ArrayList<>();</p> <p> public void addTaco(Taco taco) {</p> <p> this.tacos.add(taco);</p> <p> }</p> <p>}</p> <p>Вместо того, чтобы содержать всю информацию о доставке и выставлении счетов клиентам, этот класс Order несет только электронную почту клиента, полученную из входящей электронной почты.</p> <p>Парсинг электронных писем в тако-заказы является нетривиальной задачей. На самом деле, даже простенькая реализация включает в себя несколько десятков строк кода. И эти несколько десятков строк кода ничего не дадут для дальнейшего обсуждения Spring Integration и того, как реализовать трансформер. Поэтому, чтобы сэкономить место, я опускаю детали метода processPayload().</p> <p>Последнее, что делает EmailToOrderTransformer, это возвращает MessageBuilder с полезной нагрузкой, содержащей объект Order. Сообщение, сгенерированное MessageBuilder, отправляется последнему компоненту в потоке интеграции: обработчику сообщений, который отправляет заказ в Taco Cloud API. OrderSubmitMessageHandler, показанный в следующем листинге, реализует GenericHandler в Spring Integration для обработки сообщений с полезной нагрузкой Order.</p> <p><strong>Листинг 9.7. Отправка заказов в Taco Cloud API через обработчик сообщений</strong></p> <p>package tacos.email;</p> <p>import java.util.Map;</p> <p>import org.springframework.integration.handler.GenericHandler;</p> <p>import org.springframework.stereotype.Component;</p> <p>import org.springframework.web.client.RestTemplate;</p> <p>@Component</p> <p>public class OrderSubmitMessageHandler implements GenericHandler<Order> {</p> <p> private RestTemplate rest;</p> <p> private ApiProperties apiProps;</p> <p> </p> <p> public OrderSubmitMessageHandler(</p> <p> ApiProperties apiProps, RestTemplate rest) {</p> <p> this.apiProps = apiProps;</p> <p> this.rest = rest;</p> <p> }</p> <p> </p> <p> @Override</p> <p> public Object handle(Order order, Map<String, Object> headers) {</p> <p> rest.postForObject(apiProps.getUrl(), order, String.class);</p> <p> return null;</p> <p> }</p> <p>}</p> <p>Чтобы удовлетворить требования интерфейса GenericHandler, OrderSubmitMessageHandler переопределяет метод handle(). Этот метод получает входящий объект Order и использует внедренный RestTemplate для отправки Order посредством POST запроса на URL-адрес, полученный из объекте ApiProperties. Наконец, метод handle() возвращает null, чтобы указать, что этот обработчик отмечает конец потока.</p> <p>ApiProperties используется, чтобы избежать жесткого кодирования URL-адреса при вызове postForObject(). Это файл свойств конфигурации, который выглядит следующим образом:</p> <p>@Data</p> <p>@ConfigurationProperties(prefix="tacocloud.api")</p> <p>@Componentpublic class ApiProperties {</p> <p> private String url;</p> <p>}</p> <p>А в application.yml URL-адрес для Taco Cloud API может быть настроен следующим образом:</p> <p>tacocloud:</p> <p> api:</p> <p> url: <a l:href="http://api.tacocloud.com/">http://api.tacocloud.com</a></p> <p>Чтобы сделать RestTemplate доступным в проекте, чтобы его можно было внедрить в OrderSubmitMessageHandler, необходимо добавить веб-стартер Spring Boot в сборку проекта:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-web</artifactId></p> <p></dependency></p> <p>В то время как это делает RestTemplate доступным в classpath, оно также запускает автоконфигурирование для Spring MVC. В качестве автономного потока Spring Integration приложению не требуется Spring MVC или даже встроенный Tomcat, который обеспечивает автоконфигурация. Поэтому вам следует отключить автоконфигурирование Spring MVC с помощью следующей записи в application.yml:</p> <p>spring:</p> <p> main:</p> <p> web-application-type: none</p> <p>Свойство spring.main.web-application-type может быть установлено в servlet, reactive или none. Когда Spring MVC находится в classpath, автоконфигурация устанавливает его значение в servlet. Но здесь вы переопределяете его на none, чтобы Spring MVC и Tomcat не были автоматически сконфигурированы. (Мы поговорим подробнее о том, что означает, что приложение является reactive веб-приложением в главе 11.)</p> <p><strong>ИТОГ:</strong></p> <p>-Spring Integration позволяет определять потоки, через которые данные могут обрабатываться при их поступлении в приложение или на выходе из него.</p> <p>-Интеграционные потоки могут быть определены в XML, Java или с использованием краткого стиля конфигурации Java DSL.</p> <p>-Шлюзы сообщений и адаптеры каналов действуют как точки входа и выхода интеграционного потока.</p> <p>-Сообщения могут быть преобразованы, разделены, агрегированы, направлены и обработаны активаторами службы в ходе потока.</p> <p>-Каналы сообщений соединяют компоненты потока интеграции.</p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/10/spring-in-action-covers-spring-50-10.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 10</a></p> <p><strong>РАЗДЕЛ 3</strong></p> <p><strong>Реактивный Spring</strong></p> <p>В разделе 3, мы рассмотрим новую замечательную поддержку реактивного программирования в Spring. В главе 10 обсуждаются основы реактивного программирования с Project Reactor, библиотекой реактивного программирования, которая лежит в основе реактивных функций Spring 5. Затем мы рассмотрим некоторые из наиболее полезных реактивных операций Reactor. В главе 11 мы вернемся к разработке REST API, представив Spring WebFlux, новую веб-инфраструктуру, которая позаимствовала многое из Spring MVC и предлагает новую реактивную модель для веб-разработки. В главе 12 завершается третья часть, в которой описывается постоянное сохранение реактивных данных с помощью Spring Data для чтения и записи данных в базы данных Cassandra и Mongo.</p> <p> </p> <p><strong>10. Знакомство с Reactor</strong></p> <p><emphasis>В этой главе рассматривается</emphasis></p> <p><emphasis>-Понимание реактивного программирования</emphasis></p> <p><emphasis>-Project Reacto</emphasis></p> <p><emphasis>-Реактивная работа с данными</emphasis></p> <p> </p> <p>Вы когда-нибудь имели подписку на газету или журнал? Интернет определенно уменьшил число подписчиков традиционных публикаций, но было время, когда подписка на газеты была одним из лучших способов быть в курсе событий дня. Вы можете рассчитывать на свежую доставку информации о текущих событиях каждое утро, чтобы читать во время завтрака или по дороге на работу.</p> <p>Теперь предположим, что если после оплаты вашей подписки прошло несколько дней, и издания не были доставлены. Проходит еще несколько дней, и вы звоните в отдел продаж, чтобы узнать, почему вы еще не получили ежедневную газету. Представьте свой сюрприз, если они объяснят: «Вы заплатили за целый год газет. Год еще не закончен. Вы обязательно получите их все, как только будет готово полное годовое издание газет».</p> <p>К счастью, это совсем не то, как работают подписки. Газеты имеют определенную периодичность. Они доставляются как можно быстрее после публикации, чтобы их можно было прочитать, пока их содержание еще свежо. Более того, когда вы читаете последний выпуск, газетные репортеры пишут новые истории для будущих изданий, и прессы запускаются для выпуска следующего выпуска - все параллельно.</p> <p>Поскольку мы разрабатываем код приложения, мы можем написать два стиля кода: императивный и реактивный:</p> <p>Императивный код очень похож на эту абсурдную гипотетическую подписку на газету. Это последовательный набор задач, каждая из которых выполняется по одной, каждая после предыдущей. Данные обрабатываются в большом количестве и не могут быть переданы следующей задаче, пока предыдущая задача не завершила свою работу с массивом данных.</p> <p>Реактивный код очень похож на настоящую подписку на газету. Набор задач определен для обработки данных, но эти задачи могут выполняться параллельно. Каждая задача может обрабатывать подмножества данных, передавая их следующей задаче в очереди, пока она продолжает работать с другим подмножеством данных.</p> <p>В этой главе мы временно отойдем от приложения Taco Cloud, чтобы изучить Project Reactor. Reactor - это библиотека для реактивного программирования, которая является частью семейства проектов Spring. И поскольку он служит основой поддержки реактивного программирования в Spring 5, важно, чтобы вы поняли Reactor, прежде чем мы рассмотрим создание реактивных контроллеров и репозиториев с помощью Spring. Прежде чем мы начнем работать с Reactor, давайте быстро рассмотрим основы реактивного программирования.</p> <p><strong>10.1 Понимание реактивного программирования</strong></p> <p>Реактивное программирование - это парадигма, альтернативная императивному программированию. Эта альтернатива существует, потому что реактивное программирование устраняет ограничение в императивном программировании. Понимая эти ограничения, вы можете лучше понять преимущества реактивной модели.</p> <p>Обратите внимание, что реактивное программирование - это не серебряная пуля. Ни в коем случае не следует выводить из этой главы или любого другого обсуждения реактивного программирования, что императивное программирование-это зло, а реактивное программирование-ваш спаситель. Как и все, что вы изучаете как разработчик, реактивное программирование идеально подходит в некоторых случаях использования, а в других плохо подходит. Рекомендуется унция прагматизма.</p> <p>Если вы похожи на меня и многих разработчиков, вы режете свои программные зубы императивным программированием. Есть хороший шанс, что большинство (или весь) код, который вы пишете сегодня, по-прежнему является императивным по своей природе. Императивное программирование достаточно интуитивно, что молодые студенты с легкостью изучают его в своих школьных программах STEM, и оно достаточно мощное, чтобы составлять основную часть кода, который используется во многих крупнейших предприятия.</p> <p>Идея проста: вы пишете код в виде списка инструкций, которым нужно следовать, по одному в том порядке, в котором они встречаются. Задача выполнена, и программа ожидает ее завершения, прежде чем перейти к следующей задаче. На каждом этапе обработки данные, которые должны быть обработаны, должны быть полностью доступны, чтобы их можно было обрабатывать целиком.</p> <p>Во время выполнения задачи, особенно если это задача I/O, такая как запись данных в базу данных или выборка данных с удаленного сервера, поток, вызвавший эту задачу, блокируется и не может ничего сделать, пока задача не завершится. Проще говоря, заблокированные потоки расточительны.</p> <p>Большинство языков программирования, включая Java, поддерживают параллельное программирование. Довольно просто запустить другой поток в Java и отправить его на выполнение некоторой работы, в то время как вызывающий поток продолжает что-то еще. Но хотя создавать потоки легко, эти потоки, скорее всего, сами блокируются. Управление параллелизмом в нескольких потоках является сложной задачей. Больше потоков означает больше сложности.</p> <p>Напротив, реактивное программирование носит функциональный и декларативный характер. Вместо описания набора шагов, которые должны выполняться последовательно, реактивное программирование включает описание конвейера или потока, через который проходят данные. Вместо того чтобы требовать, чтобы данные были доступны для обработки в целом, реактивный поток обрабатывает данные по мере их поступления. Фактически, поступающие данные могут быть бесконечными (например, постоянный поток данных о температуре в реальном времени).</p> <p>Чтобы применить аналогию с реальным миром, рассмотрим императивное программирование как водяной шар и реактивное программирование как садовый шланг. Оба являются подходящими способами удивить и замочить ничего не подозревающего друга в жаркий летний день. Но они отличаются по стилю исполнения:</p> <p>-Воздушный шар воды несет свою полезную нагрузку всю сразу, замачивая свою намеченную цель в момент удара. Однако водяной шар имеет конечную емкость, и если вы хотите замочить больше людей (или одного и того же человека в большей степени), ваш единственный выбор-увеличить количество водных шаров.</p> <p>-Садовый шланг несет свою полезную нагрузку в виде потока воды, который течет от крана к соплу. Емкость садового шланга может быть конечной в любой момент времени, но она неограничена в течение водного боя. Пока вода поступает в шланг из крана, она будет продолжать течь через шланг и распыляться из сопла. Тот же садовый шланг легко масштабируется, чтобы замочить столько друзей, сколько вы хотите.</p> <p>Нет ничего изначально плохого в водяных шарах (или императивном программировании), но человек, держащий садовый шланг (или применяющий реактивное программирование), имеет преимущество в отношении масштабируемости и производительности.</p> <p><strong>10.1.1 Определение реактивных потоков</strong></p> <p>Reactive Streams - инициатива, начатая в конце 2013 года инженерами из Netflix, Lightbend и Pivotal (компания, стоящая за Spring). Reactive Streams стремится обеспечить стандарт для асинхронной обработки потока с неблокирующим обратным давлением (backpressure).</p> <p>Мы уже затронули асинхронную черту реактивного программирования; это то, что позволяет нам выполнять задачи параллельно для достижения большей масштабируемости. Противодавление - это средство, с помощью которого потребители данных могут избежать перегруженности слишком быстрым источником данных, устанавливая ограничения на то, сколько они готовы обработать.</p> <p><strong>Java Streams vs. Reactive Streams</strong></p> <p>Существует много общего между Java Streams и Reactive Streams. Для начала, они оба имеют слово потоки в своих именах. Они также предоставляют функциональный API для работы с данными. На самом деле, как вы увидите позже, когда мы посмотрим на Reactor, они даже выполняют одни и те же операции.</p> <p>Однако Java Streams обычно являются синхронными и работают с конечным набором данных. По сути, они являются средством перебора коллекции с помощью функций.</p> <p>Reactive Streams поддерживают асинхронную обработку наборов данных любого размера, включая бесконечные наборы данных. Они обрабатывают данные в режиме реального времени, когда они становятся доступными, с противодавлением (backpressure), чтобы не перегружать своих потребителей.</p> <p>Спецификация реактивных потоков может быть описана четырьмя определениями интерфейсами: Publisher, Subscriber, Subscription, и Processor. Publisher создает данные, которые он отправляет Subscriber на Subscription. Интерфейс Publisher объявляет единый метод subscribe() с помощью которого Subscriber может подписаться на Publisher:</p> <p>public interface Publisher<T> {</p> <p> void subscribe(Subscriber<? super T> subscriber);</p> <p>}</p> <p>После того как Subscriber подписался, он может получать события от Publisher. Эти события отправляются через методы интерфейса Subscriber:</p> <p>public interface Subscriber<T> {</p> <p> void onSubscribe(Subscription sub);</p> <p> void onNext(T item);</p> <p> void onError(Throwable ex);</p> <p> void onComplete();</p> <p>}</p> <p>Первое событие, которое получит Subscriber, - это вызов функции onSubscribe(). Когда Publisher вызывает функцию onSubscribe(), он передает Subscription объект Subscriber. Именно через Subscription Subscriber может управлять своей подпиской:</p> <p>public interface Subscription {</p> <p> void request(long n);</p> <p> void cancel();</p> <p>}</p> <p>Subscriber может вызвать функцию request(), чтобы запросить отправку данных, или функцию cancel(), чтобы указать, что он больше не заинтересован в получении данных и отменяет подписку. При вызове функции request() Subscriber передает long значение, чтобы указать, сколько элементов данных он готов принять. Именно здесь возникает обратное давление (backpressure), препятствующее Publisher отправлять больше данных, чем может обработать Subscriber. После того, как Publisher отправил столько элементов, сколько было запрошено, Subscriber может снова вызвать функцию request(), чтобы запросить больше.</p> <p>После того, как Subscriber запросил данные, данные начинают поступать через поток. Для каждого элемента, опубликованного Publisher, будет вызван метод onNext() для доставки данных Subscriber. Если есть какие-либо ошибки, вызывается onError(). Если у Publisher нет больше данных для отправки и он не будет генерировать больше данных, он вызовет onComplete(), чтобы сообщить подписчику, что он завершил процесс.</p> <p>Что касается интерфейса Processor, это комбинация Subscriber и Publisher, как показано здесь:</p> <p>public interface Processor<T, R> extends Subscriber<T>, Publisher<R> {}</p> <p>Как Subscriber, Processor будет получать данные и обрабатывать их каким-либо образом. Затем он будет “переоденется” и выступит в качестве Publisher, чтобы публиковать результаты для своих Subscribers.</p> <p>Как вы можете видеть, спецификация Reactive Streams довольно проста. Довольно легко понять, как можно построить конвейер обработки данных, который начинается с Publisher, прогоняет данные через ноль или более Processors, а затем передает конечные результаты в Subscriber.</p> <p>Однако интерфейсы Reactive Streams не могут использоваться для создания такого потока функциональным способом. Project Reactor - это реализация спецификации Reactive Streams, которая предоставляет функциональный API для создания Reactive Streams. Как вы увидите в следующих главах, Reactor является основой модели реактивного программирования в Spring 5. В оставшейся части этой главы мы собираемся исследовать (и, осмелюсь сказать, очень весело провести время) Project Reactor.</p> <p><strong>10.2 Начало работы с Reactor</strong></p> <p>Реактивное программирование требует от нас думать совсем иначе, чем императивное программирование. Вместо того, чтобы описывать набор шагов, которые необходимо предпринять, реактивное программирование означает построение конвейера, по которому будут проходить данные. Когда данные проходят через конвейер, они могут быть изменены или использованы каким-либо образом.</p> <p>Например, предположим, что вы хотите взять имя человека, изменить все его буквы на заглавные, использовать его для создания приветственного сообщения, а затем, наконец, напечатать его. В модели императивного программирования код будет выглядеть примерно так:</p> <p>String name = "Craig";</p> <p>String capitalName = name.toUpperCase();</p> <p>String greeting = "Hello, " + capitalName + "!";</p> <p>System.out.println(greeting);</p> <p>В императивной модели каждая строка кода выполняет шаг, один за другим, и определенно в одном и том же потоке. Каждый шаг блокирует выполнение потока до следующего шага до его завершения.</p> <p>Функциональный, реактивный код может достичь того же этого же:</p> <p>Mono.just("Craig")</p> <p> .map(n -> n.toUpperCase())</p> <p> .map(cn -> "Hello, " + cn + "!")</p> <p> .subscribe(System.out::println);</p> <p>Не волнуйтесь про, возможное, недопонимание этого примера; мы скоро поговорим об операциях just(), map() и subscribe(). На данный момент важно понимать, что хотя реактивный пример все еще следует пошаговой модели, на самом деле это конвейер, через который проходят данные. На каждом этапе конвейера данные каким-то образом изменяются, но нельзя точно сказать, какой поток выполняет какие операции. Все операции могут выполняться в одном потоке ... или не в одном.</p> <p>Mono в этом примере является одним из двух основных типов Reactor. Второй это - Flux. Оба являются реализациями Reactive Streams Publisher. Поток представляет собой конвейер из нуля, одного или многих (потенциально бесконечных) элементов данных. Mono - это специализированный реактивный тип, оптимизированный для случаев, когда известно, что в наборе данных содержится не более одного элемента данных.</p> <p>Reactor vs. RxJava (ReactiveX)</p> <p>Если вы уже знакомы с RxJava или ReactiveX, возможно, вы думаете, что Mono и Flux звучат во многом как Observable и Single. На самом деле, они примерно эквивалентны семантически. Они даже предлагают много одинаковых операций.</p> <p>Хотя в этой книге мы сосредоточимся на Reactor, вы, возможно, будете рады узнать, что можно скрывать типы Reactor и RxJava. Более того, как вы увидите в следующих главах, Spring также может работать с типами RxJava.</p> <p>На самом деле в предыдущем примере три Mono. Операция just() создает первую. Когда Mono выдает значение, это значение присваивается операции map(), которая описывает что слово должно быть написано заглавными буквами и использовано для создания другого Mono. Когда второй Mono публикует свои данные, он передается второй операции map() для выполнения конкатенации строк, результаты которой используются для создания третьего Mono. Наконец, вызов метода subscribe() подписывается на Mono, получает данные и печатает их.</p> <p><strong>10.2.1 Схема реактивных потоков</strong></p> <p>Реактивные потоки часто иллюстрируются мраморными (marble) диаграммами. Мраморные (marble) диаграммы в своей простейшей форме изображают временную шкалу данных, потоков проходящих через Flux или Mono вверху, операцию в середине и временную шкалу результирующего Flux или Mono внизу. На рис. 10.1 показан шаблон диаграммы состояния потока. Как вы можете видеть, когда данные проходят через исходный Flux, он обрабатывается через некоторую операцию, в результате чего возникает новый Flux, через который проходят обработанные данные.</p> <p>На рисунке 10.2 показана аналогичная мраморная (marble) диаграмма, но для Mono. Как видите, ключевое отличие состоит в том, что у Mono будет либо ноль, либо один элемент данных, либо ошибка.</p> <p>В разделе 10.3 мы рассмотрим многие операции, поддерживаемые Flux и Mono, и будем использовать мраморные (marble) диаграммы для визуализации их работы.</p> <p><image l:href="#img_37"/></p> <p><strong>Рисунок 10.1 Мраморная (marble) диаграмма, иллюстрирующая основной поток Flux</strong></p> <p><image l:href="#img_38"/></p> <p><strong>Рисунок 10.2 Мраморная (marble) диаграмма, иллюстрирующая основной поток Mono</strong></p> <p> </p> <p><strong>10.2.2 Добавление Reactor зависимостей</strong></p> <p>Чтобы начать работу с Reactor, добавьте следующую зависимость в сборку проекта:</p> <p><dependency></p> <p> <groupId>io.projectreactor</groupId></p> <p> <artifactId>reactor-core</artifactId></p> <p></dependency></p> <p>Reactor также предоставляет отличную поддержку тестирования. Мы собираемся написать множество тестов для своего кода Reactor, поэтому вам обязательно нужно добавить эту зависимость в вашу сборку:</p> <p><dependency></p> <p> <groupId>io.projectreactor</groupId></p> <p> <artifactId>reactor-test</artifactId></p> <p> <scope>test</scope></p> <p></dependency></p> <p>Я предполагаю, что вы добавляете эти зависимости в проект Spring Boot, который обрабатывает управление зависимостями (dependency management) для вас, поэтому нет необходимости указывать элемент <version> для зависимостей. Но если вы хотите использовать Reactor в проекте, отличном от Spring Boot, вам потребуется настроить спецификацию Reactor BOM (bill of materials) в сборке. Следующая запись управления зависимостями добавляет Reactor Bismuth в сборку:</p> <p><dependencyManagement></p> <p> <dependencies></p> <p> <dependency></p> <p> <groupId>io.projectreactor</groupId></p> <p> <artifactId>reactor-bom</artifactId></p> <p> <version>Bismuth-RELEASE</version></p> <p> <type>pom</type></p> <p> <scope>import</scope></p> <p> </dependency></p> <p> </dependencies></p> <p></dependencyManagement></p> <p>Теперь, когда Reactor находится в разработке вашего проекта, вы можете начать создавать реактивные конвейеры с Mono и Flux. В оставшейся части этой главы мы рассмотрим несколько операций, предлагаемых Mono и Flux.</p> <p><strong>10.3 Применение общих реактивных операций</strong></p> <p>Flux и Mono являются наиболее важными строительными блоками, предоставляемыми Reactor, и операции, предлагаемые этими двумя реактивными типами, представляют собой раствор, который связывает их вместе для создания конвейеров, по которым могут передаваться данные. Между Flux и Mono существует более 500 операций, каждую из которых можно условно классифицировать как</p> <p>-Операции создания</p> <p>-Комбинированные операции</p> <p>-Операции трансформации</p> <p>-Логические операции</p> <p>Как бы ни было интересно смотреть на каждую из 500 операций, чтобы увидеть, как они работают, в этой главе просто не хватит места. В этом разделе я выбрал несколько наиболее полезных операций для экспериментов. Начнем с операций создания.</p> <p><strong><emphasis>ПРИМЕЧАНИЕ</emphasis></strong></p> <p>Где примеры Mono? Mono и Flux используют много одинаковых операций, поэтому в большинстве случаев нет необходимости показывать одну и ту же операцию дважды, один раз для Mono и еще раз для Flux. Более того, хотя операции Mono полезны, на них немного менее интересно смотреть, чем на те же самые операции, когда предоставляется Flux. Большинство примеров, с которыми мы будем работать, будут связаны с Flux. Просто знайте, что Mono обычно имеет эквивалентные операции.</p> <p><strong>10.3.1 Реактивные типы создания</strong></p> <p>Часто при работе с реактивными типами в Spring вы получаете Flux или Mono из репозитория или службы, поэтому вам не нужно создавать их самостоятельно. Но иногда вам нужно будет создать нового реактивного издателя.</p> <p>Reactor предоставляет несколько операций для создания Flux и Mono. В этом разделе мы рассмотрим некоторые из наиболее полезных операций создания.</p> <p><strong><emphasis>СОЗДАНИЕ ИЗ ОБЪЕКТОВ</emphasis></strong></p> <p>Если у вас есть один или несколько объектов, из которых вы хотите создать Flux или Mono, вы можете использовать статический метод just() в Flux или Mono для создания реактивного типа, данные которого управляются этими объектами. Например, следующий метод тестирования создает Flux из пяти объектов String:</p> <p>@Test</p> <p>public void createAFlux_just() {</p> <p> Flux<String> fruitFlux = Flux</p> <p> .just("Apple", "Orange", "Grape", "Banana", "Strawberry");</p> <p>}</p> <p>На данный момент Flux создан, но у него нет подписчиков. Без подписчиков данные не будут передаваться. Думая об аналогии с садовым шлангом, вы прикрепили садовый шланг к патрубку, и с другой стороны есть вода из коммунальной компании - но пока вы не включите патрубок, вода не будет течь. Подписка на реактивный тип - это то, как вы включаете поток данных.</p> <p>Чтобы добавить подписчика, вы можете вызвать метод subscribe() в Flux:</p> <p>fruitFlux.subscribe(</p> <p> f -> System.out.println("Here's some fruit: " + f)</p> <p>);</p> <p>Здесь лямбда, заданная для subscribe(), на самом деле является java.util.Consumer, который используется для создания Reactive Streams Subscriber. При вызове subscribe() данные начинают передаваться. В этом примере промежуточных операций нет, поэтому данные передаются напрямую от Flux к Subscriber.</p> <p>Печать записей из Flux или Mono на консоль - это хороший способ увидеть реактивный тип в действии. Но лучший способ на самом деле протестировать Flux или Mono - использовать StepVerifier от Reactor. С учетом Flux или Mono, StepVerifier подписывается на реактивный тип и затем применяет утверждения к данным, когда они проходят через поток, в конце концов проверяя, что поток завершается должным образом.</p> <p>Например, чтобы проверить, что предписанные данные проходят через fruitFlux, вы можете написать тест, который выглядит следующим образом:</p> <p>StepVerifier.create(fruitFlux)</p> <p> .expectNext("Apple")</p> <p> .expectNext("Orange")</p> <p> .expectNext("Grape")</p> <p> .expectNext("Banana")</p> <p> .expectNext("Strawberry")</p> <p> .verifyComplete();</p> <p>В этом случае StepVerifier подписывается на Flux и затем утверждает, что каждый элемент соответствует ожидаемому названию плода. Наконец, он проверяет, что после того, как клубника произведена Flux, Flux завершается.</p> <p>В оставшейся части примеров в этой главе вы будете использовать StepVerifier для написания обучающих тестов - тестов, которые проверяют поведение и помогают понять, как что-то работает, - чтобы узнать некоторые из наиболее полезных операций Reactor.</p> <p><strong><emphasis>СОЗДАНИЕ ИЗ КОЛЛЕКЦИЙ</emphasis></strong></p> <p>Flux также может быть создан из массива, Iterable или Java Stream. Рисунок 10.3 иллюстрирует, как это работает с мраморной диаграммой.</p> <p><image l:href="#img_39"/></p> <p><strong>Рисунок 10.3. Поток может быть создан из массива, Iterable или Stream.</strong></p> <p>Чтобы создать Flux из массива, вызовите статический метод fromArray(), передав в исходный массив:</p> <p>@Test</p> <p>public void createAFlux_fromArray() {</p> <p> String[] fruits = new String[] {</p> <p> "Apple", "Orange", "Grape", "Banana", "Strawberry" };</p> <p> Flux<String> fruitFlux = Flux.fromArray(fruits);</p> <p> StepVerifier.create(fruitFlux)</p> <p> .expectNext("Apple")</p> <p> .expectNext("Orange")</p> <p> .expectNext("Grape")</p> <p> .expectNext("Banana")</p> <p> .expectNext("Strawberry")</p> <p> .verifyComplete();</p> <p>}</p> <p>Поскольку исходный массив содержит те же имена фруктов, которые вы использовали при создании Flux из списка объектов, данные, передаваемые Flux, будут иметь те же значения. Таким образом, вы можете использовать тот же StepVerifier, что и раньше, чтобы проверить этот Flux.</p> <p>Если вам нужно создать Flux из java.util.List, java.util.Set или любой другой реализации java.lang.Iterable, вы можете передать его в статический метод fromIterable():</p> <p>@Test</p> <p>public void createAFlux_fromIterable() {</p> <p> List<String> fruitList = new ArrayList<>();</p> <p> fruitList.add("Apple");</p> <p> fruitList.add("Orange");</p> <p> fruitList.add("Grape");</p> <p> fruitList.add("Banana");</p> <p> fruitList.add("Strawberry");</p> <p> Flux<String> fruitFlux = Flux.fromIterable(fruitList);</p> <p> // ... проверить шаги</p> <p>}</p> <p>Или, если у вас есть Java Stream, который вы хотели бы использовать в качестве источника для Flux, fromStream() - это метод, который вы будете использовать:</p> <p>@Test</p> <p>public void createAFlux_fromStream() {</p> <p> Stream<String> fruitStream =</p> <p> Stream.of("Apple", "Orange", "Grape", "Banana", "Strawberry");</p> <p> Flux<String> fruitFlux = Flux.fromStream(fruitStream);</p> <p> // ... проверить шаги</p> <p>}</p> <p>Опять же, тот же StepVerifier, что и раньше, можно использовать для проверки данных, опубликованных Flux.</p> <p><strong><emphasis>ГЕНЕРИРОВАНИЕ FLUX ДАННЫХ</emphasis></strong></p> <p>Иногда у вас нет данных для работы, и вам просто нужно, чтобы Flux действовал как счетчик, отдавая число, которое увеличивается с каждым новым значением. Для создания счетчика Flux вы можете использовать статический метод range(). Диаграмма на рисунке 10.4 иллюстрирует, как работает range().</p> <p><image l:href="#img_40"/></p> <p><strong>Рисунок 10.4 Создание Flux из диапазона приводит к публикации сообщений в противоположном стиле.</strong></p> <p>Следующий метод тестирования демонстрирует, как создать Flux диапазон:</p> <p>@Test</p> <p>public void createAFlux_range() {</p> <p> Flux<Integer> intervalFlux =</p> <p> Flux.range(1, 5);</p> <p> StepVerifier.create(intervalFlux)</p> <p> .expectNext(1)</p> <p> .expectNext(2)</p> <p> .expectNext(3)</p> <p> .expectNext(4)</p> <p> .expectNext(5)</p> <p> .verifyComplete();</p> <p>}</p> <p>В этом примере диапазон Flux создается с начальным значением 1 и конечным значением 5. StepVerifier доказывает, что он опубликует пять элементов, которые являются целыми числами от 1 до 5.</p> <p>Еще один метод создания Flux, похожий на range(), представляет собой interval(). Как и метод range(), interval() создает поток, который возвращает увеличивающееся значение. Но то, что делает interval() особенным, заключается в том, что вместо того, чтобы указывать начальное и конечное значение, вы указываете длительность или как часто значение должно возвращаться. На рисунке 10.5 показана мраморная диаграмма для метода создания interval().</p> <p><image l:href="#img_41"/></p> <p><strong>Рисунок 10.5 Flux, созданный из интервала, имеет периодическую запись, опубликованную в нем. </strong><strong>(A Flux created from an interval has a periodic entry published to it.)</strong></p> <p>Например, чтобы создать поток интервалов, который выдает значение каждую секунду, можно использовать статический метод interval() следующим образом:</p> <p>@Test</p> <p>public void createAFlux_interval() {</p> <p> Flux<Long> intervalFlux =</p> <p> Flux.interval(Duration.ofSeconds(1))</p> <p> .take(5);</p> <p> StepVerifier.create(intervalFlux)</p> <p> .expectNext(0L)</p> <p> .expectNext(1L)</p> <p> .expectNext(2L)</p> <p> .expectNext(3L)</p> <p> .expectNext(4L)</p> <p> .verifyComplete();</p> <p>}</p> <p>Обратите внимание,что значение, возвращаемое потоком интервалов, начинается с 0 и увеличивается на каждом последующем элементе. Кроме того, поскольку interval() не имеет максимального значения, он потенциально будет работать вечно. Поэтому вы также используете операцию take(), чтобы ограничить результаты первыми пятью записями. Подробнее об операции take() мы поговорим в следующем разделе.</p> <p><strong>10.3.2 Комбинирование реактивных типов</strong></p> <p>Однажды может возникнуть задача когда Вам придется работать с двумя реактивными типами, которые вам нужно как-то объединить. Или, в других случаях, вам может потребоваться разделить Flux на несколько реактивных типов. В этом разделе мы рассмотрим операции, которые объединяют и разделяют Flux и Mono в Reactor.</p> <p><strong><emphasis>СЛИЯНИЕ РЕАКТИВНЫХ ТИПОВ</emphasis></strong></p> <p>Предположим, у вас есть два потока потока и нужно создать один результирующий поток, который будет производить данные, как только он станет доступен из любого из вышерасположенных Flux streams. Чтобы объединить один поток с другим, можно использовать операцию mergeWith(), как показано на marble диаграмме на рис.10.6.</p> <p><image l:href="#img_42"/></p> <p><strong>Рисунок 10.6 слияние двух Flux потоков чередя их сообщения в новом Flux.</strong></p> <p>Например, предположим, что у вас есть Flux, значения которого являются именами телевизионных и киношных персонажей, и у вас есть второй Flux, значениями которого являются названия продуктов, которые эти персонажи любят есть. Следующий тестовый метод показывает, как можно объединить два объекта Flux с помощью метода mergeWith():</p> <p>@Test</p> <p>public void mergeFluxes() {</p> <p> Flux<String> characterFlux = Flux</p> <p> .just("Garfield", "Kojak", "Barbossa")</p> <p> .delayElements(Duration.ofMillis(500));</p> <p> Flux<String> foodFlux = Flux</p> <p> .just("Lasagna", "Lollipops", "Apples")</p> <p> .delaySubscription(Duration.ofMillis(250))</p> <p> .delayElements(Duration.ofMillis(500));</p> <p> Flux<String> mergedFlux = characterFlux.mergeWith(foodFlux);</p> <p> StepVerifier.create(mergedFlux)</p> <p> .expectNext("Garfield")</p> <p> .expectNext("Lasagna")</p> <p> .expectNext("Kojak")</p> <p> .expectNext("Lollipops")</p> <p> .expectNext("Barbossa")</p> <p> .expectNext("Apples")</p> <p> .verifyComplete();</p> <p>}</p> <p>Обычно Flux публикует данные настолько быстро, насколько это возможно. Таким образом, вы используете операцию delayElements() в обоих созданных потоках Flux, чтобы немного их замедлить - отправляя запись каждые 500 мс. Кроме того, чтобы поток продуктов начинал передаваться, после Flux имен, вы применяете операцию delaySubscription() к потоку продуктов, чтобы он не отправлял никаких данных, пока не пройдет 250 мс после подписки.</p> <p>После объединения двух объектов Flux создается новый объединенный Flux. Когда StepVerifier подписывается на объединенный поток, он, в свою очередь, подписывается на два исходных Flux потока, начиная поток данных.</p> <p>Порядок предметов, отдаваемый из объединенного потока, совпадает со временем их передачи из источников. Поскольку оба объекта Flux настроены на отдачу с регулярной скоростью, значения будут чередоваться через объединенный поток, в результате чего будет получено имя, затем пища, затем имя и т. Д. Если время либо Flux должно быть изменены, возможно, вы увидите два персонажа или два продукта, опубликованные один за другим.</p> <p>Поскольку mergeWith() не может гарантировать идеальное взаимодействие между его источниками, вы можете рассмотреть операцию zip() вместо этого. Когда два объекта Flux сжимаются вместе, это приводит к новому Flux, который создает кортеж элементов, где кортеж содержит один элемент из каждого исходного потока. На рис. 10.7 показано, как два объекта Flux можно сжать вместе.</p> <p><image l:href="#img_43"/></p> <p><strong>Рис. 10.7. Сжатие двух потоков Flux приводит к созданию Flux, содержащего наборы по одному элементу от каждого потока.</strong></p> <p>Чтобы увидеть действие zip() в действии, рассмотрите следующий метод тестирования, который объединяет Flux персонажей и Flux продукты вместе:</p> <p>@Test</p> <p>public void zipFluxes() {</p> <p> Flux<String> characterFlux = Flux</p> <p> .just("Garfield", "Kojak", "Barbossa");</p> <p> Flux<String> foodFlux = Flux</p> <p> .just("Lasagna", "Lollipops", "Apples");</p> <p> Flux<Tuple2<String, String>> zippedFlux =</p> <p> Flux.zip(characterFlux, foodFlux);</p> <p> StepVerifier.create(zippedFlux)</p> <p> .expectNextMatches(p -></p> <p> p.getT1().equals("Garfield") &&</p> <p> p.getT2().equals("Lasagna"))</p> <p> .expectNextMatches(p -></p> <p> p.getT1().equals("Kojak") &&</p> <p> p.getT2().equals("Lollipops"))</p> <p> .expectNextMatches(p -></p> <p> p.getT1().equals("Barbossa") &&</p> <p> p.getT2().equals("Apples"))</p> <p> .verifyComplete();</p> <p>}</p> <p>Обратите внимание, что в отличие от mergeWith(), операция zip() является статической операцией создания. Созданный Flux имеет идеальное выравнивание между персонажами и их любимыми блюдами. Каждый элемент, испускаемый из сжатого потока, представляет собой Tuple2 (контейнерный объект, который содержит два других объекта), содержащий элементы из каждого исходного потока в порядке их публикации.</p> <p>Если вы предпочитаете не работать с Tuple2, а работать с каким-то другим типом, вы можете предоставить функцию zip(), которая создает любой объект, который вы хотите, учитывая два элемента (как показано на диаграмме marble на рисунке 10.8).</p> <p><image l:href="#img_44"/></p> <p><strong>Рисунок 10.8 альтернативная форма операции zip приводит к Flux сообщений, созданных из одного элемента каждого входящего Flux.</strong></p> <p>Например, в следующем методе тестирования показано, как связать Flux имен с Flux продуктов питания, чтобы получить в результате Flux из String объектов:</p> <p>@Test</p> <p>public void zipFluxesToObject() {</p> <p> Flux<String> characterFlux = Flux</p> <p> .just("Garfield", "Kojak", "Barbossa");</p> <p> Flux<String> foodFlux = Flux</p> <p> .just("Lasagna", "Lollipops", "Apples");</p> <p> Flux<String> zippedFlux =</p> <p> Flux.zip(characterFlux, foodFlux, (c, f) -> c + " eats " + f);</p> <p> StepVerifier.create(zippedFlux)</p> <p> .expectNext("Garfield eats Lasagna")</p> <p> .expectNext("Kojak eats Lollipops")</p> <p> .expectNext("Barbossa eats Apples")</p> <p> .verifyComplete();</p> <p>}</p> <p>Функция, заданная для zip() (заданная здесь как лямбда), просто объединяет два элемента в предложение, которое отдается зипованным Flux.</p> <p><strong><emphasis>ВЫБОР ПЕРВОГО РЕАКТИВНОГО ТИПА ДЛЯ ПУБЛИКАЦИИ</emphasis></strong></p> <p>Предположим, у вас есть два Flux объекта, и вместо того, чтобы объединить их, вы просто хотите создать новый Flux, который будет генерировать значения из первого Flux, который создает значение. Как показано на рисунке 10.9, операция first() выбирает первый из двух объектов Flux и отображает значения, которые она публикует.</p> <p><image l:href="#img_45"/></p> <p><strong>Рис. 10.9. first операция выбирает первый Flux, который отправляет сообщение, и после этого создает только сообщения из этого потока.</strong></p> <p>Следующий метод тестирования создает быстрый Flux и медленный Flux (где “медленный " означает, что он не будет публиковать элемент до 100 мс после подписки). Используя first(), он создает новый Flux, который будет публиковать значения только из первого исходного Flux для публикации значения:</p> <p>@Test</p> <p>public void firstFlux() {</p> <p> Flux<String> slowFlux = Flux.just("tortoise", "snail", "sloth")</p> <p> .delaySubscription(Duration.ofMillis(100));</p> <p> Flux<String> fastFlux = Flux.just("hare", "cheetah", "squirrel");</p> <p> Flux<String> firstFlux = Flux.first(slowFlux, fastFlux);</p> <p> StepVerifier.create(firstFlux)</p> <p> .expectNext("hare")</p> <p> .expectNext("cheetah")</p> <p> .expectNext("squirrel")</p> <p> .verifyComplete();</p> <p>}</p> <p>В этом случае, поскольку медленный Flux не будет публиковать никаких значений до 100 мс после начала публикации быстрого Flux, вновь созданный Flux будет просто игнорировать медленный Flux и публиковать только значения из быстрого Flux.</p> <p><strong>10.3.3 Преобразование и фильтрация реактивных потоков</strong></p> <p>Когда данные проходят через поток, вам, вероятно, потребуется отфильтровать некоторые значения и изменить другие значения. В этом разделе мы рассмотрим операции, которые преобразуют и фильтруют данные, проходящие через реактивный поток.</p> <p>ФИЛЬТРАЦИЯ ДАННЫХ ИЗ РЕАКТИВНЫХ ТИПОВ</p> <p>Один из самых основных способов фильтрации данных при их поступлении из Flux - просто игнорировать первые записи. Операция skip(), показанная на рисунке 10.10, делает именно это.</p> <p><image l:href="#img_46"/></p> <p><strong>Рисунок 10.10. Операция skip пропускает указанное количество сообщений перед передачей оставшихся сообщений в результирующий Flux.</strong></p> <p>Учитывая Flux с несколькими записями, операция skip() создаст новый Flux, который пропускает заданное количество элементов, прежде чем отдавать остальные элементы из исходного Flux. Следующий метод тестирования показывает, как использовать skip():</p> <p>@Test</p> <p>public void skipAFew() {</p> <p> Flux<String> skipFlux = Flux.just(</p> <p> "one", "two", "skip a few", "ninety nine", "one hundred")</p> <p> .skip(3);</p> <p> StepVerifier.create(skipFlux)</p> <p> .expectNext("ninety nine", "one hundred")</p> <p> .verifyComplete();</p> <p>}</p> <p>В этом случае у вас есть Flux из пяти String элементов. Вызов метода skip(3) для этого потока создает новый Flux, который пропускает первые три элемента и публикует только последние два элемента.</p> <p>Но, возможно, вы не хотите пропускать определенное количество элементов, а вместо этого нужно пропустить некоторое количество элементов, определяемое не количеством, а временем. Альтернативная форма операции skip(), показанная на рисунке 10.11, создает Flux, который ожидает, пока не пройдет некоторое заданное время, прежде чем отдавать элементы из исходного Flux.</p> <p><image l:href="#img_47"/></p> <p><strong>Рисунок 10.11. Альтернативная форма операции skip ждет, пока не пройдет некоторое время, прежде чем передавать сообщения в результирующий поток.</strong></p> <p>Следующий метод тестирования использует функцию skip() для создания Flux, который ожидает четыре секунды, прежде чем начинает отдавать какие-либо значения. Поскольку этот Flux был создан из Flux, который имеет односекундную задержку между элементами (используя delayElements()), будут переданы только последние два элемента:</p> <p>@Test</p> <p>public void skipAFewSeconds() {</p> <p> Flux<String> skipFlux = Flux.just(</p> <p> "one", "two", "skip a few", "ninety nine", "one hundred")</p> <p> .delayElements(Duration.ofSeconds(1))</p> <p> .skip(Duration.ofSeconds(4));</p> <p> StepVerifier.create(skipFlux)</p> <p> .expectNext("ninety nine", "one hundred")</p> <p> .verifyComplete();</p> <p>}</p> <p>Вы уже видели пример метода take(), но в познакомившись с методом skip(), take() можно рассматривать как противоположность skip (). В то время как функция skip() пропускает первые несколько элементов, функция take() выдает только первые несколько элементов (как показано на диаграмме marble на рис. 10.12):</p> <p>@Test</p> <p>public void take() {</p> <p> Flux<String> nationalParkFlux = Flux.just(</p> <p> "Yellowstone", "Yosemite", "Grand Canyon",</p> <p> "Zion", "Grand Teton")</p> <p> .take(3);</p> <p> StepVerifier.create(nationalParkFlux)</p> <p> .expectNext("Yellowstone", "Yosemite", "Grand Canyon")</p> <p> .verifyComplete();</p> <p>}</p> <p><image l:href="#img_48"/></p> <p><strong>Рис. 10.12 операция take передает только первые несколько сообщений из входящего Flux, а затем отменяет подписку.</strong></p> <p>Как и skip(), take() также имеет альтернативную форму, основанную на длительности, а не на количестве элементов. Он будет принимать и отдавать столько элементов, сколько проходит через исходный поток, пока не пройдет некоторый период времени, после чего поток завершится. Это показано на рисунке 10.13.</p> <p><image l:href="#img_49"/></p> <p><strong>Рис. 10.13. Альтернативная форма операции take передает сообщения в результирующий поток до тех пор, пока не пройдет некоторое время.</strong></p> <p>В следующем методе тестирования используется альтернативная форма take() для отправки максимально возможного количества элементов в первые 3,5 секунды после подписки:</p> <p>@Test</p> <p>public void take() {</p> <p> Flux<String> nationalParkFlux = Flux.just(</p> <p> "Yellowstone", "Yosemite", "Grand Canyon",</p> <p> "Zion", "Grand Teton")</p> <p> .delayElements(Duration.ofSeconds(1))</p> <p> .take(Duration.ofMillis(3500));</p> <p> StepVerifier.create(nationalParkFlux)</p> <p> .expectNext("Yellowstone", "Yosemite", "Grand Canyon")</p> <p> .verifyComplete();</p> <p>}</p> <p>Операции skip() и take() можно рассматривать как операции фильтрации, где критерии фильтра основаны на количестве или длительности. Для более общей фильтрации значений Flux вы найдете операцию filter() весьма полезной.</p> <p>При наличии предиката, который решает, будет ли элемент проходить через поток или нет, операция filter() позволяет выборочно публиковать на основе любых критериев, которые вы хотите. Мраморная диаграмма на рисунке 10.14 показывает, как работает filter().</p> <p><image l:href="#img_50"/></p> <p><strong>Рисунок 10.14. Входящий Flux может быть отфильтрован так, что полученный Flux получает только сообщения, которые соответствуют заданному предикату.</strong></p> <p>Чтобы увидеть filter() в действии, рассмотрите следующий метод тестирования:</p> <p>@Test</p> <p>public void filter() {</p> <p> Flux<String> nationalParkFlux = Flux.just(</p> <p> "Yellowstone", "Yosemite", "Grand Canyon",</p> <p> "Zion", "Grand Teton")</p> <p> .filter(np -> !np.contains(" "));</p> <p> StepVerifier.create(nationalParkFlux)</p> <p> .expectNext("Yellowstone", "Yosemite", "Zion")</p> <p> .verifyComplete();</p> <p>}</p> <p>Здесь filter() задается предикатом в виде лямбды, которая принимает только String значения без пробелов. Следовательно, «Grand Canyon» и «Grand Teton» отфильтровываются из итогового Flux.</p> <p>Возможно, вам нужна фильтрация для всех предметов, которые вы уже получили. Операция Different(), как показано на рисунке 10.15, приводит к тому, что Flux публикует только элементы из исходного потока, которые еще не были опубликованы.</p> <p><image l:href="#img_51"/></p> <p><strong>Рисунок 10.15. Операция distinct отфильтровывает любые повторяющиеся сообщения.</strong></p> <p>В следующем тесте только уникальные String значения будут излучаться из Flux:</p> <p>@Test</p> <p>public void distinct() {</p> <p> Flux<String> animalFlux = Flux.just(</p> <p> "dog", "cat", "bird", "dog", "bird", "anteater")</p> <p> .distinct();</p> <p> StepVerifier.create(animalFlux)</p> <p> .expectNext("dog", "cat", "bird", "anteater")</p> <p> .verifyComplete();</p> <p>}</p> <p>Хотя «dog» и «bird» публикуются дважды из исходного потока, отдельный поток публикует их только один раз.</p> <p><strong><emphasis>МАППИНГ РЕАКТИВНЫХ ДАННЫХ</emphasis></strong></p> <p>Одной из наиболее распространенных операций, которые вы будете использовать в Flux или Моно, является преобразование опубликованных элементов в какую-либо другую форму или тип. Типы Reactor предлагают операции map() и flatMap() для этой цели.</p> <p>Операция map() создает Flux, который просто выполняет преобразование, как предписано данной функцией, для каждого объекта, который он получает до его повторной публикации. На рисунке 10.16 показано, как работает операция map().</p> <p><image l:href="#img_52"/></p> <p><strong>Рисунок 10.16. Операция map выполняет преобразование входящих сообщений в новые сообщения в результирующем потоке.</strong></p> <p>В следующем методе тестирования Flux String значения, представляющие баскетболистов, сопоставляются с новы Flux объектами Player:</p> <p>@Test</p> <p>public void map() {</p> <p> Flux<Player> playerFlux = Flux</p> <p> .just("Michael Jordan", "Scottie Pippen", "Steve Kerr")</p> <p> .map(n -> {</p> <p> String[] split = n.split("\\s");</p> <p> return new Player(split[0], split[1]);</p> <p> });</p> <p> StepVerifier.create(playerFlux)</p> <p> .expectNext(new Player("Michael", "Jordan"))</p> <p> .expectNext(new Player("Scottie", "Pippen"))</p> <p> .expectNext(new Player("Steve", "Kerr"))</p> <p> .verifyComplete();</p> <p>}</p> <p>Функция, заданная для map() (как лямбда), разбивает входящую String по пробелу и использует полученный массив String-ов для создания объекта Player. Хотя поток, созданный с помощью just(), переносил объекты String, Flux, полученный из map(), переносит объекты Player.</p> <p>Что важно понимать в map(), так это то, что сопоставление выполняется синхронно, так как каждый элемент публикуется исходным Flux. Если вы хотите выполнить сопоставление асинхронно, вы должны рассмотреть операцию flatMap().</p> <p>Операция flatMap() требует некоторой мысли и практики, чтобы овладеть всеми навыками. Как показано на рисунке 10.17, вместо простого сопоставления одного объекта другому, как в случае map(), flatMap() сопоставляет каждый объект новому Mono или Flux. Результаты Mono или Flux сведены в новый результирующий Flux. Когда используется вместе с subscribeOn(), flatMap() может раскрыть асинхронную мощь типов Reactor.</p> <p><image l:href="#img_53"/></p> <p><strong>Рис. 10.17. Операция плоской карты (flat map) использует промежуточный Flux для выполнения преобразования, следовательно, допускает асинхронные преобразования.</strong></p> <p>Следующий метод тестирования демонстрирует использование flatMap() и subscribeOn():</p> <p>@Test</p> <p>public void flatMap() {</p> <p> Flux<Player> playerFlux = Flux</p> <p> .just("Michael Jordan", "Scottie Pippen", "Steve Kerr")</p> <p> .flatMap(n -> Mono.just(n)</p> <p> .map(p -> {</p> <p> String[] split = p.split("\\s");</p> <p> return new Player(split[0], split[1]);</p> <p> })</p> <p> .subscribeOn(Schedulers.parallel())</p> <p> );</p> <p> List<Player> playerList = Arrays.asList(</p> <p> new Player("Michael", "Jordan"),</p> <p> new Player("Scottie", "Pippen"),</p> <p> new Player("Steve", "Kerr"));</p> <p> StepVerifier.create(playerFlux)</p> <p> .expectNextMatches(p -> playerList.contains(p))</p> <p> .expectNextMatches(p -> playerList.contains(p))</p> <p> .expectNextMatches(p -> playerList.contains(p))</p> <p> .verifyComplete();</p> <p>}</p> <p>Обратите внимание, что flatMap() получает лямбда-функцию, которая преобразует входящую String в Mono типа String. Затем к Mono применяется операция map() для преобразования String в Player.</p> <p>Если вы остановитесь прямо здесь, результирующий поток будет передавать объекты Player, созданные синхронно в том же порядке, что и в примере с map(). Но операции с Mono завершаются вызовом subscribeOn(), чтобы указать, что каждая подписка должна проходить в параллельном потоке. Следовательно, операции сопоставления для нескольких входящих объектов String могут выполняться асинхронно и параллельно.</p> <p>Хотя subscribeOn() называется очень похоже на subscribe(), но они совершенно разные. В то время как subscribe() - это глагол, подписывающийся на реактивный поток и эффективно запускающий его, subscribeOn() - является более описательной, определяя, как подписка должна обрабатываться параллельно. Reactor не навязывает какую-либо конкретную модель параллелизма; с помощью subscribeOn() вы можете указать модель параллелизма, используя один из статических методов из планировщиков, который вы хотите использовать. В этом примере вы использовали parallel(), которая использует рабочие потоки из фиксированного пула (размер которого соответствует числу ядер ЦП). Но планировщики поддерживают несколько моделей параллелизма, например, описанных в таблице 10.1.</p> <p><strong>Таблица 10.1 Модели параллелизма для планировщиков (Schedulers)</strong></p> <p>Метод планировщика: Описание</p> <p><strong>.immediate()</strong> - <emphasis>Выполняет подписку в текущем потоке.</emphasis></p> <p><strong>.single()</strong> - <emphasis>Выполняет подписку в одном многоразовом потоке. Повторно использует один и тот же поток для всех абонентов.</emphasis></p> <p><strong>.newSingle()</strong> - <emphasis>Выполняет подписку в выделенном потоке для каждого вызова.</emphasis></p> <p><strong>.elastic()</strong> - <emphasis>Выполняет подписку в в рабочем пуле из неограниченного эластичного пула. Новые рабочие потоки создаются по мере необходимости, а простаивающие рабочие потоки удаляются (по умолчанию через 60 секунд).</emphasis></p> <p><strong>.parallel()</strong> - <emphasis>Выполняет подписку в рабочем пуле из из пула фиксированного размера, размер которого соответствует числу ядер ЦП.</emphasis></p> <p>Преимуществом использования flatMap() и subscribeOn() является то, что вы можете увеличить пропускную способность потока, разделив работу между несколькими параллельными потоками. Но поскольку работа выполняется параллельно, без гарантий того, что будет постоянный порядок выполнения потоков, невозможно определить порядок элементов, передаваемых в результирующий поток. Таким образом, StepVerifier может только проверить, что каждый исходящий элемент существует в ожидаемом списке объектов Player и что до завершения потока будет три таких элемента.</p> <p><strong><emphasis>БУФЕРИЗАЦИЯ ДАННЫХ В РЕАКТИВНОМ ПОТОКЕ</emphasis></strong></p> <p>В процессе обработки данных, проходящих через Flux, может оказаться полезным разбить поток данных на небольшие части. Операция buffer(), показанная на рисунке 10.18, может помочь в этом.</p> <p><image l:href="#img_54"/></p> <p><strong>Рисунок 10.18 Операция buffer приводит к листу Flux заданного максимального размера, которые формируется на основе входящего Flux.</strong></p> <p>Учитывая, что Flux у нас String значений, каждое из которых содержит имя фрукта, вы можете создать новый Flux коллекции List, в которой каждый List содержит не более указанного числа элементов:</p> <p>@Test</p> <p>public void buffer() {</p> <p> Flux<String> fruitFlux = Flux.just(</p> <p> "apple", "orange", "banana", "kiwi", "strawberry");</p> <p> Flux<List<String>> bufferedFlux = fruitFlux.buffer(3);</p> <p> StepVerifier</p> <p> .create(bufferedFlux)</p> <p> .expectNext(Arrays.asList("apple", "orange", "banana"))</p> <p> .expectNext(Arrays.asList("kiwi", "strawberry"))</p> <p> .verifyComplete();</p> <p>}</p> <p>В этом случае String элементы Flux помещаются в новые Flux коллекции List, содержащие не более трех элементов в каждой. Следовательно, исходный Flux, который передает пять значений String, будет преобразован в Flux, который передает две коллекции List, одна из которых содержит три фрукта, а другая - два фрукта.</p> <p>И что? Буферизация значений из реактивного потока в нереактивные коллекции List представляется контрпродуктивной. Но когда вы комбинируете buffer() с flatMap(), это позволяет параллельно обрабатывать каждую из коллекций List:</p> <p>Flux.just(</p> <p> "apple", "orange", "banana", "kiwi", "strawberry")</p> <p> .buffer(3)</p> <p> .flatMap(x -></p> <p> Flux.fromIterable(x)</p> <p> .map(y -> y.toUpperCase())</p> <p> .subscribeOn(Schedulers.parallel())</p> <p> .log()</p> <p> ).subscribe();</p> <p>В этом новом примере вы по-прежнему буферизуете Flux из пяти String значений в Flux коллекций List. Но затем вы применяете flatMap() к этому Flux коллекций List. Это берет каждый List буфер и создает новый Flux из его элементов, а затем применяет к нему операцию map(). Следовательно, каждый буферный List дополнительно обрабатывается параллельно в отдельных потоках.</p> <p>Чтобы доказать, что это работает, я также включил операцию log() для применения к каждому под-Flux-у. Операция log() просто регистрирует все события Reactive Streams, чтобы вы могли видеть, что на самом деле происходит. В результате в log записываются следующие записи (для краткости удален компонент времени):</p> <p>[main] INFO reactor.Flux.SubscribeOn.1 -</p> <p> onSubscribe(FluxSubscribeOn.SubscribeOnSubscriber)</p> <p>[main] INFO reactor.Flux.SubscribeOn.1 - request(32)</p> <p>[main] INFO reactor.Flux.SubscribeOn.2 -</p> <p> onSubscribe(FluxSubscribeOn.SubscribeOnSubscriber)</p> <p>[main] INFO reactor.Flux.SubscribeOn.2 - request(32)</p> <p>[parallel-1] INFO reactor.Flux.SubscribeOn.1 - onNext(APPLE)</p> <p>[parallel-2] INFO reactor.Flux.SubscribeOn.2 - onNext(KIWI)</p> <p>[parallel-1] INFO reactor.Flux.SubscribeOn.1 - onNext(ORANGE)</p> <p>[parallel-2] INFO reactor.Flux.SubscribeOn.2 - onNext(STRAWBERRY)</p> <p>[parallel-1] INFO reactor.Flux.SubscribeOn.1 - onNext(BANANA)</p> <p>[parallel-1] INFO reactor.Flux.SubscribeOn.1 - onComplete()</p> <p>[parallel-2] INFO reactor.Flux.SubscribeOn.2 - onComplete()</p> <p>Как ясно видно из записей журнала, фрукты в первом буфере (apple, orange и banana) обрабатываются в потоке parallel-1. Между тем, фрукты во втором буфере (kiwi и strawberry) обрабатываются в parallel-2. Как видно из того факта, что записи журнала из каждого буфера сплетены вместе, два буфера обрабатываются параллельно.</p> <p>Если по какой-то причине вам нужно собрать все, что Flux генерирует в List, вы можете вызвать buffer() без аргументов:</p> <p>Flux<List<String>> bufferedFlux = fruitFlux.buffer();</p> <p>В результате создается новый Flux, который генерирует List, содержащий все элементы, опубликованные исходным Flux. Вы можете добиться того же самого с помощью операции collectList(), показанной на диаграмме на рисунке 10.19.</p> <p><image l:href="#img_55"/></p> <p><strong>Рисунок 10.19 В результате операции сбора списка получается Mono, содержащий список всех сообщений, отправляемых входящим Flux.</strong></p> <p>Вместо того чтобы создавать Flux, который публикует List, collectList() создает Mono, который публикует List. Следующий метод тестирования показывает, как это можно использовать:</p> <p>@Test</p> <p>public void collectList() {</p> <p> Flux<String> fruitFlux = Flux.just(</p> <p> "apple", "orange", "banana", "kiwi", "strawberry");</p> <p> Mono<List<String>> fruitListMono = fruitFlux.collectList();</p> <p> StepVerifier</p> <p> .create(fruitListMono)</p> <p> .expectNext(Arrays.asList(</p> <p> "apple", "orange", "banana", "kiwi", "strawberry"))</p> <p> .verifyComplete();</p> <p>}</p> <p>Еще более интересный способ сбора элементов, возвращаемых Flux, - это собирать их в Map. Как показано на рисунке 10.20, операция collectMap() приводит к Mono, который публикует Map, заполненную записями, ключ которых рассчитывается данной функцией.</p> <p><image l:href="#img_56"/></p> <p><strong>Рис. 10.20. Операция collectMap приводит к получению Mono, содержащему Map сообщений, передаваемым входящим Flux, где ключ выводится из некоторой характеристики входящих сообщений.</strong></p> <p>Чтобы увидеть collectMap() в действии, взгляните на следующий метод тестирования:</p> <p>@Test</p> <p>public void collectMap() {</p> <p> Flux<String> animalFlux = Flux.just(</p> <p> "aardvark", "elephant", "koala", "eagle", "kangaroo");</p> <p> Mono<Map<Character, String>> animalMapMono =</p> <p> animalFlux.collectMap(a -> a.charAt(0));</p> <p> StepVerifier</p> <p> .create(animalMapMono)</p> <p> .expectNextMatches(map -> {</p> <p> return</p> <p> map.size() == 3 &&</p> <p> map.get('a').equals("aardvark") &&</p> <p> map.get('e').equals("eagle") &&</p> <p> map.get('k').equals("kangaroo");</p> <p> })</p> <p> .verifyComplete();</p> <p>}</p> <p>Источник Flux испускает имена нескольких животных. К этому Flux вы применяете collectMap() для создания нового Mono, который создает Map, где значение ключа определяется первой буквой имени животного, а значение-само имя животного. В случае, если два названия животных начинаются с одной и той же буквы (например, elephant и eagle или koala и kangaroo), последняя запись, проходящая через поток, переопределяет все предыдущие записи.</p> <p><strong>10.3.4 Выполнение логических операций над реактивными типами</strong></p> <p>Иногда вам просто нужно знать, соответствуют ли записи, опубликованные Mono или Flux, некоторым критериям. Операции all() и any() выполняют такую логику. Рисунки 10.21 и 10.22 иллюстрируют, как работают all() и any().</p> <p><image l:href="#img_57"/></p> <p><strong>Рисунок 10.21 Поток может быть проверен, чтобы убедиться, что все сообщения удовлетворяют некоторому условию в операции all.</strong></p> <p><image l:href="#img_58"/></p> <p><strong>Рисунок 10.22 поток может быть проверен, что по крайней мере одно сообщение удовлетворяет некоторому условию any операции.</strong></p> <p>Предположим, вы хотите знать, что каждая строка, публикуемая Flux, содержит букву a или букву k. Следующий тест показывает, как использовать all() для проверки этого условия:</p> <p>@Test</p> <p>public void all() {</p> <p> Flux<String> animalFlux = Flux.just(</p> <p> "aardvark", "elephant", "koala", "eagle", "kangaroo");</p> <p> Mono<Boolean> hasAMono = animalFlux.all(a -> a.contains("a"));</p> <p> StepVerifier.create(hasAMono)</p> <p> .expectNext(true)</p> <p> .verifyComplete();</p> <p> Mono<Boolean> hasKMono = animalFlux.all(a -> a.contains("k"));</p> <p> StepVerifier.create(hasKMono)</p> <p> .expectNext(false)</p> <p> .verifyComplete();</p> <p>}</p> <p>В первом StepVerifier, проверяется наличие буквы a. Операция all применяется к исходному Flux, в результате чего получается Mono типа Boolean. В этом случае все названия животных содержат букву а, поэтому Mono будет содержать true. Но на втором этапе проверки результирующий Mono будет выдавать false, потому что не все имена животных содержат k.</p> <p>Вместо того, чтобы выполнять проверку "все или ничего", Возможно, будет достаточно, если хотя бы одна запись соответствует условиям. В этом случае операция any() - это то, что вы хотите. Этот новый тестовый случай использует any() для проверки букв t и z:</p> <p>@Test</p> <p>public void any() {</p> <p> Flux<String> animalFlux = Flux.just(</p> <p> "aardvark", "elephant", "koala", "eagle", "kangaroo");</p> <p> Mono<Boolean> hasAMono = animalFlux.any(a -> a.contains("t"));</p> <p> StepVerifier.create(hasAMono)</p> <p> .expectNext(true)</p> <p> .verifyComplete();</p> <p> Mono<Boolean> hasZMono = animalFlux.any(a -> a.contains("z"));</p> <p> StepVerifier.create(hasZMono)</p> <p> .expectNext(false)</p> <p> .verifyComplete();</p> <p>}</p> <p>В первом StepVerifier вы видите, что полученный Mono возвращает true, потому что по крайней мере одно имя животного имеет букву t (в частности, elephant). Во втором случае полученное Mono возвращает false, потому что ни одно из имен животных не содержит z.</p> <p>ИТОГО:</p> <p>-Реактивное программирование включает в себя создание конвейеров, по которым передаются данные.</p> <p>-Спецификация Reactive Streams определяет четыре типа: «Издатель» (Publisher), «Подписчик» (Subscriber), «Подписка» (Subscription) и «Трансформер» (Transformer) (который является комбинацией Publisher и Subscriber).</p> <p>-Проект Reactor реализует Reactive Streams и абстрагирует определения потоков в два основных типа, Flux и Mono, каждый из которых предлагает несколько сотен операций.</p> <p>-Spring 5 использует Reactor для создания реактивных контроллеров, репозиториев, REST клиентов и другой поддержки реактивной платформы.</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p><a l:href="https://beginner-mercenary.blogspot.com/2019/11/spring-in-action-covers-spring-50-11.html">Spring in Action Covers Spring 5.0 перевод на русский. Глава 11</a></p> <p><strong>Глава 11. Разработка реактивных API</strong></p> <p> </p> <p><strong>Эта глава охватывает:</strong></p> <p><emphasis>-Использование Spring WebFlux</emphasis></p> <p><emphasis>-Написание и тестирование реактивных контроллеров и клиентов</emphasis></p> <p><emphasis>-Использование REST API</emphasis></p> <p><emphasis>-Защита реактивных веб-приложений</emphasis></p> <p> </p> <p>Теперь, когда вы хорошо познакомились с реактивным программированием и Project Reactor, вы готовы начать применять эти методы в своих Spring приложениях. В этой главе мы собираемся вернуться к некоторым контроллерам, которые вы написали в главе 6, чтобы воспользоваться преимуществами модели реактивного программирования Spring 5.</p> <p>Более конкретно, мы собираемся взглянуть на новую реактивную веб-инфраструктуру Spring 5 - Spring WebFlux. Как вы вскоре поймете, Spring WebFlux удивительно похож на Spring MVC, что делает его простым в применении, наряду с тем, что вы уже знаете о создании REST API в Spring.</p> <p><strong>11.1 Работа с Spring WebFlux</strong></p> <p>Типичные веб-фреймворки на основе сервлетов, такие как Spring MVC, являются блокирующими и многопоточными по своей природе, используя один поток на соединение. Когда запросы обрабатываются, рабочий поток извлекается из пула потоков для обработки запроса. Тем временем поток запросов блокируется, пока рабочий поток не уведомит его о завершении.</p> <p>Следовательно, блокирование веб-фреймворков не будет эффективно масштабироваться при большом объеме запросов. Задержка в медленных рабочих потоках усугубляет ситуацию, поскольку для возврата рабочего потока в пул, готового обработать другой запрос, потребуется больше времени. В некоторых случаях такое расположение вполне приемлемо. Фактически, это во многом такой подход, как большинство веб-приложений разрабатывалось более десяти лет. Но времена меняются.</p> <p>Клиенты этих веб-приложений изменились и не смену людям, иногда просматривающих веб-сайты, пришли люди, часто потребляющих контент и использующих приложения, которые координируются с HTTP API. И в наши дни так называемый Интернет вещей (где люди даже не участвуют) предоставляет автомобили, реактивные двигатели и другие нетрадиционные клиенты, постоянно обменивающиеся данными с веб-API. С увеличением числа клиентов, использующие веб-приложения, масштабируемость становится более важной, чем когда-либо.</p> <p>Асинхронные веб-инфраструктуры, напротив, обеспечивают более высокую масштабируемость при меньшем количестве потоков - обычно по одному на ядро ЦП. Применяя метод, известный как цикл обработки событий (как показано на рисунке 11.1), эти платформы способны обрабатывать много запросов на поток, что делает затраты на соединение более экономичными.</p> <p><image l:href="#img_59"/></p> <p><strong>Рисунок 11.1. Асинхронные веб-фреймворки применяют зацикливание событий для обработки большего количества запросов с меньшим количеством потоков.</strong></p> <p>В цикле событий все обрабатывается как событие, включая запросы и обратные вызовы от интенсивных операций, таких как операции с базой данных и сетью. Когда требуется дорогостоящая операция, цикл событий регистрирует обратный вызов для выполнения этой операции параллельно, а затем переходит к обработке других событий.</p> <p>Когда операция завершена, она обрабатывается как событие в цикле событий, так же как и запросы. В результате асинхронные веб-инфраструктуры могут лучше масштабироваться при больших объемах запросов с меньшим количеством потоков, что приводит к снижению накладных расходов на управление потоками.</p> <p>Spring 5 представил неблокирующую асинхронный веб-фреймворк, основанный в основном на своем Project Reactor, для удовлетворения потребностей в большей масштабируемости в веб-приложениях и API-интерфейсах. Давайте взглянем на Spring WebFlux - реактивный веб-фреймворк для Spring.</p> <p><strong>11.1.1 Описание Spring WebFlux</strong></p> <p>Когда команда Spring обдумывала, как добавить модель реактивного программирования в веб-слой, быстро стало очевидно, что это будет трудно сделать без большой работы в Spring MVC. Это будет включать в себя код ветвления, чтобы решить, реагировать ли на запросы реактивно или нет. По сути, результатом будут два веб-фреймворка, упакованные как один, с инструкциями if для разделения реактивных и нереактивных действий.</p> <p>Вместо того чтобы пытаться встроить реактивную модель программирования в Spring MVC, было решено создать отдельный реактивный веб-фреймворк, заимствуя как можно больше от Spring MVC. Итогом стал Spring WebFlux. Рисунок 11.2 иллюстрирует полный стек веб-разработки, определенный Spring 5.</p> <p><image l:href="#img_60"/></p> <p><strong>Рис. 11.2 Spring 5 поддерживает реактивные веб-приложения с новым веб-фрэймворком Web Flux, который является родственным Spring MVC и разделяет многие из ее основных компонентов.</strong></p> <p>В левой стороне рисунка 11.2 вы видите стек Spring MVC, который был представлен в версии 2.5 Spring Framework. Spring MVC (описанный в главах 2 и 6) расположен поверх API сервлетов Java, для которого требуется контейнер сервлета (например, Tomcat).</p> <p>Spring WebFlux (с правой стороны) не имеет связей с API сервлета, поэтому он строится поверх реактивного HTTP API, который является реактивным приближением той же функциональности, предоставляемой API сервлета. И поскольку Spring WebFlux не связан с API сервлета, для его запуска не требуется контейнер сервлета. Вместо этого, он может работать на любом неблокирующем веб-контейнере, включая Netty, Undertow, Tomcat, Jetty, или любой контейнер Servlet 3.1 или выше.</p> <p>На рис. 11.2 наиболее примечательным является верхний левый прямоугольник, представляющий компоненты, общие для Spring MVC и Spring WebFlux, в первую очередь аннотации, используемые для определения контроллеров. Поскольку Spring MVC и Spring WebFlux используют одни и те же аннотации, Spring WebFlux во многом неотличим от Spring MVC.</p> <p>Прямоугольник в верхнем правом углу представляет альтернативную модель программирования, которая определяет контроллеры с функциональной парадигмой программирования вместо использования аннотаций. Более подробно о функциональной модели веб-программирования Spring мы расскажем в разделе 11.2.</p> <p>Наиболее существенное различие между Spring MVC и Spring WebFlux сводится к тому, какую зависимость вы добавляете в свою сборку. При работе с Spring WebFlux вам необходимо добавить Spring Boot WebFlux стартер вместо стандартного веб стартера (например, spring-boot-starter-web). В файле проекта pom.xml это выглядит так:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-webflux</artifactId></p> <p></dependency></p> <p>ПРИМЕЧАНИЕ. Как и с большинством Spring Boot стартеров, этот стартер также можно добавить в проект, установив флажок Reactive Web в Initializr.</p> <p>Интересным побочным эффектом использования WebFlux вместо Spring MVC является то, что встроенным сервером по умолчанию для WebFlux является Netty вместо Tomcat. Netty - один из нескольких асинхронных серверов, управляемых событиями, и он естественным образом подходит для реактивной веб-инфраструктуры, такой как Spring WebFlux.</p> <p>Помимо использования другой стартер зависимости, методы контроллера Spring WebFlux обычно принимают и возвращают реактивные типы, такие как Mono и Flux, вместо типов доменов и коллекций. Контроллеры Spring WebFlux также могут работать с типами RxJava, такими как Observable, Single и Completable.</p> <p><strong>РЕАКТИВНЫЙ SPRING MVC?</strong></p> <p>Хотя Spring WebFlux контроллеры обычно возвращают Mono и Flux, это не означает, что Spring MVC не может работать с реактивными типами. Методы контроллера Spring MVC также могут возвращать Mono или Flux, если хотите.</p> <p>Разница в том, как эти типы используются. В то время как Spring WebFlux представляет собой действительно реактивный веб-фрэйворк, позволяющую обрабатывать запросы в цикле обработки событий, Spring MVC основан на сервлетах, полагаясь на многопоточность для обработки нескольких запросов.</p> <p>Давайте включим Spring WebFlux в работу, переписав некоторые из контроллеров API Taco Cloud, чтобы использовать преимущества Spring WebFlux.</p> <p><strong>11.1.2 Написание реактивных контроллеров</strong></p> <p>Возможно, вы помните, что в главе 6 вы создали несколько контроллеров для REST API Taco Cloud. Эти контроллеры имели методы обработки запросов, которые имели дело с вводом и выводом с точки зрения типов доменов (таких как Order и Taco) или наборов этих типов доменов. В качестве напоминания рассмотрим следующий фрагмент из DesignTacoController, который вы написали в главе 6:</p> <p>@RestController</p> <p>@RequestMapping(path="/design", produces="application/json")</p> <p>@CrossOrigin(origins="*")</p> <p>public class DesignTacoController {</p> <p> ...</p> <p> @GetMapping("/recent")</p> <p> public Iterable<Taco> recentTacos() {</p> <p> PageRequest page = PageRequest.of(</p> <p> 0, 12, Sort.by("createdAt").descending());</p> <p> return tacoRepo.findAll(page).getContent();</p> <p> }</p> <p>...</p> <p>}</p> <p>Как уже было ранее написано, контроллер latestTacos() обрабатывает HTTP-запросы GET для /design/recent, чтобы вернуть список недавно созданных тако. Более конкретно, он возвращает Iterable с типом Taco. Это в первую очередь потому, что это то, что возвращается из метода findAll() репозитьтлоия, или, точнее, из метода getContent() объекта Page, возвращаемого из findAll().</p> <p>Это прекрасно работает, но Iterable не является реактивным типом. Вы не сможете применить к нему какие-либо реактивные операции, и при этом вы не сможете позволить фрэймворку использовать его как реактивный тип для разделения любой работы на несколько потоков. То, что вы хотели бы, чтобы recentTacos() возвращали Flux <Taco>.</p> <p>Простой, но несколько ограниченный вариант здесь - переписать recentTacos() для преобразования Iterable во Flux. А заодно избавимся от кода паджинации и заменим его вызовом метода take() у Flux:</p> <p>@GetMapping("/recent")</p> <p>public Flux<Taco> recentTacos() {</p> <p> return Flux.fromIterable(tacoRepo.findAll()).take(12);</p> <p>}</p> <p>Используя Flux.fromIterable(), вы конвертируете Iterable<Taco> в Flux<Taco>. И теперь, когда вы работаете с Flux, вы можете использовать операцию take(), чтобы ограничить возвращаемый Flux максимум 12 объектами Taco. Код не только проще, он также имеет дело с реактивным Flux, а не простым Iterable.</p> <p>До сих пор написание реактивного кода было выигрышным шагом. Но было бы еще лучше, если бы репозиторий давало вам Flux для начала, чтобы вам не нужно было выполнять преобразование. Если бы это было так, то recentTacos() можно было бы написать так:</p> <p>@GetMapping("/recent")</p> <p>public Flux<Taco> recentTacos() {</p> <p> return tacoRepo.findAll().take(12);</p> <p>}</p> <p>Это даже лучше! В идеале реактивный контроллер будет вершиной стека, который является реактивным от начала до конца, включая контроллеры, репозитории, базу данных и любые службы, которые могут находиться между ними. Такой сквозной реактивный стек показан на рис. 11.3.</p> <p><image l:href="#img_61"/></p> <p><strong>Рис. 11.3. Чтобы максимизировать преимущества реактивного веб-фрэймворка, она должна быть частью полного сквозного реактивного стека.</strong></p> <p>Такой end-to-end стек требует, чтобы репозиторий был написан так, чтобы он возвращал Flux вместо Iterable. Мы рассмотрим написание реактивных репозиториев в следующей главе, но вот краткий обзор того, как может выглядеть реактивный TacoRepository:</p> <p>public interface TacoRepository</p> <p> extends ReactiveCrudRepository<Taco, Long> {</p> <p>}</p> <p>Однако наиболее важно отметить, что помимо работы с Flux вместо Iterable,, а также того, как вы получаете этот Flux, программная модель для определения реактивного контроллера WebFlux ничем не отличается от нереактивного контроллера Spring MVC. Оба аннотируются с помощью @RestController и высокоуровневого @RequestMapping на уровне класса. И оба имеют функции обработки запросов, которые аннотируются с помощью @GetMapping на уровне метода. Разница только в том, какой тип возвращают методы обработчика.</p> <p>Еще одно важное замечание заключается в том, что, хотя вы получаете Flux<Taco> из репозитория, вы можете вернуть его без вызова subscribe(). Действительно, фреймворк вызовет для вас метод subscribe(). Это означает, что при обработке запроса /design/recent будет вызван метод recentTacos(), который вернется до того, как данные будут даже получены из базы данных!</p> <p><strong>ВОЗВРАЩЕНИЕ ОДИНОЧНЫХ ЗНАЧЕНИЙ</strong></p> <p>В качестве другого примера рассмотрим метод tacoById() из DesignTacoController, как он был написан в главе 6:</p> <p>@GetMapping("/{id}")</p> <p>public Taco tacoById(@PathVariable("id") Long id) {</p> <p> Optional<Taco> optTaco = tacoRepo.findById(id);</p> <p> if (optTaco.isPresent()) {</p> <p> return optTaco.get();</p> <p> }</p> <p> return null;</p> <p>}</p> <p>Здесь этот метод обрабатывает запросы GET для /design/{id} и возвращает одиночный объект Taco. Поскольку findById() репозитория возвращает Optional, вам пришлось написать какой-то неуклюжий код, чтобы справиться с этим. Но предположим на минуту, что findById() возвращает Mono<Taco> вместо Optional<Taco>. В этом случае вы можете переписать tacoById(), чтобы выглядело следующим образом:</p> <p>@GetMapping("/{id}")</p> <p>public Mono<Taco> tacoById(@PathVariable("id") Long id) {</p> <p> return tacoRepo.findById(id);</p> <p>}</p> <p>Вау! Это намного проще. Однако более важно то, что, возвращая Mono<Taco> вместо Taco, вы позволяете Spring WebFlux обрабатывать ответ реагирующим образом. Следовательно, ваш API будет лучше масштабироваться в ответ на большие нагрузки.</p> <p><strong>РАБОТА С ТИПАМИ RXJAVA</strong></p> <p>Стоит отметить, что хотя типы Reactor, такие как Flux и Mono, являются естественным выбором при работе с Spring WebFlux, вы также можете выбрать работу с типами RxJava, такими как Observable и Single. Например, предположим, что между DesignTacoController и внутренним репозиторием находится служба, которая работает в терминах типов RxJava. В этом случае метод recentTacos() может быть написан так:</p> <p>@GetMapping("/recent")</p> <p>public Observable<Taco> recentTacos() {</p> <p> return tacoService.getRecentTacos();</p> <p>}</p> <p>Аналогично, метод tacoById() может быть написан для работы с RxJava Single, а не Mono:</p> <p>@GetMapping("/{id}")</p> <p>public Single<Taco> tacoById(@PathVariable("id") Long id) {</p> <p> return tacoService.lookupTaco(id);</p> <p>}</p> <p>Кроме того, методы контроллера Spring WebFlux также могут возвращать RxJava Completable, который эквивалентен Mono<Void> в Reactor. WebFlux также может возвращать Flowable в качестве альтернативы Observable или Reactor Flux.</p> <p><strong>РЕАКТИВНАЯ ОБРАБОТКА ВХОДНЫХ ДАННЫХ</strong></p> <p>До сих пор мы интересовались только тем, какие реактивные типы возвращают методы контроллера. Но с Spring WebFlux вы также можете принять Mono или Flux в качестве входных данных для метода-обработчика. Для демонстрации рассмотрим оригинальную реализацию postTaco() из DesignTacoController:</p> <p>@PostMapping(consumes="application/json")</p> <p>@ResponseStatus(HttpStatus.CREATED)</p> <p>public Taco postTaco(@RequestBody Taco taco) {</p> <p> return tacoRepo.save(taco);</p> <p>}</p> <p>postTaco() не только возвращает простой объект Taco, но также принимает объект Taco, связанный с содержимым в теле запроса. Это означает, что postTaco() не может быть вызван до тех пор, пока полезная нагрузка запроса не будет полностью подготовлена для создания экземпляра объекта Taco. Это означает, что postTaco() не может быть возвращен, пока не завершится блокирующий вызов метода save() репозитория. Другими словами, запрос блокируется дважды: при поступлении в postTaco() и снова внутри postTaco(). Но, применив небольшое реактивное кодирование к postTaco(), вы можете сделать его полностью неблокирующим методом обработки запросов:</p> <p>@PostMapping(consumes="application/json")</p> <p>@ResponseStatus(HttpStatus.CREATED)</p> <p>public Mono<Taco> postTaco(@RequestBody Mono<Taco> tacoMono) {</p> <p> return tacoRepo.saveAll(tacoMono).next();</p> <p>}</p> <p>Здесь postTaco() принимает Mono<Taco> и вызывает метод saveAll() хранилища, который, как вы увидите в следующей главе, принимает любую реализацию Reactive Streams Publisher, включая Mono или Flux. Метод saveAll() возвращает Flux<Taco>, но поскольку вы работаете с Mono, вы знаете, что существует не более одного Taco, который будет опубликован Flux. Поэтому вы можете вызвать next(), чтобы получить Mono <Taco>, который вернется из postTaco().</p> <p>Принимая Mono<Taco> в качестве входных данных, метод вызывается немедленно, не дожидаясь готовности Taco на основе тела запроса. И поскольку репозиторий также является реактивным, он примет Mono и немедленно вернет Flux<Taco>, из которого вы вызываете next(), и вернете полученный Mono<Taco> ... и все это еще до того, как запрос будет обработан!</p> <p>Spring WebFlux является фантастической альтернативой Spring MVC, предлагая возможность написания реактивных веб-приложений с использованием той же модели разработки, что и Spring MVC. Но у Spring 5 есть еще одна новая хитрость. Давайте посмотрим, как создавать реагирующие API, используя новый функциональный стиль программирования Spring 5.</p> <p><strong>11.2 Определение функциональных обработчиков запросов</strong></p> <p>Модель программирования Spring MVC, основанная на аннотациях, существует начиная с Spring 2.5 и пользуется большой популярностью. Это имеет несколько недостатков.</p> <p>Во-первых, любое программирование на основе аннотаций включает разделение в определении того, <strong><emphasis>что </emphasis></strong>аннотация должна делать и <strong><emphasis>как </emphasis></strong>она должна это делать. Сами аннотации определяют, <strong><emphasis>что</emphasis></strong>; а <strong><emphasis>как </emphasis></strong>это определено в другом месте в рамках кода. Это усложняет модель программирования, когда речь заходит о какой-либо настройке или расширении, поскольку такие изменения требуют работы в коде, внешнем по отношению к аннотации. Более того, отладка такого кода сложна, потому что вы не можете установить точку останова для аннотации.</p> <p>Кроме того, поскольку популярность Spring продолжает расти, разработчики, впервые познакомившиеся с Spring в других языках и фреймворках, могут обнаружить что Spring MVC (и WebFlux) на основе аннотаций совсем не такой, как они уже его знают. В качестве альтернативы WebFlux Spring 5 представил новую модель функционального программирования для определения реактивных API.</p> <p>Эта новая модель программирования используется больше как библиотека и меньше как фреймворк, позволяя сопоставлять запросы с кодом обработчика без аннотаций. Написание API с использованием модели функционального программирования Spring включает четыре основных типа:</p> <p>-RequestPredicate — объявляет виды запросов, которые будут обработаны.</p> <p>-RouterFunction - бъявляет, как соответствующий запрос должен быть направлен в код обработчика.</p> <p>-ServerRequest - представляет собой HTTP-запрос, включая доступ к информации в header и body.</p> <p>-ServerResponse - представляет ответ HTTP, включая информацию header и body</p> <p>В качестве простого примера, который объединяет все эти типы, рассмотрим следующий пример Hello World:</p> <p>package demo;</p> <p>import static org.springframework.web.</p> <p> reactive.function.server.RequestPredicates.GET;</p> <p>import static org.springframework.web.</p> <p> reactive.function.server.RouterFunctions.route;</p> <p>import static org.springframework.web.</p> <p> reactive.function.server.ServerResponse.ok;</p> <p>import static reactor.core.publisher.Mono.just;</p> <p>import org.springframework.context.annotation.Bean;</p> <p>import org.springframework.context.annotation.Configuration;</p> <p>import org.springframework.web.reactive.function.server.RouterFunction;</p> <p> </p> <p>@Configuration</p> <p>public class RouterFunctionConfig {</p> <p> @Bean</p> <p> public RouterFunction<?> helloRouterFunction() {</p> <p> return route(GET("/hello"),</p> <p> request -> ok().body(just("Hello World!"), String.class));</p> <p> }</p> <p>}</p> <p>Первое, на что нужно обратить внимание, это то, что вы произвели статический импорт нескольких вспомогательных классов, которые вы можете использовать для создания вышеупомянутых функциональных типов. Вы также статически импортировали Mono, чтобы остальную часть кода было легче читать и понимать.</p> <p>В этом классе аннотированном как @Configuration у вас есть один метод @Bean типа RouterFunction <?>. Как уже упоминалось, RouterFunction объявляет сопоставления между одним или несколькими объектами RequestPredicate и функциями, которые будут обрабатывать соответствующие запрос(ы).</p> <p>Метод route() из RouterFunctions принимает два параметра: RequestPredicate и функцию для обработки совпадающих запросов. В этом случае метод GET() из RequestPredicates объявляет RequestPredicate, который совпадает с HTTP-запросами GET для пути /hello.</p> <p>Что касается функции-обработчика, она написана как лямбда, хотя она также может быть ссылкой на метод. Хотя это явно не объявлено, лямбда-обработчик принимает ServerRequest в качестве параметра. Он возвращает ServerResponse, используя ok() из ServerResponse и body() из BodyBuilder, который был возвращен из ok(). Это было сделано для того, чтобы создать ответ с кодом состояния HTTP 200 (ОК) и полезной нагрузкой body с надписью Hello World!</p> <p>Метод helloRouterFunction() объявляет RouterFunction, которая обрабатывает только один вид запроса. Но если вам нужно обработать запрос другого типа, вам не нужно писать другой метод @Bean, хотя вы можете это сделать. Вам нужно только вызвать andRoute(), чтобы объявить другое сопоставление RequestPredicate-to-function. Например, вот как вы можете добавить другой обработчик для запросов GET для /bye:</p> <p>@Bean</p> <p>public RouterFunction<?> helloRouterFunction() {</p> <p> return route(GET("/hello"),</p> <p> request -> ok().body(just("Hello World!"), String.class))</p> <p> .andRoute(GET("/bye"),</p> <p> request -> ok().body(just("See ya!"), String.class));</p> <p>}</p> <p>Hello World примеры отлично подходят для знакомства с чем-то новым. Но давайте немного расширим этот пример и посмотрим, как использовать функциональную модель веб-программирования Spring для обработки запросов, которые напоминают реальные сценарии.</p> <p>Чтобы продемонстрировать, как функциональная модель программирования может использоваться в реальном приложении, давайте заново напишем функционал DesignTacoController в функциональном стиле. Следующий класс конфигурации является функциональным аналогом DesignTacoController:</p> <p>@Configuration</p> <p>public class RouterFunctionConfig {</p> <p> @Autowired</p> <p> private TacoRepository tacoRepo;</p> <p> @Bean</p> <p> public RouterFunction<?> routerFunction() {</p> <p> return route(GET("/design/taco"), this::recents)</p> <p> .andRoute(POST("/design"), this::postTaco);</p> <p> }</p> <p> public Mono<ServerResponse> recents(ServerRequest request) {</p> <p> return ServerResponse.ok()</p> <p> .body(tacoRepo.findAll().take(12), Taco.class);</p> <p> }</p> <p> public Mono<ServerResponse> postTaco(ServerRequest request) {</p> <p> Mono<Taco> taco = request.bodyToMono(Taco.class);</p> <p> Mono<Taco> savedTaco = tacoRepo.save(taco);</p> <p> return ServerResponse</p> <p> .created(URI.create(</p> <p> "http://localhost:8080/design/taco/" +</p> <p> savedTaco.getId()))</p> <p> .body(savedTaco, Taco.class);</p> <p> }</p> <p>}</p> <p>Как вы можете видеть, метод routerFunction() объявляет bean RouterFunction<?> как в примере Hello World. Но это зависит от того, какие типы запросов обрабатываются и как они обрабатываются. Но он отличается тем, какие типы запросов обрабатываются и как они обрабатываются. В этом случае функция маршрутизатора создается для обработки запросов GET для /design/taco и POST для /design.</p> <p>Маршруты обрабатываются ссылками на методы. Лямбды хороши, когда поведение функции RouterFunction относительно простое и краткое. Во многих случаях, однако, лучше извлечь эту функциональность в отдельный метод (или даже в отдельный метод в отдельном классе), чтобы поддерживать читаемость кода.</p> <p>Запросы GET на /design/taco будут обрабатываться методом recents(). Он использует внедренный TacoRepository для извлечения Mono<Taco>, из которого он берет 12 элементов. А запросы POST для /design обрабатываются методом postTaco(), который извлекает Mono<Taco> из входящего ServerRequest. Затем метод postTaco() использует TacoRepository, чтобы сохранить его, прежде чем вернуть Mono<Taco>, который возвращающийся из метода save().</p> <p><strong>11.3 Тестирование реактивных контроллеров</strong></p> <p>Когда дело дойдет до тестирования реактивных контроллеров, Spring 5 не оставит нас в беде. Действительно, Spring 5 представил WebTestClient, новую утилиту для тестирования, которая упрощает написание тестов для реактивных контроллеров, написанных с использованием Spring WebFlux. Чтобы увидеть, как писать тесты с помощью WebTestClient, давайте используем его для тестирования метода recentTacos() из DesignTacoController, который вы написали в разделе 11.1.2.</p> <p><strong>11.3.1. Тестирование GET запросов</strong></p> <p>Одна вещь, которую мы хотели бы заявить о методе recentTacos(), заключается в том, что если для пути /design/recent выдается запрос HTTP GET, то ответ будет содержать полезную нагрузку JSON с не более чем 12 тако. Тестовый класс в следующем листинге - хорошее начало.</p> <p><strong>Листинг 11.1. Использование WebTestClient для тестирования DesignTacoController</strong></p> <p>package tacos;</p> <p>import static org.mockito.Mockito.*;</p> <p>import java.util.ArrayList;</p> <p>import java.util.List;</p> <p>import org.junit.Test;</p> <p>import org.mockito.Mockito;</p> <p>import org.springframework.http.MediaType;</p> <p>import org.springframework.test.web.reactive.server.WebTestClient;</p> <p>import reactor.core.publisher.Flux;</p> <p>import tacos.Ingredient.Type;</p> <p>import tacos.data.TacoRepository;</p> <p>import tacos.web.api.DesignTacoController;</p> <p>public class DesignTacoControllerTest {</p> <p> @Test</p> <p> public void shouldReturnRecentTacos() {</p> <p> Taco[] tacos = { //Задание тестовых данных</p> <p> testTaco(1L), testTaco(2L),</p> <p> testTaco(3L), testTaco(4L),</p> <p> testTaco(5L), testTaco(6L),</p> <p> testTaco(7L), testTaco(8L),</p> <p> testTaco(9L), testTaco(10L),</p> <p> testTaco(11L), testTaco(12L),</p> <p> testTaco(13L), testTaco(14L),</p> <p> testTaco(15L), testTaco(16L)};</p> <p> Flux<Taco> tacoFlux = Flux.just(tacos);</p> <p> TacoRepository tacoRepo = Mockito.mock(TacoRepository.class);</p> <p> when(tacoRepo.findAll()).thenReturn(tacoFlux); //Mocks TacoRepository</p> <p> </p> <p> WebTestClient testClient = WebTestClient.bindToController(</p> <p> new DesignTacoController(tacoRepo))</p> <p> .build(); //Создание WebTestClient</p> <p> </p> <p> testClient.get().uri("/design/recent")</p> <p> .exchange() //Запрашивает последние тако</p> <p> .expectStatus().isOk() //Проверяет ожидаемый ответ</p> <p> .expectBody()</p> <p> .jsonPath("$").isArray()</p> <p> .jsonPath("$").isNotEmpty()</p> <p> .jsonPath("$[0].id").isEqualTo(tacos[0].getId().toString())</p> <p> .jsonPath("$[0].name").isEqualTo("Taco 1").jsonPath("$[1].id")</p> <p> .isEqualTo(tacos[1].getId().toString()).jsonPath("$[1].name")</p> <p> .isEqualTo("Taco 2").jsonPath("$[11].id")</p> <p> .isEqualTo(tacos[11].getId().toString())</p> <p> ...</p> <p> .jsonPath("$[11].name").isEqualTo("Taco 12").jsonPath("$[12]")</p> <p> .doesNotExist();</p> <p> .jsonPath("$[12]").doesNotExist();</p> <p> }</p> <p> ...</p> <p>}</p> <p>Первое, что должен сделать метод shouldReturnRecentTacos(), - это установить тестовые данные в форме Flux<Taco>. Этот Flux затем предоставляется как возвращаемое значение из метода findAll() фиктивного (mock) TacoRepository.</p> <p>Что касается Taco объектов, которые будут опубликованы Flux, они создаются с помощью служебного метода testTaco(), который при присвоении номера создает объект Taco, ID и имя которого основаны на этом числе. Метод testTaco() реализован следующим образом:</p> <p>private Taco testTaco(Long number) {</p> <p> Taco taco = new Taco();</p> <p> taco.setId(UUID.randomUUID());</p> <p> taco.setName("Taco " + number);</p> <p> List<IngredientUDT> ingredients = new ArrayList<>();</p> <p> ingredients.add(</p> <p> new IngredientUDT("INGA", "Ingredient A", Type.WRAP));</p> <p> ingredients.add(</p> <p> new IngredientUDT("INGB", "Ingredient B", Type.PROTEIN));</p> <p> taco.setIngredients(ingredients);</p> <p> return taco;</p> <p>}</p> <p>Для простоты все тестовые тако будут иметь одинаковые два ингредиента. Но их ID и имя будут определяться по указанному номеру.</p> <p>Между тем, вернувшись в метод shouldReturnRecentTacos(), вы создали экземпляр DesignTacoController, внедрив в конструктор фиктивный TacoRepository. Контроллер передается в WebTestClient.bindToController() для создания экземпляра WebTestClient.</p> <p>Завершив настройку, вы теперь готовы использовать WebTestClient для отправки запроса GET в /design/recent и проверки того, что ответ соответствует вашим ожиданиям. Вызов get().uri("/design/recent") описывает запрос, который вы хотите выполнить. Затем вызов метода exchange() отправляет запрос, который будет обработан контроллером, с которым связан WebTestClient - DesignTacoController.</p> <p>Наконец, вы можете подтвердить, что ответ соответствует ожиданиям. Вызывая waitStatus(), вы утверждаете, что ответ имеет код состояния HTTP 200 (OK). После этого вы видите несколько вызовов jsonPath(), которые задают условия, что JSON в теле ответа имеет значения, которые он должен иметь. Последнее условие проверяет, что 12-й элемент (в массиве, начинающемся с нуля) не существует, поскольку в результате никогда не должно быть более 12 элементов.</p> <p>Если JSON возвращается сложным, с большим количеством данных или сильно вложенными данными, это может быть утомительно использовать jsonPath(). Фактически, я пропустил многие вызовы jsonPath() в листинге 11.1, чтобы сэкономить место. В тех случаях, когда использование функции jsonPath() может быть неудобным, WebTestClient предлагает функцию json(), которая принимает параметр String, содержащий JSON, для сравнения ответа с ним.</p> <p>Например, предположим, что вы создали полный ответ JSON в файле с именем recent-tacos.json и поместили его в путь к классам с путем /tacos. Затем вы можете переписать условия WebTestClient, чтобы они выглядели так:</p> <p>ClassPathResource recentsResource =</p> <p> new ClassPathResource("/tacos/recent-tacos.json");</p> <p>String recentsJson = StreamUtils.copyToString(</p> <p> recentsResource.getInputStream(), Charset.defaultCharset());</p> <p>testClient.get().uri("/design/recent")</p> <p> .accept(MediaType.APPLICATION_JSON)</p> <p> .exchange()</p> <p> .expectStatus().isOk()</p> <p> .expectBody()</p> <p> .json(recentsJson);</p> <p>Поскольку json() принимает String, вы должны сначала загрузить ресурс classpath в String. К счастью, Spring StreamUtils делает это играючи с copyToString(). String, возвращаемый функцией copyToString(), будет содержать весь JSON, который вы ожидаете получить в ответе на ваш запрос. Если передать его методу json(), контроллер получит правильный вывод.</p> <p>Другой вариант, предлагаемый WebTestClient, позволяет сравнивать тело ответа со списком значений. МетодwellBodyList() принимает либо Class, либо ParameterizedTypeReference, указывающий тип элементов в списке, и возвращает объект ListBodySpec, для которого можно делать утверждения. Используя expectBodyList(), вы можете переписать тест, чтобы использовать подмножество тех же самых тестовых данных, которые вы использовали для создания моковского TacoRepository:</p> <p>testClient.get().uri("/design/recent")</p> <p> .accept(MediaType.APPLICATION_JSON)</p> <p> .exchange()</p> <p> .expectStatus().isOk()</p> <p> .expectBodyList(Taco.class)</p> <p> .contains(Arrays.copyOf(tacos, 12));</p> <p>Здесь вы утверждаете, что тело ответа содержит список, содержащий те же элементы, что и первые 12 элементов исходного массива Taco, созданного вами в начале тестового метода.</p> <p><strong>11.3.2 Тестирование POST-запросов</strong></p> <p>WebTestClient может делать больше, чем просто проверять GET запросы в контроллерах. Его также можно использовать для тестирования любого метода HTTP, включая запросы GET, POST, PUT, PATCH, DELETE и HEAD. Таблица 11.1 отображает методы HTTP на методы WebTestClient.</p> <p>Таблица 11.1. WebTestClient тестирует любые запросы к контроллерам Spring WebFlux.</p> <p>HTTP методы : WebTestClient метод</p> <p>GET : .get()</p> <p>POST : .post()</p> <p>PUT : .put()</p> <p>PATCH : .patch()</p> <p>DELETE : .delete()</p> <p>HEAD : .head()</p> <p>В качестве примера тестирования еще один метод тестирования HTTP-запроса к контроллеру Spring WebFlux, давайте посмотрим на другой тест с DesignTacoController. На этот раз вы напишете тест конечной точки создания taco вашего API, отправив POST запрос в /design:</p> <p>@Test</p> <p>public void shouldSaveATaco() {</p> <p> TacoRepository tacoRepo = Mockito.mock(</p> <p> TacoRepository.class); //Устанавливает тестовые данные</p> <p> Mono<Taco> unsavedTacoMono = Mono.just(testTaco(null));</p> <p> Taco savedTaco = testTaco(null);</p> <p> savedTaco.setId(1L);</p> <p> Mono<Taco> savedTacoMono = Mono.just(savedTaco);</p> <p> when(tacoRepo.save(any())).thenReturn(savedTacoMono); //Mocks TacoRepository</p> <p> WebTestClient testClient = WebTestClient.bindToController( //Создание WebTestClient</p> <p> new DesignTacoController(tacoRepo)).build();</p> <p> testClient.post() //POST для тако</p> <p> .uri("/design")</p> <p> .contentType(MediaType.APPLICATION_JSON)</p> <p> .body(unsavedTacoMono, Taco.class)</p> <p> .exchange()</p> <p> .expectStatus().isCreated() //Проверяет ответ</p> <p> .expectBody(Taco.class)</p> <p> .isEqualTo(savedTaco);</p> <p>}</p> <p>Как и в предыдущем методе тестирования, shouldSaveATaco начинается с настройки некоторых тестовых данных, моккинга TacoRepository, и создания WebTestClient, который привязан к контроллеру. Затем он использует WebTestClient для отправки POST запроса в /design с телом типа application/json и полезной нагрузкой, которая является JSON-сериализованной формой Taco в несохраненном Mono. После выполнения exchange() тест утверждает, что ответ имеет статус HTTP 201 (CREATED) и полезную нагрузку в теле, равную сохраненному объекту Taco.</p> <p><strong>11.3.3. Тестирование на живом сервере</strong></p> <p>Тесты, которые вы написали до сих пор, основывались на моковской реализации среды Spring WebFlux, так что реальный сервер не понадобился бы. Но вам может потребоваться протестировать контроллер WebFlux в контексте сервера, такого как Netty или Tomcat, и, возможно, с хранилищем или другими зависимостями. То есть вы должны быть способны написать интеграционный тест.</p> <p>Чтобы написать интеграционный тест WebTestClient, начните с аннотирования класса теста с помощью @RunWith и @SpringBootTest, как и любого другого интеграционного теста Spring Boot:</p> <p>@RunWith(SpringRunner.class)</p> <p>@SpringBootTest(webEnvironment=WebEnvironment.RANDOM_PORT)</p> <p>public class DesignTacoControllerWebTest {</p> <p> @Autowired</p> <p> private WebTestClient testClient;</p> <p>}</p> <p>Установив для атрибута webEnvironment значение WebEnvironment.RANDOM_PORT, вы просите Spring запустить работающий сервер, прослушивающий случайным образом выбранный порт (Вы могли бы также установить для webEnvironment значение WebEnvironment.DEFINED_PORT и указать порт с атрибутом properties, но это обычно нежелательно. Это открывает риск столкновения портов с работающим сервером).</p> <p>Вы, думаю, заметите, что вы также автоматически подключили WebTestClient к тестовому классу. Это означает не только то, что вам больше не нужно создавать его в своих методах тестирования, но и то, что вам не нужно указывать полный URL-адрес при отправке запросов. Это потому, что WebTestClient будет настроен, чтобы узнать, на каком порту работает тестовый сервер. Теперь вы можете переписать shouldReturnRecentTacos() в качестве интеграционного теста, в котором используется автоматическая привязка WebTestClient:</p> <p>@Test</p> <p>public void shouldReturnRecentTacos() throws IOException {</p> <p> testClient.get().uri("/design/recent")</p> <p> .accept(MediaType.APPLICATION_JSON).exchange()</p> <p> .expectStatus().isOk()</p> <p> .expectBody()</p> <p> .jsonPath("$[?(@.id == 'TACO1')].name")</p> <p> .isEqualTo("Carnivore")</p> <p> .jsonPath("$[?(@.id == 'TACO2')].name")</p> <p> .isEqualTo("Bovine Bounty")</p> <p> .jsonPath("$[?(@.id == 'TACO3')].name")</p> <p> .isEqualTo("Veg-Out");</p> <p>}</p> <p>Вы, несомненно, заметили, что в этой новой версии shouldReturnRecentTacos() кода гораздо меньше. Больше нет необходимости создавать WebTestClient, потому что вы будете использовать экземпляр с автосвязыванием. И нет необходимости издеваться над TacoRepository, потому что Spring создаст экземпляр DesignTacoController и внедрит его в настоящий TacoRepository. В этой новой версии метода теста вы используете выражения JSONPath для проверки значений, передаваемых из базы данных.</p> <p>WebTestClient полезен, когда в ходе теста вам нужно использовать API, предоставляемый контроллером WebFlux. Но что делать, когда само ваше приложение использует какой-то другой API? Давайте обратим наше внимание на клиентскую сторону реактивной веб-истории Spring и посмотрим, как WebClient предоставляет REST-клиент, который работает с реактивными типами, такими как Mono и Flux.</p> <p><strong>11.4 Использование реактивного API REST</strong></p> <p>В главе 7 вы использовали RestTemplate для отправки клиентских запросов в Taco Cloud API. RestTemplate является старым таймером, появившимся в Spring версии 3.0. В свое время он использовался для бесчисленных запросов от имени приложений, которые его используют.</p> <p>Но все методы, предоставляемые RestTemplate, работают с нереактивными типами доменов и коллекциями. Это означает, что если вы хотите работать с данными ответа реактивным способом, вам нужно обернуть их в Flux или Mono. И если у вас уже есть Flux или Mono, и вы хотите отправить их в запросе POST или PUT, вам нужно будет извлечь данные в нереактивный тип, прежде чем делать запрос.</p> <p>Было бы хорошо, если бы был способ использовать RestTemplate изначально с реактивными типами. Не бойтесь. Spring 5 предлагает WebClient в качестве реактивной альтернативы RestTemplate. WebClient позволяет отправлять и получать реактивные типы при отправке запросов на внешние API.</p> <p>Использование WebClient сильно отличается от использования RestTemplate. Вместо того, чтобы иметь несколько методов для обработки различных типов запросов, WebClient имеет свободный интерфейс в стиле конструктора, который позволяет вам описывать и отправлять запросы. Общий шаблон использования для работы с WebClient:</p> <p>-Создать экземпляр WebClient (или внедрить bean-компонент WebClient)</p> <p>-Укажите HTTP метод запроса на отправку</p> <p>-Укажите URI и любые заголовки, которые должны быть в запросе</p> <p>-Отправить request</p> <p>-Получить response</p> <p>Давайте рассмотрим несколько примеров работы WebClient, начиная с того, как использовать WebClient для отправки HTTP-запросов GET.</p> <p><strong>11.4.1 GET ресурсов</strong></p> <p>В качестве примера использования WebClient, предположим, что вам нужно извлечь объект Ingredient по его идентификатору из Taco Cloud API. Используя RestTemplate, вы можете использовать метод getForObject(). Но с WebClient вы создаете запрос, получаете ответ, а затем извлекаете Mono, который публикует объект Ingredient:</p> <p>Mono<Ingredient> ingredient = WebClient.create()</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p>ingredient.subscribe(i -> { ... })</p> <p>Здесь вы создаете новый экземпляр WebClient с помощью create(). Затем вы используете get() и uri(), чтобы определить запрос GET для http://localhost:8080/ingredients/{id}, где заполнитель {id} будет заменен значением ingredientId.. Метод retrieve() выполняет запрос. Наконец, вызов bodyToMono() извлекает полезную нагрузку ответа в Mono<Ingredient>, к которому вы можете продолжить применять дополнительные операции Mono.</p> <p>Чтобы применить дополнительные операции к Mono, возвращенному из bodyToMono(), важно подписаться на него еще до того, как запрос будет отправлен. Делать запросы, которые могут вернуть коллекцию значений, так же просто. Например, следующий фрагмент кода выбирает все ингредиенты:</p> <p>Flux<Ingredient> ingredients = WebClient.create()</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients")</p> <p> .retrieve()</p> <p> .bodyToFlux(Ingredient.class);</p> <p>ingredients.subscribe(i -> { ... })</p> <p>В большинстве случаев выборка нескольких элементов аналогична отправке запроса на один элемент. Большая разница в том, что вместо того, чтобы использовать bodyToMono() для извлечения тела ответа в Mono, вы используете bodyToFlux() для извлечения его во Flux.</p> <p>Как и в случае с bodyToMono(), Flux, возвращенный из bodyToFlux(), еще не подписан. Это позволяет применять дополнительные операции (фильтры, map-ы и т. д.) к Flux до того, как данные начнут проходить через него. Поэтому важно подписаться на получившийся Flux, иначе запрос даже не будет отправлен.</p> <p><strong>ВЫПОЛНЕНИЕ ЗАПРОСОВ С БАЗОВЫМ URI</strong></p> <p>Вы можете использовать общий базовый URI для множества разных запросов. В этом случае может быть полезно создать bean-компонент WebClient с базовым URI и внедрить его везде, где это необходимо. Такой bean может быть объявлен так:</p> <p>@Bean</p> <p>public WebClient webClient() {</p> <p> return WebClient.create("http://localhost:8080");</p> <p>}</p> <p>Затем в любом месте, где вам нужно сделать запросы с использованием этого базового URI, WebClient компонент может быть внедрен и использован следующим образом:</p> <p>@Autowired</p> <p>WebClient webClient;</p> <p>public Mono<Ingredient> getIngredientById(String ingredientId) {</p> <p> Mono<Ingredient> ingredient = webClient</p> <p> .get()</p> <p> .uri("/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p> ingredient.subscribe(i -> { ... })</p> <p>}</p> <p>Поскольку WebClient уже был создан, вы можете сразу приступить к работе, вызвав get(). Что касается URI, то при вызове uri() необходимо указать только путь относительно базового URI.</p> <p><strong>ТАЙМ-АУТ ДЛЯ ДЛИТЕЛЬНЫХ ЗАПРОСОВ</strong></p> <p>Единственное, на что вы можете рассчитывать, - это то, что сети не всегда надежны или так быстры, как вы ожидаете. Или, может быть, удаленный сервер вяло обрабатывает запрос. В идеале, запрос к удаленной службе будет возвращен в разумные сроки. Но если нет, было бы здорово, если бы клиент не замер в ожидании ответа слишком долго.</p> <p>Чтобы избежать задержки клиентских запросов медленной сетью или службой, можно использовать метод timeout() из Flux или Mono, чтобы ограничить время ожидания публикации данных. В качестве примера рассмотрим, как можно использовать функцию timeout() при извлечении данных ингредиента:</p> <p>Flux<Ingredient> ingredients = WebClient.create()</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients")</p> <p> .retrieve()</p> <p> .bodyToFlux(Ingredient.class);</p> <p>ingredients</p> <p> .timeout(Duration.ofSeconds(1))</p> <p> .subscribe(</p> <p> i -> { ... },</p> <p> e -> {</p> <p> // ошибка тайм-аута обработки</p> <p>})</p> <p>Как вы можете видеть, прежде чем подписаться на Flux, вы вызвали timeout(), указав продолжительность 1 секунда. Если запрос может быть выполнен менее чем за 1 секунду, то нет никаких проблем. Но если запрос занимает больше 1 секунды, он истекает и вызывается обработчик ошибок, указанный в качестве второго параметра для subscribe().</p> <p><strong>11.4.2 Отправка ресурсов</strong></p> <p>Отправка данных с помощью WebClient не сильно отличается от получения данных. В качестве примера предположим, что у вас есть Mono<Ingredient> и вы хотите отправить запрос POST с Ingredient, опубликованным Mono, в URI с относительным путем /ingredients. Все, что вам нужно сделать, это использовать метод post() вместо get() и указать, что Mono будет использоваться для заполнения тела запроса путем вызова body():</p> <p>Mono<Ingredient> ingredientMono = ...;</p> <p>Mono<Ingredient> result = webClient</p> <p> .post()</p> <p> .uri("/ingredients")</p> <p> .body(ingredientMono, Ingredient.class)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p>result.subscribe(i -> { ... })</p> <p>Если у вас нет Mono или Flux для отправки, но вместо этого есть объект домена, вы можете использовать syncBody(). Например, предположим, что вместо Mono<Ingredient> у вас есть Ingredient, который вы хотите отправить в теле запроса:</p> <p>Ingedient ingredient = ...;</p> <p>Mono<Ingredient> result = webClient</p> <p> .post()</p> <p> .uri("/ingredients")</p> <p> .syncBody(ingredient)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p>result.subscribe(i -> { ... })</p> <p>Если вместо запроса POST вы хотите обновить Ingredient с помощью запроса PUT, вы вызываете put() вместо post() и соответственно корректируете путь URI:</p> <p>Mono<Void> result = webClient</p> <p> .put()</p> <p> .uri("/ingredients/{id}", ingredient.getId())</p> <p> .syncBody(ingredient)</p> <p> .retrieve()</p> <p> .bodyToMono(Void.class)</p> <p> .subscribe();</p> <p>Запросы PUT обычно имеют пустые полезные нагрузки ответа, поэтому вы должны указать bodyToMono() вернуть Mono типа Void. При подписке на этот Mono, запрос будет отправлен.</p> <p><strong>11.4.3 Удаление ресурсов</strong></p> <p>WebClient также позволяет удалять ресурсы с помощью метода delete(). Например, следующий код удаляет ингредиент для переданого ID:</p> <p>Mono<Void> result = webClient</p> <p> .delete()</p> <p> .uri("/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .bodyToMono(Void.class)</p> <p> .subscribe();</p> <p>Как и в случае PUT запросов, запросы DELETE обычно не имеют полезной нагрузки. Вы снова возвращаетесь и подписываетесь на Mono<Void>, чтобы отправить запрос.</p> <p><strong>11.4.4 Обработка ошибок</strong></p> <p>До сих пор все примеры WebClient предполагали удачное завершение; не было ответов с кодами состояния 400 или 500. Если будет возвращен любой из статусов ошибок, WebClient зарегистрирует ошибку; в противном случае, он будет молча игнорировать это.</p> <p>Если вам нужно обработать такие ошибки, то вызов onStatus() можно использовать для указания того, как должны обрабатываться различные коды состояния HTTP. onStatus() принимает две функции: функцию предиката, которая используется для соответствия статусу HTTP, и функцию, которая, учитывая объект ClientResponse, возвращает Mono<Throwable>.</p> <p>Чтобы продемонстрировать, как onStatus() может быть использован для создания пользовательского обработчика ошибок, рассмотрим следующее использование WebClient, целью которого является извлечение ингредиента с учетом его идентификатора:</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p>До тех пор значение в идентификаторе ингредиента соответствует известному ресурсу ингредиента, то результирующий Mono опубликует объект ингредиента, когда он будет подписан. Но что произойдет, если не будет подходящего ингредиента?</p> <p>При подписке на Mono или Flux, который может закончиться ошибкой, важно зарегистрировать получателя ошибок, а также получателя данных в вызове метода subscribe():</p> <p>ingredientMono.subscribe(</p> <p>ingredient -> {</p> <p>// обрабатывать данные ингредиента</p> <p>...</p> <p>},</p> <p>error-> {</p> <p>// разобраться с ошибкой</p> <p>...</p> <p>});</p> <p>Если ресурс ингредиента найден, то первая лямбда (потребитель данных), предоставленная subscribe(), вызывается с соответствующим объектом ингредиента. Но если он не найден, то запрос отвечает кодом состояния HTTP 404 (не найден), что приводит к тому, что вторая лямбда (потребитель ошибок) по умолчанию получает исключение WebClientResponseException.</p> <p>Самая большая проблема с WebClientResponseException заключается в том, что он довольно неспецифичен относительно того, что могло пойти не так, чтобы вызвать сбой Mono. Его название предполагает, что была ошибка в ответе на запрос, сделанный WebClient, но вам нужно изучить исключение WebClientResponseException, чтобы узнать, что пошло не так. И в любом случае было бы неплохо, если бы исключение, предоставленное потребителю ошибок, было более специфичным для домена, а не для WebClient.</p> <p>Добавляя пользовательский обработчик ошибок, вы можете предоставить код, который преобразует код состояния в Throwable по вашему выбору. Предположим, что вы хотите, чтобы неудачный запрос для ресурса ингредиента привел к тому, что Mono завершилось ошибкой с UnknownIngredientException. Вы можете добавить вызов onStatus() после вызова retrieve(), чтобы добиться этого:</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .onStatus(HttpStatus::is4xxClientError,</p> <p> response -> Mono.just(new UnknownIngredientException()))</p> <p> .bodyToMono(Ingredient.class);</p> <p>Первый аргумент в вызове onStatus() - это предикат, задающий состояние Http и возвращающий значение true, если требуется обработать код состояния. И если код состояния совпадает, то ответ будет возвращен функции во втором аргументе для обработки, как он считает нужным, в конечном итоге возвращая Mono типа Throwable.</p> <p>В этом примере, если код состояния представляет собой код состояния уровня 400 (например, ошибка клиента), Mono будет возвращен с UnknownIngredientException. Это приводит к тому, что ingredientMono терпит неудачу с этим исключением.</p> <p>Обратите внимание, что HttpStatus::is4xxClientError - это ссылка на метод is4xxClientError метода HttpStatus. Именно этот метод будет вызван для данного HttpStatus объекта. Если вы хотите, вы можете использовать другой метод в HttpStatus в качестве ссылки на метод; или вы можете предоставить свою собственную функцию в виде ссылки на лямбду или метод, которая возвращает boolean.</p> <p>Например, вы можете получить еще более точную обработку ошибок, специально проверив состояние HTTP 404 (НЕ НАЙДЕНО), изменив вызов onStatus(), чтобы он выглядел следующим образом:</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .onStatus(status -> status == HttpStatus.NOT_FOUND,</p> <p> response -> Mono.just(new UnknownIngredientException()))</p> <p> .bodyToMono(Ingredient.class);</p> <p>Стоит также отметить, что вы можете иметь столько вызовов onStatus(), сколько вам нужно для обработки любых кодов состояния HTTP, которые могут возвращаться в ответе.</p> <p><strong>11.4.5 Обмен запросами</strong></p> <p>До этого момента вы использовали метод retrieve() для обозначения отправки запроса при работе с WebClient. В этих случаях метод retrieve() возвращает объект типа ResponseSpec, с помощью которого можно обрабатывать ответ с вызовами таких методов, как onStatus(), bodyToFlux() и bodyToMono(). Работа со спецификацией ответа хороша для простых случаев, но она несколько ограничена. Например, если вам нужен доступ к заголовкам ответа или значениям cookie, ResponseSpec вам не подойдет.</p> <p>Когда ResponseSpec заканчивается, вы можете попробовать вызвать exchange() вместо retrieve(). Метод exchange() возвращает Mono типа ClientResponse, к которому можно применить реактивные операции для проверки и использования данных из всего ответа, включая полезную нагрузку, заголовки и файлы cookie.</p> <p>Прежде чем мы рассмотрим, что отличает exchange() от retrieve(), давайте начнем с того, насколько они похожи. Следующий фрагмент кода использует WebClient и exchange() для извлечения одного ингредиента по идентификатору:</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .exchange()</p> <p> .flatMap(cr -> cr.bodyToMono(Ingredient.class));</p> <p>Это примерно эквивалентно следующему примеру, который использует retrieve():</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .retrieve()</p> <p> .bodyToMono(Ingredient.class);</p> <p>В примере exchange() вместо использования ResponseSpec объекта bodyToMono() для получения Mono<Ingredient> вы получаете Mono<ClientResponse>, к которому можно применить функцию плоского отображения для сопоставления ClientResponse с Mono<Ingredient>, который сглаживается в результирующий Mono.</p> <p>Теперь давайте посмотрим, что отличает exchange(). Предположим, что ответ на запрос может включать заголовок с именем X_UNAVAILABLE со значением true, указывающим на то, что (по какой-то причине) рассматриваемый ингредиент недоступен. И для обсуждения, предположим, что если этот заголовок существует, вы хотите, чтобы результирующий Mono был пустым — ничего не возвращать. Вы можете достичь этого сценария, добавив еще один вызов flatMap() таким образом, чтобы весь вызов веб-клиента выглядел следующим образом:</p> <p>Mono<Ingredient> ingredientMono = webClient</p> <p> .get()</p> <p> .uri("http://localhost:8080/ingredients/{id}", ingredientId)</p> <p> .exchange()</p> <p> .flatMap(cr -> {</p> <p> if (cr.headers().header("X_UNAVAILABLE").contains("true")) {</p> <p> return Mono.empty();</p> <p> }</p> <p> return Mono.just(cr);</p> <p> })</p> <p> .flatMap(cr -> cr.bodyToMono(Ingredient.class));</p> <p>Новый вызов flatMap() проверяет заголовки данного объекта запроса клиента, ища заголовок с именем X_UNAVAILABLE со значением true. Если он найден, он возвращает пустое Mono. В противном случае он возвращает новое Mono, содержащее ответ клиента. В любом случае, возвращенный Mono будет сглажен в Mono, с которым будет работать следующий вызов flatMap().</p> <p><strong>11.5 Securing reactive web APIs</strong></p> <p>Пока существует Spring Security (и даже до этого, когда он был известен как Acegi Security), его модель веб-безопасности была построена вокруг фильтров сервлетов. Ну, это имеет смысл. Если вам нужно перехватить запрос, привязанный к веб framework-у на основе сервлета, чтобы гарантировать, что у инициатора запроса есть надлежащие полномочия, фильтр сервлета является очевидным выбором. Но But Spring WebFlux вносит изменения в этот подход.</p> <p>При написании веб-приложения с использованием Spring WebFlux нет никакой гарантии, что сервлеты будут задействованы. Фактически, реактивное веб-приложение, скорее всего, будет построено на Netty или каком-либо другом сервере, не являющемся сервлетом. Означает ли это, что Spring Security на основе фильтра сервлетов нельзя использовать для защиты приложений Spring WebFlux?</p> <p>Это правда, что с помощью сервлетов, фильтров не подойдет при защите приложения Spring WebFlux. Но Spring Security все еще справляется с этой задачей. Начиная с версии 5.0.0, Spring Security можно использовать для защиты Spring MVC на основе сервлетов и реактивных приложений Spring WebFlux. Для этого используется Spring WebFilter, Spring-специфичный фильтр сервлетов, который не требует зависимости от API сервлета.</p> <p>Что еще более примечательно, так это то, что модель конфигурации для реактивного Spring Security не сильно отличается от того, что вы видели в главе 4. Фактически, в отличие от Spring WebFlux, который имеет отдельную зависимость от Spring MVC, Spring Security является тот же стартер безопасности Spring Boot, независимо от того, собираетесь ли вы использовать его для защиты веб-приложения Spring MVC или приложения, написанного с использованием Spring WebFlux. Как напоминание, вот как выглядит security стартер:</p> <p><dependency></p> <p> <groupId>org.springframework.boot</groupId></p> <p> <artifactId>spring-boot-starter-security</artifactId></p> <p></dependency></p> <p>Тем не менее, есть несколько небольших различий между моделями реактивной и нереактивной конфигурации Spring Security. Стоит взглянуть на сравнение двух моделей конфигурации.</p> <p><strong>11.5.1 Настройка реактивного web security</strong></p> <p>Напомним, что настройка Spring Security для защиты веб-приложения Spring MVC обычно включает в себя создание нового класса конфигурации, расширяющего WebSecurityConfigurerAdapter и снабженного аннотацией @EnableWebSecurity. Такой класс конфигурации переопределяет метод configuration() для указания специфики web security, например, какие полномочия требуются для определенных путей запроса. Следующий простой класс конфигурации Spring Security служит напоминанием о том, как настроить безопасность для нереактивного приложения Spring MVC:</p> <p>@Configuration</p> <p>@EnableWebSecurity</p> <p>public class SecurityConfig extends WebSecurityConfigurerAdapter {</p> <p> @Override</p> <p> protected void configure(HttpSecurity http) throws Exception {</p> <p> http</p> <p> .authorizeRequests()</p> <p> .antMatchers("/design", "/orders").hasAuthority("USER")</p> <p> .antMatchers("/**").permitAll();</p> <p> }</p> <p>}</p> <p>Теперь давайте посмотрим, как эта же конфигурация может выглядеть для реактивного приложения Spring WebFlux. В следующем списке показан класс конфигурации реактивной безопасности, который примерно эквивалентен простой конфигурации безопасности из предыдущих версий.</p> <p><strong>Листинг 11.2. Настройка Spring Security для приложения Spring WebFlux</strong></p> <p>@Configuration</p> <p>@EnableWebFluxSecurity</p> <p>public class SecurityConfig {</p> <p> @Bean</p> <p> public SecurityWebFilterChain securityWebFilterChain(</p> <p> ServerHttpSecurity http) {</p> <p> return http</p> <p> .authorizeExchange()</p> <p> .pathMatchers("/design", "/orders").hasAuthority("USER")</p> <p> .anyExchange().permitAll()</p> <p> .and()</p> <p> .build();</p> <p> }</p> <p>}</p> <p>Как вы можете видеть, есть много того, что знакомо, но в то же время отличающегося. Вместо @EnableWebSecurity этот новый класс конфигурации аннотируется с помощью @EnableWebFluxSecurity. Более того, класс конфигурации не расширяет WebSecurityConfigurerAdapter или любой другой базовый класс вообще. Поэтому он также не переопределяет методы configure().</p> <p>Вместо метода configure() объявляется компонент типа SecurityWebFilterChain с помощью метода securityWebFilterChain(). Тело securityWebFilterChain() не сильно отличается от предыдущих конфигураций метода configure(), но есть некоторые тонкие изменения.</p> <p>Прежде всего, конфигурация объявляется с использованием заданного объекта ServerHttpSecurity вместо объекта HttpSecurity. Используя данный ServerHttpSecurity, вы можете вызвать authorizeExchange(), который примерно эквивалентен authorizeRequests(), чтобы задать безопасность на уровне запросов.</p> <p><strong>ПРИМЕЧАНИЕ </strong>ServerHttpSecurity является новинкой в Spring Security 5 и является реактивным аналогом HttpSecurity.</p> <p>При сопоставлении путей вы все равно можете использовать подстановочные пути в стиле Ant, но делайте это с помощью метода pathMatchers() вместо antMatchers(). И для удобства вам больше не нужно указывать универсальный путь в Ant-стиле для /**, потому что anyExchange() возвращает все, что вам нужно.</p> <p>Наконец, поскольку вы объявляете SecurityWebFilterChain как bean, а не переопределяете метод фрэймворка, вы должны вызвать метод build(), чтобы собрать все правила безопасности в возвращаемом SecurityWebFilterChain.</p> <p>Помимо этих небольших различий, настройка веб-безопасности ничем не отличается для Spring WebFlux от Spring MVC. Но как насчет пользовательских данных?</p> <p><strong>11.5.2 Конфигурирование службы реактивных данных пользователя</strong></p> <p>Расширяя WebSecurityConfigurerAdapter, вы переопределяете один метод configure() для объявления правил веб-безопасности и другой метод configure() для настройки логики аутентификации, обычно путем определения объекта UserDetails. В качестве напоминания о том, как это выглядит, рассмотрим следующий переопределенный метод configure(), который использует внедренный объект UserRepository в анонимной реализации UserDetailsService для поиска пользователя по имени пользователя:</p> <p>@Autowired</p> <p>UserRepository userRepo;</p> <p>@Override</p> <p>protected void</p> <p> configure(AuthenticationManagerBuilder auth)</p> <p> throws Exception {</p> <p> auth</p> <p> .userDetailsService(new UserDetailsService() {</p> <p> @Override</p> <p> public UserDetails loadUserByUsername(String username)</p> <p> throws UsernameNotFoundException {</p> <p> User user = userRepo.findByUsername(username)</p> <p> if (user == null) {</p> <p> throw new UsernameNotFoundException(</p> <p> username " + not found")</p> <p> }</p> <p> return user.toUserDetails();</p> <p> }</p> <p> });</p> <p>}</p> <p>В этой нереактивной конфигурации вы переопределяете единственный метод, требуемый UserDetailsService, loadUserByUsername(). Внутри этого метода вы используете внедренный UserRepository для поиска пользователя по заданному имени пользователя. Если имя не найдено, вы бросаете исключение UsernameNotFoundException. Но если он найден, то вы вызываете вспомогательный метод toUserDetails() для возврата результирующего объекта UserDetails.</p> <p>В реактивной конфигурации безопасности вы не переопределяете метод configure(). Вместо этого вы объявляете bean-компонент ReactiveUserDetailsService. ReactiveUserDetailsService является реактивным эквивалентом UserDetailsService. Как и UserDetailsService, ReactiveUserDetailsService требует реализации только одного метода. В частности, метод findByUsername() возвращает Mono<userDetails> вместо необработанного объекта UserDetails.</p> <p>В следующем примере объявляется, что bean-компонент ReactiveUserDetailsService использует внедренный UserRepository, который предположительно является реактивным Spring Data репозиторием (о котором мы поговорим подробнее в следующей главе):</p> <p>@Service</p> <p>public ReactiveUserDetailsService userDetailsService(</p> <p> UserRepository userRepo) {</p> <p> return new ReactiveUserDetailsService() {</p> <p> @Override</p> <p> public Mono<UserDetails> findByUsername(String username) {</p> <p> return userRepo.findByUsername(username)</p> <p> .map(user -> {</p> <p> return user.toUserDetails();</p> <p> });</p> <p> }</p> <p> };</p> <p>}</p> <p>Здесь Mono<UserDetails> возвращается по мере необходимости, но метод UserRepository.findByUsername() возвращает Mono<User>. Поскольку это Mono, вы можете вызвать операции, такие как map(), чтобы преобразовать Mono<User> в Mono<UserDetails>.</p> <p>В этом случае операция map() применяется с лямбда-выражением, которое вызывает вспомогательный метод toUserDetails() для объекта User, опубликованного Mono. Это преобразует User в UserDetails. Как следствие, операция .map() возвращает Mono<UserDetails>, который является именно тем, что требуется для ReactiveUserDetailsService.findByUsername().</p> <p><strong>ИТОГО:</strong></p> <p><emphasis>- Spring WebFlux предлагает реактивный веб-фреймворк, модель программирования которого соответствует модели Spring MVC, даже разделяя многие из тех же самых аннотаций.</emphasis></p> <p><emphasis>- Spring 5 также предлагает функциональную модель программирования в качестве альтернативы Spring WebFlux.</emphasis></p> <p><emphasis>- Реактивные контроллеры можно протестировать с помощью WebTestClient.</emphasis></p> <p><emphasis>- На стороне клиента Spring 5 предлагает WebClient, реактивный аналог Spring RestTemplate.</emphasis></p> <p><emphasis>- Хотя WebFlux имеет некоторые существенные изменения для базовых механизмов защиты веб-приложений, Spring Security 5 поддерживает реактивную безопасность с помощью модели программирования, которая не сильно отличается от нереактивных приложений Spring MVC.</emphasis></p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> </section> </body> <binary id="img_17" content-type="image/png">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 rkJggg==</binary> <binary id="img_22" content-type="image/png">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 Dpws9ugwjIpMsVrVLxd+AoojlDufnfNmc/2Be+9+MrJLen3Z3nlvzSvenff4i293ze69fe3i efP+BZwpjGne6ofue9KDYXZ+8OF7n2zyia8+/9d3q/K7psb8+805P+QdTk5gyxavBauxddk3 8xYuS03PXPDPp9dvLTmQu/6Vee/HxSXu27ry88Xr++T0+O6Lj+oanAqSBHTVlD32xLM1HuDi 4CMPPF7ndf/7wwVd0rvVFuS99/7njTX773p4TlJmRuHGTS+9Nt9ruB+87wE3s6Or/tEHn9WJ MeAgBaGiNdU8+MScblm9ivI25OYX7d60bFtBZUhYZGpaure66IslGz0on531aI0Hw7g+++HH 3BohSsHYrnU/vvb6G5625k/Jzt617vuXX3mluJFfff3VyQ5ut9rio6NUQW+98mphtTM+IerA zk0bt2+rLNzz0svvxaUlb//uq69X5u7f+PWL7y3I6p79zUfzP/l6FXBgxIMOFP+H0G4QtY1K BJBulwvJqGn0+pzOuW/MaxEqNh28+7YH6ioPXnfjzFVb8iPJd/8td+Tm77zt7zd9u25PCLof nnnz4vU7SAKgdDVX3fK3637ILedG3a033LQu78CyLz6cNfuZyjpPQ8num264PXdP+aYfvi8s rUDEl2fd//7CVZmpSS899tBni1Yc2J377BPPr9qyW7aUXXvbXT7m0Osb//nGmxIkMWAgQXO9 8+pLz73xnqvp0OwH71+4ePnnH32Qm1eQmeB49B935ubvf/3Jx157+0uft+npBx94b8HSovxt 19x8tyU2tXTHypm3/MNtGD5Xs6bpzV7hcTXffdtNzRROwjn//ff1poq3X59b1uBjQKEKLP3q k3nvftFYW3rrNbfuq222GU23XHdj4cFaicov9NsfxB8ZUkpTltPODARObCdq7jgZYzExMTEx MWVlZX57UM55UlJSUlJSUVFRgJHo8dDp4U3g3cCQdtcopSRui4julR6j9h+RnGQ7bcyExT/8 2Fxb4/WG7N2zOa7viOnTpulnnuJ0ijVL551y1tVTJp02PDPinmc/AakLUj3VhS1K8nV/mx7q 9ezYMvNglYeh5aobbhiUYf/i5adueO6tPimhTQf2MUNu2brFYNqePQUctH279/Rj/PRpF5w3 dWLJjjVVh0vXr99w7sXTE8KiCb0IKATL6nvKlVdcHKIbG6+7ulGTk8aN+SGvoL6xMcTuqdi3 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 NV+ttPTg5TfeMfuBm1dv2PLM6+9OHZq+avkaT3V5g0dIMhqqD9Y7fT98s6BLnzEvv/xC3+ys 3lnZfbslXz1lfHKIYrWH3Tht6vWnj1m9c29ZefkPhTV3Tr/s7gljdxQWgKI6WOizc179+5UT FnyzZPOKLzYdFi+//tqYrIi5H3xMoOqELVUHXnzls7tmP/vm67P3bV1bdvjwV/urH7no/NvH jflk9fJmt1Z0sObBp59/9I6rP/ns235nnnNK30H3z3o0Sm189Z//fOCZ5+695ZLXnnvZ5fQV FZXfeMcjc565b+GC74ecccGIvjkPPjYrIiL0QHFJQcH+opLqM6ZeOLR/31nPPjRgwNDtq76v bmxZ9OnnPfoPcjdWurz8lbfe+MtFI16a82bu1u835dc9NffFc4anvf7KAvIb0mi61CSigQxI att++Cqz//nnXXSrr2Z/UWGhz10Tn3XK5HMv3r3hu9ge46ddfJMNDI/T2yaUN/btXJfea8z4 KVdZw8MMw1XfWDd2wk0Tzjo/78eFbleL01k57Iy/Dho6Wm+p0XXD01Id0qX/2RffonJPxeHq vB+Xds0eefb0uy2Kp1nTeg0+Oy4+a/TkaxyMu5u8oybNGDhkgN0adfqUG8eNGrtn92b0SeH0 jLng6l5d4wwt9KzL7xQtxfU1VTuWf5jUe+iU866trt5cXdOieSoaaqvqytbvP7CnqfogGKzx cH5ZdeVZ0/8+YtipG374VLqFcOHEC2/NSslE3b1nw2dFlU3Dxo1RkBEYEkg0VxlkAOmN9Y3W kIieOaO79z03o/tQ7mk2PB5gTEhJiEQAREBKv94j87Z/o+uewh3rsvuMAORA0tvciAJcja6R k64Y3rdncxVOuvxuu1pfdah895bPHUk5p194nXAeOLC/gBBAgsUABpaklLh9uRsMd+2hopLo hERnQ1l02rDzL73Voh0q2Z+bu/aT+NShZ0z7U2iIguhr1Q5DY/2i8G/WsEEDvcnhFg/KyRPF +u9hRS5MHO9dOM+2vcgyZCCF2w2JXAiuGwpHJpEX7HC88aHSJwfSkwxVN0jx6SoXUmUWgRLC rJbKKilUvaZa1VUUBB4DVWEs/Y5n9NEfn9X85J2weRVp0kBSpKpIriESA0aCA5eAKjCwApFg Vu4lxhnolV7SfVTTQJybn4H6bx1+BxHEcXFSn0IzmSzQ0byf3kzF+k79O5zAg6A9d7aFSABJ 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 ezrz8tDhRgSyVPHh4g0bNnTs2LFz585NN7qEw+GVK1emp6f36NHj31h8ZiYCYDPcUFlWKZ3e 5FQ/heojSoWCQdDc/pRUSfWVNQ1sQUKCY/xd9+Zl+mpqiglc9XXVSenZPpeLwSorLSHWXAku l8vpdjolM7mSx99xe5s2qYuXLt5gpd96Yj+vtErDDJGwN9njEQKAGVUk3BAIQNioJ5mQnup3 CLO+prKqIeT1pPiTE0K1VWGQ4UAkKyczVFNWEbJ8nsSkBFd5fSDD72OQtVWlCd5kM9hQU9+g +9IyfAlGsMFQKtBQ73AnJqckIkBNZV2gIeBOT0nxuiULAgKlwsHqyqqQ8Cam+z3CNMqDDRgg Q0JGZoYDuCFcV1tRJr1pWcleIQTZB1aDMsL14QiYwVAIICsrTZihA3v21JZUlatgZnquE9ky QhWlNaC701KTpYT62srammBSRnqyx2Mx11aU14cDyamtkt0OsA9GZUJGZquyrtYkTPb6nBqy gqr6egMx2ZfkZrOmqtICLWJEUtNSK8tK2eXOSvZbhhWwQqq2Xvj8LjBr6huS0jISU9PuuH9S imqY+NCEXiMvOffsExOdDmQAVqQUSh0BGYQwa+pqaoPBKoMpITHZxVKxGa4NKAwneDI1TTCY wdoqYsvty5IyFKg+pBQjmpHqSkOZbm+armnMgVCgVrHl8WSz5HCoQRAZRtCblKNJC1i0XAuI K6644jqWfsCIIiOwMhu2bN2/ZLEWChplhy2TqndtTevbL3vYUEhMKyo4tG792sOHD2dlZUFz 15L9+/dv2bJlwIAB/9bSIyIDkjIfuXfijoOHqupqLr9+Ylr11off+DAtK6u6vPSqiY8MbRU+ 9+K7s1rl3jz+lvnvvnxL/55P3nr5xjJvKoYgtfvrrz60/B+vPPnGnKyUxEMV1RMenTp2WBcl hFDBL2a8enZeh0+27z5sFQzK8ScY5W+t3O7QzfSc/Imjxjg1IsCtq76++vYn8/PSDx2qmvDI lP7t8bqr7nCkJVdXw/OvT/186sSPvtrfs2/n8Vf9/o6JDycn+arC+MLTD987/vZHXn0ry9lw 9ZU33XX/pEfuuV3LSAlU0rPTXj/w+bSH3vs8LzujuLzmiVfe8dVtuHnCc0m+xLCe/tprz2d7 JQhZX1Vy3fVXB82Eqprqmyc90jO56twrJ3dom1tVWnz1xMfPPaHDrVf/ubjKCEUiE5998cTe nUR0GArrvv5i/OS3c7JSiksO//mWSWcNzSnaue6Ga6+rqy0Zef51d1x1+iOT7l6/p9iorD// 5rtP6+u/4uoJGZnuBsM/5bXnKjbOv+uhl5xOTGvf59knH0tK0CRbzJKVtXzLuueXrvW6RbKv 1aSzx8z5etHsffvdGOmY2/u2Uf2uOu/skDdThWpcSelOycWlNU++/CYemP/nh9/tmpV6uNLI zPZE6moyew5/7L5rX39zRqaH5y/8Zunu+k6d2g/p0xYZa6oPLFm46KQzL/E4nShIsiw5uGzu jC3hcKRL31P7HXfq5qUfbNiyx+kM+LP6nTL2/B1L/7Fuy0apyYyM3iNOu0AAEFDRlkWLFs/X Etif0vOUMy7euXLm5m0bACCn1aBBIwZ8/MZj3qQMK1jRpvs5g0886UeWN+OKK664GvX9RpSZ CYyDBTtnfJjZNj919OjK5evDKtS6Z+8d8xagpbLH/C6nVU5Oq+wFCxY0HYMiYk1Nze7du+2t mf/W0jMTIJAZWr1m7e/vfmxop1TWEvbOXpHSqd+0Vx/bs/ijO155d8T957nSO7374TS/U818 sZaAA/V88z0PnzUwe9zZZ5SVFr7z3qxHXn13QJ77inMuDinNdrUEgPpwve72XdqrxzrKOqlH 27ISeecFXVWgdso3KxpMS3dItEiqUG6bfu+89/R3H7zwzcoVx/c9Z+LDj/jTU1947IGd+yoa wsELrrnjlitPDpQVPfjog6kp6ZOvva00pB3XPWvukrXHJZc4crt1zM+Y/PAznjTf84/euW1v qTtQ3+3EU19+8N7XHx+/dPW2i0f2eOTJx9LdeNfND5VV1GV5kglo5Zdvicwh7z53764v/3bf ax88e/uJvow+70yfsnbmqx+tXdU5uHm7ypz20vgVn/zjzWkf9bjz0q3bt4OQuR27i0hdUnb+ y+9Nqdj61bV3Pzt6yBNeT+4zb07Tq7Zced1bN1519tkXnvfHtHY7ln/y2cqt/ROSw660iQ89 EKoL+DD812dfGvvn+87ukzT+urtWbt6ejvV1oTCCs0f/btOXrrjj7D/2TNNmr9kYrKn4ZPv2 Jy+7JhUiN7//8f66zhEDJk+Z6i7fddPDb7z/4TvvPXjj6q3bBziMjr3GvPHCrXdd+fu+F9xz 8RDv6VfcV1cfKa+HDgOGn3fGqX1O/fPA3q1th1qHy5Xfrq2uS9v1iFHKhMTTL33AqN4769P3 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 +V8NHHl6ss+NQCilYMkMwKYClIxKICDpCgxhMUsNLAIHCmYApjBCArAJaAlwMBMDWqA5JQrb xQktgchEAKKh6sC8GVPadB/M4T2frVp49hV37Vr2d1d2/27dejPZp5yDnujPzBJgeyQRA4BA ZBAASpkWaJpAICCH/JGDB+KKK664/ln9uveJ2ku3TOb0V1/67IsFEdRunfCoVrTmb7MXl9XV W4rvefSpfOfhv9zxtGHADTfesHfb+uHnnj55wvUbi81wSVmX4afff89f9i+bM+HR190up57q v/qaO04c2EGB0AQf2L6m/fARb65ZU2p6OvoScl3BF79aQxzp33vQnwYMFJIIcevKJQ8995YZ rmqIuB556tkumXLiXXfuLa/3p3V8/KkHZk17dM7yQpfH8eR9t01+6PHiyprcdt0m3XHdQw89 NunJp/yOyN23TLx6/O2vPTVpd2VDbkre5Gce3fPFjFdnf90QrHa4kh6Z8qK3Ydstdz1cHwzn 9x3+8KQ7/E6LhWwo3X/j1bcESI689Pq80L4X3v9ME+L6SY+OGtThw++Wz9y7M4W1P4w+q3+6 4425SzeW7Xd4U24bc8aat54Id/nduLEDZ772THVWz27essnPfSDDkT/cMuH3w9tdPu66BpaD Th99aM2myVOnuszSG2+7/9Gnp2QkuQGQEdEKvvXylL99uigrM706RIJBcOiR++6sOHygTc/B jzw6OcVpMQhEiQhLPvuowPT98fyTZ304rVh0PWtQxr0THyirMbr26zdx0i3rv/zk4ZdmCKK/ jL9vSK+88X+6upbxzCtv+9O5IxVKo7548+a1PQad6tI0hWBUFwtXVt/BZye63AX719WW79u6 dmHQtd2d5Knfs3T3/r0R9Jw68oTS6sqM8q3fzvvEANMK4eBRl7bOy1654L3CwsOeRD8J/2nn X3Xsdd644oorrn9BR0/n/pqGoQAACGSEps/47PIJj0yceJuESKi8ZGtJ+OkXp15z5uC/Pv68 FQgXFBlPPPPsScMHFOzdFibrwM7CE0dfOm3a1C1ffVReXPj0k89deuuEp6dMrti4uTosbG9V BrPo0F50+f7QpfPx3Qce3ylfWXjV6NNuGT161fbttYalkJhRBSoryqznX3rr4hO6fj5nYUOk bviYP7w89cVkPrx2W+GhgwWde5w8dcozbBpjLvjDq69MCezYdqCaU2XdgpVbD25efjCs+VyR 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</binary> <binary id="img_30" content-type="image/png">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</binary> <binary id="img_35" content-type="image/png">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 RK5CYII=</binary> <binary id="img_42" content-type="image/png">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</binary> <binary id="img_50" content-type="image/png">iVBORw0KGgoAAAANSUhEUgAAASAAAACSCAIAAABqlIAdAAAAA3NCSVQICAjb4U/gAAAgAElE QVR4nO1dd3wURfufsnstl1w6gSQkQEJCD4QeOkoRQvMFQdRXpdoFRBFEARUVQWzYUPGn7/uq KKIgWBBUeu+99xbSrt/uzszvj7nbLKFIwl3uxPvKJyZ7e7PPPjPPPM88zzPPQMYYCCOMMAID FGwCwgjjVkZYwMIII4AQgk3AVcCtVgjhtcxX/hGE0C8PqnSz/GY/2tg3Q4C/eAL+6r20T7z5 Z908ylHrRz74BaElYNqxQggBACCENMxihFD14k12s/p1SilCiFIKKtg9/Db/9mWFpEv9yV/B jzxhjHGGYIy1n/KL2mfdzOP8CMYYYwyhkLPI/DkB3yTUkU0I0cqV2yPLiiII2KjXqTer91Ru utI+C2PM/6SUQghvvE31Wx5JlmRW6VFGGdCLUK8XEUI3/migmR287VDKWwCVGvSqKqCUauXK 4/EQogiiqBN16p3qPSGlLkIQoSJgV/bun6vWrVy96sTRIx77JQgoA1A0Rien1m7Tpk33bl0w goQQiBCquIypzyKECIKwe9eeMU+MfWn6tFatW8myLAjCDcoYH9Dbtu8cP+7RlESBQQgYqNBY 46xHkJ0rpNNffatZ0yZc4CtEv8vl+u3XX3r36QshVBQFY1wJUxP4xBUAgBAilCz77bd169af OH7KaXMBAAFkUdGRteukd2jfvl1eHrjpOc5f4BxbvnzF5q3bRo0YFh0drZ10go6QELBya4nl f6z67JOPDaywY9PUJlmpibFmnU5QFHqpxL7v8NnftxwvcBkHDLx70J19QcWn7XKjc9f2XQ9P GAtaJCibzr85eXqrvNY3Pka9XfvHxoXzRkwfkyS7GIIVFXVAKNBHwQkzLvZ/4IPbOrdSFEUQ rmm3ayWBMYYxPrB/35QXX9l76lLzuilTX3guJbWmoigIoRvnifqa6rj8dsGCr7/6Vg9NTRs0 r1WzdnRUNMaCLEvFpcUHjuzfdWC7YIIjRg7r1KGDapgFUcZkWRZF8ZkJEz+c+/H2rZvS09Ju ZJKqMgR/DaY1zxhjU6a9cmDb8ieG5rVp0R3oRKAQoBDAGIAwoXpcvUa1B/Rtu2f3sTe/eH/l ypUzXn3RZDTd+IxVXndt3zVq3OMJdzWp077hycwDjz43fs7LM1u2bXWDMqauwSLNhqgYI9Mx iBio0DhjjBKIomGESQ8hAteVB5UYVQj/958v3vvs6yb5Dz7+bP6aRf+7Z9jDYx8Z1qdvf8aA Osj+cujz1+Ry4nA4nnl24oWTRUP63l+/bgOEkKIoClEAAwCC5OopOQ2b9pfu3Lxj0+vT31y1 atWkZ59VzdRgyRh/qMlkio2N5cMgpEzWIGtSVbr4748+8ZR0bsN/Zj3Qpk0DxSUppQ7i9BBZ oQohskJckmJ1ynZ3g/rpc197ICPy4gPDRpaWWtUZ/fraWPUKqLpr5NjHE4c0Sc3NKDldUK1+ zfRhbR+ZNH7Tuo2CIBBCbtxJSAhlClUIJQqlFflHFKoQyhRKKL0+5eWmBpvNOnbMmI++W9Fr 3Bs5HXvaigra9h7c+aGXZsyd/8LkyYosYYwVRVG/da23YD5ACEtKSh8YNjyCxbw4/tXsjHp2 p91mt7ncLi5jiqI4Xc5SW6nb426V2/qVZ2Ye3XPmiTHjON/V+fEveRUgqF6xUEMwBUwd8Xz6 nDR5aiw99sqUezGhstWJEMQYQQgQVxQAIAgwghhBxelR7K4nnxjQOVt8cux4xsqG4PWfBSHk A3TPjt2jxj6eeHdOStMMV4kD6wS31VktOyV9eJuHJ47btH5ThWQMXg2+jy677S/vvz7lfIG6 fu2au+7+92khefCkty2xCQ5rCRZEe0lRYkqtIZPf21Es3DVk6K6d2/kr8KGvtnMl5aofcszY cVk1Go/+96N2p83pcmKEL3fhAgghRhgiaLfbCSOTnnjeVShPmTqVe4lCYa0RggiyBuPKB2O8 aMnPp/aveemZQUqpgxIqCJivD70TMAAIQgYhH5sYI4SgXFAyelTvWHju/Y8+Ufv4qt3M2+E+ AEEQ9uzcPXzMY4l356Q0re0qsSMBQQQRgq5SR2JWSvrwtg9PGLtx3UZBELRKoELvpVksAQAA QpCyyjjcVMq5yYcxnvP222OnzGgw4LHu9z3ucTkVWcKCwBjFgiB5XESRe498NqXLfQ+Nm/z5 vHmCICCECCGqd7Rc4+rs9uHcucwl3D942KXCAgQR56f2XRjwRQUYwBgTQmx269hRT2/fuOen n3/GGKuSHIYWwRQw1Xx3OF2fz5s7ecRtgAFAKcS8n7j1yCgDWEAeWYGsDHzEULtr0uievy35 5sy5C9daBqgSwqVr947dw598rNrdOSlN67hKHKJJj0RMPAo26gSD6C51VstKSR/R9pGJ4zas 3SiKYiVkrIw8yrABIQE63VQwIYRhhZpS7We+Jjxz+tSDDw77fuPhf018L6NJK1txIYQQQMgo RVhkjPFVnL2ksGHebfnj3/x0yZrHH3us8FIBxliW5Ssfzf9ECJ09e2bx9z89OHik3WFTtRb/ VMCC0WDU6w1GvVEn6lRliyHmMcn7B474eO48t9vNY4m3th5TbS51SfKXqjvIJiJfff267Pea 0SSrcR3F6cYIQeDrYEoxgkKc+YsfNr3y8XKoF6lmNYIQJB45NiUhr2HiN99+p67Eyj2inM9w xJjHkobmpDSt4yq2CxH6i5uPbXrxh61v/LR1xo+OsyWCQfDqsWFtH500bsOaDaIoVmg9BsoC tQwb4KqN9ruePnnf5FPPzjxncxCAAKUVCGRzARAE4aclP9477CFaO2/QU6/p9HqXw4oFAQBA KdWZzMd3rFvw2pMelwMhjDB2WkvMlpghE98qiMy8+9/DV6/8UxTFK3026tpp/rcLGtRpnJyU LEmSumajlOp1+pUbfx898cExUx8Z/eyDcz5/C/j0HoAAIeR0ORplN4oQLb8tXw5uwKHyd4c6 9XBvijreriNpqNwdVQw+Iy5f/mt+x3qUUG5X8Y8oYwwhq1t6852lz761pLDUySAAvi70LlwQ ZC6pb+eG2zavlySZKzEtwGVejZ2jxj1e7e6c5Jw6rhK7EKGzHbu0+9M/kjtl5zzWTR8Tse/z 1YwBJGC31emVseee2rB2g7oeuxajgM+Y8v6PMcYY0sGTp6Wxb5z7V9eo1yclnzovvfVlITIg lTDgu/tazVJKKaU2m+3V12a8/N4X7UZMbddnqNNWSgnBWOD3CKJoLy5Y/n8zC08fBYzxaDcW BEWW3U77bUNGNx381DMvv/Xuu++6XC7eoPYRCCGPx7Nly/Z2LTu4PC6uvmCZXxFv3L4hIy3z kfueeOCuEV3yblcHme8VIAOgTbO8X35dpn4rWKiCYcy553a7Dx44CCHEGPMhd9Xh4RWwy8Zr 1QIhhDGWZWIrOp+ZlohkRY0a87fBRt3iFbsPHC+4v19LCABfgWlGJkMQAkVJS06g7qLCohIe /yn3FACAT7qe8FqGpQ6EEQCAUVqnb/Pq7bJMiVEpnet7ih3EI0MEEUZum0/GJo3fuHYjd4tf ST//CSAADAB2mT8AUGYU0cwnkgb2iqnVyNS4ruHEOYkBAMrFoiHks4baWhnlEGKMDx88MP/H 5QMnvVujVqa9pBAiBHlMgjEAGMbCqq/ei0/NiK2eRogCmXf083ZsxZdqN8rt89TMD+f9r/DS JR57KPcKFwsuumzu1OSasixDTTQSIeT2uEptpa2b5SXGV2vaILdZg1w+dLQtSLInLSW9pMjq 8Xh4jL6KoZ0UruRhIOB2u0cOHzZowJ3zv/rqwvnz3MRQY+7anDsAgMD5pYpgVYJSijA+ePio HitJ1aKprACfCPE3oS6pV/t6Q4e0n/f57xt2ngAIMs3whNwmJEyMMCRadPsPHkpIiKWEaGNi lFKI0L7dex966snEIU2Sc3zSBSGVSFR6fFStBOKRmV44vnSHOSVWMOmpR2GAeWUsOwUMa/3o c0+98/LruS1yywXcKKUYYUXxhokAvCw3jxGWECt0TI06csD17vQzW/a5PnwuGRAAALtMxhgD EDHGuDecKGVBUsYYATAru152RnrRuVOJqbUgwmrPMUaNkdEbF3/hspe06nP/so+nc5EDAECf tYYQViSp+PzZvNYtEhMTZVlWyQMAEEoxwsdPnDCJEQa9we12AwBUK0AUxQsFF46ePPTVov/M X/w/p9s5bPCoVjltPJIHaJI2ZVmuXi1Z8ZBjx49nZmSQy/lfBVAUhTHAbV1FVhRFCVwmh5q2 yhhbvnz56tWrExMT2+S1bde+fYcOHarXqKEmCTCfqeUVsFdfe/37HxaZzWZ23YCMf8EAEDC6 UFDSsn6CEGGUrS6EIPAtwPj7RJkNVFZcbhlCCK6cAiCklCEBRUeZRj30aM0aCbKsqAOI380o O3nmVPNJfZKa1HIV25CAvTdASGUCIBRN+j2f/mk7XpD7TG9GKQPeGRph5C51JGan4hHCoH/f W7NaMhYx0yRDMQBEAZ654OzT1juoy3nlCWHAQSkFtdL0J8/LS1fb6mUYICq3SmEAQkrYE0+O TU4yywrVtg8YEHTi8cMHIrPyqtfOkj1urj8opYLeeO7I3gPrl/V/apaztBgAoDeaEUKEKBAh 6FtiiXrD6T0bN/7yU8/8g4okaaOwDABBEC5cPN+1TXcIvBoAqKFnygRB6NGxV8smretnNZr/ 4//mfvlBdp16ZlOkQhTOIgAAIcRkNLjdniFD742xRBNKy71eoMEAwAgVFhZihO65735RFBmr fF7oXzyLMYgQUZSL5y/ExsYijOx2+3ffLvj6f18ZjYas7Ow2bdv27HVHi5YtdTodlyyBs6lT p47JyTVEUXeVQRwwUMZEAR88cuL0/jWAUKgJuqiGCiFUAAB5B+WVLkKv5pBlJb93r5bNGkmy jCDyfcgYAwihDevXb1i1Pz47GYtCWUiUMYgQY2z7W7/YzxQ1Hd/LEBdJJAUi79BhjCEBM0JP rNzTo8vt7du3Y4xBCKBPxChjooi37TwCCr/3aQ4t8YACwGSamabLzEns2izi/imn7+pmSamh I5LWow0BYwjB/PzeuU3qSJKizr48vCeK4vEjR/7YtS7n9v7cT8gYA4AhhNd+O9dacH79958V nztpK7rw55fvtB0w3BgVw4jCl7IIY5fDduHQjsceeyS+WnVCFKhRnoRSnU63Y9eO4tN27ysD Bn3REUJJbHTsw/c+YXfaFFm+vV2PX//86eyFM/UzGypEUd8UQsgYEAQ8aOC/0tPSFIWgqvVz EEp0Ot0PixavW7d+8F2D4mJjCaUBooEyihByOV0fvf/epYsXXS5ZURSTyZSdW69JkyaNGjeu V7+eVo8BALwClte2TV7bNoGg6S/hcHoeH72p9FJplCWSKsSnXbxDXLUYEYKqM4GDMQYhgxBR t3S+0D7hpZG101Ov+oihdw9+fsLzi99e0ubJfMUj+SI2EAp4z9zfqULbzRgiGHWKW2aE8ofw e/QRhvVzlnaIrP/GW7OulcabXnvPwk+/B4yLv7rSBUIEXr/eNmd+0X9eSsUAON3UqEN6EYJy MxhfgyHYv1/fNi0bXPURjNLN9zxw/sSRainpsuTh+lWR3A069EqqlQUQUjyJgs4QGZOAMPZa iRAyxnR6w4kDu6qZ8WNPPHEt/rdsmfvsuBdkWUYIAeaNd1FGTQbTll2b5v/45eTHp9Wolrzv yB5KaVxMvJowwXwxsZKSIp1e99hjj5hNEdd6SqBx5MjRNWvX3X334LjY2EA/ixAy9/05Dqez WW6zvLx2PXrdUa9evYiIq7+710QMSgSDP9Fo0CnIdOZCcVR8NJMVToUqYJw8p1uy2t1QswQH vjAuEpC1xGaX9bEx0YQQRlk5G4y3MO3VaWDSC4veXNz2yXzFI1OFCBH6M3/uP/HjtqTWGdtm /6w4JUOcOfvePCRgxqXLZFg/Z0nHqIavz55BGaWkfCCVW+Q2m827qvKZj1771sOaZBkBAMOm nWnWyLjw19K7e1gSqumIi15GoW8NZrPZCCFXJqoSQkRRbJiZfnz35pQ69SSPm5tnjLHMFh3r tuysjzAf27H+2I51zXoO1hsiZNnjXUdRKuoNh7as6tyiKSFETbAsR7/FYmECtdqsZrOZUML1 P2RQkqSMtEzG2CvvTWtcr+mK1b/27NyrWnyS2+Mu4z+jOp1u/7lTOoNg1Bu4mwRWrQbj4U2P xwMhtFqt0RZLoNdgpSUlvfP75LVv1zYvz2AwqGSoXhD1/jITMSjp/cwbhwHZDZqu3rq7fk4m Y24IyyjxKi631KtD/bycWkxrPvEEH8aQUbfm98OJybUtUWZKKRYuG0Pq9EEpnfbyVDBpyuLZ i9uMzZddjEqKuUZM07E9KaFccQkmHURchqHOZFj/nle6eFOCILDL4zzQ5wgFZQasV/4hBIyw SDP++Pnkhb9bLxYqLz1cLS83gnooRJdno/oGK0/UAJfvcVTR7bauL8z5H+k1mJtkPAovu12M UdnjirDEdr5vDKOUEK8nkAGGMHbabbYzhzr8+1Hu6SrXMl+vx8bEVk+utm3Plm4de9gcNuZ7 BUJJhMn83ONT/1y/orC4cMSQh5o2zPV49acvwYpREYu7D+ys3zAbI8wYu85WgACBMcbd5QAA zkPoi1P5HdxVGBsXN3nKC/wKURTgGwbwikgjCG42vUpK/769n3/m5/sHOrQZOup0wBRSN6M6 QJC6JFWzee8BAFL6wx/7Bw6fAK8WCIY+7y2llBAy7eUpcNKURbMXtxmTL7ukqNoJsfVr8PsA AIwy2e4GDOgiDBveW9LR0nDm7Nd5mxXKFveqWQSpwiJM+J6BcQACoADiIDzZq0JN8Tsb5+SY 2dyCsydjE5MURfam3iMEAWKMRUTHZbW+TXI5GfNlHlImGgynD++LFuSGjZpc5xUghH375n/4 zme3d+jOVbGqoBSiGPSGAT0GAggJURwuB4+UqNOWgAWr3bpt35a3H3mdO4du/NX+jtAaVnxc YUEoZ1WV+0qQcxH50M+um5GW1Xze/JU4OkJRCNDsofAuuN2y4vSoF/kNikKF6Iiff9ns0iV1 6ZjHcxqv2rtqhIRSOvXlKfm18tbNXiwadFQm7mKHp9TlKXF6SpyeUidgTG82bHhvaceohrPe nKmVrht/Ke0CkhKmlBKlhCga6apQUxBCQog5MqphZvqR7ev1xgimsed9TyFuu5VLl49tVNTp Dm1d07ZFM4DQVcMwfKanlHZo115nRitW/WaJilaIouU8pbTUVlpqLXE4L5MuxhihxBIVvWDJ N41z69epUyektjkGCNrZn7+sGhW81leCnCrFiaOUjh/75KJ153ds3K+LiVQUonVvAAAQgtjX efwriqLoIg3nT154a/6WZydMUGXgqsOI/6Kmt0ybPlWVMSwKAAKEEf+pMxvXz1naMar+rLdm Uka1X6/QxKzaURBChABCAGl0V+Wa6tKpw/mD2xRZghBpe5r/RL7JxcsxCD1uT+mJve3b5QFN aLgc//lPQRAmTXxmwa9fnz57ymwya5OD+UjSBnP5T4UoMZaYjVvXbzu4YdyYMWq1hVtYfQEN t7W4/leCnOyrdlhiYvykyVOefvPXPbuO6uIthFCeS6oVG/6TUCorRIyOvHSxZNQL84c/PLZe Vqa6ff2qL6zO61zGCCXTpk/Nr5237s3Fgl5ECHIHhi7CsP7dpR2iGsx8cyalFLCy6i6VGzfl +gNUUEo5VJls0bq16CosunAOC8L1soIoZZQKeuPZYwcsWG6Sk6PScCV5XH4IIdlZ2Q8/NnL6 u1MvFV2yREXzcC24fMLy8Z9QSuJj43ft2/nhl+9MmfJ8fFyc2o+V4NKtjeBvV+F9rBDStk3L SVNfHfv6L98sWCVGmQSzESFEGVMIpdT7E0IomAy6mMjf/9xx34Qvhzw45s5++XyT/PU7WJ2A EUIQQELItOlT82u1Wzt7saDTIQHrTPoNc5Z0sjSYOXsGX+irOQ1/KRWUMYUwQphS8X/8W/Sv KFcUYjZHNqpb++iujRGR0RgLgiiW/RPKfseCiAXBaDKf2LOlZU59LIhXiooKVUcpinJn//7D Rt83ZfakNRtXxkTHGI0mCCH1ZkR6kxgRQmZTpNkc9d2Sb9/94o2XX5naqmWL689u/3CESskA jJCiKB3atUn+6NPp019Ztub/Bvdo0ionIyI6AugEoBCAMSBEsjp2bDr65dKtZ53ml2bOaZbT qEJlXqDW50HptOlTwMQXFr+5uPWTvTe891PHqAZenyGrgFeDMWAyCEKMTtAxAK9aMoABSgFC 5bMQAQCMAopANDTqhevM/hDyxAzWoV3r1+b9kNW8g8dlhxB5n6XOAj73BoDMbrOd3L76ycmP q6r7OrodQsh3QA8eNKhuZuarr77++7oV3Tv0zMrIjjRHYoQJpRhjWZFLS0s2btuwbNXPUQmm Tz79sFZ6euXK7PgRXr1KCN+So67SQwQhodbVvlGjQIuX/rr0x0WlBcdTE0zV40zxMVElNsf5 QsfJCzYckdS9Z++BA/rwbX+VKB6mLt95ls2L017+/OdvB3To+cr0l/gNNyhd/Ol/rtowdeLd g7pbmAIguLqbzhRhcjqcV7KaAUYpFIxgwc+2Z6d90alD66sWvVGFxOFw3P/gCKcCDAYDpdRn cUKdTpQkCfji3Bhju91eMynunbdm85yd67sfyvFfIWTBd9/9tPQXW7EzITYx1hIXaY4sLiku shYWlhQkJSf06dOrZ4+eAFSg8kfgwDn2yqszvpr/zY+LFqampISUuyUkBAxctgWYqsbG2XMX d+7ee+zY0YXff9+1S9fsevUaN6xfKy2Ff0UtaQgquLYp9yyPJD088pFZb70eEx1ToRpV/OaL Fy8uWLhYlhlE8Io8XgYhdDpdy377rUf37nq97qoDkVFmMOC++XdUq1btqoND+y1CiCx5tNcd dsf8bxcMvmuQ0Wgou5MBUa9XSz5eXwC0LhNtpPvEyRO79uzZu2fP8hV/DLxzQHqt9Ib1GyQl JQGNzFeC//4F59jBg4d++XXZIw+PVo2UYNFTHtdeLFc1VEOf7+HV7lwaPnK0tbRUvVH99MoN Tjf+LPXrpaWlI0aNPn/hgpaAm30ZDYiiDBs+4iYbuQ5hRUVFQ+65z2q1V+hbV71Zy3/1emFR 0bDho7S33Tz//QhO6vbtOx54cDhjjJchCS5JWgR/DaYCaoLI2h2jiqIQQoqKS0wREfwjbQii 0s9i2vggK/OC3HizTLNd+jo3FBeXEEJLSkrMZvN1Gr/BlQy73K3H9XCEyUQpuZL4Cnn2yvGf +bY2FRcX80wr1R168/z3I1T3rNFoDBGStAghAePQMogxxqupOBwOvhDnIRp/PUit02J3OFVX 241bF2rXXis/iFsvCEGHw4EQFgThL5cH13q7q3r5VQm32WxA47G4kQZvkAAu9g6nQ/BVKAi1 Ecx8Tg673Q59JQBDh0g8ZcqUYNNwPfAps3atWmnpabywhH95x+fj2rVrpaXWVLct+7d9QRAy MjJSUpL52iYQ7depUzs1JcXv7XNu63S6rLp1a9SooV70V/t+ASfSaDRmZdWtXr26eiXYdHkR Kk6OMMK4JREyzpargfkSOPhCFly+Agm3X5Xta6+EFJivcConki9Eg01UGcIaLIwwAoi/gQZT FOX1WW8UFFwCAFC/lgzh7TudzllvvFlSUgICowGsVtuMmbOcTlfA2re+Pmu20+n0e/uc2+fP X5gxc5b2iSEFTuTRo0fffOttEHoa7G8gYIyxrVu3u1yBGqCKouzYscPNMyEC0L4sy1u3bFUN mEC0v23bdlkOVPtOl3Prlm3aKyEFTlJpqXXHjp0g9AQs5Nz0WmhCHIZAnEyjtm8wGFBls91v pH2j0XhVP7v/2jcErn2EkNFo1F4JKXCSMMZ8936oUfj30GBMU6PY7+2Dy2sgB6B9niwfWPp5 LZ2AODkAYIyWe2LoQO04vn8v1DRYSDs51EyFQ4cOp6en6fV6/4bqeWuKohw9ejQ9PV2tZeff 9mVZPnL0WEad2ldW9fBX+0ePHatTO1Dtu9zukydOZmXVVa/4q32/gJNkt9vPnjtXNzNTm6AT CghpAQsjjL87QnoNpiKg05I6xYTbv077oaMTroqQJTJ0BUyrWstVPL95PpbT24QQjJD2kh8f wbNmyxXM8lfjV23/5h9x1fb91bgfcSWT1Y9ChMjQdXJATcWO6a+8VlhYeCPJ5jfeuNqa2+1+ dcbrpTYbrFRRmr+k3+Fwvjz9FbfbEyD6HQ7H9FdnuFxuP9KvZtZDCC9evPjy9Fe1T7x5+v0F laSjR4+9PvONECQydAWMs0mSJLfbvW//frvNIfkvVMV9TdxD4HQ6D+w/YLfb1fN7/PUITr/T 4dy3b7/T6VSPt/Mj/ZIkORyO/fv3O51OP9KvjlFJkqw22759+yVJ0p5vFCLgxHg8npKSkgMH Dsiy7Ecm+wWhK2A8Qr9+7bo7unU/sHvX4EH/WvT9D+p+BL+0DyH84/ff+/bqvXfnjoH9Byxd sgQA4K/D6jmdy5f91r9vn4N79/Tt3XvFb8uB/5JReDuLFy0a0Lffgd27+vbuvXrVaj/yh+8M +v67hfcMHnJw7+7ut92+ft064O9kmpsE78Q577zz8MiRO7dszr+j16mTJ8MCdkPg6r5J0xyn 03n+3LnSktKcpjn+Uv2qLZGTk+N0Os+cPm0tLW2Wmwt9x7f54REAQAgb5zS2Wa0Xzp2zWa1N c5v50f7kaNGiRVFh4dkzZyRJatS4kT+tI8YghE1ympQUF587e9btcqkV4PzTvj/A37dps9yT J0+eO3s2IiIiLT29Ko/g+kuEtIARQiwWS6/8/OKi4g4dO2ZkZvrrfDc1wpaQmHjb7bfb7Y4u XbumpqaWHW508/QjRAhJTk7petttRUVFPe64o1q1av7aMKrSXzMtrWH8EioAACAASURBVFOX LjabrXv3bvHx8dqKJjdFPIQIY0ppVnZ227y21lJrft++UVFRobbhku+8btmqZU7Tpk6Xq9+A /oIgkFAiMnQFDPhWGu07tDeajB07d1IXHjffsrqIZ4x1696dEtL19tuY5vxPvzyCt9+xcyej ydS+fXs/JhlwCnkCSqfOnSEEt3frprqq/bUG4+13ve02URTbd+gQakkSwDcLR0RE5ObmWiyW Dh06+NFN5RfclJvejz16VXBl1bRZs8zMzGbNmvn9Wbwb6mZltWzVsn79+kAjeH5pn9Ofm5tb p06d3BbN1Sv+FbMmOU1ymjatm5XFL/or50ttoVHjxo0aN2rUuBHwN/3+AmOsbV7e5k2baqan gxuoMQwvr8gSUFRewFQS1ZqvgSAXQhgVFXXX3UOSqlf34wKJA2PMAKiRnNzjjp4109L83j4A AEIYFx8/ZOjQmOho6O98XE5tampq7/w+CYmJAPiZfl7vPi09vd+AAdHR0fxi6CgHDv7KmVl1 +985AAJAr6vBmPfELHjjZZtvEpWsyaFSxqN7vn71+8TGIASU0sTExKTq1RGE/Ipfn8AwxjGx MdWrJ3Ht5df2GQRAwDgxMTEmNgZj5P/2IQAAJCYmVqtWDTB6xQHQNwUIAAPMaDTFxsbExMbw k59DTL4AALyiMayZVjM6OhowACG8xnGkUJ1Dyx1wEUDaKqHu1fgvV1yHDh78ccnS/QcOumQF AFCu+KYfwMqKR/u5ZV/7EEFGA9a4anYGrB8hKH++rt8a9h4+HaD2/Qg+wXMir5jrfWPSpBMb 1M/Oz++dnl5LLakfUBmrsICp0sV119tvvb1kxcrG7To3atHGGBEBvEeE+8mZ7uMM83Uz8LeW 9HWFtwf8q4U5F1jZGPV/+77W/D6rlXsECwT9fsGNMYEfPs0cNtvODav3rls1ML/H8BEjqkDG KqnBuHRNnTJ116mCx6a+FJcYLXkAowHq5TDC8AcYgBjo9OD86YK3n5vQsWn9cU+NU2UsQM+s jAbj0vXdtwvmfbdk2txPZA/zuN3oaicLhxFGqIESYjQZKZNfGHH/mBH3d+veLaAyVmEvIl93 eTye/87/9p5xUxiFkscliGKV+T3DCKNy4ENUEEWX0xUZbRr00NjP5r3T9bauFTqAu6KocKCZ k7Jl0yZDbLXM+nWdDjfCQli6wgh9qN4mLAgOq6dBblOiM+3ZtSuguYuVETDG2OEjR2KTauj0 Ad/tFwYHU0Ep5Qfsav9paoqEWhQ4pKCOUsaowYij4hOPHjsWUKZVxkSEEEqyLOj0zHcoSSAo C4ODMQY1AX29Xq/TQwjLHNIAAEKA2yVrfWIgPOVdA1ANdzKGRV2gt7dUWMC86Qhe7wiPToXQ /rZbCdpMNEqIwWDQGcCp4xeO7D9wdN8e66WzjBJBH1GjVt3a9bIzsrOjog0Om0QJRTiEjhcK QfA5i3v4/J5eUw43lYvooy3ci/6H2veMMcBYlMWwf9fhn7/534W9fyaIl2pVN9SJFJAA3BI7 u3rhDwuZEl2vaef8HgMGGEw6l8ONhYCHUP++8AnV1c7T9jcqL2DhngsctJloCEFRp//fh59t XvRBxyxyb99qcTFZAoIMAMYAtxUliRw8fvaXn15+8bfF9z01KbthPZvVFdyzyf8mCOFk3zAC DS5dWEBvPT9RPvT95LszEuNMdqfsdCnajCA+RrJrxzfOSvhz0/E54/499NnZbbrkWUvcGIf0 dqR/AsICVnlcf7fODWoPdvn2CvVb/IrOIL49+Xn9qUXPDG/k9pBiqwcj7lbyHW3u+5bbozjd rFOLlKSE4tmvPKEzfNC0VXOHzYUFoRydYS9IVSI8w1Ueajo2YwxCn1/Blxyj+tXBtTdQ+SSQ Ad+2C22qpzlK/+NXCxx7Fzw5tL7DKcsKEbB314K6NFdpQAhiBIusnsy0mFE9Iv8784WiwmJB J6h7nNWdiNpfqo5Z/1SEBazyUPcTGIx6ShRRpzOa9AwwvVHPpUVv0Gtlppy8sbLK7wALgiR5 KC27U6cTTx07t2r+OyP6pksypYzha29hUp8iYFhq8zRrUK1pwtn5H31oNIm8rD/zFQlXKyiG 12ZVg7CAVRJqbNLjds+dPvWlRx78v1nTv3hzJmN07vSp504ep5Ts3rzR5XAghCillBJKvRFh CCElhIeMiSIbTLod61cv+/ZLnQHzGxilRhNevmhhTpI1rYbFLRH0VzUPVRnDGNqdSp8OKSe2 /Hzy6Dm9QecVJ4Q8buf8D94qLS7EGGkFPozAISxglQSEkBFijtKdOnxg6+o/7nny6dwOnes2 biq5PZv/WK4oyvlTJ/7z5msRkZGMAYSQJcZoiTVGWgwAAMaYyWwwRRosccYIs8leavv56y8y GjRGEAHGIACCKBZechze+FvHZgkOt4IQvJGAvlfGGFMUEhcTkRVXuv735To9ZoxCCBVZjkuM 0xtNS7/8XGcUQHgZViUIC1glwRgTROHCmQs/ff0fCOGls2cjo2PNURYAQKQlWnK71y376fzp EysWfSvqsdvl/HbuvDkvvLji+8W8vPPGP/5Y99vy916Ydnjv3i2r/sRYaNiypdslQ4QYAKIo nDtzTuc+lZQYqSgEVqgMBoQAQkpZo9qRR3ZvodS3RQ9CRWYd7ui7Z+O6M0dPiXpdWH1VAcIC djOAgEGEkCLLhHg2rvj1yzlviAYDIYrP7QERxIrkmfPC0wd2bq2VXeenr79Y+OkHJrPuh88+ mvvy5ILzZ90Ox+Y/l2c3aSYIjDHCzTZBZMf2768eA4x6TGkFcjJUTScTmhijd1867nDI6tmF kkeqlpIcEWXZuvoPvRGpp66FETiEBayS4EZXUmpiq9u6J6Wm5d/dPzImNiLKAhijlJrM5twO nROTU7rf9a9ta9edPHjgXyMebd21e49B9/zyzX8LLxTqDMa8Hvkz531Qp36jM0cPJ6bUpBRA proEQXFhgcWEMa5wpJgxXsiERUaImLpsViv2ZU4xxkQ9io5POHXkIKOXhQfCCBDCcbBKwueX Yy6HQ1Fku51wvwXwJeZ6nE5Fkpw2qfDCWZfL+Z83X/NIkoBxrewGbocTC0JijWSrR7GWFFNG Iy3RjEEAtYsi5vutMslovjxsb6qolypGEWKWmNjCixcohQxCFF6DBRhhAaskIIR88scYY4wh 8gJCiDCGEDEIRFEXadGZzFGJ1ZOnzP1UbwQFZx07N6yxxCcyxhDGEGCdwSAIouRx8/a8PkYK zFGWYjellHE1c+MyBiGklCEEHS6FAF1EZCT1VduHADAG3G63MSICIubN1w7LWCARNhErD+/O HY/HVloCIfS4XXarlTFmLS6SPW5zVPTZk8cWf/Fli04dIYSzJzy95uflM8c/8us3/9Xpka2k 2ON2UwojLVEx8QnnTh6HSD0zBSgKrJ1V71wRdXsIQhU4MEV1vYsYXirxiNE1I816SqgvdQPL HnDp3Jnk9NoonKZYJQgLWOUBEZJlUjMjq2v/QbJEMho2aX9HHwjhHUPui4iypNbJ6PfA6POn T5qjosbMeDvSEr3i+0V16jV84uXZEOKOvfplNGjscSuiDjdu0/7A9q2UQOitDAEVmVRPSbbj xMISl+BNjqqIJDCGMdp/3Jaa1QRjwHx5VaJOKDh3vuRSQePW7SQPhf6o8h/G9RE2ESsPhJDs IZkNGzfIbeywSg2bt8xp09LlkAc/MtrloERRBj80mjHgsHkSqiePmjxRloAgApedSB4l/96h sgTcLjejMK97r40rfj20a2+d+vU8bglCKMtSYpIlpVHHtdu/HdSzTonVw7N2ry9masoIRshm d+88q7/voS6yTH3bXqjegNb88mPt+g1rZWc6bW4YyGpKYXCE57DKQ2MiuiCCHrfHbnUzxqxF LqIoAABbqcthdSOEFEkqLXK5HB5rsZsQghC0lbo9bg/GWJbluGpxXfoN3Lb2T3UZBgCSJNql 74B1R1BRsUsUkDbf6jrEMMYIZeYIcfmGMzGZ7bIaZnhcEoSIMSYIYuGF4vMnT/S+Z5gsU/Vb VcaufybCAlZ58OkfIYSx4PsFQwixIPBPEcLcDIMIIYShr24zY4zXG+ffcjmktt17de030O1S vG4SBN0uT3ajzOwu9362+EhkhI4xwDMVr+pb10qXySCeOFO6bL9h4KhHZQ8BvuAYAEAQxCGP jUtKrSlLCkQVtzzDqDjCAhYQaLPd1Svqn+pF1c3AKI2KieX+DH4bgshpl4aMGnnR1PqLxQdi LQYAAfG6K8pSh9W0XcYYIcxs0lntnjfmn+o1fEJ6Rk23W4a+mmSUUp3BYI6MIoqCwtn0VYWw gAUTUOPKI4qitQMhQoRQCNGYV2Zutzf6YP4enYgiTDrGAGWMMcB8mfiUAUIZQijGYjh6snja vMPt73u+W79efMOldosKzy7mAYawC7FqEBawIEOr6y7Tb4xhjBVZiYiMemb2e8VJ/aZ8cmjT rnOiAKMiRLNJNOoFg04wGgRLhBhpEm1212eL9r/9C8sf+3bfoYNsVq90MU1Sb9kjwuGvqsLN eBHDBkag4BUMxhDGkkfSiboxL03785fOP373nx837ayXzFISDNFmjBF0eWhBiXL4jPOkIyGt 2V1PP/tg9ZREm9VdBeeGhHEjuJkD+LT/C8PPUG1FjDGl1G51d+jWuU3nznu379i9deu6o3vc Zy5CxqCgj0qqU7tPo34tW6akJTqdxGZ184T9sHRdB9y6roJVaGUKjwLfkV08hyfckQGCL37F IEKAMYfNDRFslNukaasmjAGFAEqBIACMAGPA42GlJS7uydSahWFcCeatZcIg9J57FjhJq0zh UcaYgBFVZJ5LGu7IgEJdRyGMGWMup8drNUAAAZQ01XIQCiuuGwJPgoYQUKIISAgoxyrs5OAL 5dSUlOJLFxTFe/Bk2OEbUGj9HwghiBDPJ/b+jTFESI1rhaXrOigrlACRJEF70aWUlOSAMq0y AgYAaNm6denZU6eOndEbdbxuUVjMqgzXdDyGcV2oljMlxGjSHd1/UCotapzTJKAarDImIiEk MjKyZ9dOX73/5qQ3X5ckhRAFQQTCscswQhyMEUKwgHV6+PX7bw7I72kwGPmhGQF6YGVEwlv5 iNGHH34UJdYaNWECwkByA0pJIEgEvhrRYQQLfwv+3wiRECGDAUoSeXfqlGjqeOONmYyxkDtC FvhW0m63e/Lk5w+eKehy5+A62Q0MJhOAEAag3rcgCIQoYe0YFEAIMcaKogSbkOuAQYgwRopy zSmeAcYYczscB3dv//27+c2yaj3/wvMYCwCwgJ5wWXmjjlHvhqI/fv/9h0U/nrlYCDBmXueW X2lkwGqzRkRECILAKAufs151YAAiqCiKw+GIiooKNjXXAAMII0mSnE6XxRJ19fHMvP9BqqTV qNavX9+8vDygSZIOIQ0GLq/JzjUsAECWJIfDwSj1ozHBGEMQyory2ONPPDdpUs3UFFlRAmcu h1EOlFJRFI8dOzZ9+msffjAnNDMYKaV6nW7b9u1zP/703Xfe4pr2KkQyBhEym82CKAIACKHc 7RroN6pMJkdZQirPUiUEQijqdNE6nb/JAwAABoDZEh2XkBAVHR2I9sO4PmITEswWS3RsbLAJ uR5i4xMiLZYoi+Uv7+QeBO1RoAFFJVOlypIMIOQqJRC0Ml9FdbvNJksSY4xSGtZgVQbObcnj sdts2rV3sOm6DCqRDrtdjRVdh0g1tlE173KTJ1wGPAjDBfiuQYMslijo27AYuMeFoQXndmxs 7ODBg1S2hxr/ucBUr5505539Q5DIcOQqjDACiJA2t1SzRFEU9fdgE/UPgpb/2ishBU4SpZQT GWoZRSGtwULQ4v+HI/R7JNR2EoS0BuMghHw1/5uSklIAAKU02OT8g8C5XVRU9NXX84NNyzXB iTx79tyCBd8Fm5arIKQFTNX+C75baLVaQUiaKLcwOLeLS0q+/Xah9kpIgZN0/vz5739YBELP RAzpwqOqlzImOlo9gyfYRP2DAL3F3oSYmGjtlZACJ0kUxejoaBB6FP4NNBhjrKioiBACQnIG vYXBua0oSlFRkfZKSIGTJMtycXExCD0NhqdMmRJsGq4HPiHVqF49I6OOTqcDoTdF3dqAEIqC UDOtZnpamnoluCRdCQihTqdPT0+rWbMmuLwcZdAR9iKGUQGEfo+EvYgVBmNMlsNxsCBA5bks y8Gm5ZooFwcLNYSuBlO3EoDLUx9DfxK9BaDdMKEyv9yVUEC5IRGCRIauBoOaRfZ7739QUFDA AOD1P4JN2q0PvojhiecXLlx4770PeLgp1KZjCCEn8tixYx/N/VglMnQGSegKmHqysCiKa9au gwiHDxSuMjBfxUuEEANg9Zq1/OAYEErLG+DzGSKEPB55w4aNvOIqCKWJIHQFjBICIVy3bt2D /77/xJHDj44e/dPSpQghQgJV+SMMFYwxXgpm6ZIljz/8yMljR4Y/8OCGdet5yaNgU1cGvldl 3qefPvfshIN79z48avTxY8eqZqPXDSJ0A818pkxNTV21cqXL5Tpy8NC48U8Fm6h/CiCEjFK+ V2XVypUIwosXLkx76UUQehoMQmg2m5f9+ovJFAEAq5aUFDrSBUJZg3HzOiUlpf+ddxYXF9/W 7fYWLVqEN1xWDSCECGNKaas2bdp37GCz2wcOHFgjOTnU1sB8MHTv3r1ZbnOX0zn03ntNJhPf Yh9s0rwI6cHK168dOnQQBKFd+/YAwnCyb9WA+c4TgwB07tyZUtqxcye+ozzYpF0GvuE9ymLJ yckxmUwdO3ZgvhMMg02aF6EoYKqzlbMpt0XzlJSUlq1aans3pMyAWwzaAAmltFlu84yMjCZN moDL99sHmUoAgCZ+0yavbe2MOtnZ2QAAFEprsBBKlSrHFG6NIIQiIyNLS4p79e6l1xsAAIxR oFkJhM5cdQtA7QK1/AlCKCoy0uF09rzjDl+No/JWYhC7oGwuBoBR1q5jR34ldNYRoSJgWs2u di2EsKi49NiJUw63R2+MQAiZI0z8Ohe/cpHoMCoNLRsppfyMdgjhpcJLFwsK7Hab0WTEGBuN xnL8D25UF/rOoYcQptdKj4+PDzUTMVSUqbZoEYTwUlHxgu8Wbd2y0V583og8RoPokRSHLBij Euo3zLlzQL+01BrAJ4ohFVj8O0KVLtWHdPL0qe++W7hr557SYqsAdKIouiUPQDQuIbpFy+b9 +/WNjYnVlu4DwZvjCCEY4//+98vfVqyY8dor8XFxaq3OUEBICBjvJ84pAMCcDz5Z/tOCZhmW Hnl1M9OrW8xGgBGgzO50nzhd8OvaA2v2XGzcssv4MY8bjQb+rbAeqzS09S0xxi6Xa9bs2evX bM6u1bBVTpvkpGSTyQQhopTYHfYTp4+v37L2+PnD+f3uGDVihPqtINIvy7Iois9OfO7Djz/Z uml9elpa0EnSIvgCppWuwqLisWOfihcLnhnePbFmIpAJkBRGKU8sQAgCUQB60Xax+J3PV2w+ Js+cObN2rfSQYujfEXzFhTE+cvTouKeeqRlfe0i/exPiEjySW1EUSglj3vp5OlEnCOKpMyc+ ++YTFEHfeH1GbGysejpJUCY4RVEEQZg67aXPPv/iz99/S01JCSkNFmQ6VHcwQqiwsGjEyNGd stGsl+5LjLdIxXbi9FBCvFMAY5RQ4pKkIlukUT/x6YHDe9V6+KHRBw8dwRgTQkJtp93fApxp XLoOHjo4evQj3Vr3HjPiKaPBUFJa7PF4CCE+9jNCiNPlLLUWx8clvDD2xbTYzBGjHioqKlKt 9CDyXw0hhJoVE0wBU6WLd8y48c/k50Y9MKynXGhTJEUUMOeV1sqHEIgCJoRJBSV39G4zbnCT 8eOfstntIZVA/TeCyjerzTpu3DMDuw3t0alnQVEBoURNPix3P8aCLMvFJUX33/Vgg7Sm45+e wO8K8/+qCKaAQW+Ne4ox/vDjz2LghQce7C4VlCIEMUaqw4P/wk8o9nmNoCBgqaDk9l6tO9Q3 v/b6bD6JhpVYhaByDCE04/WZWamNbu/Y41LxJQELCHrLoUMIMcIYYdWvyLyF3VFh0aX7Bj7g LqWfzPsMIaROlLcwVFdcuV+ugyBrMMYYQriwqPiXxQsmjuhG7G5+BLFKN6WUQQgYKyyy+QTS 67zCAlaKbY/d1/XgjlV7DxxCCFEankQrANU4379///bNu+/uN7S4tAgjDDWHe1BG3R6Xy+10 upweyQN80yKXMZfL+cBdw79fsKi4pFid44L9WlUBSqmaNXb9Vw7yGozbzd8v/imndkRCWhL1 yNi3XObdj0UBRxlf/XTFyx//BvUiP1vT28cAMEJ0FnO3lmnffLMAQsjYrT+J+hGqFH09/5sW jdpERVrU47b5p3qdftnKn0dM+Pf46U8+Onnkh/+dAzTjCULo9rjTktNTEmot/nEJ+Afs1lM3 7HB9TghRs4uuNbkI6kKoSin10QQAgACsX7NyRLd6TFa0C2XGGMT4zIXSWfOWf7Ns579ub8IA A5BB6JVABgBCkLk8d7Rv8PQHG50ut0Gvu+X72I/g6svusB/Yf/jffUa63C71bA3VYbBz346e nfLvyh9aWHIJqZz3DSYIIaFKi5zWa1b/ce/QoYwFoTIsVybMl9jFEaBncWFxOpxr16zJbdE8 Li6OX1cURRvd1noEBDUWHiCa/hKSpCjOorQa9aGsqDMEpZQxgA3iqs2H42LMT97T/tjpIggu P5+WMQggUJTEBItArEXFJSk1koL1Fn9H8E4vKiqS3UpiQjVZkYEm1g8hdLqcNoctMb7awWP7 Yy2xKSk1HU4HuNztJMlSzRo1V2x0SZKk1+ur/i14rTFBEBhjBoOB5wAF9IkIo8mTJlIG8vvk d+vevXGTJiaTSf1UnZs4J70arLCw0G63Q4RAFVpYlFKM0b6DR3VYSUiMITKBGgUFIaAOz4Cu jXU1YuZ++KtCKECQgTIJ88ohBYLJkBRrXLV6Xbs2zQkhCIVjYjcEQogg4I0bN5mNFr1e73I5 AQDqUkoQhAsFFw4fP+ByOyIjok6ePTE4f2jPLr09nrKVGIRQUeTEhGqKRNasW5tZJ4OQqt5P RIiCsVBSUgIhPH78hOSRArenibdss9v0BsOhAwffe3fOxx9+VK9Bg9atW3fu2qVOnTrxCQlG oxFofKoCj4HMeuOt+fO/iYyKrFIVz4AgoIIi220ta0GjSEpd6ulfXkOFUYQgsbsVhUAIAWPl jD8IIWEUIWg2GceNf6ZGYowsK348w/YWB2OCIF4qKujffRDwuROBT3gooZFm8+h7Hm1Yt3FG rbqLly2c980nzZu0iouOkxVZtYgIpQLGHrc0YuRDlkgLIVXOfwYQRk6nEyM0YuRojHEAD/Jm jO+ZcllL+Gm0lNId27evXrly1syZGZmZ7du37zegf167dnq93qvBOE9HjhjWv39fAeOqdBEw SgVB2HvgyO8/fg49CkJlRTeYJjtOUK3bK3qOZxhAxpxuz3MTJ7Rr00KS5dCJ4oc4KCE6nW7D po0b/tjGr6gOJAghA0yvM3RpeztjrLD4UtOGuf/74YtLRRcT4xK5Mem9H0BCiKgXX3t1emad jKo/RJsQotfpPvxo7pKlP8147ZWkpCRKCAwMDYxShLHNZnt2/PgTx4/LVpsg4JSUlNZt27Rq 3bphw4Y109KMBoNOp1O9Cd41WHp6Wnp6WiBo+ktkZddftvjLSxdL4uOjiUK0GszX0/xKeX8o YwxChiAiTs/5QsfoXj1rplSvevr/7oiyRP665HdJlrRHAVNKTUbT5p0bP/jPu9OfeT0jre6S FT8wAJISalx2VhhjgiBcKizQ6YVed/Q0GozBeoukpCTKWG5u08SExEA/y+12y5IUGRnZ9fbb O3Xq1Klzp/iEhHL3lJmI2nQKdTRXDXgP6XUC0EWdPF8UVyOeyQoXIlXAOFWyQtyeMh+jxhcC oIAKC0s8ICIuJtobnQhrsBsDoxQhFBcbJ+hRYVFhQlyCrMiqlej2uBvUbZRVO/ult1/ISM/a vX/H3X2GxkbHuj1ulf+EUaNOf+rcKYNJZ9AbuDOtik1EoiiCIPBHO52ugI4BzjGPx/PkuLF5 eXlp6en8On8oggii8o7EYHoRffljrEWrvGXrfmvWqj5jXieHSiXGkLk8d3Vvmt+xAXOXmX/q RItNpmVr96dnNoiIMPKs37Cb/gbBICSEREZG1qqTtnHb+n/lD/JYPZCV1WbDGD8x7Kmd+7Zf Kiroe3v/mslpXLrKoimMCRhv3bW5ZasWvM2qz7pmvq2DAADVhRio8YwQAMBisdw9dCjwlbTg T+cDT5sv5iUpIHTcGFRS+vTuuWFfUcn5QqQTOdGqpoIQMkITE6PS0xKZdpMlhIwBiBF1upeu PTJgwADALmszjL+El5mADfzXnet3rOZxMAbK3PS8L1rktO59W9/U5Jpuj1vNluI/RVF3/uL5 g6f29emTD3zTdrBfK4BQQ/A8xAwhVCVZ1erlvhLkVCmew5ZcI6ltpztmz1uGo4yUllU/Vk1E IhPikbUhTgAAIVSIMc/7emVCek5uTkPKqDbHKoy/hJf/hDXNyalVt+Z3S7+NscSq+xJUKXI6 HTa71ePxqPz3uhkZjYyI/OLbz7r16JqUWI27sG/tCa5cJgfU4FpfCbIG4yCEPPLQiH0XdYsW rBLjLYpC1KxCr57lm8F83wIAKLKiizVvWbvnu9WnJ054Wo0u3Nod7F/4OAwYY5MmPrtu58oN W9fFWGIUogDNKgIhhBBWhQdCSBlViBIfE7/wpwWl8qWHRo3kldLCzL8Swd8PxnvOaDTMeO3V D348tPj71bqEaIihohDGypQy8Po8gEIIA0CXEL1l/b6Jc36f+tIriQlxav5BcF/nbwfVFEyI j3/55Slzv56zecem+NgEBph2i52G/0whCoY4IS7xh58XLt/45LRZhQAAAjVJREFU08wZr+r1 ei6HYfPhSgRZwKAvNZsQkp5W87333p/386mXZnzjkhUxxowNIoSQEEoZ48WMsF4QLRFIQB98 tHTy3PUvvjKrebMcRVHUJWZwX+dvB1VHKYrSPLf5q6+9+NnCjz776mNREC2RFr1ODyGklDDG KCUQQoPeEB0VI8nyrA9eW7njtw8+mJOamsp3NGvX91UPqLFxQgrBH5RlNj2lGGOnyzVr9jvb 1/92W4vULq2zateIF6MjvHfaXMfPF63ZcnjJ6sM1MnInPvt0XGyMVrrCGqwSUPlPCBEEobCo cPorrx3ae6x1Tl5Og2ZJCUkREWYAAGCg1FZy7sK5jdvXbdu/uV3HVmOeeNJoNHLpCiL/eU2O iZMmz/3k000b1oZrclwFat+oWWT7Dx5Z+P2iPTs2GJFiNgK9gGTCbG7qlHF6RqMBA/o1y2kE NBVXwtJ1M1C5p/Jz247t3y38/uC+IxgKBsGAsaAoskdxM0SbNW/Sr2+fzIxMoOmvIPKf1+R4 //0PF/6w6P8++6R6UlJI1VcPCQEDlx+dxlUZv37k2MnjJ07KkiwIODm5Rt3MOhh5h4LW7g9L 101Cm5vGGOP8p5QeOnzozNmzRCGiTkxPS0tPS+f3axUXCPP/2ggVAeO4opsRuCJtkxACAOQ+ 0rDi8i+05jq4WtSYMcAXY6Eztak0q46ukBoVoSVg4IoN2NrA15V+wtDh4y2Dvx3/VQHjf4YF LIww/kEIlbVgGGHckvh/Ce+2r3Viz1oAAAAASUVORK5CYII=</binary> <binary id="img_57" content-type="image/png">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</binary> <binary id="img_61" content-type="image/png">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 na7vLykpuXv8fYPuuHPk6DHDR43pP3DQihUrd+/e8/SkZ1lFBh/9YD2Jjy5WAEB/9fXtpUuX /fzLrx9/MrNr916nT5/WD0MIzZg5u9+A2/Py8hhjmqbp9+vJFe1JDKSrr6jCLaj/pA+kL/Zm e3cRhOBiT8lTgmS2CJLZXlxACTFZfcErteNlRV7F3whzPKrUnBfpjRdrGnZ2TIEYu5TSrj+l n3/+pUevviNHjx0+cvSdQ4dNePDhtPT0pyc9t3//AUqpqmmeg/Vn6P2Q9RLS0tKnf/DRkaNH u/XoPfW9aQgh/Znn5eX16Tdg9uw5+umeNvU0hCdnk+cr4r0HLtkhyyVpxdeyGqo25+P5rmCM GKFXokXC9YgA9Kgz+kjKUwHGGOZxdq7y2tycKQ+FRdYWgbH/zcrJK9Y+eyUCc7iwWHt5ds6k MUEN65tUN+U4xCjjedA09uzMM+P6+7dIsGguihEIVu63P4tnLy70tWAKoGkswJd769GwmQsL 7rndP76xWXNTgdebXA+xAUJBX4qCUNBFG/P6jDAEUG4PO8fEUwl9p6ppaenpzzz9ZFx8HNEI oSQ6KiopOSU9I4Mx5p0oWt8uD5SilMNYH+sihHYkJd8xeNDKlatSU1M3bPhn/PhxGGO73bFy 5R+ZGVmyLAOAvkSP59KeAi+4U//fs+4FO2/wX/4SIygXBhd5NfQewovS/g0rdq5ejBBW3M7G 7Xu3GXwPY4RSCp6gnvL0+ET3qiNAlFLkuTqApiq/z3il/Z3312mSqLjsCOvZrynGHGOMEgII lT/xi0cVn91zyabxtE5mVmZISPA7b79JCGWMmkwmfz//EydOOJ1OjLFYYXX2PEl9ORBPPCRj bOeunT42H7PZnJWVtebPtY88/JC/vz9CaNOmLUnJyZ06tmeMeRYR8ZxVyZ6tV8a7vco/lpcz A5ffXcXBFzusGsEQuxpv2vWa5XB+KB1CiBEWGsSnn1F3HXZFxZrOnJKTUp2lDnr4lNKkhWVf svtomlwrmMcikiQOGAJgzEUZQ6knZMqA8+U4EYGLMg5OZ6sYwQsTQjWFMgZmE/az4r1H3WUO is1Y5BB1UwDgfTjQGBCGfTHYKSFM8OVAY9RNvauHKmp46SYu/xmBxWJp37597doRZ39jzCRJ CKFPZsxq165Nu7Zt8/Pz537+5dNPPfHZ3M9jYurfNXTIjqSkJT/9/EvtNCYAACAASURBVPpr k6lGCouKWrZs8fvyFf369d26fdvo0aN4ntuxY3tAgL/ZbJIVBSH0y69Lly9fAQC9evYcM2bU iRMnf126zGKxbNm6NSKi1gvPPhsYFOhwOD6ZMfPYseNWq/WRRybGx8Vd1mVQ8etF+60gSTkn Dm36cW6HYQ+FxzQuzT+zYvZrvCC2HXKv4nKafPwo0TDPKy4H1TTJ7IM5DgARTcU8r7ocutST LDbZaW8/9P7A8CiiybqWhAAYY4rLgTA22fwopZjjVNlNFBld0kqKAF32nfZ8Y6OjouKaNPHs dzicPM/7+flt2Ljx0KHDEx96EADmzP28ebNmtWqFz/50zhuvv2az2d6d+n7D2Nhhw4ampOzq 0rkTISQ+Ps5sNv/zz6ZBg27XNDUpKalzx466a+/wkSOffvpZWVlZdHT0pKee9PXzXbhocUlJ aXp6+rFjx0ePGjFkyGAA9PMvvy5fvhIh6Ne3z4gRw3Vt9NIvGdK/kDVBxynnKoNmb9zcccYY pSDauLYJlpSDrsHDgnYccDVrYBYE2LjT0aSdz85DroT6Jr86YspW+7wVxW437dbaZ/RAf6ZQ fx9u9Rb7j2tKMIbHRgRFNTYzgAaRYpvefuAmgBDIzJ2nSiKyWbntO+ypx9z3DgkEBPOWFDRt IAX78f+3rOiFe4J9AvnZ3+TWCRXu6ONP3BT/qwhjBEhV1WnTP6hTp7bbLQcHBz088SFUobys 37AxPKJWu7ZtnU7n6jV/Pv30E4ktW77y6mvRUZGTJ0/p37+v1WJZt35DYECAzWYrLi5p3fq2 3bt2px5Mbd6s2foN/7Rv3279+o1Wi2XjP5s+/mTmG1NeE0Xx1Vdfs/namiU0nTlr9mOPPvzo wxPfmzZ91pw5U16b/OrkKSUlxU8+8fi27TueeuqZ7+d/GxYWdjF94QobCnN8SV42ADRs090/ tBYnAsLYVVrEGJOd9n8WzSnKTvMPq91m8D3WgOBda35ylRVnHNrZsE0Pe1Fe066DbUFhbkfJ 1l+/btyuV+7po2YfP5/AsNRNKw9uWYMQiu88ILZ1N1V2b17yReaRvSYf39a3jwuOrK8pFzWf 6Q/9CpEkKTk5Zdr0Dxmlblke0L9fi+bNVU0TJfH48RNbt+3QJc7Wrdt4jmvXtk1GRubHn8yM j49btuz3X3/50el0ZmVnt2jZIjs722QyderQYd36DYMHDzp8+KjT7WrVKlFRZKfT+dTTz/bp 1bNHj+5ffPnVcy+8+OUXc7dv37F569aPPpiWnp7x9jtTu3TpsnvPnhkzZ735xus8x09+fQrH C3cNHXILR3tdITcutAEhxAAxQK0am4+lKUim2/c7WzQ2tUuwJKe6kIPuPyZ3SrRmnpD/92lO 99bWB0cH/7qu9MdVxZIPV1RGkg+6Bvb1E3j89AfZzE3NItpzVJ4788ync3I/+uTMzh12nkca YQKPDh5z/7nVjjiEOLR2h333EXdEA9OeI65ZiwpWryv9amlRfH0TEHaxj/wVommEEKqqqqpq nheIMWaz+YiCoH+r/f38nA5Xz549Jtx/36jR41q0bP70U08ihHbt2h0fH8cYk2W5dkREw4YN N23a4nK50tLTO3fu5HK5eJ5ftuy3YXfd2aN7t04dO9x77/gVy1cqihob22Digw+2b99u6JAh eXn5ZWX2PXv2vDb51ZYtWzzy8EMhoSF/r1tfYfT9N+jVVt2uqLjbAmtFfzXprh/ffXzjwv8L rx/frOedmuxe+/U0VXZ3G/cUo/Sv7z7keOHojr93rVkSGX9bSHSj47s2H9/1j8XPN+1A8tGk DSYfv+QVC1z2klP7tq/7fkbj9r0a3NZl3fxPCjJPJa34Pj01pfOoR0KiY9d+/b6zpJDj+ItZ oK4WyhilVFFVRVUYMF09opRKkmS1WvSr+FitgiBwHDdn9syk5OS33n531qyPIyIiDqQeNJtM oSEhiqLKbrlbt64nT55yuVxbtm5r3LhxcHCQKIgpKTvNJumZZ55u0aL5lCmvHj12PC8/32Kx 3Dnkjs6dOo0ZPSoiIqK4uHjFipUjhw/r1rVrp04d7x439vfff4crs63e2tzQ/DgYAVJoi4bm b5cXZx5zZ+Sow3v5BfvxXy8rOn3EVVhKOje3/L6hjDHk68OX2kl4ED9/RfFdvfwkAT09Jqhb V98OsaaBT50+cshlNWOHi6ZnKSphLpm1amxCGBhDjDGThH0s5XYBmxULPOJN6LNXak98J/PH tSUfP1srtpFZK9M4Dl3Fp9ML3Vgz6eknGzSo79mpKzgVv2J9qE8ppYwCQP2YmLz8vLrR0QCg quqxY8ceeXgilL9/tFfPHt98+93atX9H1qlTNzpaURWNEIfTGRQUpHtGAgMCZEV2uV0Wi4VQ jRAiy7IoCA6HnRd5i8WsL08aEOBfUlLiscX+O/cQAKKUWAOChr0y8+CmVaf3J+1e89PmJZ8P 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</binary> <binary id="img_10" content-type="image/png">iVBORw0KGgoAAAANSUhEUgAAAb8AAAHtCAIAAAAGN+fZAAAAA3NCSVQICAjb4U/gAAAgAElE QVR4nOy9d5xdR3k3/jwzc8ot24tWq96Li2wjW7ZBGDeMTcA2PRCT0BJCQgiB5IW8hB8BfiSk EEpCQjdOsAGbYjAu2HLv6r3uSitt0fZy22kzz/vHuffs2dt2tZYsK5yv/Vndc6Y9077zzDPl IBFBhAgRIkQ4RbCzLUCECBEinJOI2DNChAgRZoOIPSNEiBBhNojYM0KECBFmg4g9I0SIEGE2 iNgzQoQIEWYDEX4gIqWU53lSyjJ+acpPLO8yc/iB8NSdyr6v4lQltplj1iKVDXVaRKqSdGn8 gc+yTgFK3wehKjnNUKSZCDmtU/Vye2U2gFm08EpOpxT/6W2TM6/WSnjZ+vuMgDMp6CluqAnB BUdExLzDFPZUSo2Pj2ez2ZgZ54wDQOAPAKbdGRptHY0QIcIrH2Fam4kTEdm27bpufUNdIpkI 3k9hTyml4ziGbhCR53ml0VXnxyoylRWokn8/lUrZqBLqVIOcEoriCR5nJxJULS4/4LSSzzzL MxHylDLy0kt7dvUyi9I+0ziLIs2iFk670wzxyqnuGZJYOH4i4pz7HFqRPZVUDJhSxJCCuMom Vlb0U9I9iah6JJViq/K+SkETEWPFRt5TVZYrFUUV/7MoqHAJzFrfL31fXc6Z+5lF0jOP8yWG Oluzn5dHpJk3pDPXJmeNmTTmKgF9gYvUl9NStqVqAZTk13/knEupwqU31e4JRAAMWThMWZyW 0qzi5ItYyt3TaqyzTrF62KKkA2Vt2mjLDj/TtlREVEpVyWypSNXfhxVMKGmFZXXPsM+XWfes opvPTtN/6QrgaRepUmyloYJZyGkZwCpFNW2oSk4zRDiGIgGmLdvZMX5ZBElXKoQqkRMRgQq/ EVPdAQiowiJQEF31KWdY0GkFKoVSUoEiRUIIQPCHnMk4AX1mASDP85QizrlSUmha2JobTlMR gSLHdXVND0Ywvz48z0OGXHBk+ZDVGjRgYGt2XYcUCCGqlwacetf11+s86XHBBefVl3fCGZ5S 8iWm8LzwmHdCQMqPlZOeCxnMxxeKBBEAcVJzJ1Jh17B4hfeYD1ZYdCqteZz8tyRfQbpYHDJc C0UxFZQTJFAQboZTvJUEREBAoim9Ymq+oKg0QlEjASGVDVL6HGhPpaVRJi0qVBMRuZ7LkHHO z4QNKnj50mOeLlGwbdswDQh3Vb/8lc+SKiRYviUQABJ6nksEguf5ChEVSSmlruuhRMp0/zKu CLZlaZoOlTXFMjXkqxFTubFE9yRFVL6GAmVQqdKmNsVblZqYnvJBIcP6xvpK3BQePcbGxmzb bmpu8j1XSdR1vKHBISGET76IqEjF4mZtXS1MpwuURXoinclkfWvIzENNCz+2ZDKRrEmWdS0S MiiNSlkIvy9y9etxhgpg2UlT2VlPpSBlU6mStUrRVnkZaMrTKncwtUyKpoGnN60iRbIoudKA fvucUnqKRoZHpu16r3B4nltXVxsP2Q19+G1YSum6biwWK6sdE9Ho6KjnSN/+ppRSpFpaWxhj 1cu/LOE4jjM8PKwJvag8w4bO0qiKGgkU654lwfzoFBASKCXBdZCIdNNPBUPM7W8fQOkSeMQ0 QK0Qw6Q+iwAOuJ70OKBADRABgU3dc0pE/jBbJI9fvj5LBnxhGIbjOOES9HPovwnKQiklBPcV Gf+9r+LpulE0g3Bd13cqqhIhhKZpYZF4SJJTnYFWn6oAQpDNsmGr1HG45YXbTXgGVOoUBC+N uVJTnqEw5TPu/w4lGlToVMJVAAxAKUAEAqo8m0FAQgWKEUIFaSvJGR57qqNEvOltSqX5Kk2u qISJKJPJKKVqamp8pvA96LqRy2UBMGy+rzTknOpQVOX9tBHOEERKERmmCUQwtRj9UeH48eO7 d+/euHFjXV1d8eBBBAAxMzaWGw/emDEDpjbFwL/rup7n+TEwxrSSian/RqnJKVT5PZoFhDTl KuyZn8yV2AUIwMo6u140+3pRkV3fzC+7lCWapuixyqXUXp7ZJyDlsiYVv5hqFgNMkiAC9OZ6 tkw8n2EZnbRlxvI1yQt1ZiqUU2eFEM5qIENnZ+fQ0NCGDRtKO4Pv3zcUuq47Pj5eW1ur63ow zvs5wKn2I5qqYyOibdt79uyxbVsIMTAw0NraGvCybdtXXHGF33DztVJ1mArLVmkcqxKkUoTT OlXSoaYVsjS2GXanwFv4sdRz/gcQKAJAIqUQOTIomZsHj5IIpKWQIQBjHCvbv5QiBiDRb9vF BrXSrFUoiTIyBFmrJCSUK4pZJBe0Scuydu7c2dfXt3bt2jVr1uQLlghAESnGeFHS08pf6nSq bbK60wxBBASE6FfRpN7tK9onT548duxYb2/v7t27L7nkkkQiQSE/vgBBZww3uXD39x8ty9q6 dathGP5jNptdu3ZtS0tLUe0wxgrmAnIcp7e3t/r81UdDY334sWjmPilZWFCJJB/+Vf3ePUp5 RGDokOo7Dm96B6uty2dSSRh/MT56L4c0KU+g6VgHbXo71CxHZESEgMdznb8evaebd4ElgMFu Z0eWcpfXvJZ4saUg3En830ePHt2yZcvGjRvDfsr+9ov4+PHjCxcuNIzJ0QnzVTZFCwi3CL/c s9lsLpdra2sbGRnxk1NKMcYefPBBKWWgC0Chj07bqqqoJJXDTFZEdZ/VKbhsEc2821TppZWU ymkF9utgbHTkyReeuXjdpfPaWxnwcLMOK2sIdOe3/7Vx7TVy6Pj6q25oa64NJ5GfFSkFALl0 diibndc2B6B8RirxxUwwk4oo9V/6u9RPacMYGRl56qmnOOcdHR2JRGLVqlV5TZOqxXaqmE2b fOmJFv4LG+X93p3NZm3bXrZs2djY2Lx588bGxjjnpmnC1MKnqcOMH0NRs7Fte2xsrL6+3jAM xlhNTc3Bgwctyyoa4agQkf+vlDKVStXW1pYdFMPw19yDxyK6LRYuH2awy9i9FYABIyQAj2kD Xfb+HXz9a3x3tG1j5BkNJkABQwbkMLcP0ttyxlzS4gCklLsj/UK/6kMlFBAqdJj7dOrRS8wN AjUJk2qzAsWJhQm0p6dny5YtGzZsmDNnTthOgQUjbFCmAMAYa25ullIePnx41apVkxaAQokF Pv2AQYR+bEKI9vb25uZmxlgymQycAmvLpJxK+cMdnFb4YyyE6risNywxd1YiuLI6adi1em8P qKc0SHVqqCQzEVpe9kTf8cUrzhN9x7tPDi+Yt7SlKXmyt/fkyOiixctiut7fc9yScvHShf2H D3itl453HDAa52WWL100ryaXUieOdyQaG5rbFlrD/d19fa1z5u9/8bGfvXDos3/95y11dVgu 8bIizYJSTzXLUKGow9QfwHXdBx544Oabbx4cHFy9evWSJUt8lYoxBgREqBQAnKt2T/LXb0ty nc1mn3zyyVQqtXbtWiLq6urq6upatWrV+vXrGWNTbBpKBZ1OKUU0JSq/L2/evPnIkSM1NTUA 4DhOY2NjQ0OD7xTuqgXqmKQCxliRSSToWUXT3PDaVLGyqkgVjd+IqPpHYxIUByQEQEIycp47 nlFKITBAIhoHGGeI5C8TIiGzpRpXykJlAoDtuTnPlkrl9SoEAkrZKUc5oIAVJvgQojlf3Ewm s3PnzsWLF7e3twf6eTiH4cEkcGppacnlcsePH1+0aJGfBSAsy56TdVOAEIJzHkwToDC/KOWy Kuz2UuBXdnVDTJDrKvPlIp9Q2do1rTzhsq0e4XQyE1HeZtK1d8uXf/7AmlWr+3qOX3PjDY9t eqgxXj/iittuvf5HP/pRb+/QH3zwzwiJERw/sv/EQHrvnr3f+Pa3f/yDf+8fsrO59Ec+9uGv fvr/NC5fN3/RPJGdOLD/UF93f0ttkmZ8dcOZqLvSJMoaT8omPTQ01NramkgkEomEzwtDQ0PJ ZNIwDAD0ieNMC3xGQaRKM66Uam5uvuKKKwzDOHLkyMaNGxcuXJjJZIL+WGQA9aGUIlUcGxHV 1dVde+218+fPV0ql0+kdO3aEO3hxPIoUKCj0ODU1wtK1u0IklXRPn7rUpHO+cyaSLmPCpz0A BFQa92IxRkSkgCGA8KCGaBgIgBAYAnGAGIHw+wsi19HwN2D4yRPIuIgTAoEkmrIbJsxKmqa1 t7f39/cPDw+3traGx4SgFIJsB3/T6bTruo2NjYEfBFa0g5IKZQYhFvCJMlg4KlPi+TfoiwkV NPxwhVXirLKhKD8+UzhHRSid5FbyWeq5klMlFKmuZTl0hhEW7HcAhEhwcOeuV7/hLbfdev3P vv+1px5+7qqr33TTGzae6Ol3J4Yuvviy2uT+oeG0JJIKlq25+MZ3vO/2//hsf39/ZiL7qc99 dtPddxzvHrtgw6sTbXPnzVvYSPZo3cKLVi5zCbDM3qNpsvYSfVZ3LWquVYIgouM4ENoLsXnz 5vXr12ua5uskighL+KJSKzqNbbJ6hDMEAZEqs2cg6MKMsTlz5gQTnUBPCpIuqJ4FviuZnwUM KKX039u27XkeTd2rEMxZlaJgB2SpepRKpXw6nkoalfd7EvixFg+YrK09u2BRsvsoAwZABOTU tdHiJUopAASJyGJO7Dw326MxV5EiAAfqbWOlAsOfbwjgK7RVh539I9qILwAjvMC4WFAMla1C MlFBQ4fClHnVqlVEtHnz5g0bNjQ2NpaxX0ydEaRSqbGxsZaWlmAMD1XTZAEFFRDE5ntubm72 jdZhUi4KGwxXMIOGVb1flX1ZdpQuDUhVN1FXIdlKlFo0zod/lwYp2wOn6bcEgIoIEHDugvYt 2198ujXW0TOyau2KQwd2xYWz98iJRU3Gi5t3M0gvIpIoOCrGGABDxoQRj+vagw8+2NEz8Prz dSOeyI2NPHv0+DWXXNB/9Gj36GhbYz3MmBdmwpvhfJWNBApKSqWAZYmy7F6xuro6zvmxY8fa 29sBoLu7WwjhT0IVkSJSpLBkaDil1vVSQs28uCpFEHSo0maGiJzzdevWFU3GoaDQAICa2tmD DujDV3oC5g3eLFy4sKamhorUJspTOUMWBAmLR0SWZSmlAmNoId0phVA6c6fSYkLG3GtvST3/ mNbRwYgyc9u1170OmlqpMBcDMGXtFaMKzOxWAUMWzPVqNsrEmkIZEIBaHFv+BnjzI+P3Zyhr onG+ue6y2td43OMeJxbqqFA8CGiatnbtWiHEli1bXv/614edikYMRPRXfhoaGhKJBISrvDBx D9dNUNB+yXLOR0ZGurq6DMMYHBx84IEHwrUIU3tRuKBecsOaRKFmiy01lTxXej/zVaNKPbxs 8JkkXVViJKWSybqrrnxtXUPjyuWHjk+kf++t71mxeP6Bfbv6RyauufrquQ3J2oa5SrCFS9bK ZXGzba23Zm5DjX7Tm9+1sL3l9//ovXsPHVl805vXrV1lCjUwNHHVgkXL5jVTLJn1bFIKyp3H fSmrRtPmaxZOZctTCHHFFVfs3r17z549RNTS0rJhwwZ/QzERkFKFrnROwtedS1s1EUkps9ms EMLvj7lcLuDBqVFM8m9ZSxpjzLbt559/3t806nlefX29bz6G0gGMlN/boDCYBcqQ67pE5DiO UspfcSrawBNgSqtKpdIDJwfgdCjqs4YCpetaU1NT8KZopAo/WpY1NjbW1tZW6hQOAgBI2N8/ EJ4OEFFDY4Nh6qVJhN+EH4NOiIBWzh4ZGSm1jLxEEBFjrLau1hcsbH6FEm1lmiyXK7dKg38Q f3H7mDp7qhT/tCJVErIooerxh1WD0oDVS6NSWjPEKWW5SpVNG1t4OJ/0oCCVSqdSqdK7Gs4d kFSydU6rv6gQvHUcZ+/evYcPH857ItI0bd26dQHrBe9dx+0/OeBvuyaieDJeW1sDAKWrPUUL RMVyEBHRQP9AYQ865HK5Y8eO+Wr+yMjI4cOHlVK2bQOAaZqIeNFFFxmGAUCNzY1r164N1qJL 1tzzs8azxp5EyvM813X9c2mIvqknrAfl/wUAy7L8IwrhXfRl4Unpum5Adn4J2rat6SIo/Sra VkF/yQtA+XOiijF2elfe/eHXdR3d0Io2uFXyP0On6rpk8D5wKhpsi2qhJBIMXIko/FgdoUiK g1QWsmLA6kmHyLcoL9WlnT7+qrp5dXmwRJK8U1hOIrIsK5jDnosgICmllLLoeJ4Q4sILL1y3 bl1g3CyaYgeDZSabxdB+D8uyamqShTdTirH6PCPf9x1bcIGQ34MYaLt1dXWXXXYZAAwMDBCR v9YSlHxRzOVWjaratgIJXqoVuaJ+AY7tDA+NGIaOWNh/Mtnc0S8oRJBSpdMpRBwaHPK3dlZO C2zLym/+CCU6MTHhee6U8RyxtOFj8JSvI5JKWTkLYZr54LQ6VKVQ4+MTjuMgY5NJF0phKjDY yFrigvmcT81aRdeiaEuTQwzVQrnkwq5lHqunFbT/CjGE/ZcSTknzqCBnOK1QJVcqwzKu1T2X pkXVirrIqdgnBql5rmtZtr+Dp8pUbNr38BLa5EtVEQgYsoH+gUQiiWxK5YYj921iMLnGiH59 Suml02ldmzwcaOWswYFBXdfLVkpRoULwhEBEuZwVPhkU2AEC6gsvaYRVCqpi98wvuRdYZnYq zwxBVaxRhFbOymaypfPNIJT/178jIJe1clmrrA4YxM85Dx+1zBeToonxVEi9moy80qP/gzEm hEA2PXtWymP1gNKT42MT1ZtsOIbqM8cqaZXNYFEk4QIP0gp7Ls1m2HORMhuOv1LlVsoXVK2j onhKE6qUVmmQUs9lS6w0/krSFuWlStmWZp/yJzX1qhrujN7DbNvkaenvAEgKxkbHippEdUIP nIrOAnHGs5lcJp2dSRsIR4iInHPOOSkKd+FAr/ff+MbT8MbBYMtqgJLDSVOnRWe+QMu8RETf hBx+XzSRxNDZLP/uj+oJhf2HSTA8mJetVChXx1Va/EzyOK1TYBuaCXtWaXal4lXhgrLsWbYo ijwXcUE4cqjaN2ZY8lVyXT3p0oROKa3ZxV82eGn8Mx/hwh5Kfc6OQE+v0wzh97hAiZlWmS0t /CIZivh0Jo2niFiJiEKLUWGfsVisRCAomtOU3hKifN0Ti+zW5eQo6zRDVOpUQUmVNZCH0y3y UEkkKpyELU3olKQtG0mVdGG2s6SZy1Yly1Chh5dmJNzaqrBnaWynWhrTCjmtU5V0qyQ9bWnP UNrZNYBTapOnKm31+CsFKRt/9XRPS3+fRZarp/sS19ACRg44tJKf0POUp6LvGpHtOJ7rvcSS ihAhQoRzAkTkOE7AofmX5e70otDhTh9Fqi8whlww/2oPmDSzlyRZ2WmmQvspnrrTqYpUJbaZ Y9YilQ11WkSqknRp/IHPsk4BSt8HoSo5zVCkmQg5rVP1cntlNoBZtPBKTqcU/+ltk+dQfz9V kQAoxs1ly5cCTF1joik36fkBdF0Lv5hqiOV8/oL5/r6nSP2MECHC7xSKDPGlumd/f3/4ZZnb kancB9QiRIgQ4X83qq/Ila6bFbMnIgZLRnA2Vo2mdTpbiwazE6lsqNMiUpWkq68alToFv2e+ alRJ/jO9alQpSJWkz24DmEULn7m059aqUaX4T2/ZnjmRStmzeNm6rKcIESJEiABT6bH8lQov rzwRIkSIcA6gSLOM7JsRIkSIMBtE7BkhQoQIs0HEnhEiRIgwG0TsGSFChAjTI3wYyUfEnhEi RIgwG5RhzyoXMUSIECFCBB9T7/eM9ntGiBAhwswQzdwjRIgQYXqUzshLbkcOgQgIVJUvvsxu gl8wvZJ/l31kKKiOgqk6qIaowCJEeEWgGnsCkZQegULghReEiMgQABiw2XZicm3LclzDMITQ WHSf03RQJG0r50kVjycZIuJLv50rQoQILxXV2HNsdOixTY90Hu8GQABkDJExQ9Oa58w977zz Fi1amIjH8FS4z9ehMumJX9xz14vb99305rddc9WrGT8N2ThbCAzFvobof+njtCfSd+LYXXf9 uLOn/52/f9vGy9cDQMSeESKcdVRjTzMWX7Co/Y7vfOuJzbsQxcWXX/mB999mT5z89tf+acxS l191/Z/+8QdWL10oNK1KJFNARKBO9p34j69/Y9vejpNj5pWXv4rHdQbnKoOSIkKpFHYf7TjY cezKjRtrE/HTnIZSW5564lv/8Z/H+4d7B50Nl1wUM0REnhEinHVUWzUyY/FXrb9i/XlrUhNj mWxu0ZLz3vjGG//wfX96z0++4470fPvf/vlDH/7o7kNHTyE1BADQdaO+oRGQNc+tZYhMncsr V8wDRXZ64vZvf+1/fvEry/VOfxIIqYnxTDqlPLf35ABByZXXESJEOBuoumoEQMSZBwCMQEkC Iq5AJZrXfOxjf/7Rv/n/Xnhy0zd/cOc3//HvOEMA8lwvZ+UA0DRjmhCAQIDKc7K5HADqhqGk a5hGc0v7f33ne90nh5atXGXowkPkUrqua1s5RaCbhi40f2XEdR1FBAScc86ZbVmOKw3TMHQd EREIGPMXn5QnHddjhe+LCiGUklJKQKYJwTlTBK7t2LZFgIZpGpoGiFJJz/V8a64QAgFcz0VC AqXpBkNwXVeRAgLGNY6Us2xkPBYzGDJgyACVwlwmc/t3v/Zv//nDG95+m2XlXDfGOQcC13Nt y5JSCU3ohiEER0D0Pw+tlO04jm0jMjNmTn4qWSnbsmzH4UKYZkwIjgAEsGDx/KamhqHx9MUb 1gvtXNXTI0T4X4aqq0bgL/AqQAIABsgQGGMk1Ksuv2J+a+Ph7sHf/PIX3Z/8i/mNif6+448/ 9lT/8KjGmZlsvObaaxYtaEtNDN93770neoYaGhs0zjOW974P/eEj9/36yLEuUjQ4lr3h2iuZ oiOHDz755JOj4+l4PJbN2a1z2kxdLF6yamL86N7dna5US1euqovr27Zs7RscXbJ85RvecOOK pQsASRADAKXUsc4DDz2wKWVZiNjQ1HrNddf0Hz+8dduuWE3TNVdfvXB+W8fhXZsefirjuAxR xGpee/XVa1csGeg78cgjmwYHRxTA1Te9sTVuPLLpt6MjWYXy9W966/K2hkcf23S4s0u53vy1 6+cnnYc3Pc1i9e9677tXz58PiIDgOdm7/vu7X/jiv2RzVtehfT+6447Xvf6mV61d3nv82DPP PJvOOVY2MzI2vmjF6o0bX71kwTyOaNu5XVtf3Lxtl1K8v79nwZKVr7/h+oXtbZadee7xJzbv 3K2bhpKqbf6S199wTXN9PQAuXbFqwYJ5h7oGr9p4JUMs88WVCBEivOyYjj1LgABEsq6pZf78 tsPdAwMnjh441BVb2vi1L/3D/c9se+8f/8mSFvPTf/v3ew4c/euPf+Che+/61Gf/5f1/9peX LFn8/OO/ve+Rre953x85Vuo73/h6V//w297/8WuvefXg0UNf+MzfPrZ5zx/96UcvWr70c3/z 8UMnUxeuv+wPb/vQ8vmJn37/29uPdC1btfbSyzbUCPfOu+6Wwuwft/7mLz4QWBgRSDP0g3ue +a8f/gKF8a73fuCa666NJ2qeeODeBa+6/vWvZ3t3bf7c331m296+T/3dp3Rv9Ovf+Oq9v37o y//4hfktyQO7tn73hz9OZXJfmb/s1qtedXj/ju/ffvd4lhoXX7piXktqsOdb//71E739yy+8 fEmL/swzL6QdnLNs6cp3vZ3nP0vFmpuaW2uTwymLcaEbpmCQSY39+1f/+eGndn/4Yx9dvXjO v37pi//5re++90Mf+dRf/XlDXeK5xx/53Of/IdGy8E/e/56H7r39v759e2ff0F//xQcevvcn X/rSv9XOW/7JT/zplk33f/+7P9i55+CnP/1XdXG9uW3+2hWLXzgwdMVlFwCoaJduhAivBMyi HyJjXGimETcAQLrZ0YmhF554+PY779YSbddee/2bbr6lvgZ/de8vn3n+hQcfeHB4dEIzzMtf vfFDf/LHGy69gANs2HBlS01celIxRKCtTz16/4MPa2bNDdddfd31N6w/f/XE2HiyvvWyDRe/ 5jVXLZvbICUpkXzHu//gs3//2fNXLchMjB7edyidthkL9C82b8HiP/vLj81rrvMcJ+d4uq6v WbVQofnud72zsU7/3jf//YFNTzUsWHbrW269+U03L25teHbT/f/wlW/WNrReuGaVIZjnSUCt rX3+RRdfrJuCpCQ0EzU1GzZc1lBf45HMToy98wMfeftbb16yZMmKhQsDzU/T42+89a2LGmMA bNHKVe+57Q9edf7qbDr1+OOPdnZ31zQ2v+6aN1z7usuGB/s2PfrEyeHh7ETvl/7+89v2Hbn8 NVdfd8M1FyxblBof2bt3796dO773ne/tP9Jx3Zvf/sYbbrjxumuFzH7rG1+77+FngZQWS6xc sWTZ2vPnNtUBsGjBPUKEVwJOWfcEAEQ2uWGbSCI++dgDIxl7adwYPNl7BGxm6INdfYc6jzuO B+R8/Z//8fC+Q3/5sT/9v1/4+5q4OU4CfZuqAiBKjY9bjmoUhsEFMmaaJig3PTqhMQQExgAQ aptaly5a1NzSurBxzjN0SLkS/O8lI+Q/u0xi2cqL3vJ7b/jad+989qmnDx07kXK67OTS1asW dO994YUXtzmebG1qrk3EQXPrm+oUec89/tvDxwcY+BxMvlEynx6RHznnnDEAwgWLL3rTTTfe csPVWVvV1tYjUvBFVGSM+dIg44wzxhPJmg2XX+Hu7Jo7p8W2bNdlBJgaT9uWu/OZx5/dutto am+Z2yY084N/8X+0OauvfsMbju7duv/gESJatmgJQ2xoaYwnY9nO3nt++tO3v+m1OvIFc+ev WK0EECFG5BkhwisBp86eRJLAta1sJgcA8WT9kgXLftvbQeR17Nv5g2/9e0N9y7pLXn3hJbHz Vq1e1PjOHbsO9Q0M3n3ntx9+4Dd/8fFP/vUnPgzo5KNCIoBVF14wv70pkx0fGhm1cumewUGm 623z2syYAciQAIAQfR2ZmygCkx/C5AEcRARm/v57fv/Ou+/r7+p85ESRKjoAACAASURBVIln 3YPPvfU9708yNtzXPZ7JIIHBOANAXTPiMUCmrEzv4AhVOUoFQAgEwAC5UatxEYvXJ5LEGCoi LP3sKAERKSUT9U2f+9I/Hdy37/mH7/3eV/Yf2Pmiv5QFREf37bE9NAlJkQC2+LyL/u7zFyrH 2vX4rzJZCwBiXCCAEY8LQ0dQfSe7M1lXj5tLl6+43GnnwFRk9IwQ4ZWB2eieHsFI/4kTx09y Ji7d+PoLlzWaZh0ha54z7xOf/tyl61YDACmSyh0bHa6N1/zs57985vkXe3r7vvIvX776husX 1Ux+sJMBu2DDxr/8yz//xn/+4Of3/Ly/a8/Rwcwtt77jA7e9o62ljpABKPA/Uo+IDBUQEEFI /QrOLSrARavWXnX5xT/97ZP3/vhHbc0tn7jqSkA0zaTGBQFTpAgkU0p5HoEiFDFDH5uaNYTJ uDEfOSgCyT3OOC/s7OcV6EspIlITI0Pf+89vfO/2Hy89/9Iv/8MXN/3PP27/8g8lA2BoGkkE J5cZGzzZ47hS0zkA4yhiZkwIBsAkAUNUUpJSBBAz47omFHkNC1dc3+hanmfqHM7Z7bERIvxv QjW7pz+lpeB3/kwNoGc/9tCDvYMTCxYt+eAH35swjZVrLtJQ9Z7o3LFzjyJS0u04vH/7li0/ uvPnG3/vrV/5+le//P9/4coNF9u50Y6uXn8PUF7lI5Cuq2xv7QWvumjdebX1rZ/94pf++Z++ +LqNGwRn/kn7wv80GSp/UWmR2kiJ+uZrr7uuNqYf3rt7/etuaKo1iWH7smXt7XORUcbOeEq6 jpPNZIlY67xFSxfODfIqpSJF0pNEBIBEkoiUlKT8Z1BEisqkS6T8QpJKSWl3Hjm6b/tzX//6 t7pOjtzyjnetWr7I9jwAQCIFuOqiy5Ix3cllnnvu+aMnekEpJeXI2ETL/EVNTY0ANJ5JS6BM Ou3aNiBetn5jTMPDe7Z+6fOf/8THP3nnj+/zZKR4RojwisA059xdxxrJpAEASWWzExMTEzKj 7rzjjm9+7ydzFy77q09+4sZrL0fkr73hpiU/+kXHiYGv/tu/1CaMmMg89MgT11197dOP3Mvq Wj7wrjff+Kbf27H9hb0dfWuWL1JeylMEAK7jOAp2Pr/p377+H3rjkjXn92ko06kUI0CEttY2 kk5OKQAASUop13PGnSwAWnba9tyiSTcCaXrs4ssuW7Ns6aEB6y233KQxRghNc5e87W1v3rxt e29fd/fASNwa6u8f0fTYez/w/vamZENTY8w0ETIvPP3UxUvqH3n40YmJjALVdWhbylqfnkjb tgtA9vhw1rZ0EWcMWWjijACEAFxXSh3as+8n/3PHiRHn6rVNY6m0Iu35Z55tM+yfPfAsArhW 6siRQ2+86oq3/t41//OzR599/JFvfGPuB9/37u6uzh279t9yy02ve/VlXT337dy+3br1NX3d PePj2aVrLrztD24VJHds3nbPz3/ZPzKedePvetebdR6ZPiNEOPvgn/vc54IH27aJyDRNfy48 0N/9r//85Tvv/qVLwBj29p64//7ffP8739myc/81b77ly1/+h+uvuSpuaoi8uWXO4sVte3fv OnLo8G9+86vnt+67+e233XD1hgd/fe+mhx5+5NEnXnjuqU2PPHnrbX/07ltv/MLff+rpF3cA YwPd3W0r14rUibvu+c3gYN9zzz398MO/feD+B+++5+f33f/oyvPX3HXHN3/+mycUstToYH3L 0s4dT/z33b9ShCOjg3VNTesvuUgTIjhXTgQMsLam5uD+ffULVn7oD94WMw0AAhAXXLiuLsEf 2fTYkSOdzz35xI4DnZ/428/82Yf/yODQ0NR4aN++g0cO79+9+9lnt9TU1o1OjLY0N6XGhx3F Nv3q3ue27WQoJsb6evtH1q27oK62JnzHkULFgA+ODDz17ObB/r6+4fRf/91nFrc1P/v0k/0D Q0f27z46NPbOt93ywpNPj6dTKNhNb3zThiuvHOo5fODgwa1bttx110+7+wY++rG/Wr1qxeWX rjt48MATjz5yvLfv/t/8xuWJ799x+4VrlnDGBwb6n3zyydFU+sY33nzTDa/hjAcCVDlWX+QU fqwUqvR9lYRmHkkVzFz+lxLkVKU66yLNXNrZ1cLpzcjM8bJV9xkSKZVKJZNJVljzwPA8dGJi QkpZV1fnByPlOo5LiEQIpBAUIANmmIJ7qPxTPgiM0HeldGqko6PLkWzVmpW1CVM6dkdX3/Kl 83t6erp7BtrmLZ7X3qox15WolAIiBiRR6+3c+6mP/9WWQ8ca6usREZUaHhvv7+9/95//7Vc/ 8xGmxxgCgGLcEECeJ/2VHBBC948HEUgiz3H6eruRm02N8e/8xzeblr/qnW++1tB1IFJKEmOo VGpiZOf2PRK1NRee39xQy4gUMI5Keu7BQ4dSqczylasJHI5GbV0dASAo6bgSQCCTZCsWNzTO sLA6DwAASilQoMjqOdE9NJZeumJ1XcIAUhPjYx0dx2qbWhcumEvkHD1wxAVj6cplCSEUA+U6 x451dBztWrx4xaIVS3VUAAwIGXnHu7v27TvSPGfeqrWrkoYg/ziVUieOH+sfGV+37iKNISLH vFWFyta9X6dhp8BnWaeyzSXssyih0khKE5oW1SMp61QlSJWkq4eaIWaX5VmIdErSVom/ikhl 459d2c4cs8vyLMr2zIlERL29vW1tbZznFx6qsWelqKcVvahDlu2fROQRobK//U9f+MoPfvbJ z3z21huvF5xL13nm8U1f/PwXr3zL+//x0x+Jx+OFBffy6RIRKW/fluc++en/azYu+uiH//DJ J56++V3vumDlSk3jYWGKSiQsSal4ZXM0wwqucjl/QEbhCIuIaeZ3nkbsOZOkI/acSfwRe07r VMqes1lznzlK2SEMRgAoXAVKesc6Onp6L2iqrx0a6Dt8pGPZ2ovedP1GTdeDbZVVQIA9Pd3b t+3IwT4kuvqaa5bMn48l62EBJRWx22nR/8tGWKV6zvR8JEKECGcaZ1b3rO7Hx8DJnuefe37v gSOOlAYn04wtXrZy6bLlK5cvjZkGAoR3VpZT9ICUGh85+aP/vuPZLXsuvfw1b7nllnntLYwB Y1N0z+ryVMesh8eyoarQ90yKbtqkI91z5qFmiEj3jHTPl2nmPkPRpZSISEBSKs9x85/rQCY0 TeMs0FvLskDojU/EynFsKRUXQtcEESCin8mz23nKhjotIlVJOmLPmYeaISL2jNjz5Z65V0cg BGNc1wQA+KwXnILEmTUjRETkhhkDAPQ3ZwJUtj1GiBAhwmnA2WRPCAyjkP+Tp0qadJpBDIVf /oH3QnyR8TBChAhnFNFdZxEiRIgwG0TsGSFChAizQcSeESJEiDAbROwZIUKECLNBxJ4RIkSI MBtE7BkhQoQIs0HEnhEiRIgwG0TsGSFChAizQcSeESJEiDAbROwZIUKECLNBxJ4RIkSIMBtE 7BkhQoQIs0HEnhEiRIgwG0TsGSFChAizQcSeESJEiDAbROwZIUKECLNBxJ4RIkSIMBtE7Bkh QoQIs0HEnhEiRIgwG0TsGSFChAizQcSeESJEiDAbROwZIUKECLPBWf4i8TkEIqJyH4kPXnqe p5SSUgbvg48qhwOGv7SMiP5H7YUQ+Y8zF1wRUSnF2JThbYZfaY4QIcLLgIg9y6AsS0KBQIlI KeUTpeM4ROS6rv8eEQ3D4JwHPv2AYdYLv/Q8z4+Bc46IjDEhhKZpmqb5j75nLKBUsMDDaS+E 04XJ/MLUfyNEOMcRsWcxAtYL2Eop5bqulNLzPJ/yfKIkIiGEruvJZDIcg89llSi4KK3wb0TM 5XKWZVmW5b8JaFQUEE4lrN6+kkFEgAREAAjIgCIKjfC/ARF7loevYLqua9u253mMMX+KzRgz TZNz7s+pq6t+lVwD0gxYGAoKpmmagZrpui4A+EquUiqTyXDOOeeGYfgz/XOCOsHPLwEhABCQ AgCkc0b4CBEqIWLPPMKM5rpuLpfzyUvX9Vgs5s+sw2w4E9WyWkJ5/Ys8KZVSnBXo2P+PyFds /UT9IP6jZVm2bSNiWDA/5jPKRzPPb5FPRcqTru1aOSdLkoSux824LnQOAqbaMU6vwBEinGlE 7JnvwD5Jua6byWSy2WwymUwmkz6jFdFTkUZ5qjRKQKQIAPpH+7Yd2XKk+0DWyjTWNp2/9KIL l18cN+PoCWIKYcriEgD40/Z4PO7rxbZtDwwMxGKxZDIZ8GzRKtPpApECCGcTESsmpIgAFBB6 Sk5kxw737t91eOuRngNDowOutOsSjUvnLr/igteuW3KpEYtx4OE8RohwDuF3lz3Ds2YppZTS Nzjquj5nzpzwEk3Rcs3s+rnP0ACgXBpM9z22+8H7X/hV58kjyvEQgBgl9Lor1l5129XvW9K+ gmsCg1CIUFBIAwEYY/F4PJFIZDLp4eER0zQSiYSmaUWG1KL8hoQhrGB6rBRKKeX/ZoxV175R ge26PSNdLxx86tmDjx7v63JVTinXyjqelIpgR8fmx3Y+/KYr3vbW1767qa4VIuqMcG7id5c9 oaBvSimz2axt20KI2tpa376plDrtXZoIpHK2Hd1679M/3Xb4WcvK6shRR0AAQiLnyd0P9Y12 vee6D16+6ipTN4AAQBEAAAIBASICBnN+IqUoHkuYJlm2PTY2ahhGPJ4QghGwqaITACAg5fVH RKhEnlMKx//heO7QWG/vUHc6l+JMNNQ0zW1qr0s2CS4QghiDFTZ5crz/2b2bntr7UH+qB7iT aGAAccfxgGtW1vNyFpEamRj4xVN3IsJ7rv9gXE8CRgtJEc49/K6zp23b/mpMIpEQQgQz39Ov DRG50nliz4N3P37H0d5jnucQqnxS4JOiEhyP9R6558m76uNNFyy+CDgxEqQkkkfSU8oj5YF0 lXKJPMgTKgAgRyTPs7Noj2KypkYYMc4FcAGoATIAhgCUN6uiv2RTvVgAQCkFoMYyo8/vffqZ vY8eP9mZcdOcsfpY45L2lVdecPVFS9fXxusnt1IReMo9cmLfr168Z0/PFhsmuMYQ8/ZioXGh c00SkOZaDhKmsxMPb77v8gs2nrfwYlZM9xEinAP4HWVPX+u0LCudThuG4a90n974Q78BAVzP fXzXA9//7ddH0mPCQC6454JUqlgq5R0+sev+F3/SirxGdyg3LnMTTi6l7Ay5aZIWeC5Jl0gi KASW3wmEJIkDCkSe1k2hx7gwwEgIIyG0BBpJbiRZrJ6ZtdyIa1oMhEnIAEKqrC+AIgBQklzP 9aQ3Mtb7682/2LT1vqH0CJFLSikJvXjyUG/H7o7trzn/uhvWv3lu0zzGmNAEIOzs3Hrno9/p Gjug6yg4o5C1gQgIgDGu6bp0PJKKAAbGT247+MKaBetYwfoZIcI5hN9d9nRdN5vNxuNxf0/l GU1NSrn/xN67H7tz3JrQTB0BADTmek7O8jzlW2DzMiC4nvPC7seXjh+/tK4OlQvgAShFBAoK +5oIEYD52yf9QESEpIAUI2KIhACACpABMWCIArmeFDyGPMaTDaK2Ua+doyda9ZpWLVaHXPdA 2K6dzVme55FSSqIk974X7/nN1l+4YNU3xTlH1/WyacvOSc+1TvQf/fnYfx/rP/Leaz7cXNvm eU7n4KGfPfU/xycOxGs1VsgLABAoJdGypOcoAmKMAUN/wu+R29V31JOOxrUzWf4RIpwRnKvs Wf3QpI8qGy1d1x0fHzdNU9f1Sp5finDhtAhoNDfy8I77+lI9mq4Roe+D65oOQFk7f7jTVwIR gHDCzm0ZPHFpDdNjGuPAOHDBhWBMk5xxxgAZMAbIJmlXSek46OTQzkkrJxlTjANDRECS5Enu 5ixHIiPAUeIoADTJGTfr9GQTi9W7eh03WxON85I1LSKWZMAf2f3Qpj0PSW411ic0nSOgUhpj HDDnWB650nJyzx14goi9/6aPxLX4Y7sfOjq6P5ZUiFq4GpQE23KtnEOAwQYsAkAEIsjlLCXV ubLtP0KEMM5V9vRRlkOnNeoppVKplKZphmFM6382UkGBQMHnNW/f0Z3bjzyPumeaOkPuuK7r SkXANGHE0LYsJdWUdXCEA7n0SIN7SbvGEAE1QAQkQMEAAMnfMkDE/Km3KylDaoQcMwY1cR5T GjN0oQsmOCglbdvL5uys59ngWDhuwYibA2AmCCObjo/3aQCcM5sLy0gws0FLNg9qtb944cGJ 3Gh9Y0LTuG99QAShM93UGONO1lauVEo9fWCTLa325nkvdD7NdeJaDMAXDyQp6Srb9jyPAPOW TSUlTG4egJgZ4/zcboQRfmdxbjTc0m00wbnyaT0XvSSiTCaDiIlEYtY73qeRFogQkAi8nMyM psZ7t+z+7VhmMFlnGKYAIiE0C9F2PCJguqYROTlrUhgERpCy1PMDgxcuWGwQc8hLO3LC9qQC DVmcizhjnBQSToDqyVq7B8ePjrlJgdcubKybPz9ev0gkmpAjKZvcFLgZ104bE+PO2LiVtvrB 2jKR2jNmGYrXcT7XNM+rqVsUM4SU5DhyYjQ30LFpaLhzaCBRH9MNjugft0dAQo6AyDRNGOSQ jYoE4M7Dzx/qNYlJXTelp4iBUuR6nuNKz6WCtSG/58nzPCDyq40z3t6ygDMxdTNphAjnBl5x 7BnQYpgfw9wHhcOLwSGcIgSXFTHG/M2JwXUbAOB5nuu6PnXOROssOlVZ5KqUAgBChQT++UNQ pDzHy404o8ez/fu9ka7hsZP7O/aAAE3jDIEQBDLT1KQiz1OEyHWNe9J1nbxShqgIGPLNJyau b7WEhzvGUrtG0l05WynPQNai62uTNauTNVnbe3p8eH86O5L1FtXof3LxvJUrVifmvBrjFyOv RVCgXKXGpH2EZ3ezeELU1WmDg0v00ZihTI1t6h45klH6hNgyMXZza9vFtfWMAQGNON6Lo0NS kK4LFjoUQASkgAAIiGuCK+naLikFAhWS4JrrKk9aCKgIiJRSCMABFeV1cVBSeZ7nRweAJjdW LVrNGBKSgnzUAJDfwETRPtAIr2i8EtkTQld1+AqLf7TGtm2fNKWUQgh/3l0Kn3l9liQi/0w6 Y0zTtFgs5jiOf1p8FlKVSwuIkBRTiIykyo7aI4fGu3fmhjpkuh+lbZoowRlxbG4yZOhvHgIE LkAzmOcpIIVIwhBSesqTBeoHADU8rh7bP9aVmdiVsxVjyLn0SDn2EcptxZFWM5aSMuW4Clhr jL91dduFa9Zo7a8T8SuB1yHjAECkkJo1ALL2gZjH4w1a7Aiv6dX6T74lbiyr0X5+dLgz5fVa 1s+6u+oWs9XxGgV0PJ09kcnWJGOlJ5ekl98zD4yExpXrSVKaYaBgyjfnSsACBfr7/H0tHACI 0LPd/AZWQFSsua51XvMiJAayYAn1k1FASP5UPyLQCK9YnH32LCUmnx99+nMcx2dMTdNqamrC Ryer3M3hX44Z/EZEf19nNptFRP9KpFNSPENvAApbfAhIETLlgZNxxrpSfftTvVvskd4Yk6YJ ZoNm1Jh6DJ1xj/a5jIyphy9B14VrS9dViCg0jUywM9kgDUTIEf3s5EnBGY8ZumCKiGuaZES2 8oD3Zl0kQgYmU69rb7h0WZtoWIXxDSAaML89HgAkegMyswuItOSVKBpIjWtNbl0iofV1XcYp Yeh3HRg8MmENSrpvYKCvwZsfSxyzc8gxkJbyl3yA5ynHdf0NWIDIhRAmoZS6rk/Z6h4cbC2U EhCgAs92PMdFRPJ5EmHVoldxR+sfGDQSetZNjaSG0rmUUioZq53bMLc+2ahzA1jhlECECK8w vILY078003Vd/zo4nzFjsZiu64GqGGim+YXm0H5JKrmNOLgGyb92M6yrztri6d/gwQBAKemm rYmB3NCRXP8+d7gD5Vics4Y5XEtyPcGEUApcIiSuGGOuJ5UixEnWFgx1nXuuJAJEEII7Gleu FzAFEggBImkwzgAAARgxNHWllLQ8hZ5EAsbnxI2L5zYmmppZzSrGawElACpQTElyB9zMZnAP AaHyhskdAi/FkKlYPDZvxZB9rONoZ8b1FCmmcM945mAqNUfXbSKNmJTSdT2hIWOMgDxJtuNK SRh8jwBB6IIT919UOr5JREigpPIcN3gpAZrrW644f6Nk3uaOp/d17Tkx0DEw2p3OpgAoYdas XHjhtetvvGLta0wjzmZwMipChJcfZ589AUBKadu2P9FGRJ80fXsllCiJ4cfw1LKKHbO0S5/q fHDSlgogpW2nB62Bzlz/Hmv4iHLGTOHE6pUeZ2ZMcMGAFPcP9yjmOKTZogn1Y64lPSUEB/QX 4xEADV3YtvI8SUTIUTd1pzA1JiLGkfmWR3+zDyAgIGNc06QrQXEEAsK2uD6nPsb1GuDNDDXM r3m7nt0ps9uVcxTJAyKaeJ4YEOSAmEDos+2fHD75ROegbSMyJEYMQAL2WY6fUyXJyrlEIDSh lHI8V0oAYkVX6k1fdADkScdyglv3AYgjzmls3de57Z7Hftg91DWRnlBKAkg/urHceP9o/+Ge vRPW8E3r32LosVOqrAgRXh6cBfYMr/YopSzLymQyvh1TCBG2SJ7FbYABhflH0IlxAgWu5Yx2 T3Rtdfr3uqkBrmeTCW8sLveks8P9jgKqNY159dq8Gq0eTc+mzLiys5Czaa5mHslmXNczTAZE hc9JEedM14XnSX+ayzkXuubYdp4uGRe6BiUlwDhDxoCkb1ls0DDGEUmBl1aGRJIgxyCzX1q7 QY4xUH7kCm0kROKAKmPJ25/b/+jBXo8YMxAJPEmgVHA1CQIoRdIj25GOmzdVEsxmBo0SbNuR rldUwMf6Dnf0HHQcD4gAFTHA/A2gAAAS3N7hEz955PuNNS1Xrr1aMBEZQCO80nDWdE//jHkq lULEmpqa8HW/4cuEzpZ4gRgSkJAJZdn9XWMdj0+c2E5yorYemtopy/k9neOPHurtSYOnFABo QAbKOQ3JVUn9VfHG+bG4yQA8WGzGnx0bzuWcWFzjfMpSjKYBY+hvoWeMCV33XFd5ChCY4MgY lRQCIiBjIJVvInUAHNe1vQnKbtHlsFSWtE+inAC0EPzjRvlRyB+2lIRH9h99cPdBk5uariMq BKYkOLYjbRcQANG/eMp1XabxwJBwatSZPxVAds52HQ+KPk8CkLNyAMCQkX9Hfn53rL/QBABA DHtOdv/y8R8vaF6yZM6y0lEkQoSzi5eDPUt3azqOk06nlVI1NTX+aZ+XPrmeSdIz9IzBI0lw st5I50jHk+nBPUJNtDbyWJ0QOvTa9g93dD9xeMhTKgbkMQUAQiEp1juc6h5mz/KJ1fHEhpam JUlzScxYaMSO5nLZrJZMmhhaTWacCQ1dRyEgIHLONV13la18u0TZUgiZdxHwZNYdGc80jYyZ Wo9r9zFEjqQAAfydT4VjPX5Qhp0DYz/ddsDQ47rOdV0wAYrQsT1iOiBK1ynwGHqex1xXN/SA fmdUKYW0pJSO7bghc2dB/MkxkoJL+CatvYW7oJTngjjcu29X55b2pgWmbs6gDiNEePnwMume wUTYN3H612jG4/Hw6vkZ0jQDI91MPaP/8Qhys6PO0MHcie3W0EGOww31KlajazohU46rnuwY eapz1FUcED0gBA0AXJY/280RbFA7MuOHrczC2sT6ZO1c0zhhZbMZzzCUpjF/CzoicgSdCw/y FEOomMbR4+jJahLn1XQEYAMZ79CYtXBoOG4msa6BBPP3npaxGANkHOeJQ8dHMp5h8FhcM3TN 3yckGGUUgakpUOR4eVZT5NkuY4yLU2knRIgoPeVYrlc8YZ8RME/fjDGw7FxXX6fjOhF7Rnil 4eWbufsmzlwup+u6f43my/NJiRlicle8Ul5uLNe3K9OzTaU7dJ6qb1JmHLngEiHrqsGse2jE fqRzOOdKhowAWOGi9WA1unCiG7Kuu394/HjKqtE4KLCzubRgiRpTN/ILyYggNMZtlCrP8lxw oQnHk9UUZwrIkVKufODEWL3BL+Vk2lmjoZ4bcQwVbxjdo6nt3QMgmBnTDENj/qflADRNY1wx AsMwHAXK9fxxQLmeQyRMQ9NnankkACWlbdme60F++/8prtGF/kpP5nI5KWfDwhEinFGcWfYM FoiklKlUioiSyaSmFV+oM/P59ax3GimlAJi/HF2k6pL/MQlf4XSy2Z7t2c7nrPThRCIbawRD 54Jxl3n9Kbm9P7O1d7RrzBmzrLGcZP7yeSU5CQgREBhAVro56SCA8iCTshRgAgxTRwIJxDhn QmOeLQs7PZFrGnNc6bokBZRsPCAFKl+wvokQu9Pufx8aTSm83PHqUyleUyPq4oaRRNQUJ4UM FUMCSerEyPhgxtZ1puv56+sx/23Owg+Oeky3pEsKwDdDSulkLfA03TCIBws7xRp9YVsogUt2 zpae9IcHQiD/Fr1yFOpnhfsrRkoCMgKuyL9AihRKw6hpa1woHc/xXM4AEZV/wxQyLGjgESKc Fbwcuqf/PUgpZV1dnf+t85e/0fvbQ/2fxW4E6CFDsEaOjx98yBnYYiRyc9s51xghAsox1328 I/fAoZ6DozlXauihBNI4hK5hq5Qq+EdufI++WUB5MpfOISqK66bBkTEE4IKDLQslg4wxJoR0 XOVJpmER8ZBSpCY/NORPvXty1h27ju0fbHxte3Zl/Xh8IG7FDDQMYZhM4yAAkdkSTg6OSCk1 QxOch6k/fC6WCa4bupVzgoIDIsd2pCe5JoQQKPxzU/n9tgU7JgCg50nP8pRUgcwqf2BhMiE/ VkQkUigBkCtAzVKxFEukKJFzY47SCDkCICTr1ZzGkW65rX7BvLYli0QihogADHjhYr6IQCOc JZwR9gzvSfI8L51OCyHq6+tfzoauSBV2PpIrHdvNWo4lpdK4YRqmoZmCa/kzhMqTuaGJo0+l Tzyrsd6mdk2LI6JkBFkJBwdzd+/sfeFkhiTU6qIxhgsSWgpilUskwgAAIABJREFUu/onJBUW PcpRKOVPhEPoDCICKCIlXZVNKSVJurpmoBAiONONiP6NHJqmebbjuZ4m/A9gTF4zLH1dLjgL 7rtJSqP52InMCwPZ+Unz/AZjXp3eZLIYYwbXBOMAkJN0vGdcSs9gRl51nfyiBilFiOhf9aTp uucpz/XyR8+JAFFKKT3pMhcFaqYuhAY+9xMhAEPwbBccWyOF3OdLBADl66SIROgpYpznbygg IsB4Vjb1y4YR1Tom611WD7weKMmFzjkHBIZqNEudtw+b5sl44viSxQ3nrW286OLEipWx1jl6 IgEIvr0k4tAILz/OoO5JRP41moZhxOPxoo9eBIs5s56MVwcCEKmckzs20Lmzc+vuozuGx4Zd z42Z8XmN81YtWHvBsksWNi1AN5Pr25M79jhah+vqIV5j+N//kUSWK584MfHjXQN9E/bS2vja 1sT69obFbW1NNfW7RqzO+x6byGVLtxNNlYEUIHfBtEhziAjsGLkGKs6lq+ysQ8Qsh7jw+bCg RiEAABfIBHqu5JpiGgudm1TKVSiRAIRNiZTUXZICHYPlYgq4sjw8MJrdPZLSkMWEiAkmGNMQ gcgjykhSGo8TAnoAzC8npdBxPAr25AOA4MIQSuVvmyckAoZEAoABGBqvN0V90ojrIqFhTOM1 Gq8XLA6U0MjkjHPGkCGBInJdypFMO96YI4dtz3K8lK1StkpZnpX21hzOzu0DXYk4Y02c1RhC gERAwYVZOydeUwsIucx4bnxIjQ/T9qGJHVsG77kbFy5u2Lhx7nU3tqxZ4V/ad4ZaUYQIVXCm 2NPfzplOp03TTCQSRapB+OKiM5E0ACCx0dTgg9t+vWnLg0dPHrZcCwv7CHche2T7vcvnrLnh wtetE9m4tT8Rz+lNaDANkBQpIHIlf/r46J07T3Ki379g7muWzW1vbTRrW0X91Uybv3i0d/GW E9s7djNeTusMciexYVwtG4TlE6Imp2zyhk3srYHONpmqRUmOQ8QMjRQiQ0R/xT+/lI6ImtBs 23UcR+d68CVL5UnlSQKqG/FW9qiVo1CjmOQ0rnu9CehqZAMNADEUwBSi5Xk5F8C3jxIBMETQ SFmWIzSNcyQgpcCyXNuS4Kvihf1C7P+x92bNkl3Xmdi31t77DDnczLzzrXlAYSAgEgBJcJJI ibSkHhxtqWXJsh1hPzjCT37rP+Dwq8NP7ae2HXZHu9tqtVtSd8tuiZopkgIJAZwKBGqe7zzm eIa91/LDycy6NYBEoYqkI/p+gcC9FTfznH12nrNyDd/6lrFEQSGONHU8V3crzXh5prbSiBbq UTuNZlNuWIqtMcyGqkh6rAwiKgSq9ErHHHiCqoqiFPgQhmXYz3z3oEwXR72NImzm0Xbuel6y AGFSJM3ZztIKG0dAktTgZXCwBagBN0X99evrV66sX3z/C//Df984duzI8zzCzwTP2HpOmUlF UQwGgzRNa7Xaj3jls1cmHptO8nn+B9/63X/99X/e7/ZExRJPyNgAtCiKy/fe3dy5uXGq8w9f 6aRNAsfkQ2CoQjyu3Bv+7g83mha//fEzr7/4sXrnFIyQZFCwac3W+584u3Tx9nviw9jcEB7I Tqqq6vxu+MpVft0tzM90JMkP9jaKft4d4N09ffOM319yAUUIAWkSRVYBITIYl6Iq5ToufCh9 YOY0FqiBShnE6/ym/8JVfdHzgklbs3MKGg16ezv9zT1/sRF+cJIPOpZIASWeTIOrBhmpBh+G /QwgG4FIg5eqCbOydRAFtJBgRFea8cl2+uJscr7lFppRK43rzkaGHRFI+ZCW8zSDKuNEr8GU gUCofleCITjD5Ewr0eUGZE71VKssNYxKv1v49bJ3vZfdyrK1ATEYTAIQsY1qzc6otxUCXFqf WTjGYLN5Z/9772x/73v1pUWwpaOxckf4qePZ+546EZSL47hqV3/mp/gxCxANGv79u3/4L/74 //C+gCod6oavfjA4SNgd9X7v5rDZKn/jhZOsoWRFSb2ubG3qv3pvddf7/+6N5954/TP1lf+I 7QsaeuXBV6n/tTD6gZXh5065by22Lq/tU5XZe+AyVQm1Pj5/Lfx80Zg7diJOa74YFqN9a2zM 4fV+6d7HX5HuHjNQLYYj9S5OIraVivuY70SVvxmkzAsicnFUQMpSF9fzX76ur2V1dUXaatcX TxPzTD40qzfqw/1ju3R+V/7szOjmuYQMjwU6J3nV6vqLLA9BotiZKidARMyFqIhYQ0sRXl/o vLbYONeJOglF1pCMK1dM0z73B2tZU0N6qIxD4/zJuM9znPs9FG4wkUYcRao1Q504nJfm59rU o9GdwcH3D/LVg0RnoBYEG0VMHKC1RrPeaDGQDRv53s7e5Ssnv/Jl5v9fyDUc4T80PJvb7nAk rqqDwQBAmv5MxB0UhGv3rv7Tf/+/FVqQExVU8pEVDtOVVKUc4Z9/d2spTb54fDYfyv62DPvm 4kH3zWH3iyear774sXTpH5j4YwCBEiRnpb+KsE7gc0tzf/cT5zf2v3swCuBqQtv9FRivp9bw 4ijObZ6NhrAuH4186dtzy0aoyG4t9+XT3w/fdLY3Z4jI54WE4BJnxnOWqCrXjC2RaJkXzBx8 WL6bfek6XvKxt6VTpazkfGDjRNkRGVZKIvOiyMxN/OVo9MPnkjJ9eHtAYCUt/Mh7ayxbBmlk caKWvLpU/8xy88J8cyZhVlGAlcctTcRVsxGmvub0Qx9Tnu6nZifz4Ma09+neT3rop7+OC2sE wIip8gut0JhNG68kZZf8zVBeQrEqo72eqIA0BC/Bi6gPHqHwu3vqA9zh7T/CEX5KePZf2oPB oCiKipz0Qa85zJN/1qlPyv3ory/+2Vb/Xlx3TKQivih98TD5vCK+KGGQl//sO+tuGJ+QOHjN Q/jW3i4Jzi0utOZf5/g0aBL8qkyidFiDz1048fad7W/+8IY/JOwLgBTxUJe3izJEe4z9nRuy H3tfcFkMNtaYaK+QEXQ2syfv+nfnLDGpIgSRYWGCOuvIMBFpqLxaQIEgxSBr7fg3boWXyjgh YSJVzkYH2+s+qs3AhyLrwYABIj5u3C9uGif+4lmTNe8H2ZUXTtWXjGqEMJ+487PJJ1eaLy62 VpquZqgi/4eJtwmMa+46dSenGRDImNdKBLUgJiKCmUytM5OzTUrwVf19fMRqCmjVUhWgAg3K AlUIiINtI/o4hbPF6EYx/NueK5w/yIYHe+qDqg5HB4aMjwhHQfsRfkZ4ltazqhQVRdFsNn+0 ePuTVo0+/MuIaHN//TvXvmWdsdYqFIYjYwz7PMsfPU4VhN7cH/3upY3/4tjiQpRs5MMrw4Ez WJlp2+QYUeUMioZNFLdRdZBDVXWrl+31BiCC6HiYRHVMAilWO2ZtAT5Vb0pBqaJprie2+iu7 aj2Vqv1IB02nhx59EdG8DIXnqmQtMlV1U0XU85+6HN4YxZ1Wx8U1wyzeZ6NhkfezfDBWSJp8 LbHBSdgv7AhL8f0LUdZghVLVPi5Q1nbKryy2PrHS/NhcerJdr7sq78kPOXH3d+ywtznxi5Uj Qgx2YEPkQFaJFOZB9TqaZIUrOpSO87rAdN47QQgKCaSiKtBS1VsJakpuc/3jLj4XD24Net/v dX+w39/c0aDK6qnWmp2HMUee5xF+Jnhm1lNVK2pnvV63H6It+idUNRKVu5u31vfvxWx1wsQk JhtHChSj/KHXj/nhylcG3bcOkq/Mx3eG2b4vUmuMFOr3VIcq0OK2DN/WcnVsRUTu7XZ/582L l+9tqaohksPHBEZNvvEcB4aa8RIqL+3ugixu+GZfy4h3WuZgwRwu2o/r7qpB5L6MJqoqGF64 Ub42jOdnl2YWj1kbE0FFall2sHNn0N8nnSYix94hsS6pfW1XBjf9pecTnxCreCpPNmuvn5z/ zLHmuU7cSl1kiCd0dzrUVPAgdPKfAVtlQxwTxYYjIqNkQDzl1X+gyur97Zm+8oEb4NCvAlWo ZwipqJQuyWY69Znznfbrrd03d/bf2Q/dYhBHswtLxHxkO4/wM8GztJ6DwSCKop/QmN8PCQmy c7A38jmIK6G1ymFSJhtFIUgoy8P6vuOloxyKeWtv/8XGzEaWhxAC2f3hQdn7buAeyHF+D2Fb FAwOijzwn7x7+1vX7kgYN2M+OHWDYBAMxunAii3PpIK8bm4/RySixEJEUrV78gdIKU2XRwvb 4Y1NM+84aTRcnFYGQ0Aujoy141TuYUukACgGLYn7xN2ydOXVCzQ7l/zdsye/eHZmuWWcsiXz 0LCQD/rQFFDDTDFxDTYhcqQRAOLKi+TD7/yRQnb3/1QpLD1w4dOMqDIRiKrpy5WJVeNU4mGj 1ag/tzTziY07f3Atl5nkuXOjfNQwjSMDeoSfPp6B9aza9apxGkkyFsL5mbTQqaoPfjAa+hDY 4AEdTYIasrGT4EXkgeeWAEtxoZtSvLW7vVF6JgqCzYNR2d9KTWaMemJVR8rKBYPev7f1p9+/ VuZgCIEgIED4UFvmoSVVxnrcZs/wRFWNmCDED4u+3VfJO9SGbzM9se4XTI3gJc/VezWsilCW 3f3dXrerqowHSONaRcKKvtHUmDeo9vnXFn7xuZmVhouJSRwIYZyFeHgTcchPFMAYx+xgmsw1 ZRMIUBiaNgp8ION1khvFB7yuapbScZmJHnhrlZmteE7EokoKFmognTFJMfvzc/XTx+Zu1Wsd Mxr1kzhxZBX6Qd9DRzjCTwJPaz2nBM88z51zlcjxj33XT/AWJxApB3mollANBiLLxrmQ5fTQ e9SI1YDw3W5fERTstbzdy3u9XtSqgWIoiXrJQj4oyv3B2994ny/1zpQwARTApQjT2goPWg8P oXxgAQwCHKCYtod/qNGe7QM51eUZDQTTPdgRgo1i78Oot1+MelBheuC8AuQahhry2EUnktde nzvx2lJyLEqNVNZ1PEB5ksHFxLTxRLYDRDAJuE4mAkdEUTWkkwALTAmuP3rZ9/vwJxnV+2ea /HmS+KwkSfRQe6sS6bTKVd0wRhUSiKyyjU9HKyeDFl/z9oIUL4lZJIo+UIzkCEf4CeDZRO5l WXrvH+0peiymBhfP1IxWFQnLppHULJngg7A8onBJ1lnxZZgMw3jgr6q7RVHFqUp0a3+4trHd nm8jsv17w/X3NvcvbxarQ9kaLu30fjNDJOxERKmXYwPivF6ucXCHWPkfcuUTRiQqSUvCuLY/ OY5AHYgIQsGX2cHWKjAxNODxAVSF4KGZ6CCor/Psy4tnXmsuvVivz8VsDUFE6ZAv+ChEYJQj 4shwTU1a6SWPxTh+xAVIpfWkVVlKwUQGZBSOiZSiSUxOOHT6sbDTdEkEIBBEFSxBtQCK+yPe D3mn1btJjSFSbJjRrpHbqJ/X5ktwC6p2kgB4QHT5CEd45ng21rNyPM0HaEr+lKDwQjLcTvq3 LTSXkvUxcZyxbKypZnbiIfM9frzHtZfd3F9Z32sVdzcvD9a/fRcbo3qOmajeac4uR3E/3yEW IhOIE6beMHQGMF6D4ynh8YlWT4Q4jmxsVaksg8+LqsecQAdtfu+4f+UO6mBWDVCoEimoKmFz oVoohoUMRHyD5j/eOvf5heWXOlEbxpAqVA8PDbq/OsJEzQSkHBHXyNSII7AFzJTD+aMZD4oA hbIBHLFRipQMkSVU7upU9fQB13O8yw+ECGOvV1kBIS0VhWoB9Y/ZUgKBCQQtkd0L5bbmq1x/ xdTOq21UtvZIgOkIP1E8A+sZQiiKYmZm5md7qxKIy+7mxT9s3H5zAcVe8Amix7wI5JwTL96H B/90OI1HqshG4Xt/tpHfuZvu84K1KcRYOze3XGsuSFkScf9gs7JfhsBEtVxsQPGEy64So8wm qcXNdmytCUGHAz8iKkZZtaYQ24uncGbkv7hteWw0SBWlhExkVEpfZBi4iLLlV2Z/7isnjv1c PZ5hkDBsNYlTJ/nVw5ytMZMIpOTEpYZnYBIiPmwtP+QsI2UHTokSwFX+5LRf/zFbXL3lMTZ5 UicDAAOyQI0QVDLoCIe2dnKn6Tg7KkrlEHpJR+uhucbtT5LrgB6WkT3CEZ4tPrr1nM5SHw6H xpiK4PnMi0WPZXpOFfCUBMqo2l1Gve0f/N/Dq395rMW/8Fz72vc3JASwIRyOOkkJbK1xUvrA 46TbI3UeVQ68cscvXqd5sZ1YKZQMNpxYlygHjqjWmBn298SXRFKIBpUoV1uOA1GqVq5Klawn j6lIeEyyQkEmrifNVhrFhkiI2DhxYsuStaxMvJLjr5+W0wd+ITOlRxGkCBgFGULEsHVon4le /pUzJz87HzfARCRGGDIt2k81A4nGhSEBoGIc2YaxdZgEGGt5jMU+fjzHVlWhxGRmmFMli4rC OdlqfKSwuToCAQEeRAQmTsEOYQjNoMVktCfdfwOpEGsAoUu9d+D3efYXNDrGZKae9ZMv5AhH +DF4Wt+zmrfRbrfx4HT1nzSqQvYoK4d51/uMimH30lfzG99ut8PsMfslWXhns/v93cwZA+Kp +Rz/ZLLOmbxQHx77WAVgecO/fgMvSDSfmogpVOKWZd7d3mi0O0To9/eCBABK6JYiClZiAYGU pwak6nAkrYicIo+aJCKOE9toJlFkmUhVpubcOuu9jL+QCLtN96ez+evXxZYSGEEDcxwlbuFU curzs2c/u9heqAUuK66B8n3h9fuXyFylSAGFTdjUwXVwVIXPCmJ8KO7kfSU9YlADnIIYKuMv HkCpElj6SDZLFSSBIqOOIIAoCIjUEImBGEKhqHaJpjbaTGtZvsTgUpCS578k8QrBfchZdkc4 wpPio1tPIhKRoiiMMVP9tJ8CKk8ql+LmvUvfeP/rdzauD7IulUPs3VtyeL05Y0OykLpff3n5 1jduDjyMU4AecoqJyUa2CAGPc0tcgRdu+ecKt9RuduYWnIuLssj73WFvb9TfLUZdACK+Er3s i/ZKAiBGhScFYwDEbDmKrHVGFcH74GU8vvzQtRhr03ocJ7YqmytBVIMoEVlrA5Ui49oXk95d tqfv5QveKLF11D6VnHi9feaTc3NnazZmrSxXdWRMuEekEkJ3K09Tl7RIyRGlxqRqa2risbDc +B3jwcgfbPYmdCgoYAgxUYKqsgQFCfyBFjuinlwH0eJHLH8TEdVNNEdsgQDJyY/UjwADSmEc ZAgdjuWcQNWHC0BQfZoURLF7JQSxi79gklOAPfI9j/CTwNP6nnmeR1H00zSdRJT7/I/e+eq/ /Mt/srWzVvpSVSrDwaRf290+OVv/wsnW663mL83P/but3cDO2IeJQcowzlJR6CONNao6c6Cn Dmg2jdudxdrMLLONoUlSDz4fDQ68LzF5HEWxm0uuUMUo0sJBIZWRsZFttupp6tiQKoq8GI1K Yi6yAodYBy62aS2e9ssoKC99CAKADbO1EmTMjKQwaOrmnJvLqTaP858/fuHn59vHaiaxYxFN 0nFL/rS7UjHcL2++tfHdv7jx0hfPPf/lY/Vah22djCPiSQv99OUChCm76IM+gckyrXJt0sZK gKrkkm1QuRUIVj3c3KTP/clAAJmI3IxWzb4KMiVMV4pd0YzglGsQhY4mi6Gpwn/QUHb9je/f vf3m1eWPn3rl1xwtNShePLKdR/hJ4KNbz0qJTkTq9fozXNCPBhF577/x7tf+2Vf/542dOxSm 8SO8qqrsj7B3b//d1d5Crf6FmdaFJH0/H7Hhh7MKBGuMtc6XD08bV6K0ryk4SaI0bTC7qj+b bWSilIZ9qExrIt3c72elkC2crs5TnlBFXDfG1BtRoxGzAUigxOzGpEzVIhsXQKy1SRJZRwQB GQKK3GeZn5L5rTWhmC6ZmXVzxX/pXPOzv3xq7kLDJJWg8WG3eupIAoqt2/t/8y8v3X5nFyW/ W9+XCyc/8WLHTJtHx21OVslgbIQK4MFi2mM+AwARTAPkpr2wACA5hT4QCCRa8GMbPj8EVKGh YMlh6lRplLpYzQIIKG9rGSlHxjACqY4wTu1Cob4X/ub337r21vXuWpe7cmdz4E4vvvDpmWTh F+FmPtpijnCEH4Gn8j299wCstR+yWPT0ckpBZHX/7h+9/W+29jescrCVmRAABGVASAAKkDvD 3r8e9uZdGilKlCa2lQGlCfdaCOyslCWLHO5SVEKWaAEtFMIkGqo6SlCoeNKgVaioWih2i+DB wrpbx/oiqUH1wJvEJrWExwwuA4ZhjWHLIohEIhqKsmqNsdGEs6PIi3LQ8zhUWSKGAAzPQmLi k7PRb31+7kun52s1JkBlOj3oka2GQvzureH6+z0RVYTd3dHOnvehdMwCy4jZ1MBWtUobVn69 ahhAhyr+Uc+xio8VhrgFuOmJJ3TVEMgTEYmKsaYiUz2510eASi5+Bw6kMZQVCkY154OZmUTV gesqHppNU7b5sLj1zq3uta5QUNKtLPzw6r1jZ9+N6qcx87JR81Az6xGO8JR4WuvJj8zLfSye 3m5WRwgaLl7/zqUb70LF1JwzBiAVCT6EEDRUYymhgFWo6lY+JCJSJihHlpl1PMGcQDDWOOdC /oD7aaDDJm1Feryf9bo7M+1ZYxwp+WJYZKPKTkPhFbtF6AYxSkOj106absuO6U4Ma9mYypDS VJaYmY21XHprnZReVZlZAiQQMUII2agYl2MO9WsyGYZdaPDnTrV+9fmlc63E8WTUHA4TBvSB HyBR1x9pCAQyIFHmvPQ+GFCTuUawOiZbTmtqBCJwqhIUJd8/7ITqRFA4cA1sJ0WbB3cOFloQ mCki4o/2kY9bkIoBqeV4FpQSRP0whC7rmEGhBIUFpdCgKgwOkLQTL55e3Ly0zRW1wbCxMUtf hu+Z+gm1nY9YxTrCET4AT1U1CiFE0SOcyp8kesODty9/s5ftx7WILTNXqTG1kZUgUpRFWUgY F6krbUpVaJBilAcfrLNsDbOpGImESbfLYSdJMarT1WOmczOPNtfKUb+W1MCcD3qhHFWhsii6 XncKKRURdK1N68eM2LHKJxNZZ6x9mIFAzNZYomAcc2mC98zsgw5GBROFELyvzl+Fwx4wStRI 6bXF+pfPzr16vDETRaTAB1TGxw2gICUirrFN01ZmbVQigBCcIaqRm2HTJPCh4P0BK6dkwAkw HHczHUoFCBQcEafAY8gVxDGZVMNQ2HHU0I+U9ARQkaVIPYo91ZxMKhrUjyAZq5kUi0DE4FRV oP1KfE9Z43YCB3iAYZyNY7IQjG5jeEtnZoh+epyQI/yHgKfie4rIT5OlBGBzd/39Gz8kJmMN Tev8NJY6syZia4q88KWnsQUdF8AV8KX3pWdj2DCzAUFFquTDgyBDuHqWG5mP1nqhGLVi65jG jEmFgnuF38zLXACikZFrJ22RMk9cRmLmR7uuJiMrdZxsNAiBmEVRlpMU4URUSQABG+VTs/Gv nlj8wkpjNk3GQnL04DGnv46rVQTj2MyQrYna+uyMS2zWVSNUOpvYBpukqrN/oBtGgFoiniiZ Tl8oIAeOMb6GQ4z6qmJFNRMfA9fBTbJNHStGP7G7d+jQImUfZX+qiTVtXp0clMGJagZ4FWWY tFkzbEhVVMgaY9kQaejL4IecXoCLjrzPIzxDfHTr6b2favf+JKAPMHuqNnbqj0b9bKT8OOUe IiUyEcdEBHrILI6fQFX1IfgQ2D9yinHILwArQopLz1moH67LoupSRAmDCSVotyzXSylJmZhA d+doe6VqNj9ErHysdVKVSYnbWhNKftSIjf09RWzw+ZPpr5+bO113zlghkA/gR3ORY0umEKbY mCZcExxBmRlxzZkaQ+Gdw3xHIzftjPygXEolN6diHtT5VIAJCaE21hJ51A4RYDrqOgwlNRUD 6rGneFJMs+qPrJlAFuwgvrquxXOdzqn2/o198gwiYwwxA0TDW5RtwjUnHQNHRvQIzwBPlfec thj9WHzA3f8EIIiAo4icE808OUuPuL1EpFCOrGXISNXLA42JDwpY3peAO0TwIVWGCaRWNGvS 1ZcjPxNkUwQhjU2do0yl5zVOORIrRdhDuPycIwuICumEmEmq1Xg0Orw4L6EMZZVzZWOMtdCp ztu0gYoty1Iz+bUzM79wutOYhP8M4BHe1eHdMWYGrhlsjWGhACsgLmIbOSFVEhe52ZkksgYT t3CirkRVQ5SMcxiBQIxIcT8drCAwVzynDzKKlZy8qhIx6AMVOqaO5I/Fj0+mV2llbqgWRCWg y+cXT3zs1P7tA/GerCcKUIWQainD71Ftibj2gYW2IxzhCfFUjKUPKQvyDCYXkUIN+1Fj5/I5 x7uKsiytYeYJ0+/B58FayymXo7ycEJLur+HB9U67rSunxBpOnZ2LzGLq5mvRXGqX3zArZGc5 MpHhyIBByqJcZL7cLdfyXOPsTrd/ZxC6WZnL2ASKTA33JBJVeC9FMSZvEtE46THltQNQnUnx +mLz75zpPN+O7YTihMf8mByWCByxbZFpgMx4KggACNTG9blkdk7MpsuD2Ru6KJq8sdoyUtUg XkQAJbBhBhPIgswjbegW+Cid4/qgvzf+57MbZkVgjJOdmmXFwfqe5EGc5TSOIkdMAmFFOboV D1a1eY5+ArO8jvAfJp7Kej4Ds/ihzyaio7s/0Jt//UvLtZ2QXD0YgNTGUdUIOTWCU9eGDUdp rKS+8FVVITBYOELFdySvWmqoxNWIMBfbM83kQis520yWZtK5RtxI4iiJTZSSs5Q2jWsT55AM YCIGBaieL+WTRb67t7e2vn1xff+rN/fXR+WYByvKZtIurggBRR5UJtQuAhtSEUxa0A3hZDv5 ldOdz63U5mMDw7gf/T4csY4tpHGwdbYN4khgiMCQ6i2qIE7yYZHtDWzQYF3ZSPZ2D7xfiExc HUUkFL3+YHc3ZCMRARuXJvXZ2ajZYWIC62G5TIoB9xH0M6c3iZSliAdZ4wwRPTuFQgYnKiMC nLWpiwgCGIpdPYmqjwBg9gchu0i1JdjW05/yCEfAU0ZkTizNAAAgAElEQVTuP80Wo3z7+tb3 ftfJ7mefa3RW7O98b+3tzV4QTZJE+cEuzDFDSMlylCbEZciLXMICNV6O5k+7VgPWKvbJXy/2 L4XtWozPLkevL3WW52qdmXbSqEWJ06gOmxAFIglUczNfNvEZ+LWy903yO0wALAjktFFLa83m scWlcye2r/XfXb29A0UIWhTBGCZmVQles6wsiwcI5MwUVFTEk607fOZ469fONs/UU2OrXsmH 8hL3uyQFSiYypkm2QSYBDO6Xk6ctSzFMTUI/5IUA4pgacbPduN92pcj6/a2r17KDfZIJ59xy NugvPV9ne7+7kYgIRimeRPwfBdnBwcHtu2WRsYmSRr0214pbLeVHeAlPgnHAUbH3yQGZivgQ RJVcpI4to5rsoQAJJLtjs7uoN0BH7ucRngGe/DaaRqRjCUUBzKEodfrMHZoSgUP+Ez32YIfw 6AsIYdTbff8Pw8Hq/Kk0bcmrLbtcP/F/fnv7z9d2B+UwTiNbuTOTx+l+5w0zW0MZfzY+/qX4 9DxqTOwJCmWlV+vzebs9d2awsrwQz3fiuGmSeUSL5FbYLpNJNb8Rhu8A7OKOaqHFOodMH9Ga ZGOQxs3lleWFVXN7R0AilGdeRaLYqWqeFaWfFN0nV0ZEFSlysYbfeL7zC8szM5Ej9qwE5fvZ xepymMYN6MREsaemuppzDJ201uNBD5UaIGciFycxE9wop4Nhq55ae19zquj3fb/PIVRxu6pS qb7fV+/VuulHpwBgCO4+f+lJMNZz6fX7uzveZwx0d8itxe3lY7OnTuqzmIJFMEAM5CIqHkQs qYvqSZLE9xesoLwno2uUngY3aEqYPcIRPiqewHpOLV3wfn/11pU/+n/uvXcpbrRf/ft//96V 9yFy/KVXmsdPCDE5E8UJWatEkXFMFb0bMp78XamkjZVwCVCFiPgyl1BG9caUYU5EquJDMbj1 zdHqe805arSVSIJHMqj92sLihWjmr3Y2ro4GWUmRjWGqXpSxERcNwUuc888n538+OpGyqyyB A1SCkm0t9Wefc42TL3BnLopPUPoxE51TM0NsCUYB2AXy25xdKXb+GFpC+iBPbO6LgU4TBWwi 4hNLs2osSVARUTMqJCty3KdU3d9GUSW1xP7CXPJffmzp453UmWrhrFDVoCohaPDS3wrdncx7 yYdFbzsb9mS4lWc7I1OPj716emY2nT8z11io15upGXtyDCKQg1JztjF3enHjyq1ASlLudzPv 1ZhqxhKMsUok1WYrCBAGRQksgaxSRDoCOMCDa4YfpNZ/aFTVpFqj3k+S0CuIyEBDke/dvcNJ 1DlxstqTp6G+KRTkPDjAl8ErMfeGDSrrDUuQ8U1OKig535ZynznVo1GcR3hqPJnvqaoiYePi d976X/7x9b/6Cz/IgvKV//f3sv0uaUgXF+fOXlAySbPeWl5KZudMqz1/5tzM8RMgNnFUb7Wd jbLhcNg7CMGX3X0ulWc70u8NtjbWLl5M2q2Xf+O30zSd1ugJGnZv9W98K477jQUC+eBNby/0 drxV84l67Vx66v1+/3u9g9uj/MAXhY6fCxUVERfodXf8C+ZYOr1SBQAhcrXBzMooXV507VkT LZqZX0W0LKgGkbFSkDCUchVagoKGTSIQ85gofnh0WvV7EFL92NxMOzK9kUoIVY1lqun5EDuK QfUGfXFl5h+cmzuRuokQJypTUOayt9rfvD5Yu7K/c7d/sD/yQsFXRX3yeSBRRu/2d1eZkc7V Z59b+Px//tmVc3PWVUehin5gUts6M+dqtaI/CkTlgywu16xFzfpot5jWcJhNrdWEGU+BwpiB b4iSJ7pPHkU802ycWCmvFaHMxptwiGz71CkgqqTsmQwbhgZX0HA/7/e9zldePFVutJa7WmzC LasJj+X8H+EIHx5PZj0FOtjZ+uY//p82/uabPknKpE42GRkjK3Utcz8aDX7w/RAZ8t6OMmbD NmosLtRXjgEa1epLH3s5nmluX716sLpWloXu7WnheWXBH3Tz3f3S2FO/8evu6o0Xnz+fprWK bxjyYffGt3z/enuBEqdQGQ20uyNSMkHUcNPwp9rtjzVn7ubZ9UF2fdhbz0b7RZmLRGqfo/Yn o5WUI50WU8YykJrUQpQWTAwEoYi04DAyXId6xVDKNclu+fwGh22CMrnqrQoFKVfa7iEEX0hR Sul9kUtetLP8Qjt+K/NGVKsu9EO91RVvUQHDONWOv3J6/peW01ZiJtwbAbgchO27/Zvvb61e 2ikzM6CA47XkY/M2SieqHAiZlHnBWRlu7YzW+6MDuXtn9NZ37322Fa0sNQAlJYIo2BiT1mts HKhQY814ZN94RIaLk+b8XNnrh6IAQMxxvV7vdIyxpAoyoKocF/FT16nJmNbSMnndv3c7G2XG mHp7tj238OxS54bYRbWoc7xz+/vWe1LFaJhN9VYAkCrpEOWWagk9Ys4f4WnxZE8FKayNzvzy Lx3MzQ84tVGc1BpJlDCzii+zkc+yEt4pyt5BubGm7/1g/9bVvbs3w9wskvT23TVOE97vlsNe CAEIvshw77ptzcrzL9Gx0+tR47wh55yqADAI/dXv925/fWamrDUdoGWOg23JBwAmEacqAQ3D z6fpuSTOZme6RbjZy6+t92o+fd7NL6J2WIlNx1RHEqiolIMD22ob2gjh98WeYDcfpA+/Dt8l yQleK3ok6cTXZArBD/vF8CD0RyEfIpTqFQCJJtAvL9UvbvcK74M31tlHGaYkeONE49fOd843 Y2cYIAYrhawfLn979erfbvV7WW2hwSc73plGI5mbn1tamG23UxsxVYOHFWURvA+D7uj6xf7q us9Sl7fnKD0O5NBCoZAAY7Jhvvbe3aI/RMUdZ6IpFVPJkGssLvos31vdkLxImvXW6VNRq83j EUgMkCqI3TMwNApjXevE8ajVyPa6JnJpp20mQcbTgqBqiKyr2dnT7ThxWabGsrNm7ECDqHI1 g9dim2SkE+LBEY7wkfGE1pMoac298p/8V3zme8OsmJmpdzrtqJEQMQt87kd54b1YF2Wj7Mo3 v3bl+hWve+rq/Mpn4xdfSBKHxFoxxajMs1zKkvKBHQ3yNG20l8+dO/nccy+cPHvWGAMokQlZ b/vyn0YyqLeIbYDwwTYND6oGp8Nhl1Y2KIZhlXyoi9tpe9QiqIMtihJOK5shql5C6cu88EPu t88IegfcO4jmnQ25+ncls6AAioBSEYjMJOgDiDT4srdf7m753i6Famib0XF9xytApK91ai/N NL6zM5Cg6qrCWtXgqQHkSP/+hblfP9/pJAxEIIGIsOZdefP3Ll38o43lTy/UPz6XucBp/MKp E+dPHG+22UXMHJEYRUkEkKgyhP1JnH7p/OoudQej8yeXFhcW2K/L8Kb4g2pSmxeMCu9JCMzE ZsyC0kldjUySzp47E7VaYZjXOzOuNcNjcU+dbizICp5NizgbU2/NJe05BhFEP3QzklZDQEBQ FS2hgcgoOdIp24ABU3TLjaubfuiFyCgZ6zCO2ycgMsiBUo/C9iM8NZ7Aeo6bSUijOP65T34S QJZlqtpsNu+X1yftK8OD/Zubd0Ovb0gCIWnUPv3Zz507e7YSovfeF0XhvRcR732e5/V6fXl5 OUmS8VlAIqF77a/LncutleBiB5Wsr71dr/JYnTFV1dGItzeku6/B26o7ppByp1uasfS9imoY 8yul7Np8yMb60dpdgtrOnBpLrAQGPJRAFmBREQKJIMvyrc1ib1d8AdD9AroKE1XEA1FKInzl VP1Gf9T3YBHDTCABA1iu4T99cf5Lx9pJ1YxDgYi8htFWcfVvti6/uR06vDdnZlrmwoljp8+e mO003KRhfswamnxeRAisTrXTkM7CWYUjBjOpWQI5HlxCGIqmDGJSViXAQ/kwD4pABgakJmot LhGRQmjClKDx/yrb5J6+5/L+Rza+BtVqJOiTuJ6EoH5fR2sIPXEp0lOG56qDQXPVIoQQupkv y+LMgq070QCdWH4CAQJ4NRZVm8VR6H6Ep8JHzGdVDZrOuX6/r4eU0iso1JdFtrdPwasqMZO1 9Xp9fmHemvEZK7J9VU6Z/sLjwTuAarl3ff/qXzSaZa0VgdUXtLclZV5JWlYJRMVkzK4vTPfA 76yXecZAQiQTqnklsaQP9Q0StMzd3papNYjKYnjvFooinVvUJDr0ukrsB1yWRW+32Nspu30E oUMjKqfXgklHkYr5eCf5zGLtz1YHoXQ2jlTFWffyrP215+ZeX0iJ7rMzVXXjcvet37+6enk/ Pj0XnWm6ucbHXz57/syic24qdDLe1AcwvnwpNtjUKFoGGa2I/5wKHGkfekAYZzrFEjl7P+k7 /t84kaGAgMjUQIyQHRonr4BlsoqPKpj0rFBtQzGU7Dr5oUK1HBEY9YZqBBWVPsnAOmvqiRpj 6/HiUrvdSogVh220KhAf8T2P8EzwxLcRERljqoGa1loiKsty/KhPDIqIuDRtLa+YJC38AMZS HE1cqPsN7zQBDilBVL9LOTy48SZGGzOnY2NUBcOuDntCY6Eh1Wl9Gsgz7Gz4/R2SkkE0Fmob x6YYd8dUrJxDXe+qurtp2vPSbCsHHW5tSVG6dtskKRsGIKqhyEOWhV6/7HXFF4SJJOYjrljF AWVIYPYl5hpJaoajwgfn0th8drn2H5/vXGilhoyQjJevYev24M3fu3b73T1zsmXPzSw9t/zq hVPHVtouMlzp642/HR42nZiq1PmBZHeYIvCskoEOtdwU6RsElQIirASlUE+SmTRylsAKnbDe qz7xmEwCWyOuEUHzTfEDjKvtIFjFQxboZwNSCcW2lgMhAgwriR/A92FnICNCVhXLjDEEmNW9 jrONRjIVYqmS3WDHUQccfVTW/xGOcB8f8Ut46io650ajkXMPdEATYKyNGjPkImEjZG2aJklc icodNpSPi8FFVfOta/3Vt1ptdqkncJHhYKeK2YWIq1m/qkrK5cgcbGnZ5xiUc1FJJd3nY05S eA/R6FUZkO6eXb+LONUoIg6h2Nspe/tsYkQMACJS5uI9PMalow9eNhFKYGcU3tk8eGd7eK1X Dn0QRSr+159f/pXj9YXEgggk48FtpIPt/C//2btb7430WCNcWFg6t/z5T55bnJ0hehwt/REf lEFKykTiD8LwEvkFNvUQ9lBuk5QKUnilnGMFQZmaM+lsp8lsdDzNgkCGogbZFkwKigFASh37 xWMKqBKDxrylD3VnPCE+pGgIgSAhhF0DEPFEqjnX0CUy0CFIABIfiuEIQTAo763t7u8Om8da 40+9UmdxDYqPKxk+Mp9HeGo8lToyEaVpuru7+6jQJxubNBvOYxTYnjxhmg1jLR7XXCRalcNF FQRWMlL0+nfeQrYWzSVeg1LodVHkXJUwRAGwBFNmRgZRKGwCl9RVEPrD7GA4GMvZKUirYe/A g75ttXyF+lLfv+N79fzVM45DJKY0ZQilp7wihUKhTARihSipQNQTA6gsoZpAQkBQXR2Eb2z0 /3qtuzHypZpIRMDLTfvffPrkF483ra0Y6gqQihCpqtz5fnfrh/uiVhbbp8+uvPHK2YVWU7UE mMemSoFq1DEAEIyiGjRsKg2lajcJASGnwS0iY8mrGh3T80Nao+MvLN34Zj0Lao2JnJkkGEAE 2DZFi8IMKJOHskgRxIPIkEjwEqDMEE/MZIICDENVWM/3A4jJFkNF1UJIxAdDVfWJmEgnCQOq FJwmbWcKgig0SFCqCAE/qjoVoAWElUCkokFUfeiziwAPIqPGmiiO60wkqoN+2R+WqtVWVZEH wc2SW1A6mrJ5hGeAp7KeAKy11trBYNBoNA67ZsaYuN2Cs6zKvVGn0aw3Go+9Y0lVRbWUIutv X7s62FzfvXv11p/923zzblTTdCY59tyCiRN2Nm7HYGGJ/SAJ/UhKJ8oEmCrdp7YWJ/1s5FVY ETQgBL/d6+3uQaXeapUiRGwjpyqUh2i2ebWRf1M3w43RbyVzf2exY4UnguikikAsHj7LdzYP dq+Vu3cGRR6C+qDm1M+1Tj7fCVmOGb6Vy59vdS/uDvazADADhkLJ/MJc8t9++tTrCwk9OK65 SjQOtov3v3UbAdlcLVnunD01O7/QMAYgq1BBAIjAipjJgRzIAlNFK8VESomIIETqwYWgUAVQ AgpiBotI1u97X5pWU0II3vP4TZUFGpIMQE2wVSLVTMtdyfaL7mj12vqdty/tr20WJaDknH3t 736mvtJhQmN5xqaOAx3+viQigQQphxuDO++ubfzg2tkvfeLEK6eMqXLE434gBZuqkwoAMNoZ 7txev/bOVdeMX/t7n6nX4x9l07hmo2Uvq6PucPf2cHdtOFgrPNbOfeaF4LXeSmrLKUzgWYPE UulD6VVUqfqCoSog4uQ5jjrEH0Us6ghHeAhPzYImqtfrVe3ofl8NoED7xMmkMzs4WJX+gfEy cUYeQAgh73b37t5ae+edW3/75q1vf1uFonkOw/0sL7WvuN2//J0NK6jNpy9+5eXWXNuFNoVW nMQFRqHIJnw+AJX6sKpqGIx6mxvD3e2yO1QJCumtVvJDUCJRHRrnTy9ejEI/LTXn37m43z9v f+lYYzHhqdplb6O3dulg/erBzuow9zZYVZYg4guzt3pw7W82Rt3Mz6Zvz+HubCyRdcpKEEJk 6PXl9D/7+IlXFmuGKei4GxVjTXZVtdt3873VzAdwPW7P1xcWamxF1BIpyACWKAIiGKOYlIPG TqhOtd3HricR2AEOSKElQq7IoIEgPi8Hq10ZjlB6N8zZ8HgZlfZTORJZg+mTjRUo+rubF6/e /u7125ev797ZKIXUWmUrXhFk53/9qoZCJJz59POf+MqnFi8sq6NKKqm6KPFy7c2r7/yrb9y5 citS3g1C7fTEyTkz7tAH2FHUZpOqeAnDvL/z9X/6R1f+9HtF7pvPH7enFl999XySPGzXqkvU IMNRbnVhcFB++3e+fuXN66NhabwxzBe/drUogmEsP7/04meel6EYohKkQJjMmyZAwZQeQ/0M 6Mh0HuHZ4BkUH6MoMsaMRqNarYb7oRx1lpdqs53dGwhKe93eYDCYn5s/bEAllDe+/a3rf/zV 7R++u3n5vdwXvLIcTpzQaGtpKY5jZAPf3cwGt/q0OhruFO9/8/ri8TOvvvFznYUTxpp+f3/t +hWEyRNCyENZ+iLb2u2treV7B0EhRMJMCgNlZgJEMSBznWi3t7cnLiIDwsjj39zYWe8Pf/Vk 6/xMTAU2rnQv//Xa9mam8zEu1JGyiWxuzW7m13tZuBdWtrPZDLaXv3xX6azcOh1LbAKZ2NFX Ts/9w5cXz3ZiIg7AuEEck7o8O0WaZ0PxUGUkttlMWo3UGKMwxBHG/qapIl9gKkgnD7AG7mfu dLIDhmDURKqR6kglUxEpPRQu9wfbu/t73dmZOptD0oJSIOx6z4Od7uW//O4P/+S7vb4kF+bj T7+Y1iiqR1HaAFwY+fzijd57d4v9wbt/+LebP1x947/+xTOfuuCsM1V6VOGD3H335tb7q0Yk GL67dbC4ur2yMmurUUxEZOsUdZQjQEkaWmgIVJSiRPvd4fVbGy+8ePJR6wnSsvB3v3vz0rff szC+n914e6MMzjQSCKQU381ZoaB731ndurxrmENWIo5hbaWBTyCoBBe59CVyc09/wx/hCBWe ge/JzJX7WRXfJ39AkeVl4SFGazU4S8T0YJWg7A8u/cG/ff9P/jAMumjN6qufxOlTNbO3TLuv fnyx1TbZgO7dzPdOFjvvrm/8cH1wa3d1Wzqd0835E2kUt9qdbefKkFdH8yH0hoPBnfXuvbUh 83692QcCk2G2Ki4E40VDyILfBpfO0rwxNTsW4CQd+vIba7LaLb5MrnZruH2lNwzizzSyjk3a sSRm2/t1X+4F6c24MrFrs9mpO9nze1LzuHA7L0W3T6S1jv17Ly3+5gtL8w1DxBM1z3HxXKFq ErL1/o5eefvesJuDxEQmTdMoqhM3iSzIHSaT3idJPm7nATyYE6iUgwwjUWKCAZUEqpK8/cFg /2AnyKwxCcbETiVQPiyuv3X5vT//zvqlezrbpFdP6crMmZONpbmoXU/S5hybNHgdfea5y29d vfxHbxd3drau3/vW//W1Ig/Pf+p5bqRVGcpartdiZtEgYBJnbGSpIvYTQAZmRsiZcVEscvXl 9tJxxd9W//ahko15uIgkXu5858Y3//c/27m96ROXnOhErx0HPCKbWouy9HtDv5P5vaFkpVe1 g4yCShxHNRtHjirHl9nUz6H+EtEz4K4e4QgVng3xzTkXx/FwOGw0GpjomuV5Vng/MmLPnIxm ZpyxgioNNUbcan/uH/2j7vFjN7/2VzK3kLx49vWfe3129d8l1Fqa5Sixxa62Y24dT4/N1V2a 3nrzZjEaXrx8rXbq/Evnz1ooEwmUlBTo5aPdm3f2bt8Z1RrrcRwn9VPtejNylqnQUAYdjvL+ aFT0e3XR+Zq93dKu9VVEzQoDiGr32uDK+/32qNhK9NJ8fb/MUNY0yyTHuDGGAUfWUV6r3Zix rYuDU3tSz/GpW2U3xyd/++Qvv7ocG1QVaqIqxA6AkjKZOiUd0ai/s75/YwelAkwSxUnTug5x VCXonojGrag6r0xVxhGCqjAEcGAHowFGwEZVS1+WI4QeWRa4io1QluX3/vjtb/+LP/d7mb64 Qi+fnlvqvPHaypkFdpElNuQaoESFMddcPD67sjLz9f/x3xb90c4P7/71zX+3/5tfeOPX34gb aZWrURGoKpiFHHGtlhozYbYSMydKY6UAAApz0M1dQWWkBDhjYB40nYpc8nvfufu1f/LV/fUd eelYvjCvjbCw0vz4scZcO5qZaQSVwcjv7gxXtw82Nruj9a5/ew17QwllFLl63bEwWENtyc18 iV2LHhlDcIQjfGQ8A+tZuT9xHOd5PhqNGo1GJc0QR7GJorox5dr2cnuu3Wo9dOOKyMzc/M// 1m+tfOqTm+s7x48fe64z2F/rEmzW5/5+2d8LDAdGnERLi0tr5p4UeZaPtvv7RT7q7W1lWQ5A 4Mthtvbepd2rt7LZ1qDTOrt84suvfmqx3eztbnf3doeDQT8bjcp8v3ewHwdVAZktzSej6NUD LKj3y9O3Bp2e3InNX8TUFZmp2Xo9EFlUUfREFr56xouZ6P9j782aLMmO9LDP/ZxY75I398yq zNp7rQZ60EADA8yInAUkOBtFGvXAB5lkpgeZZDLTg36EfgRNtBlJoCiZaeFQoo2RAjmDGWAw aADTaACNbvRae2XlfrdYz3HXQ9yblZm1dncW8KD8rK3rZmYsJ86N8PDj/vnn7z4PeWe4NoRx bn6b6G6V5xK2LU99WgIgLMRkUxN2FCGI2RDMpCewiwINQ2KLacO2T/hwGwhDMpR3xOfEloIu 86xwAGYRI2KoibV6EfEipfoRcQyOXKnX3vjwp3/63aqfVc+tBi+eX11b+sqrV86d5UCzw0Np 2FpxFL701c8V/7X77h//mezm5Wj85v/7/fB877WvvmID9uKFIJMrhlojoqLKkxgDQzxLBJ7E HwKDpfNnft6k/w2x4SmhDc0OFZSF3/33P9rZ2OZXL9CFuUvLyeX17rmzc/MzKTc1sCTEdHF9 /vP12jArt2/139ysNvYzAlQFCjVek9mw+zWK54np1HSe4gRxYkUX1tpOpzMej6uqCoJAVY21 ho2K2Dors0FZVUkrPbxLU1m0tnJmdW6xLEvSavuH/0yKQg3tbDiIsgYTbgvAEKgAYvZ2i62t O61I+vuqKoosG9965xcbH3xcd3v57MJLL1/9jVdfPTM3Z5hmet3dzdbOxkYw5rpfZMUICgar olMTJkKXxECcySvvjJd33EaA77YxmrXzS0k0EzIr4NHkuQ8XTAMWNJwPb15Izrydsxpf6vW3 N899fm7mUndKjlQFgawJOgg6wgFALBq12nG3rdgFEOyNTS2fqWxQR1pcl2pL4UgJ1ZbariaX jEnzrNzfHYmqQlXUqyoEWpB3onLtb6/91T//1uDmrju7YK9euPzimS9+7tzqvDU0npYaKVSn CilESmTx6jd+bbi19/1v/rmBunvjn//k4/UX1s+uLBij3dX5oJPUu85HAXdiYzARJVGFlOI2 CF2YaEL2Fx/PBLAEIg2MsfZwEl+h+e54452be/cGdLZn1nsvPN99/eWz3U4cWAZIxIOJ1JAA UBNRlCSBd+937ERJSxQUcHyJZ77IrRf1tL7oFCeNk7mlmnCVtTZN0yzLvPdRU7Guqmxkf2e4 ebeqqgcDTs0DY6PQhHZ893qx8Y5nMoAKKVRImmipktpEySgquHz/2gfvxUaW263aS14WO3c3 d+9sCGMjjJ4/u/61z7+yNDcLwwrYIJqdX8pGA18Xi725rCi29rad96Ro1yb0XBkFQYVWN9zS rleSe4aHIXXnw2g2YDOxmA/QVBUNgdTQwvO96I5zOzURiv1yY3P00rm2NWZSIUQRwjYFHYIV qBKriWxibZKqghgYZ8N+VpRVEtmnpI4fHYio60u9oxCCURIioaaeW8Uw2zgAG3WOpClEaDRL 6mq49/NvvdG/s+UD9ou9ucXua1fXVpdiI2MSPTSSI5VOBDLGnb+S/CgkLYVqt3/nzvbm3dXF WWZaemk9mknH/UwDG3fSTismPigOUNQjuEzIEpESAUKyzxBPRgwHlslMu6qo1Hn95v/9xjv/ 5vs1G/P55bOr7S+9uDo7k4K0eeMxN5rHOBikilCToyMhX4NC7lzl+b/LyTo4fHiP6FOc4jPg xF7IzX0fBEGTQRLVoixrV0MhIsPRaDQeLcoCHpAQn9S1e5fffbuuyzQ1UUvHfdnfcvWwZI9s VBVZuXuzL3UNUhEdDIZbg2HElNdVlWX9extSlAXbytjLZ84s9HpNGX5DohIVEVFCFETrSyss srG341USj9mS7gUCgi382kZhVPtGP47Vt8OoHZ6uLewAACAASURBVBLf73U5/UenZKFJscBL S63/8gsrd7fw3l9tAJAKw0FR1hqGCgJRrGEPtg0lJYAsKFVObZKnvZQNqVPJ3fhev6zqSRH6 J/VC1cONoQ7wgGVuU9BDtGi4I6DWXGvt6sU7P7lR+bFERn1TfAlh2fxo++ZPb0FUejNY7p5Z bS31yMiY1B1J6B82nk3k1xdzK+X8cmvn+j5I6mw42LrmqpUgnhtt9ctBBqipq1AljgOQP0RT bVbTBZpBwPjKKaAMCmwYR4d6EGDnxtaHf/WzvJ+5z53tnu1dvtjrdmMAUPPg/Bz0SplUarJh IROek/aXKDl3WtV+imeEk7yxDvjz7XZ7OBhUtTdhCBHY2BE7Vz3UMKiqCvx4Z7T1HtXF5t3x 9Z/eHN4ts93CZaJgrx4Q6MRukWiRFZv9ftuSEurhMN/Zg1SOkzQJUylGe9ut9gxUvPhsOBzu befjUbP6jMIoieMm+hWoWRuF+0GeB25p18/3vTJtGbMbm7QXBVEoaJTPldCE0JTVgEipFLIs /OJy57/98tqV5dS+nr///S1R9QvhqNbSa0chJjHhAptQG51njtjMEKwAcTs9+/Lax3/zXrY3 pPG4fv9OMSzdnDOwn9RFIpCSJY4MRRouUDBPJmk6nhDU1zrY7qMoNE14acEEweSN4Ojdv3in 2vcgdivp/EL4wrkwDHKCOWQ5BQSggKZKQjAKBQwjiWbbi2c7Ox+PpM2uG1SDSvJbFLWl9uo9 e9FKynFRlU6FjwY8wI3Kk6gSeech8J0OzsyFcQQjqg7K3tUffv8Xo9uDejk25xcuX5y9fK4T TBrVPez1og1Dl+K5eOVLl2+8tZHl3rpOIYHqqdN5imeFE34tNx5ZENhur+d92V6c3/DesIni JAijgyL3I4p2Ks4Vm+/97O1/9Zc7P782cGW62Br3onEnUkeun7EDHMT7cFwFIrlFweJEJipv de2co2n5c5Fltz7+wJqAQXAi6gUCgqtdVpWbO1u7/V0vAgIrVsaGXPz+jCxu7ygwhvwilLoT tLuBspIygwQEUiuk5OHV1j6sk6TkV863/5MvrVyZj9Sr5EqiTBQG4epC0g5YbMLhAjgEAAJx DO4ClohYwMauvHChfXa2HhQi9f57d9/50Xtzi1/stMyxetInQslIvErRgrIVDgiBaSjiBAjy /WH/5kbtnIuiXrdzZmUlsAGplmN3++MNqMhMYpfaZ9daZ5Zm6JA6wMH/VT3ITUTeFIoaJrLJ 855+pqyqiNNodtkS1Qqn6lVVmRBZx8iz/MHbY/qto7F5Qi5gzLSSs8udWAN4UlTDuxs333yv qgvpLi2upi9eXm610sNGc9oFj6bhaAK81aAat6udG05Uvbiyqsvq/klPcYqTxjNa1BAThZXX wQDw3te+do023YEAXZOQ9k623n372ne/e+3b/27ro2uuQ+HVOd9JYs+xUmRDa8LxyGeZ1Hnl f3KNsix02iaOAjtZsRExkYCMevX1uMi7Sei990QeqKoqy7O8yIfj0SjPyrqaKB03Wkxewwxr WzK/55QkFJqTMDNBq1ISJYHxSkLGUVBrWBpbIHAUiX3l5fgPv3pmfTFSYhDvbwx87YmIs2qm FSPtcDgPYwFVWKIUJp2qbzSyd+itzV/59Zff+MVdVVTDbOOHH2y+eqF1eZU/+ZNuEIJjgKx6 wN3XjSYks+3e+eXbb10jQwFRnCRkSLXMh0U5qACVoupE9vKFxcgyHbaawLRfnyOtodNUjxoh KSUeZp4JXPjYhTNzK2GyzkjCNDFRgFHhmKI0TtLkuOd5cH8QlGjp8hp3EvTH0f4oCKGUqZSi 5f7tO6ONPSvic7fciWfawQMeZxNLZWmkCMl6M1+EL2ztm3ff/MtykJM1WntXu08cRz7FKZ4a zywkpMj3d+r+NsgxXJ3no+EoL/M4mvYXUy2z7MNvf/vH/9M/v/fRe7Rg5HLHx5zG6Uo7ne9E UWyMBqEu+TLd3x2U4/H70WaeFUxC3rmqbpohexFRVeJEfFb5/XEeBSZgq1CvMhwOt/e3ald7 75tum1PFHVSC/dwNK1FBWBmDSpRnx1rfDdrDwBpDSrZZdStZAamqUhDo5z8/8/U/mFs7EzMb rwp4wwExKai21B8SeAYmJCKFAbXIpET2/rPPBNUwss//1uduvPn+xpvXVNzww7vXf3xtdX05 jQ401Z4KUwnQg4jpkX2ZYEhJ1Yxz3djznhURqNbKSekIMERSVlJ7gFTpAZEOIlVIxdRYTyVS UliFIVaQhkFmu/1q1gfLTJp2W0EUgJmtCcJJm+gHL2ZaoK8SkRGqgb1h/96de+tLagJAJOvn Vek8K++OfVZ7fcB/VAJUSBSq1PPhuoterGkV8R0TJ0pMqDUfH9ShneIUzwLPzHoSyvHQ5WMi CsIoiRNrbV3VRV5Ya5M4cePsrf/9X771zT8e9QfV+WXX84uzvL6cnj/bjizXhcJZUy8uLH4O jrn8cOTE2ib0hlo0qz3EEKuNQxuFdV2RoqzrYZm3S2PINJ6TUy+i3vtjoxP43GNYe1UQ8zhO o6y0wAIwLiQ2COyBHgcpqQBMGlh+7cu9r39jaWkxZGIALFRrrdaDiK1Ft8utLtuIiEAG6MJE 8mCmDAB0bqX3tf/0d/86/t7dn35Y7o0++vdvrb2y9tyL53FMu+iT4JirVef1aGfsRKiW7Obu tVs7C/Nn48AmS+nlX7/8sz97m2uvG6Myc04lZHuw+33BFyWVGlyotjDV+5Paw3l44Vbq0jiM ombzvTvb9bBSr8psosBag4NVdnNPHKy5ISxa7O9L7cVwBefqoplmFa2LWmplkI6q3eu7o2HZ bUU0DchOVg8KZ0IfnPfhCz5YgUkh9xVjjWjd3ynysffe2tOs0SmeCZ5hd5cqy11ZMmK69Bwv zEdRNDMzMzc3F4bhcDx459v/7sf/8/8wvn3TXbgkF9ZWF8JXL81/7mrn0kvh/CoHAUkVtdIL adIzkTGGlShMEwGRggEmeAYTmyBmsqQkVMfV2Nc1lJokDwBjrbHmsHJzA1KuVNMoWGgHq+2o E6NRR+uSJlLVjW9DBOIJXdGLAb7y1d4f/NHqynJsuClChyP/8Y+23/o316Fws0m00FtdWrAG igDUJY4J5lEMbSasXT33+n/2W53VeaM6+vDO9/7Fd+9t7snJrTVd7cu8AiAGvj/c2exXNaAR BzQajeAJXsvb+zeu3a1LeegoiYjYqx9Bcqj3gBf56//1L+785DqCwC/Pdee7czMtInUqw7t7 VVYa9VzVkWrQ9KeCaTxjhVdU0AIyUt/3bqd/7ZZ3zooSG9tUWhGZwLQX2rZlHTTyMnx/a3Nr 4JwXeIKSiKp3ZMvwUpl+vWz/rsRXYDoAN4NtmmKpkh9le4Md56oTm81TnOIonpn1VHVF5arK oeJ8cH5hbn5hjokbSdAEGPzsZ/XeDnwlvlxoy0vrneUlu7BsrWVrmYkNh2lrhqnpF6QEiqKI Jq3B0IjbeyI1TIEFNPS0NC6Cvb2qqlRk2mHp8Iia3mITgstMyGcC6lmkkbYNs5BCLflV9W2p 9cDTUYHawEavvT7/9d+fm+kdSH6oqmZ75Rv/+v16KGq5XukuLLeWl1tMbeKucqRHatWPTQ9U wYbX1+au/uZLppNAsPu9t7/3J9/aur2vStMh48h/OPxfo/A5GUuzLYAmktH8JM77ypFXA9K8 KoZFXSs4Zm4Fai0YBBqWG9+7vnFvIF4Oua7TD6RECjiVvkpBqHc+uPvut960YDcTy5nu2pm5 uV7K6g3UtgIEgCo5nw3yvKjga5VcJYMMyfVR9dXvq+yLDPZubr/31++pKHmxec2qjZo+E3Xn knYvMsQOqDcG9366lecVqXVEzoYuuFC3f7fu/D1JXlBOQYxD0ywqAHkIjfoYZ+JFTkOfp3g2 eFbWU1XqPKvr2qjqjVvF9rYTJ+qdc+Px+O7H12+9/XZW5wzC1l073owj7vaCMBKorwrvnBAz sxGo976qqp3NzY3bd5roY8P7bh4ZG4adxQUOIyESuPzeRn/jntQ1Gtm0qRlVHHqGCFCYceY2 N8vRqHZV3Ul8GgAgaMf7yNeG1Uy4AWSNfP619O/9wfL8XEoaYFK5o1XpP/rxTv9axYH45U5r bf65S2u92TkK58j0wDERH2Ob3x8CETMTkUnSF3/76qUvX0JiVPXjP//Jt//Zv3r/++8Mtwfe +amZbab0qC2dmMvJByVVkWJU3Hr35s33bjjnFSreS+XQyITUrsrLqvJMTKG+8vdfiZYSVSXS 7N3t9352a5CXB/b58IfJAETE9Uc79370Z98pt7MyYazN9lY7L52bjbkiySHZwmon6cYAwfu8 vzvO7nnZVtlS2VU/gGSEEgoVGtwef+eb39v48YYxrKI6KLJh4b00b8rZ84svf/3VOE3VAvv5 rW/9/Nqb14va+2DNpV8pO1+voxc9RyrCKg2nV0VI4Yrc5XkzJZxnVX9UlfUzusNPcYpnFRIS 78rRnroaGlRVvnXj+u72Xhql4ywz1nbn5lozsxZWSbXsj/ZbajtJh1QMRItxQ3DPR4NtZs4H /XvXr1/7yds+GwMKsIW3hhr1eDCFi/Oxq/Zu3QqKgquqvHlzvyq7Z89ESassSzexpDBESRgZ tlU+rvYGtDcYi2yR6dlgLk1ltuvdHjtmQlDkIXEdxhmsDem1L8584w+XFhctEUAeAJT2NrOP fnDvnb+4U1VO53v03PLZ59cuv/xa2D1DFEAJWsJlqIdQ95iJInVBxOc+v1KOhzffvIPC3fn+ h/2PdlZeXj/3+nOXX38+6SbG2AN9uwNMI5RgUq9UDbIbP71252e3b771ce/lVfcH0draki+d y0tABVCiyvu68qqW1a5dXb36jas/+j9/4MeVOP/xdz7qEr/y5fOdxZSIj4lpKKmr/L13773/ vQ+v/fm7yiRnZ5KLvReem1laEmAMJYUmPaEIgEHlqmtbw2tb+WzYSiOYph80laWQ1uP98Q/+ 9M3rb9z28KrKqj6vdzZHWVHHoSHABnz+tTNvf6udfTRig2xj+Oa//GlZX77w919rxWvKAQmD eGLWG7Eo0mJv+8Pv/IfRrY8hXhlUldn+blGUDTPjRO/uU5wCeHbWk5SYuHF61Lt6nO/t7fV6 vSRJ4jiumC5+7Wt3f/KDcvMu1eJu7ZX3UrliqBW6iuvSAwwur73342pk+5t3737wQTYcNW00 AZ/WJVzpRdkAgAnDzplV73x+/Sa0Qpllt2/50ThaXsm0dt4RI7JBr9NNTFjs9avbuzoeitJW aHaEZoiJmNotVLXsDFhlXmCGWRaVYZI+/4XVf/BHK/NzTW5biQFPe1vjN/6vjz/6/kYNK+tL 1YW51UtLr75ydWHpORPEAiEoawumpeq0Hjzm2SUFvKSt6MKX1jQK7r51t+iPR3d339vcu/mT jz7+63dXXr2w/Nzq3NJsq9fhgIlZoZhWxpd5tX1r594vbt/+4Yf33r+V7Qy8NYP1ufDG1vLq Uj4clcNs0hfDGDIGRMpQb22Il/7u5f7N/Q+/92Fd1uXbG2/fGOz+/O7nf+/Fsy+cJQvmaQZe ydf+xo/vvPG/vLH98ZZLA/fionlu4cLzSy9fXmhFB81PJG7HK+dWBtc+YI/6g823/sUbt78z d+aV5bm1WROaYr/8+CfXfFb73N9+ewPLbbIz7oONAOyGeXZztyycdpqElfaWWl/4o6vf/uOs 2B6TcbvX7r31P/4/135858JXf2fm/Pnu+loy04Oqq2tXlsWgv/X2T298699u/OzNerhNUGF1 +aDcvFNmY5LT5u2neCZ4VtaTicIgUOsDwMetflkN9gdJmiRxAiCIkxf+6B/fuXnjF9/8Y5uP yxv7f/nN7etvr37ln16hHB++Oaz369He6NZ7mzImthFmZqqFttndDF1Vky04zIt67KQXmIYq HQbh0sWLO2x2b92iug5E6q3tamfXWwNrEFibtvx+cXt7F3ktlvaTZIeDPEpWYpNGpCSG2M3O FNBgf9QqBdYnrm6NhD7a+OH/1u/MRO3ZOO4m2bDevZXf/MXd4XAcXljC8iJ3zbnl7hc+d/Hc +VW2rOqJiMBEpGxAgTze8yECMzO1WvGVL51Zf/W59965c++HH2N3XN4dvL/z9vt/+VMJTbcb L1w9t7iy2Oq2xUs1ztWrWN7+6Nbttz70mdc0qbpte+Wydttot2a77SCQsqxrJ8IsYLc2T3Gk BpCmHyfNrfa++p+/rpF9/89/boZupMNffCf76G8/OnN1rdNL0rlOZy5txVF/c7B5Y3vjrVsl G/78Oi92w4597uLcF146uzDbOijlYeWoE3zxn762fa+/9fPbNjPjj3eHtwYffPs9b5XFq4dF UAcmPNNd/DtX+4lGo2L8wVatooaGo+r23cHSQseqMqBJdO73f+fX13/vb/7t97K/fYO37g23 7wz/aufjP/9WgLh97lx67hzBySivtnfGG3fVeayeaX3pa/XmBt7621ZJEtpib39nd/vsxfUI yTO6z0/x/2c8K+vpfFUWVTCzmCfL2ed+rXPlufn5ucBMhDCIOe7N/MZ/9d8YdT/+0z8JxxW7 aOOHG//63W3muMoqEwaml7ZfOrftdJAzUSvNy3A4yJJkN0j7JujYyMJPqneIoKSs3fPnhmF8 684tzfOINIEm4rh0Wlf7o6Lf7pq1syPv910xVuoE4aXZ2XZoxqN9+BqAMRzMzgxNcHc4bBV1 j0nF3/tguPVB5lWM+LAT2F4oMaLFZOXX18et1sJs+8Vzq+tn57udBWtEfGVsjEaRVwW+Vikf 376RAA4spRF81e6k5196ce1rr3702xs33rmx894t3hzWnSjkoLq+c+OvP7rh3oMIQD4wiMNg YSaeafMrl2sm7c13z6wHs3OzM62lVn3p/EzI1E7T9mzHpWmxPh+t986cnZ9px8zcNLwjQnc5 /fJ/8eXohbkPfnjNv3OPR7Ub0Qc/uB0K2AkFhudi04optMmXLrfWOpXBhbnWS5eXVhbbaWjv FycpQCDB4sX2N/673/rL/+Mnd7dNkRV8d5N9O6zKKgHNRC4NdD7B2owuxq+dXzjTS3+wO7w+ cn42xcpMXbjKOwk7ahcluRoHF1/8zSg9//qtn/74zo9/2P/+96q9XWO8Z/RvX9/buAFjNQq1 2+XPv2jXztHCmazVXbz6Gl958cadm74VRReeL72X43S1U5ziZHBE1GcwGHjvZ2ZmHtsxGMCD LSqP/1W8H9689c6bP3jjF+8l80u/9oUvPPfc5VarZZq2YE2yg+ju2//hr7753w/GfZWqGpdO bFUHbFhDCiNjA9OJ2rIXxZrOxlGV529tbg+da8fRSiftpaHlILI2CsLAWGYuXLk7zu7s7N7b 2xlkY195U1UkMEGIKEIYtdvtmTA2TIZ1phXHlos82x8MRPy0np1y4a1h2ZnzLzzXqkd5nlee BMwITTwbdWYiG1i1Uas9e/HMytnltNueoahLFAmEwjkTLXljCAz1Uu2h2GZUx9r5Hu5Gqaoi Pt/fr7Ii7bSimVmCVJUMx+Xm/uDeVn+/Pw4DjkbVx2/fHAwycR4Bm04addvpXDvtxFFgLFuT zi2unF9enp/tdCxtBX5A6sux+/jDzbc+uiOGr5xbunJhudsODAPahx9DidQofFZUt+6N717f v3tzZ7g9yKtKyfiAwyjq9NJWN+KQrKHZdnru7NziQhJHTWC0uQBGUxdKDR2Cay22x/MfbURV 7v14dGdrsxoO63oUBVk8E6UtuzLfubDSnZuN2VIxkL95+2Ze+fNn586vn016q4hecOE5mLbA QD1UisrduXdvePPWtXfe2dva9N4pA0HIQRSEcZC2wqQdtZPlxYUzS4vdubnhaPTe+++XVXVh ff3CxfML8wvG2s9Yr3m8gejTPQuP+tPjj/aoP32i4z9mSA89/uPP+/jn/SmH+qjjn+zcPrsh qeqdO3dWVlYaESI8Q+spUlf1xp07O/t7i4uL8/PzYRge8C4ngpPiN9/4k823/zSdiymScVEM +m77jlgy1nASmjSMx33evqMslplUdXeUMVEUBIE1kbVznV4Shqpe1ANQpWGe7Q36O/39/mjo xNXOFV7YhnGYRNZ00yQNQwJERcRXVVmUuXOTtKwSlU6HebVwJvn9f7I6vxyMBm48rkrnjGFi WMudNIyi2KZzUdJJopA5BKdk2jRptEYIZk24AED8wJe7JBVPRdUe+t007KKmyWXzt2beQSQi tXdV6ZlJ4W/f6veHRe2cQIy1rVbcbUedJAwDawxzshS31skSqdP8DrlBI0aXl35ndxDHUbcT htYQCOpU+iwZEICg6gF4T2XtBuNqOM7Ho9wLsQERp6HttCIbsLUmjYIgIEKlvpjcHTAEC7Zg QzAgUqgSuPW5ihcV5L3b3x967/Lh7dBdj1NNwygK2DKIm+6iGI0FthPOXOTksreLajqHVZGa lL+IqHeDwWDQ71d1JaogY4yx1oZhGIZhHMdhGDY0Bu+9c1We56urq0mSHFDoH3W7Pg1Oreep 9XzQep7wyr2hYQKo63o4Gvbm51bXzjbsnAMzcWCvpRpW2zeSOF5ZisKWikajXbknShMJONRV sLFbiLNCHl4BaichKZgoSZL1tbXFpTOWOR8Ndzbv+roSwBhma5I0GRcjIxTZIAWgZMkxpMyr Mm/oS037TYF6EEOk8shqPy796pr9g3+8fOVSi1jn2qFoMsnZqhKITcRRD8EMoCAGt0Dxoa9R Ue+KLwColiwOTbnSYyft/htlylpUlWYGYg7i1CoIJFcuxSIqKo3msOEmvMpNyxCysEaUAqkr kuogJx9HfHZlhpSoMW0AqYd6xdR6gUSFSNPIxrGdmwsgXVLTNGTiaY/1pv+J+tyXOyQTuSwl EBgm5nBOedIsXjkk07IhM5QRxMkcS+2zfSo6gMekOb1CHcGIbUUrz2lwUc0ZN1GHAo7fvspM 4KA3Pz8zO6uTTpl8aAMcvrWMYWtj730URZ/dbp7iFI/CyWssiYiIjEajOI7jOG7sJh608UQ+ 36+G92xighCsYBipvYEB+cYFGw+kzA7SEtQcRKE2CC5evHTh4pVGIrfTmXFVubN5p2mOS0Sh tQFzrQTAaBOX84frNVldo+3m1JROsqoeV7725uxq8Ef/ZP3yc21CE56dULEb7jkhMGEXtgVl BcjE4Bg4UPaYeo/SaAsdKFs8PmlER4j9RBOjNL1onXDByRhYy5MgwGET02zuh668JWTJjUlK mhxLJ+ru94egqtWBqr6qVsO8v7lXVZWJ47TbSruJsQwDAuNAFUCbRJOqetWSphwgboigPlfv iKOGSEsQUm8RKilEjOy67DZVG0STltCspZKpw2UXvUDxFfCSslHIweUeMPWnX/r0DgKID/pa kz5gZw+/h4wxjSv6mMk/xSk+C07MeuoB9w4Yj8dBEMTxRBDkYcsEAJrv3ZB80O6RsQIi8ShG jZFqCNfU36tVLPH98m1VJWB+dn5l+SxoIoFclkVVV1CoSllVIuKc9941Xp8eP7WKaKGm9sjr unS+cuqJADM3T//gHy5dvBQ3/mJjgDDRZAKpQdihoKNkACFugbvNCY6/FqYfpnpOT8AD80OH Px4xzdMapAf3VXUo+6REJCAo+HChU1Ne1fC9gPL+gVSH++Od23ukALKB3Y07rfnVuWQ+huGJ 9cLEoCvAHCgHkHoyoonlsnSolJ987bP3uN4EkfhC633I6EB/xBFJcA7ReU2el3BW1bA6QKcb 3O9rNJ2KqeGcRjUeNXsHdyARFUV+cPud4hTPCCfpezaFPU1r4l6v95hFkwIirty7qUxhrMQG UOekqppdFKC6pCJ/QCOHiEFJ0jLGqvdVXWfj8e7Wxqi/7xXjvMiK0onPy8yrEKipzGwWlEQM FQUyTzvj2su0dpMIoE7L/PbvzF292jOWj9gvhUIZTKalQUfIAEQcE7emNMJfUiHgYdvx4LzS pIsnAKMHEp/HtwHE6X32vgASRNYERmuFKjzy/fHGOFugM93FTsMIOHwApZBN27u9plW6AKDI hLNkQqUDX1vh9tTvExqePlgNlNVaMQsanJf0sph5ooAUDNIjLYIbD/dTTun9oJBIHMenjucp nilOeOVelmVVVZ1O5/HxJlJonVeD24Y0iJu+llSXzjmZPq5aVupre9yvm6zo93fu3SaiYjzK s6wsq9q7cZHnZVGr5EWRZVmzXxAE1oaqWlWliFeQVxpXzsnhkLMmln7z78y//uu9MDTT1eLB ORVKalsIZ4gDAZhCMm3ATByik5u9z4r7F/SQmaemVRpKQBpHsvGwW71Wd3mmf3egTrhRRKl9 WZRA5yH2l1hti9TD5woPE7GdJZPcdwCBw188EavCmw6CZYku+PCs2h4Q3p85OjaDdOhcn2YO mjciMx9kKT+1LT7FKR6Pk7GezS3rnMvzvNPpBEHwhO1JfLbnh/scaGAb1WRUpRevE9upVBUK zwQxZKIwJKLSVbXzStgb9suP3jfGsKioVM5Xvq7qWglFmY2Gfe9rKKVpp91qWRsoMB4PB8O+ qua1zw96WBIAsvC/8Zvz/9FvzbZa9iCVp1P5DQIRRxR2YUIlIkrAbSB4pvJUR+YKUBUi9kHb cNCYN9UMWisIME80MgoVwEBJSpZSIZPgKRFAJqS5M/NgGtwZSO2JEHWT9myriVEejSKgIcVz ME/WAQoyYHsodKFo2jsrkXiFqum5+AJFFzVcVdNugh6N34ojB364gZt+C4d/83CrOllGAE3O PQiCg8ToKU7xjHCScc8sy6y1TzSdzdYu33fFMIjIGGrufFc3mYpJ3Ms7VdUoCNqtdhKERDoq 8t3hUIHa1YORo2lgb5puQF4U/f5eXVeq6LS73c6kPRwz+yjeH/RLj2Hp3EEDYDWs9KUvz379 91bSrofyRHT+cJKFAgrbMOFkuigBhSc1zLXA/gAAIABJREFUaU8HBcBsOVogbgMKqcWN1A3V jwE/DU0+7gDUBEalgAo1GaDpXkpk43BpfSkw4ag/iqNgZnkubEePOiyBwUyH7hy973cCBKOi YB90JV53ycscrHqKtelx2uwOgA5W2ccjuY+7jiO7PPyvRFTX9exs73TZfopnjc9qPQ9C9c45 EWm1Wgfckcet3L260Zb3g06b2HiAvVBd0tRyEgFElCbp0uI8C/mqgko7SvK6zstykkEBRIUO rZ+bkKsqwjDsdruWJwv/uq6zbFQ5v5u5zDVKkBAVJn3xavK7vzff7jJg9H7uYqo/Acu2S0GX wJ6IOCWKD6dyPtWMHQgGH7h2Tz6cChNsk1ATE7KdM9qmYlerbX3oQv0IiFTIF6IFQQE+/IJQ VSEYa3rnZnvSM0xC3Ji342ObGFQ6HpicEuUFAFkJUomu+Ph5tSvSMDeVuaFZPWAlj+aIHnQ2 Dwe+dUpjmCTWD8zl4eGISEMCfcKUnOIUnxkntnIvisJa29BE8LA8+5Ht4VzRh2gUGygRQWpI RUQyMQVK7VZrdfaF5ZWze9v3du7eUoEBHSzHGhPLhzpJqGocx0UxJlJmFu+91KrqvB9mo73R cDerSo80MKlhJam8XzoT//bXlxeXIxDTQ4ZMHKQcdKBGmGAS5nTakfjTm89ptG9aLPk0xyII HFd9xBZszCS0GLKd8W4IKZ50OkBLQTEpqDzKQCU0jTTBYDLNh0M7PtUVecAoJ97ManRR4+fU ziiHBNgjc3osn/7oqz0+hMP+6SMnnyZvyipN0yAITn3PUzxrnID1VFXvvXMuTdMnbtl8EF/U o00DCUKvCAF470X8hMYo7Iqg1zq7vHKRGKJeoCCqXV1Wj5QKJ6Ioiowx3ktVVbt7u8SsopXz /bzaL733mIltJzTWQBXtmejXvz5/6XJqiY88ko1vSCBKOOgqWwKIIkJyP9Z50B3i2AVOr/NR tRyN8WL1cGOFqm0RWZ2Snh7u0zZzAif1rmVoOAcOmmItlQFp9QRrpCJakGSsdRPUffzmjzvS IxhDMIkPzkh0GcGqD+aBgCD05CqBB48/+fdxp3vEn6ZrICGiU8fzFL8cnIzvWVUVET1lAxkF fF248TaRmIAEQoBzIr5ZkcGXYbXf6S7OkjV1leWjIak6xSDLa/c4rczGKWseo7IqQXAeo9IP Su9E59KgGzETwEJsXv3KzIuvzAQBHywGp8NTQISsDWdgYiiBLHOqFN5XvVRA4RlUV76svQib wIQB2YAgUCF6aMqCGtqlr+6ivAv1FK5ItAqOjidoju02sUOVq3aNAmFXiVEPtdyfSNU9whtT QLWCZNDq/mE+Aya+q0KbNsXckWhd4+ckWFFuNwxcmiy3D5/sMec9WKo3Tr08evsnJtBJRE+X 7af4peFkfM+qqpqquKfcwZVjV4xNUx4NqIqrSQVEpJ7qLJCKBvu7UZJko2GRZU6kPx6PihwP W2A3oIZwKkJTzkyt2C/qUeEAmoltJ7aGRIUg/LnX27/2lcUw8voQm6IKa4JZsikRAwacKgVH jayC1I3G+x/fGO/viyizDZO4s7o4s7Qs5qHp+GZfJ/W2z6+zlICV4haRBtG6p0d+EYfIQKRS +3KHqwFBZELbfFTCmkUdtIbkdEBux1HW6KeBdwQmKM1LekWjSwjOCoXEB6kjfbAx52OsJzUN mh93IQcHAXDEqX/wTnDOzcx0T7Ptp/jl4ASsp4g0y/YnSodMN1BfDHyRxbbh0QBCvkbTDU29 kTwi4Xy8f+P9gQpVvh4X2bgslaAP+GiHy5CazNXBnwZZuZeDiFsB91phAK8AW730YvK131kM IyJEOs1LNMmcSYm9TdjMTjNYIXFLaeI2TjYGVPx4e7t/b0NFCKrQcb6fj3fCJA5nFx5qCBQA 1yi3jNZoWnIqpLgr1KVwoSl7fCyYSYBa1U/zTuaBE91P9ahWqmMj1SQX88lEFaYu4aRHx2R2 iCKyyxKf99GLaheUQFoTuWMiUsePdd9kP3zFjQfSRw/d7DGOp4h478MwTNP0NOJ5il8OTsB6 eu+JyBhjjHkqZrKoZPtSDzgGwICqwNcyeVqdUQVYmAyYClftDQeVd9p4nY8+vIgfF8P7WXho FAaRc877JDKsXgAiWjkbvfa1xagVEtOkKvQACiVhThF2yagKK4fEbeB4OWYTpWRjiI16DyJt zKFD7VzycDFzVTBJDZ9jIuzRFIrXcFsadghPWG82dMvpp4nP/pAAa8MQ1RJ+zFJAKpVS2BhO VM0nSHc1IRBRBZRITEvCFUQXfHhO7TwBRDrhy35KPK7p0yeiuKsqIN7Xc3O9wwXvpzjFM8XJ xD2bVPuj7vhjv1dxrtgTrUygRKIwKvDeT0qxGxe1eapUK+9qcRNKzAMHbAQwVFUgo9Eoz/PD J0oDIzFGuQZkGgpUp2c/9+W5xbUIhzg7h44GcEjhDFECELEBtzBpDX/smkjJJL25tLs92tme HAcI4zhqpQ8NYU6YBAjBoUp+kEH+9GWJR9G4btQEMFDCj0lL+FzqPUgOGAlnOehMv/FHZq7v 58MIAIRZzZwGSxJf0fCsmjYacaZPNcCn3fQob+lRE3SgHUKEsqy63c5hFcRTnOJZ42RW7p/Q U/BSDEnUWGrkibzcX3ATa8M1JBVPVE7EHI8fo6pKVURBBELt63E2Go/Hh4dBRKzaCrn2dlSK iiRJ+NIXuhefbwX2EYtkJjYd2ASAgsmkytGj+TEUpunM+lqZZXWRK8HYsHPmbBinD7dNE82i EOk61W11I8ABIIopXFDYz8aDajLcAvXQHJpDHUnp631ITqpArXVfCWR7T2CrKpGCAKFQwkUN z/toTe0imc7EbqrgaW3h8YDykR8OdJMesv3hVNLBjw8dtqpqXbsoCp9YH3yKU5wsnlVnjsdA xfl8SApjjEIIJALxk8eDjCdWBSlTXddFVTVJ5cNPhYgMh8OqqsIwJKaqKqu6OiYe2qzeDDQw GBR+lNHLF/Wl12fjFkMP1r7T7QARIRPBdqBGmUAJUUzTFbgeMxcEAog4XZxf5Be23/8Idd1a XZlZXT1uEA7tQwCI1c5pMEPqm9W7UdM40J9xVkk9tILk0IrVQ1XqESSfHpqgTuqxoZaY4DHZ d0XhONR4HtErLr6sNNeQ64Npd2X9ZJmnw1TNp9/4MNPz4av7g/E2XLdeb475l1Q7e4pTNDiZ nPsn2VhUnC9HTddNFRCpCkQm7gWx2kjrGs77UZnXjSjn9BxN+sKLr11du6r0BTCpYbHWRlHk XSNSpyBhYgIsk4KWV/g//kcXel1WEDEdHRJURYlN0IKNoFAyoFgpfOIS1XiTLMyvddvivY1i w+aJdUgMgRpFQOwBeHiC4cdmXR4BAUi1yaUppIKOBAUDUANVlQJag6aFs6rwFbQGgmka6NCx CEQsFEt0jtKXJbwqHBh4sINXhhFzuOzn8fnxp8R9j7L5CoCJqshhyc7H31yq8N632+1TltIp fvk4Aev5SZZLBIj3hav7lp2dcC0POms0I1IJsmFRlqWM63JCaSG2bJrySi9S17UXp1BDTZ6K QDTTnW2lbe/9YDgYZ8OJdC7ghWe6+MN/tLpyJvCq/LCRElsKOjAzBAUMqAUTPkUFJGARgBF+ kpaNkzFP1KTMp1cboYYkoOogOWkOYFJ+ToAqQQlBk0Np7JGQNn04ptZPm/SVUiy2Q+GaRFd8 uAwTMUBw2hzQwOvBVNCkUOoE0NjFg9zRJw2MTlgWxpg0TZ+mwu0UpzhZnID1ZOZGT/7J6c7m ca8rKUYgYp7oxosc5E4IqkVV7mXi3eQ4hrmTtrppW0Xqqh4U4/6wfxAobfSQgiCMk6Rh7Kdp WpS5c15VRcEGX/3azEtX24DyUSrife/LxGxnwARlplQofvoW4I/naZ0gDrzFKaeAgEq0IGla cQAHRfqTPUhVp1p0ADGRbSSRaJKWITUdCRc1XJfwPJl5mJBAqvLQ98bT1Vk+xYUcPc7hHx/I Fx23qocXOt57Zu52O6cEz1P8SnAC1tMY01jPp6twJ9QFaodpW0YVEU96wB1SdTVkKu5ORO20 tb52fmF+sb+3u7d1z6kjvZ+nahZ9RDTJykCNscZwLVAPLzh/Of7SV2bDyE6aXtCx8Qgjgu0R N16bVY7o07NwnjkIgEK1htaQglBOq9ePQJlh2qQMCKDKIArZtIgSVQWrt7Ow5zU8L9EqbAts D6Ij1LQ0Om4om1M0L61P7CceDWU+6giPunOOM3yJyLnKOTc3N3fQvOhUx/MUv2SczMrdWts4 Ak/YEgqQrwvvq3Aq46AT33PyhIjCuabYj4gQGl5cWF4+cy5NW0K8t7MVBNYa01jWZhcFRLz3 3hrbPGkiqt4pota8fvE3ZueXgkNG4RAURJbCLtuomQ3lVDh4XHHMrw4EUhLRisSp5KoVTS/q IQInYAq6CNrQZoHfKKp4Yadm1oeX0H5Z7aKQVTCj6Tl/5DjHbNFnczwP70jTcOeRoz06ytn8 /gibwnuf5/nCwsJp37dT/ApxMtYzCIKiKJ4obCOkINK6EF9TxE1JOppYnE4TCIB4oGHGKLU7 nZXVs0m7q0AYxcYa49ga2zDCBYCKFy2qeq+/myQtAqqydK4mtpV3r746c+FKm4iPxTAncQYF mwS2DUBARBE4eVQ6ujljw5OfXvhnnbrHQycuNhMIcECtUqpWippATMCBushDBgslI2AySgKo OhORWUNyReJLGvQAK3CkD1QC/HLx4Nr8EI4PqwnXqEpdV/Pz861W6xmP7hSneBw+q/Vs3vxh GFZVJSJPiEA1RMIqgzjiCc+ZQCqHniCB9xMtIAZ1ur1WuwMo3+/BS4Z5ulLTWqmf117q3Ek6 HhKTQL1SVsr5K63XXl+MIkBxrPZ6YuWNVdtiMkqkiIgTosdItasyKweGAlWFr/TIuE8eNHG7 atVCNQc8T5q9TRuoPZYjOtlOQ7VtHy5q+oIGZ4hbgoAJgGM0ceanGww9pb7cZ8f9Czw43aGF uXrvWq30QNDr1PE8xa8KJ+N7NmWaZVkmSXJ09Xd0dQZSiNQjaEUUNH9XhZ9WaQIkCu8UYJAy UafdCcIQuF9vDYCZp5ZFs0pHNbyg9HVmYYxVqHOUtPxv/O5Ct8sPq2ac5K/YtsmmClIwOFGK HvIgKhRe2YA6ZFO2MXEMqVDcVV8+/Sw9Piqnh+rKp5fmgBpSAhXUTfuKPjI2oipN8aRChJQh wi0JZjVaR7Au4SK4qw1L9VNZwImj/4ll53Asnz7txv6oMRz//eEaeWaqqjqO43a7fcruPMWv HCdWqRmGYVEUB7mjh0IaeR5fQmua8hCbrM99cUeBSGNWYUMbBHYqJD8paiK6v1r1SnlVe1GA Ky9OCHBKgpp/+xuLFy93iNxDH3cFiCO27aYQUzliDh7qxymgJqJgnmyHjAURNACJ4jFLzofj sBb6cYs+1ScBnGjDyqwUFaORFKbp+v3RZ1SAvaoqrHIs0ZJGz0u0DtMBRSDmqbYcJq+xT2pD D/EinozD2xw70WPyRQdTen/3A69TVYqiaLVa7XbbGHPqcp7iV46T8T1VNYqisiyLomi324/e FApyzqko0UF3nSN+mXjyDkxQVWPMZGMGAO+dTDwgbSSD8srltWjTenwi7qnicOlS+tqXW8YI lGjKrDw2aBPMggMQMSJCSx+1Zmdrw2WNFlRd0+GYIFSNRepP+vjeL2qaZEju21CCQGtFqVqq 1ty0U4bSpKc6Tdfxj4sreAk07CA8R/GLtT1DNpBJdORAq3j6ljoRtvujL/QTZt0ONj4+pubW auS3iyKbnZ1ttVr3J+3UgJ7iV4qT8T2JiJlbrdZgMGgIzHjYzd0EtFQEAJv7gpMiBpAm0a6q 3jWJYgDIslFejONOF6Lj0UhFvIhzThVOaFyqgJq1f8MJJ0gcmi98sTs732ooUUdGoAAEShR1 KYgUBoBSAg7podoeAKlXN4RNwPFEvcQPpd4m9Y2Q5ZOW5BBVEnFVmff3sp19Q2b20nkThRP7 qawoIWPSqnFBCdQIvj2h1EYcSCauNUdq5yV5QZMXYXuN0QXRtJ7/+MvjE5J7HsMxeiQedopj NvswBQoAH9tDxDUH8d4XRTE7O9tut39p7NpTnOKJOElio7U2juO9vb3Z2dmHpo/uCxsRHXY4 Gns6KR8BplJ05L2rs3x3Y2NOIc73tzah8N6VdeWhtZe8dgzEVgPDzvvCeYhdX0tfeLl10Kjo uMITQDY2pouJ6YyJw4eSfqY7eHF9zUqyKXMAFV+P4aun7AxHolU2Hu9uZ1vb2WCotbNJmqws taKIRJRqlRFQN5QDOvDaDq1cD1rI4ajXqMRAzJRquOTjyxSuw7aVQ5rSC+4r4X9ic3nkCprY ND1al/rROGIrVXHUgN7//P+xd97xcRXn3n+emdO2r3pvtuXeCaaZXkMJBEJCAklIJ0BuekIq pJJCypvc3Nyb3IQACVx6753QwWAw7k2WJVm9bjtl5nn/OLsrWZYsWbgB8/18wNKePWdnV3N+ O888LeePohE/Z60JIYQQIr/qVPFJioOHvaae/pwOBoOe56VSqVAo5NesGzXX8xnNfuw6DO91 ZbNfpJBEWUPVFcL1nMHebjuZJJJOOg0gU5l0xk5LoqTjSmBRA2OWrnH0BO9L2YR8/uJAcYmx S4VzyEWXctAjwCwCQUxHHgLQd6uEDAlApEmkBEOUk793iYSXaO/s37EjnRgkzwUCYEwLBUyD oUgC2QAuZmuM7v6qBOBXPsouyolbUi8gsxaMGtCLgYUlMgCJMEGh4qkyefEdaYbvetakrpMv hew4tqZp8XjcsqxdtzsUigPL3lx7+tM6HA4nEolUKrVrle9sFSSQuXVRdq2RTSjM+5wB/HWq AEpmMpxxEgn/tnM8p2egz3YcISHtgqlh1NItHRGRI4uHjFChOXNOXDf4rlnqCECIyC3gAfBj TdEE1Ce4F7NmKyIwyC2RJ3MD+zH8QwN96cEBlBKJAwPSMVoS1PQ0SOnnTu7GjT5iBAggATxA JnmY9HIv0ABGDeMFkukwvHLONRw9YFk3OOL/bwsppW2nDcOIxWJ+1U5Q0qk4yNj7KYn5DVBf QPOPY26xOSrZHAhIDnuAMfdEBCCiZCbNEIOWxRnLOE5nd2dXX49H5AhyBcUtXdeAQAIxAAqa bOHScGm5hsQAxehXQSLUUQshagCEqCGak4gUJ/IrjpJN0gXUkRnZiqMT3MmIhllSX28EraGe bpG0ASFaHomVhBC98V0rtNM//gBAIOjIIp5VC4G5pJcBD0hku4v2POgYV9BHtFbJPk0Imclk CgrilmWqyCTFQcteVs/8zlQ4HB4YGGCMBQIj6g8hMURABjtFzGR9O/56VNM4Q5EtfonMI+pL JQftTMbOdPd0uK7re9ZtD5FYyASNgb/KRORWgM2eGw6aBiISaCPvVwKQIBm3mBYGxqQUjMcA DSA2kQJJAAlekuwm8FLETBGs56xgwgUoAnBAHgoXNzQW1jS4mQGkIcPQMJtiNd75foMlIiTP 36QFAj0qrHkysBjNYsj74If7RO1bxkl7nwJj+pEwZ+MTADHGUqmUlLK4uNCyLCWdioOZfVUO Q9f1goIC34T326znD3HkkPO877p4QhTABAAfKQuO4/YP9NuO4/uSBUjHE8TzpyARSHLnLCoo LgmOuSJDAkAD9EjWH80ChOaktId0FAk3tYm8BAKgZ3OxWYbqmV6Ek95hZFzopkQxuU8bAYAh GQYPC6NMmtPIrCU9Aqjt0zijAwWiH3chPc8TQliWFYlEVESn4uBnX6mnXzokEokMDQ0NDg6G QiHDMBBAgASN5wIPx1hZcA0NA10b8hooJWUyKcexfZOeiFyRbebhJ4L7pn+swJi1KM50CcDz DovhUkxITA8Ds4CAAJGFwO/PPvE7IUFJEClOQAwAEWSCpZsQuTQKd1MSnnKeYyQPZIaBi3zc NB/KOtD8WAMD9EJp1kprGuglwEOEfksMMYlN0r1IPmKBspmze+my+eh3IvJdi57nuq6bdxCB iuVUvBPYJ+qZn/qc80gkkkql0um0lNIyTYmIugWg+zniviCODANnnKwATw5RLikQiUQ6k5LS y/umHUFCEhEmXMF1nSEAerMWFBeUWmNGSCIicQ15CIFJIAKNoYGTVSJkLAxGXDq9QISAgAxk Wrq9oMdwOCN7TAikhzJDlAHyq+7lYlxHIwlcBqbQiyA4V1gzQI8DWJjvoblr7Oo+Z2Q85l7Y Ys1lyvuiLAGIMfQ8N5PJaJoWjUZN09Q0LZ9cpARUcZCzbwtZ+nVDgsGgYRhDQ0Oe6wZjEV2L MKbnb6RRIEqmMcwlxRBROp3K2Jl8OXFE9KQQIAXyfkdojAcNrbA4NHthkGuCgCPIvPd5+FbU gsCDBEgogVuAkw/rcYGZ3JrNtHbKdIFIAEgiQOkwmqA8ESMJMikpBSR3rz4odanF3chSsOYQ D/s+KQI5aYl/h+EHcqZSKUSMxWL+3k4+s0jppuIdwb5VT3+70+9XHI/HE0OJjvYdAR5EZghK SeJ+ybecrxUAQUpw7bzBiI6XHkoOSCmyMSuAJKXrcQDQEUiynpSXcLz5R0RjpcHR3nzwfTBS MkvjMWQkQQIEEUL+Uipv1/ulz/JFdncOyeaIANxAXkNGKYghEhlAJD1KuXrMo15TAgFIJgWI NEAKQIxVblkScUAJIDwWZqFZEFgszWJkWn4/YRyn0hS3PvNfPzClZd1w3+aJzh3xQjTyQT9F lXMupUgkEpqmFRYWGobh6+ZuissoFAcn+6+IOuc8GouYQbN/YBtqBpP2mJuAnsvSKQJiyMi2 nYHBQcdxRuSDg03SIUlAmHU7QySuTZsdZDhGPjsBEepci/uLTQSOaOQC9RHy7ZR9FxZjOE6F vWxxDWYRs1DP71COA0mgtJQpBA/GWT8SIIFkrEAEaiAwxzMqiVk4KsrqnY8vi36+kK+JqVRK 13W/JjxjTC0zFe9c9od6jrhDmGkY0cISJxgBNzFcsQIgn6HnueA5RCTtdGZwaCiTSTPGEBmR JJJE6Arw/JJ2CITAkRpnRisrjV3Wd+SLHGMG8iAAJ5LATEQjq5sknWQy0dfvpjJSuACgm0as otwIhMZY9iH4BZRzmePk58jjTvUxEUgCOUA2kI3kAkkA5tcWJaBcZJUgYKjFwKwRwdnSqAIW 4EBAUiA7mCI4aeT6UQjheZ6u6xN5w4eXqETkOI4QwtdQxpjvSPSraKsFpuKdzn5ae+bsbmCA XA+iGZK2n5GZLx/kpxtpQ4OpgcG0Y3u2bQNANBI1DAOR2a6TSAw4nrA9lCPuu3hMmzs/Fghq MHrtSUSEzEA9TH7PIkIEE1ADRJAgSfRtb012dJDnST+8VOOaZehWEHdtvOmH+eelbRdvPQEB uEA2iDSSg8gA2KhdUeEnZbIQWfUUmkV6tV/KHv0szINuj3Mn01sI4bqub4D75a9Gmtv5Lct8 XQ8i0jSNMRYMBnkOxtioEE619lS8c9nv7c+ImGagHpAkiXiunTAA+BlHrKt7sKc/CQDRYLik uMTULddxXSFMKyg8L5NIuNLLltQA4AT1dQU19RZnGu1SJIkAEC3iAURAkIQcIFvEkxDIk04y 4QlbgNSJAwC6QmQcQVKbdI01ytU2IXAlpUAmWba/HRtRAoMAJUjgwGWwFsILQZsGPOzXq5t8 d9+3s+O5p66YvA5mazIz5pfq0HVdSum6br6n6aiB5dMlfOlUjYIV72L2q3oyRALODIuZEUlc Sk7klwUmIEREKb3EkE1SxkOR+srqaCQGhMlMuj+ZkEIwhhxI59mwT0C0LHP2/EA8buCIrcwc iIigBxhqgP4y1xiui4cAHHUrkBpgGuWiNjnjpsF3vdJuIAbkIqTRsxFtANh5A4EYIKDrgUFW NQYWyMBs0CzfWZSzXg9qZcnXJGWM+Wa7pmm6rsM4mqg85or3Dgeg9S4y3QiX2MyUwsnmZzIG SP7WJ+dc1/WioqJIKAySpJSeEEQkhGfbDkdpaagxdCWRhIoKnDk7sJOdnS01QoQSeYzxYK7M B0OmI3DKpwcyFiqMpXq7PdtBAES0IpFgrACB70bR8uEBmE2pzIBMksxkT6HcvmiuRonDAmDM gEAjBOuIRwAYkBgRiL7PeTuvkjfDk8lkSUmJyptUKEZyANSTcU0LxohpUriAErK+GCIAxlg4 Yg71AWd6xvGkELbnpR3bduxEasj1HEDGUWSj6D25aGlhvNCEnW32XOwTYzwAqA0XW0KDYHhh yRGtWMyMxb3uHiKhh0Oxyko9EPDdUeMJqC/OSJLAIXKAMig9RE75dCFCRI8AJY+QXsoD06U1 nfQ4IUcCRkg4oibKwQsSSX917LpuPB43TfNAD0mhOLjY3+qJiMA0HioCHpQihUCIjPmOE4mI EIsZOyCVSCQ9TwCAJ4Tt2slkIm2nRu7ekaRonM2aG+UMR1RdhnyGJGoB1AL5KqKIOoI+UrQ4 MAyGihrqrVAIiQJFhUYsxhjfvTWNWa96GmQGKF8qCfMF9zzwkBuoV8jgHGHWcy0miTM/1RIh u0lwsIunHxuArut6nhcKhXYtNqhQKA7A2hMQtWChGSog2eWX72As16wMZDRmagZ09nYZhg6A UgpPuCRzbvZcaTgpacasaGmFnm3XM+LqABIQmBYh1BEAsz3YDdolv4gBC0QiZiQkATkwBAYw ugMngSSQ2W4ZUoBMA6SBbCBE4L4QSgHEkKGHaIJeS8F5MtQALMyy27nvDN3J19D0f3VdN5PJ xOPxUX1SFQqFz4FQT0DNiqFV6AwxSb6NTZDTmUCQFxaHtif7Mo43IkIot+T0y84TGYZY+r5C bZdwawIAYMh1xCDmAy0BEDmhHF0VCQGBcWB8+OzRMoGAABqSlJAgmQZysiFWiL70S/C4IRA0 odem+UwWauCBMhIyl8V/gD3Ok489kxqpAAAgAElEQVSszLvRiaRfl6CoqMg0TRWbqVCMyQFR T2BGyIxXpQctkpmc4ZvdDNR0LCoxOtq5k5E54RuljwQSqqus+gZ9rGsTIEceJzaqaDwB+cvQ cdq/jbz+sIwSkAfSJZkBcDBb2oSR34cICFECi8lAjRZs1AO1hLG+vgHNS1iWlS/KNyqgZ08/ qykzQbu6sY760Uie54XDYWWtKxS754CoJxHneqQsIQ3hJjXDIBrOUETEeKEZixtd7ekx9h+J XAAAmjm7IBQZa/AIyHRkARqhkohIJAgYTDaM03+WIGkDZZDcbMvPrG2LfpMM0EJoVWvBRgxO R70QkRlExUWF6VTKtm1E9Itf5JPo9+xD2pfkwznzq2PHcTzPIyLDMKLR6G5ikhQKhc+Bsdw5 0/RoBbKCxMBAKC4dm3IJj0gEVkArLY/09ziOI3a5gcl1KRTW6hstNvaWIiNuAtOApJ8imUtz coHEZAoMI/mB+w5QGoSTjWbPm+ASJUrUI8yoYqE5EKhFPQJM9xOF/CoYoXDY9LxMJuPXwvD3 DQ+2QMh8SRTbtjOZjGVZwWDQj+X0H1eB7grF7jkwljsg8EgJj1Unt21OJdBJShw+ApxBSYm1 LcL7u0SIeyBZvjYvkcx4UF1llFXoGvrOphG1eYAQdeShfC1JGDZRBVASKQyIBB5kfUT+WUDg IjAgBuCRzDBKAxCQyEbyC40hd5mLzGGapVnTWfRQsKqQW5QtPjI8Bl+VdF3XNM00zXQ6PTg4 6Hco8Rd0ft43ZTvkUV7FRl5h5Ef1NgM2RyYajSwflU6nHcfhnFuWVVRUpOv6SLlUoqlQTMgB Uk9guhm0imrS26x0IslAB/LyIkSSrKDGg7yjzy4JG0GTMyLfeZ50hCfduoaieCw46oqYjbbX kenIcFRLTSQCsoEMgACiDiDyedwIgGQSCQSXZJrIBpDZkE8/fZtLD12N6WjNZZEFEKwhPYag +To05qLSF0Rd131DOJVKDQ4OSiljsZif7k1EQoj8M/Nnvc2PddcydPnUSV9G/X7RQohQKFRY WOhXI87XOlJl4hSKyXPA1BOZHi6fNWAVxLSMFYH+LnTTucxFhFRadPe5grGetJeRZDIAwIwU qbSMFBh100yuZQ3zERASgmb5jdRGgQQkXYIBYmlGBoIG2dIkAoiAPABHSg+BWDZACYEIkQA5 6QEMTsfAdBaoIy2CqE2mm6WvSv4PwWAwGAy6rmvbdiqV8tWTMebvivoSBjsL8a6FOEfJ9Jjq NvJ0v6gHAHieBzmZNgxj5Epz1FkKhWLyHIhMTUSOQMT0aLVVXC8TO0JRdGwctEl6xJARUjLt DQ0IINeVxkDaG769CcrK9PKqIGecRvviAZmGzAIYq84b8yOMJIgMor2z9JDvJ/Kre1CuMhsi IyMOVq0WmoaBaahFWD5idE/Uxt8MBQDfTBZC+K5tx3GklH7tS0T06xIZhrGrFT+ymhGNYKe3 TySl9CsQj0xOZ4xZlmUYRn6ZCWqNqVDsDQ7U2hMAgBlWqPawoVWvATqhKKYHmCOEH6WUyTiO TQTg57Dn73CTs8bGcDw2ZqwSEmrAtMkspQjyXv5dq9EBMA56HAM1EJzNrArUIjjpqksT4oup r6QAkK9X5HeU9JelPo7j7GrUj3SX+6vXfE8L3wD3dwYAQNO0/KFRF1EoFG+fA6meADxUNjez tUZ4TWaIjJDr2pykBEDbBgEeA7+MO0oiCcQAY3Fj+qyApnEYq5sl4xb4p+w+opNouJam75DP pqkTomR6AVp1PLYAjGrkgV32B94uoyTMMIz8qEY9c0T4+thGel4xYYRdP+Ym7N4YuEKh2IkD qp5MaqGoXr7Q7WvXrUwowpN9EoCkRCFFNiA911oYCZDktFlGdW0cd453z67FmEZaMOctmlAv csHw2YEIjzHUYxCcA7EFzKxG4oCYV869aN7iOD0jd9W4CWsajRcFtZs9U2WnKxR7iwOpnhKA cQxWLEwOvgLUHghxK0CZBDBEjXEclk5AREZoanLZkWW6IYDYiHohWe8PagHSLJxE43HKdQTJ PpNbrhVnViMPzUCrElEDAmJEe9J4U6FQvNc4kOrJgQOCEa1xCxeJZI9m2LFilk4JkGgawBkD lgGp+6FIRHTY8qLaWh1pJ03LJnhyC3ic4+67q49ESgCuhcCogOB0LViLejGyIMvtgipbV6FQ 7J4Du+8JAMCMkFW6SHSsJacpGMdgP6QGRThiBoLaYNqvtQEgsa4+cNSxhbrOdzVXCTnXYsO1 PsYn32eCmMUDDRCeBWYl06KMmzSJRatCoVDkOfDqich5tI5Ss6CvnbgdL9M9T4RdvbzE7OoK CiY9AUWFdMIppSXlBu7cj02SQGBMCzPdIuKjIuQBIBeNRP42IIKUeoysmSw8kwXKiMcwZ52P 5XpXKBSKcTnA6omIEgj1sBZfaCdXYqYtEDJLayHYyxcuifcMDCTTLBblRx1bumBRREcg3MkZ gsBACzE9DNno99ESSOD3sdQZA6FF9dAsLThbBCoITBounKyEU6FQ7DEHfu0JAIAas6YZkUM8 txeJzJAMWFhYGp8xP+QKsAwIR1BDzgAEDAfxIACCDloImAHgB+5IyNUAxey/jGkm04vQqOKR WWDWAGoaoEQXgSMdHG9foVC8Aznw8sEQAZHMOCs8DFLrMbkFSCMGzICiopFR8SQhH79EAECo cbMQtCCABghEkjEgAiAJiMQ4M4rIqmOBajQrQYsh89enDBE5mADKN6RQKKbOgVfPHAwDDVrJ scJuBze9W4uaAAhQZ1ZU8jAjBrnQ+WyavBFAo5xZ01hwmtAKgZuYbXykApAUCsVe42BRTySS oLPoIRRrpoFnwXPGa85GRAAa06PAowhIIPyGa8B14gUsVM8D00ivQh4FTc+33Mj10lAoFIq9 w8GinsQAJAAvZMWnZ+w+HFrJs/Y5AORl1N/N1NGIoR5G0AhQ6AbwIDPKWaCKB+tJryDUs42O h7NrlHQqFIq9zMGinpDr6g6BUqvsDI8EpTeDTPoZR9KP8SQEpqERRTNGGOBaWOgF3KjWgrXM LBMYAmTcT3L33UFKMBUKxT7jYFFP9MOP/P5BkUauXUBDb8Lg69LeLoWLAASMaQEMVDOrHI1y 0kuEWawZxcAMRB2Q55I3lWQqFIr9wcGinsMgMuAQrEGzDCILvcxWcPoAJONhbhSjWYg8AiwI zACm5bshHeAxKxSK9x4HnXpibr8StABo9XqgCkj4ZUAAdcCdKx+jH9qpUCgU+5uDTz13LuBG TAfQc/U3BarUIIVCcXBw0KnnWBD4+e1jNSxSKBSKA8LBrp6jHEGk5FOhUBwc7OW2EwqFQvEe QamnQqFQTAWlngqFQjEVlHoqFArFVFDqqVAoFFNBqadCoVBMBaWeCoVCMRWUeioUCsVUUOqp UCgUU0Gpp0KhUEwFpZ4KhUIxFZR6KhQKxVRQ6qlQKBRTQamnQqFQTAWlngqFQjEVlHoqFArF VFDqqVAoFFNBqadCoVBMBaWeCoVCMRXG7WtERAhARAAIQAAoCRAlAiDjuzlLSEFC6rq+Z62C iQRIJOY3MULwX3MPLqB4l0GSACQgk0AI2c7TSAQgPc8DpjMEhgDIiIhIAkgCDpTthXUAW6/6 TWEBgAhAkkTJkOUHRERSSiGBa4wBETK1hHmHMrZ6EhAR9XR23HrLv156dSXq4QXzZuxo23Hs yR844dhloUBwvMt5duIH3/6mGyj77hXfKoqHJj8OIhJEXrpnyObFhXElmwoPpMgkbrrhb0/+ +5VAQUl1SXzbttZjTj592ZLZN/3j2njlnC998ZOIhJwBCE/Y//yf373wZsuHzv/oiSccxRk/ sN+9WQGV1NXVYsXKIgEdILvmkMJ94sF7br778Uu/8fXFjTUEDLh+AIeqmDLjfu0hQKygoK6y 4MnHHt7emvnQR86bOa3iu1//6l+uv3O3F8QNa1evXr9eTqH5pev86TdXP/jI83t8ouLdCKLU uDVrZt2KF/7d3y/P/9B5fS2bfvjDn9xyx6Nr1q7Zur1NAPnTjAgl6NWx8IP3PLBh0w46aL57 +7paPvvpz7R29O18N2BvT9fKlW8kUxkA1ST2Hcw4ljsBImqGEQpFiNC0wpUVtSeffOoDd993 zc9/8bGLzuOp3uYtTahFGqbVWpa+deOqgSEZLI4WhYLf+dk1RiAa0LFt28am1k6dawXlFQEu E4N9KdcqjFnN27aV1DQ0VJWlU6k1mze6KVleUVlZGb/12v/6ya//+u2r6nf09hVotGVbc29f qnHOrOKCKEMuQLRt2didcCIBI2yZfYl0SWW9xVObNm4eSssZ06eXFJrNm5sc0AtikYGh3lSa T2uc1rl9kyPMSIDvaNlRt2hJWTRI0tvR2tTdlzTNsBnk/X1DkWiBaff3G8FCze3uFcXF4bbt 2wOVDVURa8uWDbZjVtWVVZSUtbdv6+p3ohFobeqKl1XNaqzWUG5es9Y2CufOrLE0Y892KhQT wQk8zkKhIoYYtCJlZTWzG+ofe/7B5GDiW9//fixWQwDdXa0bt7RwsKbPa4wZJgjp2qmtm7ek hzLhsrKailKDYSY1uKlpi5Nxo5GYqWlDaSqur4SBnk2bNhnB0LRpszkNbGvuRdMsjptdXX0s Eq+NmFu3d1jBoOskUy4sWbxYZ8xJDm1vaR5MeSVFoU1NreWVdeUlgfa27qG0Wx6PtPf21tRN N7izfv1qF0KNM2YEmLz8S198+t+vtba0VJRG3ET/5o1bvGDhnPrypYcf8d9zDmuYVtW8YUNv hsKBUF9vpxGJN85qZF5q44ZN0eLK2spSrmz6g5ux1TO/R4PZbUhExHg8XlFW1PnUitWrVv3z L78jXmJhIlg195xlDV/+3tWf+9xnt2zeetpJh1/6qU8UzDjqe9++7Ne/+OWJZ3542wt33vfy lk999uKebavvfeD54846ZdPLz0Zr5v3651f+169/FK9e2lilfeUfd3znqu8nEoPSc9ev39a0 aeP1D9/58uquD508/6qf/fKP//2n2TVlHMWKZx695Bs/OeW8Cy8+94Rb73r0a9/66p+u/nG3 a86sif38lQ2/+O2v7/vr7//56Kof/OC7j99/0y33PH33Y089+c8//O22R+bNnrtt84bLf/jz yy7+EAI8eM/dV3zvZ+8//xPHvK/hpz/59Re+8yPWt0mEZsyuxK9//Qe1M5ckeppqZh0yszpm xKrZQMs/7rj35jse2PrGI9+84ufzlx09oyJ49/3Pffdn15xx7PxLv3hZc1J76eWnrXE3kBVT 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 RK5CYII=</binary> <binary id="img_18" content-type="image/png">iVBORw0KGgoAAAANSUhEUgAAAL0AAABeCAIAAAD5ZYJLAAAAA3NCSVQICAjb4U/gAAAgAElE QVR4nO1deXxVxfU/Z2bu219etpeFLBAg7LJvioIIKgKKW93aammtaxFtXdr6c6lt1Z9LF1uX LrZatdW6UkVwRfkBKiASWQIkJJCQkP0lefu7d+b8/rgvj0cWlhCotfny+cBl7r2zfuecM3PO nYdEBP3ox1GC/bsr0I//SPTzph+9QT9v+tEb9POmH71BP2/60Rv086YfvUE/b/rRGwjzn/r6 el2PtvtbR40c+++tUD/+I9Avb/rRG4g+zCux9YyIXa8RsQ/L6se/F33JGwBQSgUCgerq6lgs 5vV6s7KyNE3rZ8zXD33Mm1gstmrVqkAgkJKSsnPnzpEjR44d228wfQ3Rl/YNEVVUVNTX18+Y MWP27NmFhYW7du1qbm7ud51+/dDHdnFVVVVOTk52drbT6SwqKiKihoaGvi2iH18F9CVvEFEp lZAumqYBQDAY7Ldvvn7o4/VUbm7uJ5980t7eTkT19fW1tbWFhYXHnm2fVO8/FF/NWdfHdvGw YcN27Njx1ltvpaWltba2cs67bfZRUeG/nDe9w/FmW1/yBhGdTufChQtLS0uj0ejQoUPLyspM bWUiwYB+Khw5jrGvjhOB+ljeEJHL5Zo0aRIi7t271zAMj8ejlGKMJT9DRJ3a08+kXuDfqML6 mDeGYfh8voyMjFAoVFFRYbPZsrKyzFsmXaCDIp2I0s+bvoJJpq792bck62Pe+P3+tWvXWq1W KWU0Gh0/frzL5YIuGuoQCqufQEeOBBW6ciKRcpycPH3MG7vdXlxc3NTU5HA4BgwYkJubm7iV IIS5Vjf9VskE6tdcR4uuvDF7tVs+9S2B+pg3Dodj1KhR0KV+nSiSQCIl8aRSKnHdKZPkW//N MI3FZM+xiW4fPsStY0Ef8wYAOOc92TFEZI59ggGdCASHFDP9EshEp6mVgClpEqzqRJevrn2T HD6RvGhKEMhEOBz2+/1SSjNdSpl4JZFV8nVPht5/Gzr1Q7KYSVxwzl0ul2lTdno3YRtAX3Co j+VNom1dNatp1iil2tranE6nySGlVHL7O625zKmTTMevMRhjh1DE3U6kZCaZ14yxtrY2m83G Oe/0fN+i7/VUMhI8MEljEiUSibjdbnNTJ7GvwxhLPJzcHUIIAEgIp/9QHEJkJi98kne5jiST 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</binary> <binary id="img_25" content-type="image/png">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</binary> <binary id="img_12" content-type="image/png">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 a3fHgcTwIOPhq9/+9g/d/O6KAH7zP2754R0/M3PW9hfX33TjW9/49ncM7Nmy7uX1EviSVed+ 8mMfrqurU0T2D3fe+b0f/zyTy7mufcnVN3z2nz5eEVZ/+sPb7/7jw7Yr5rS3X3TBmt/8/Bfr NmxvbG798te+etmFq9Cx7vv972756te5HplSVwfS/sTnv3zx6qX1DY3tc9r6sx2rVi7h6A/b fc5Mil/IaZrmoUOHpJRSSiIa6u16zxsvRQSOyqe+9htXyOKTn3n07mggwIDXti4Zisd/9cNv hjTFCERWrzl/yYJ5uqq3zp5//5/+vH3Ds61Tqo1A6A03vPv22793wapFiKy8Zsp3fn637ZhP P3RvfTg0f9k5G7ft+v43/31KVcNXvvvfGTP33OP3L2mfgYBzl52zbPmiirJyxvVb7/i57bhS SiFc17F2b36hfXoDAl+8bM2TL2zImebzf/q/Cy58/c6OnuHB3k9/7H1BTX/vJ7/YN3Do3/7p w9FI9MP/9C8jqczOzS9decEaxnD2itUJx9q+9fkrLl7NkLcuflPWsmIDPZ+8+e2GwnggcskV l81qbVUVo33ZuX2xuGd1Oq7T0bnntn/5CAeorJ/yldtufW7dhkw29a+f+lB1TfOPfnVPPBH/ 54++Q0W+fPWFazdusx1z3V8fmdXSvOTs8/+6YfNt//5JQ1PnL7uoo39488a1a1YsNSK1f3zq 2V3b1197+QUNTTPv+9MztutKKbzspJSWmb3zl3c0NzZd984PDo/Ev/Chm3Qt+L6Pf+ZA14Hr L1iBTK2vb1i95tyWpqmMs7a5y/7yzNNvuPC86imtT76wftO6p2c2Nrz5XR890H1o6NDuuTOn L15x4XMbdnbs3rRyYXtQD3/gk/86HE9s2bzu4iWzEXHh8pX/+4f7du7Ze6h7/6KZzQh4/jVv 2bbvQM7MfP+bt1REoze9/xMHent+/I1/1bh+4ztu3tfdl4gNvO2SsxnTKqtqL7vmhg9+4APT 6qs5U86/9NoDvf2P3f/rhtrKK65772As/sSj965YvPjuB59xbSeTHPrcx9+//NyrO3r7Xdci H5/TnlQqFYvFio9M1O0LV2bTJgEKkFJT8EgHn6EFDMYIZS5rWpK3tk03NG7b1vyV59/521+/ 7c1vuuTSS6Y11t35858d6Buprpv6/g999H3vv/k911+N+ZEeZBLDd/z4juFMdtqMs5qnNrbO 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 37nl7//u09+5/a7JqcLsbXRY+ea/fel//rf/ec8jW354+7c/9KHf3b3/EGLwCp82QNQ+Nwi2 PrktqDeyftVA4Wef3jqdL72UdmkoAA/eedsv3vDuJ57ZIcBndAbC+3btGpuclDMbJiYm5mWz kPVs6+zIJI3bb7u9uWPxG9/4evRm/vSP/uhbt3+/4vs6DL0gCMKQDMeC/K233vLCgWPJZKq7 r8u0FTAyh1rrUIchR3+CIAiCMAhZa9asmXUYBEEQhqwDZtasoz+h71UDX3MQBkEYetEIWoea Nesg0IHmkFkLC4fBD7//7U9++nMV3w+11mHoeZ7WWkdb69D3Pc8PdMha61Brz6sGQXSsqMck sw5DHWodhIHvh4HmMAyCIAiYNbNmHQa+F4YBa2bmUIe+F/hhGGp/21OPfPSj//fg4Wlh1hz6 fhAE1YC15pCZNXM0jtY6ZNba9/wq61BEu4l0/+CA49ggEmo/CAOtNWutOQxCz/e8QAccBqEO g6AahAEzM+sgDP0gCMNAR891ePCFnX/zqb/cuXsURFjrMAx9z4+21ayZ+TXYBTMm5lXmlDN3 RDRMI5FIEEIimWltb3/zW9769X+76eabb33DVZu3PHDnU/un2puzr7/+LbZpsohfKPxk6mDo afHL//T3f7nzSH7ZyrX9Le7Wp3e/7zd/c/+W++99YEuqpe366659busjj/5oe09n78TE4YEV 6999w1vE8x97+N7bv3/f4NKRnU//WEx388WbfvL0Y4Wi9cHf+tCx/du/dcsdqfau66+4+Ht3 fnfDZddde9VFCvRTW+79k//9f47k5aZv3rpuxeCTT/w4KM+UAnjnDTcs6m579P57Hnz8Sc36 ostfd9HGVd+/7Tv7D0/4penr3v7uNSuXGkSAsv2pR75+03e6exZNHT08mq+87Z1v3frg3TMl +uVf+9WeVvumr99c8Hy/UnnT29+5YrDn61/+50OTVcuwrrx89Uf/9M8e2bJ76Ob/yP7qe/f8 ZOujT24nwmve9ObJvc/d//BjK9eu37ltK6bSadsan5xpyWZf2Lt33ear3njd5c/s3CG+h4xH Du697fY7xo9Nr7ng4uuuverQ/udvv/2O8bFjbQMrfuWX3vHs1kfue/gxrdW73vO+jKG/+R// XvC1a2d/7b//su2owsz0177yL9/81m1Tvun+/h+0J+W7t39/Yno8lx16/6++I+W6cqIiXkxM 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 QVllQ2PDcTMmn3vOeYUFkTPPO/+8s05t7+wFAF8wPHvurEjQ99KSR3a0DJx+8pxJE5tD4eIv fvELmOk1fOGZ0ydn05kVr+0+ad4pDY2N5VVVU44/efr0iR9mDyqFQvGeMPqqUebRR+9r6+lJ trXOnDmrpCgvEY8tuv+fboi1b+1PmpdUlVf+a+G929aumDBt7vTZs/5088KOvRsnT581a2Lh 1tfuWbJk9mmnneQ1cNlLy11lKY/o18PFJfmhH3zn+1Pqitbu3nNWY+Oyp5/7na5tXvFquCpu Z3uNKM9Yp8yYM/uue27Zsf6F6ced0LJtbX7N+KqU6G3Zn7To5JPmPrty68a1q5a/svayqz5Z VVo03FsJxAkFsvbWPf+48/akzdyBFSEPe/SRhwyXV9h2cXn9d7/ztV07dqRtzeN2E8BAbGDH ntYLLr3KpWkFBRVPPLFo9pQqr5vbhq5bggASsf6XXnheoLGvrePEgKd1t9i0cYMkRAYFFbXp 5JLNO6i6cfKUpqLXV60OFkRmzWju27dk/cYdc2dOY6jUU6E4lhktzj2Tyba17YsNxG1LjhvX GAxo7R1t2ZwUpsjauaqaBg/mduzZD6g1NjVxae7etTMjeO24Wr/BNm7ZWlxaXVSUr4Fsa9nb NZDJC/gkUl7Au31n6xhLBwAAIABJREFUSzgUMNyeooL8vq723lg6HArqupbOpNOmaGpqYlZ2 +44dpLlqa2rT0f7OaJc/ECkIB3t7u1OJdElNtYux/liyrKzQ6/YiYjabzeVyXp+bIba1tQX8 oe6u9owpQHPX1Fb0t+/r7UtVVldHCiJAIpmIW4QFefkMIZNJ9PQPlBSVaAwziVhLV19BQcSl cUlZS3jyw24poaujva2jKxDOr6mrTfX2Zm1LCFlUUanZubbW/UkLKqrKWS6za9/+UKSwvCiv u72b+0PFhREOkiF7/3JiElFbW1tFRcX71L5CoRjJwXHuo6mnFFJI4czcMQLJgQiQQJCtMR1I 0qBfDgMASRKBABElSMeRhyRjDIAREIBkgy/AlkJjGg1WeSACAhqcHyQSAEwicknAAJAAUEoE EACMo7SBM7IFMI0AOHMKfuRyuVwu5/O6JQMOHAAcrykEWzq+STTYSadbAMgYBwCSwgZgjocU oAQCEsg4SAEIEhhHIGBANKyBBEQgQDJkbMihiciZ4SQJQ05UQ8Xb398F8ba2tvLycrXsrlB8 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 juNMTk4WFhZqmgZqAlRRlA/Wpe1zdxPUc7nc4OAgXtZFGymllLKoqIhf7kLxiqIornesEoIF BQWhUMhxnMs73OOcc84vbxBXFEU5550zltxMdXfqU1EURXFdnsrBiqIoH3YqeiqKokyHip6K oijToaKnoijKdKjoqSiKMh0qeiqKokyHip6KoijToaKnoijKdKjoqSiKMh0qeiqKokyHip6K oijToaKnoijKdKjoqSiKMh0qeiqKokyHip6KoijToaKnoijKdKjoqSiKMh0qeiqKokyHip6K oijToaKnoijKdKjoqSiKMh0qeiqKokyHip6KoijToaKnoijKdKjoqSiKMh0qeiqKokyHip6K oijToaKnoijKdLw5eiLiZTkORVGUK9ybwqMaeyqKokyHip6KoijToaKnoijKdLwhehKREEJK ebmORlEU5Uojz3P+/W+Ino7jTExMOI7zwR6boijKFU1KmUwmc7nc+Xdq598govHx8c7OzqKi IsYYEbl3un+6X5y758KvL36noijKZXdu3fxNC+hvuh8Rz39CKpUaGhqqrq5+w0vOj3Tu2BMR DcNwX/kuI6YKl4qifIhcmJp5/j0XRljTNKWUoVDI5/Ode9r/B2n+Qh5Br21YAAAAAElFTkSu QmCC</binary> <binary id="img_38" content-type="image/png">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</binary> <binary id="img_45" content-type="image/png">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</binary> <binary id="img_52" content-type="image/png">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</binary> <binary id="img_60" content-type="image/png">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</binary> <binary id="img_15" content-type="image/png">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 fjvJm5DaMJ5WrVh+zIlnEBHWUWgEAEjIItq2F8xfbNsiIgpk1fIVaf0qlkyZ+uPqnY8/9syU z55+ZuT7I5+71nBcBeqyNw6i7RnzpxAxPj4+pjprISKlVFJSUizvpMb2E3n9tdci3uzHn332 mUfu2zr7mylLcj12fhRQIVRWFM6cOXXu3OWRKLPwmlVrtGbWevXq1VENrO1li3JmzPixMhKx rXBMO4syF3//xddzc+99YtQrL708sEfjkU+8EI6CAdHvvpm4YdPydas2o+KKstJt23cAQGVF eW7u5uLCbZ+/+8Z3M+eUhbVlO/lbN/84bfrGDVs0Y+n2rXNn7nh85CP33PjvyeM+qLbcq+sv BTErq1G7Fo3XLZk/e868ei07t2jRgohkL9ozFt8EEMZwKBoOh6PVIct2QFGjzseMfPDuJpmZ zZo1Dtu2IYKua+GyVw6i9qzpfEwUMxV/BewKP0Gs7FLICZesXLdl2L+HpHoDgQbZIx5/sG/r Rg56fMIV5QW3Xn/ztJzF33zy5kNPvKwp/MYjo0OatFP2xMgXyyzrm/deeezptxbMnPXoG2Nj QxBFRInMnD1n8KVXN2uY5vEFzxp8HlXnbd0J5UXrN1el3HjZ4G+nzHUQC1bM/GjiYgMof9Ws V98dW5ifv6M0sm7R/PKwqOr8d15/c/XyObfedM+WkpL4Bi0eG3VXWsAXCUe9aKDpVmr9lTDr EAa6dmxLjl0dkW5dOiuJCNt7GS5FNU4EVFVsuXr4JUOHDB1y6SVTFucqoPppWdnZDfLXTH/u +QmX/fs8YMftmuWyd/4W13+svxIAoNf0JQRRixdMb0a9eFAWaWbJXbnA3+KoO265Fovy/nv3 vaWlYTI8iICCpmn6ohVTc5bf8uCjXZqkNH8DimvDkcLFzP3SgpqJUDw+byCItlM2a+r4rFYd W7dq9eYnb5WFL2AgNESAFSkAaNupR+e29Y6/6IpGKcoyfFfffHu/dqmOdXt+YVXTtPjUJGP7 xrUPjf7oqpvvDdY9u9HlEECKFFtzVqxxPOhje/mSVQ1P6I9sI3Bd2fK1JCQ3eumdMekJSKj+ d9XllrBtGMVbF91yx/2X3vnYgI5pWqNbiOeydw6ugOw+aVJ+w25/AkAgZSjL2b5pmzaVZVib Vy1du6PY0CaSAjtkxqUr1kYg6FWOdpSjw7Z2SIC144AZBcPnRUa7XnxA7erpgaBa+QMLF683 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 6koqav/z4ONaKjKyIvUe5WU7mZl5BRlZKTH/uOPmgqyMZEOjZvIo5RlDzFFhEUMc9cnJKOhm JSuvINcRMWId3vzIpBAcTaY+LWJZ2Bd2064lS8xsaufPLF+Q/nDx1I/Ed+ob/QyPH7tvQlZ+ YW1VwlHsWtl1nwN69ugmTCy+aH/EgUdO2nWfefPnvvD8c2OvXDbub8csX1n34n8fz3SUk5eZ SiTZipHEwtlramq/KJs9M52KVTaYiqmrDzvq2B7di4464SzfesnGCkPUI6/Qr6uy1iSrKpXu s+8uQ+IR2nPP4Uu+WVPEZsc9R/fuVjRi912/ndEpw1eRngCbw8xCPunfHvebK28cG+s5/Owd +rxATmNl3avPT77o7vsi5XP//uArip2Ik3nruJv+c/d9b47cZduCgoH9ep955TWZidXzl9dk xprea9YS2UYvbZKJVQ8//syQIbsWFOt+vXqdef65OdH0goUremVlfG2UJWsTNY8/+sZ1d/4z x5aOvfJRl5U0pL4rX7Vjr97Lqhp2UVrYjVq24mZQ0ri+cKay3EnXkzsN3fHhp/+5+LiDftGv 8Jtpr9/58Kzrb/gdkxaO9emTO+Lo4w4f2eebBfMLtym6dewtx/zp0p0GOeedNc6SOFr5YonZ EjusyOo7b73x0GNO3WOPfYoy6Ozrn7Bxp0/37ieded7QQp4x79u+PfIsRYR03z6Rff7vqDH7 br98zte52w6cvbTbZ9PmHXfALt/OmL54jdp3dG8tbsqYCInDvpOd6ybWLK2o2TY/Y9mC5QMP ydJlbJQopYU7a/YU0hNgc5gVs+PowSNHd4v8Y+8xR2RHIk5cxXPivfvnjLv24gzNFOlB5Olo bMCwkZdf8+ebb73qpnF/H1w05apz/uyKGf0/R+y71x7Bg0Wd6Efv/OfUryenTPWA/ntecPqv e2brA0buePEF5+c40nOXvffce7dILDuqo+xkDBnc4x83XRGPWe1HlMiuu+x05y1XvtAtt6K6 Om4oqSIRNo4uGNyXr7/uxutvvrpHTmeNcu83cvRx+0/529/OHpBbsLJ85R/Puz6eEYtEI6Qj x5126nUTbnw/L6c2Evn7TTfuvP2AB++5uTAvJ5X22LBylI4yEzGREeuQM3ib3tdceE5xca/y sjXHn3Buz56Dx4zZ9+ZLxxZkx3P7DhoxfKSK5mjRR5926jW3T/j46cyE0lffdPN+Y45/dewN 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 77NOzkITAAAAAElFTkSuQmCC</binary> <binary id="img_3" content-type="image/png">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 yFN/vev1VR1SLnZ2zP/dldf99ra/k/eeUcQzYlDXMijjF019fM6SriiOu9uW//nvr7pUQ2tj Awub0sKF0+dKzC6Opr75TmfBsaF0bV1TjZn7xt+XLFtZYOxYufjxqdNX9HRbYUc6R0UppZRS aqNgvv/97y9evDidTqdSqWRn949SHHu/YP78/MBBBx56SF2ICCBOMpmgvq5pZREmbj66IRUG ja177LZTzqKgQROnw/rBw4cWyisAG3fcYdLAgWFnN2w9adthA/MphCVtpUk77Dh65AArwebj N61tSC1qXxamWo/5wme3HD1s7OZbDhk1ZMTgIbvutFWhq6e7UEjVt3z51K9+5shDw7gYpnOt owZxKUIJttt2p+YBNWtWdcPIqIhIW1vbkCFDwjBEJPHOCy+e987v73o4S/WtLUOjYudjjz/b US73dC25547b77n3znDU1gfut9fwwfXTpr969/1PQKk8f9bLv/79b19eAkccss/IoYNWznn9 1ltvEw8zl0y/6arfT1+R++IJn544ZoRBFBDvmZAiACeczZlMCu64644ZMxdRz6qH7rvvTw/9 Y+Sk3XefOGTe6y+/PHPp/ocfXZNKp1zPo/fcOfWt+VJa9sgjj1/22z8d9pmT991ju5QvvvbE Q/+YusiXV097443f3fSbpXHD3vvvv+XYpqhj6f0P3Ddj9vxCqXj3n++8/8H7081D9z/4E0Ma 86RDv5RSSiml+hNEFJFVq1aJSCaT+ShFee/feeedSZMmQbLV3osvvlhfX5/P5z96oEIAIWJk TLeXlC+ngDxawcgiecoClMLIxal8udyTthAzEoIICknary5iKwNmguWeG8oe0ZUytsTQFKMI rkSXCVwKgi624FwOwyiHUU9cw+hthDVpKZbLZUSxNSJCcTFlnWAKhAwETJHzskEO/WLmN998 c/vtt8/lcuIJbSzC89965TsX/mTB4pqvnnn6wfuMuPfmP91yx1+6o55NNt9qk+F1892gs046 rqUhXDz37V9f+9tn//FMEEDtZjscc8Lp+08ckUHqWvzOnTf9/o9PvdBRjjdr3fzIr5y2+24j 600NEAkKMhCgRwdgQEqutPrxh/56wxW/XcqQCev2+vRRn/nkESPq7NQH77njyZdPOue7Qxrq yl3trzz+0HW/v3328jmpmtGTDzjo2M99rqWpBuPitCcevvjau5e1z2moG3jgwbv//dXFJ3zl +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 2jJ3VbYp/9nPfOWVq1asWLFs27qH/viH21555TXvu/yVjiMFkdEh58TYs5olBQAAAC8KrbXj OLVZ9ceu2lZkjOFMWlE1nIUVqyMpFK8fddFVH9qx/orfrFzbPHEUM36uTY2e1nzH4zvMFZ2z x7VVB3t+f/OvdfuM13TO95ra33DWhH//zse6Ji+eNqtjml6Uuv6WH9/4yMwL3j8h7ZYH+h58 dG120sI5Yxtdpnc+tXHdlp65py7tzsne3bsf37h13JTZY8d0Ocdnrjv735tUaq2f5czwF17i xsbFG6g/m7stTinPdHfyYKRv0+qV2wZef8U/fvmzn/jEpz7+r1/56jsuOnfnqvt394UtnRP7 9ux4bMPawGEpxyx/+J49+4fIsSqTaW7IDGxa37NjJ2ehYuHK9Rt7h4zDiRktOGeMOa5nLTHG Bg/2rXn0EUZRWpid6zete2pb0+gWpURIjPFAMs2JGc79ztF+dfdjy+4LWC7rpLZv3bxuB29t am5zpXKqDnNUwBo72rxsMKqh88I3XnLJJZddcMH5LS35XFNO+KnOye0rH/nD5vW7XKc+5zk3 3Pirb/3kF/2VyJOSSRvZio2GfdImZEpzay23lnNOTl21HGjrM89tyDe0t+bv/tMfdheixvq0 Gup78P6HGtN+c6NPzBpLRJaYcZmcOWUyq2z75W8f6Fxwci7fsXDenDW3/nD59oPd48fVO3rU +FkH+resfmQty+Uynt346BNP7twzakY3l5lQcymtVQFZZpmVpkgid/E/vPfTn/hHu2ftj37x 2339A8p1qjIjLCnXkCHPCooM81hkrbGMEVmrJadMW87TBx974O7eopKpaNm621Zu3BlIUdUF 0twaUkGxXgR7tm7a2V9c8ppLP/ulz//bp6/qyFe37tgcUrptequn1cLZcy699K2XvOUfT541 N9eRF1nfWsEMcVZ1KTRBZX9f/8p1GyfOX/rhT33+C1/5+Kknj9lw36pKpRJ/XDnnSV2mDwAA AIj+d+13jLtWGGdMMmuJmHbSmktrreauZrKpa/w73v/xMe2NPBwSZERj2/lvvjhT3PSJa97+ gWvf97b3Xfu1n99U1VZK33G9hUtOCQYPtrTPbK/LUHPXqNYmW2Fzl85Mp8Kda+5731Xv/dZ/ 3V6qBJVy+fbrv/O+az+2+qldxog19//PR/7pAzf+YYVlmrFjuX7xX7bSs59w8WJJVo+KjYvs Z9dw8fCweCfBv5JqomD5Q8vd3KjFS07raNNFJZyUnDdnfsNNf3rwgc1vO2Np+60/+/H3v9a3 /exs1P+nW+860F/gqlQicfqZZ9274r9/8O3/OPPcRb37tt99y23aTXMTSm5IKSIeRIoJ4zhS BeH/XP8TPrC+qa5+xV33VZl/9qmzuZBauqEqOGS4cSIe5cZMWTxr4s3X/7BYrkxssvfd+Yc9 Be9Npyz0jdJEgoS1Zsys2TNPmnLz9dc7xQNt+dTGjWseXrn+Q5/44vi505e+8rxbVn//+9/+ 5sHzTxnp2fzLP947cfGZTqZeVIcmpuyqx5bfcEv7OQvP6+xi3BoVKCmYNdTRNbkweNfNN92g Cq9aOGv8klecdv/3bvnRN1JLZo9/atPa21asOefNV4/uqFe6RCzNOTO6EkblzlET2/PsnjUH z716HjExYeKk8r4fqdGnTZ4yjls1ed6SMbfdccMPv10ZPDvLystvvctpbF2yeDJZHhnH2goz ERlOjrTaj1hVSXfhnLPecfGW79z0u+tvyl115RVetc+IitEVJphSZIhxFgmZJm2ZEEYrq6OW tknnnr7oxrt+3TPSO6clu3rdw8VwX7PRrtNibMla5gjhCLNu7Zrv//fNC5aeuWDGzP1bNhf6 3NbmLi79eeed85tl3/vRd7655xULRoqpO+74VfPkqZMnf1DITHM2tX71/T+5sfOsc15T3tf3 n1/813Hzzp176vyg8MTuwZ782Dm+73POQ62lK5P9sQUAAHi5i4vGuBSkY7zMLiNrJWfWsnzX pDPOPm9MR1YbS4xI+NOXXPDhjwyv3RTm6nzNvblLz/mK593w61sOVIP8mEmXvv9jS+fOdLlj Rap16tQr337FjDNe1+Q5JHMXvPr1Ir/gnDmTJPcbx8+6+O2Xzjhtgu+QjvisWTPflpoyYfQo K2jShDkXvfXiabPHWiuIjtk0liPmU8T18+FVdzJHf4nPfOYzPT09vu97nvcs19r6u5RStfW4 nuux8YHVatX3/Ww2G5/hmc5jrS2Xy4ODg77vH/Gc4tDwbXc92DFh5nnnns5VKeXljC5mvGzP wZ0HBuic80+fOaVt7botjzz06L4duxac/upMWkycOPOkqRM7WhvT9XXrHl+1bPnqkYI686yz IhPOW3xae3O9JEskLBNC0t7HV619queUCy5Yt+zO5Q+vtnW5iy6/8uxFJzNT2LX5yT7KnLVo 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 Y2x4ZHhf78DEhVeOa2+NKsOZuual805etqbPM8xlohxFlhvBjGzomj5pwi/vvf4DVy6fNuvk 2bOWLjnr1AZZfGzHln2D0aply764ZUWZlYKBwaBcGjzYF1RKYRgoY0aKw1HKTbn1c2fPf/i6 ez/6wffMmjFz+ripp77pFS2+x/iEy975XmklM9pqk7QeMAAAAIBnUiqV7r333qampkWLFqXT 6Xghoi1btqxevXru3LkTJ058sS/wEGYd6RSLRaVUXV1dKpXKZDJNdSnOxe7ekVK5bK0VUjY2 NGTTHlNVkq4VbiaTJhtYa5VWRMxow4VobWtzXNclxa0JNU81NLCRImPMGM05FySIWBRarS0z 1pWe5MPGmlBZLpQgw6SnjWFkGRkpmGWe1jaMKlIKKby4EyXe6SXeOvPFbrjjLllBhURkmW9U 5De0z5855T//dM/vikG+a9LojkyTmDBtfPPDD/x+pHnP5NlndDdzvStltfEdx3BPsMgx2pdp 0kZVy9qYslbVKEy7XrWirTWWGenUNze4fds3LH9wZff5izkrK2OstcKRUkjDuTFGSkmWGOfE yGjN420TmbVCV4k4mZTQyqiqihRZTSZenK7MUvUto951zbVjFqxYfd+K1Sseuu2mW097/JJ/ ft8lzEbC4flcXV1GWpvOtre9+Y2zZ86eaY1yXZe4EE7VYcRTnRde+o8d4xb+adntmzc+euev b/zDow9/7qOf6u5utDZgFDLOlCYuXvp3JAAAALw0+L4/atSoDRs2cM4XL14shHjqqadWr16d zWabm5s55wkZ/cWIGWMGBwf7+vra29tb2zsYMUs2CALGhes6TibjukXGea6p2Rd6aKR8cKTo utJ3rOCcLFljUqmU4FxFUXtHe0pQYXCgWgpUpFJSSiH27dtXl/JTDiuVyk9t251v7+huazbG cjLG2ohzX1hS5YFClaytr0s53JYL5XJoGxrrhTDlcrlSierqMp7nJnYp4eMhWUGF8VJkhcM4 95pmT5mqvv31W3YNX/oPX2p1QuO2TZ088We/vW5bXfqKaz/pqeKQyLQ1sMdXrRy+YHGry6lv 0113r81NmticZiXuKl8apsiGzDBmfaPE0vMv+oeLln71kx/8zje+0TJ+yqunC2VIGcOIEREx EoIrpVLplFJVImKONER1dXWjOluXPXLbk/svXDAuMzS464HVK/tUELo8sEZyzoxxWTUc3N9b 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 AABeGLVwclw7IY59UIn7T2oD1474LXpUAAAAAABOXEeMljp+U9CPV4/KM/0Kk+kBAAAAAE5o tS1TTrAeFUIaAQAAAAB4SXsBxklhxggAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAA ACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAAAAACQOggoAAMD/ 396dRklyXYeBvve+FxG5VtbS3VW9oLcCGmgSOwgS4AbupkwSNCVKJCVzOBR1OLZGso99fCR7 RpQtWfaMdDgey7bO+IwkyxZpi6Q44iYuILiBBECQWAhi70bva3XXXlmZGRHvvXvnR1Qnsgtg A12V3V0A7nf6dFdmVkdGREZGvBvv3fuUUkqtORqoKKWUUkoppdYcDVSUUkoppZRSa44GKkop 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 igwLU8rRAAAAAElFTkSuQmCC</binary> <binary id="img_28" content-type="image/png">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 5YK7UnoAAAAASUVORK5CYII=</binary> <binary id="img_33" content-type="image/png">iVBORw0KGgoAAAANSUhEUgAAAJ0AAACCCAIAAADTxF3PAAAAA3NCSVQICAjb4U/gAAAPd0lE QVR4nO2dezyU2f/AP9VkhhlyK+O2kbC+hUXSINZdJQqhrZ/WVtv9ousqulrpglaUagvftJWQ SrJSpCSR1q0JEbnMTAgzU81M1PcP5WvLT6p5ZnyfPe9Xf3Be53w+53m9nec5z9N5zjPs7du3 gMAdw8XdAQQmIK/4BHnFJ8grPkFeMYDf1vCkjsX93GZc1pe06h/kFQMqExY5OO66/rnNsnZ9 Sav+IQgnDKI/uKy6doHgaUlpu6yBuamOREddq0BaWV2BCFxWxV/Vb/QtNXlFd28xSXqm301Q ovRpVl/d+EbfUqerqjC/lEc1M56oLk/6b1x+W1VhfimTJ6ttM9VQgdhfajReMSQr2NHKZn5U +ePLm9xpK87VpP1i47Yvhw9wL8rTLaLi6Vk3mt32nJfNKWtsHNenMgAAQFAYNtfOPYalrnh7 o421T1zNy6KDbtbzYkp7o947MMPaJ64GnucHz7X+Ma6u39RovGLM1DXRv8xrJN3K/JM5bNZs m7DdlzJ2jrib1Gi4WPL28VK1xReDfQ34StW0VceTtTQAsrb7CYw35h/ykDi9MOmZWVC8mxXB rCXP98iZrKUG9gAAfC3XHVF23+jJcfKN4y9XdLD7TYvGK8ZQyPK9PyvYO5lDVuqm83/ybLw8 ZbhsoCqqAQBRWUUJurq6AYAsO0qiODmpFBpbmCD1uqWkqOh+49gFIUEzNN5HeZoZvmbe4i2R Zwuf//9pkVdRojBrzgzSrYxM3hQne4UJE/WhJC+bAXz6rZvVEuM1qQBA25y0zaz20NYo+M5E 7mWDQNnFc6ZyXUJkYvmLdzGyEg6VUheGnghfbkx8BUzWs34zIa8YQCCPplLliECSpSrLkgCA QFFQViQTAIhO07zGUbV8fGYpgPaP4dEuzLA5FlYLL8mtPBzkJi1HpcoRleeFBNm1X4h86n1m 58Sbmx3N7QIyFBYE+Bm+C24/f6M1JK6ws19wul1Hk/yay+uvC8PQc39cgsYrPkFe8Qnyik+Q V3yCvA5BCk6u33Cy4KtCoOdNQxAFHdoUUPyqEGi8Ygm3MH7DXHtLJ6/le5If8YBfn310o5ej latfUHwhF+rS9q7fsMzHyX72qmXr96XVAQAv7/cVP+xMK82/W9UK/KfZR1e6m1s6eW1LruQD t+J8iJ+7uePcZRHp9fxPpX6LwIyKQzM1HEILeZyMIEe7wPTre77XMFl1oflVXeIyA72FZ3MP OmppO4bmPnl83t9I2y2m6m3rWT+9CctTE5draS9PrYpx1zZYksTgFR9w1jYPDPHTmzA9opjH ubfHWdtyT8HAqdF4xRAtC0cDxik/58WZ8ouCFys/zGsCSlvugcDfbrVJCXJzSwBA09FxqoaW p4f7mJLMGw8yMrNJM1ydRwIAcO/ll4DlNA8q0Wj91aq8Ka15AtLbh6cDtp+rfCPVeDO/dMDU 6PqKIa9VXH7LmiPZUHYmZsvcBAsfLZDQmLMnbBaR39bgz5F4dtEXCMNHAABYOLqoxZ1YWN9B dY91IrZcAgASiQjQ1cUDID2+nfQX/SURlBxWHvA3AC6rrlUgrTxgajReMYSR9ovTtC1XQFYO AChKVj84k6+f3Het6Np+P/s5h4oEfapO9phv2NHeoerqaPGuhPC9q6tsTlzYtdvxIWt3xBLs /PTqT0XGFxXFr57hsuJiU7//nd4Lej6MKdyKrIy8wmrQNrVwtp9AAWZhWmZeWZu8Pu17+ylk +tVsJtVmmpECAACzMO02S8nSxZQKj28n/QVGnpZq9Xev3cwva1cwtXe3n0DhP8q5nHunGnTe BRsI5BWfoPMwPkFe8QnyOiRgs9lJKSlCDIi8DglOxsXLSMsIMSDyOiSg0+mODvZCDIi8ih82 m+3h7i7cmOg+B5+g8YpPkFcxk3ktC4uwyKs4YbPZyUK9vekFeRUnmVlZQp8x9YC8ipkpZpOx CIvmw/gEjVd8gryKh8bGpsbGJuziI6/iISklpbEJecUXbDabTqdjNGPqAXkVA2w2R09PD9MU aD6MT9B4xSfIq6h5SKeLIAvyKlLYbHZsXLwIEg2h6yubzZ4201VFdeCF7P/bNDcxpKQkZeVk e36tpFeVPriPRaKh9R6HianJ5l0B4u4FhgSs/WXr7kCK9LtF3YH+WzBKNLS84p49B0NFkwhd X/EJ8ioiuBwh7Sw8OJBXEZGYcO5BUbHI0iGvooDL4TKbGUaTjEWWEXkVBbdu5IpSKqD5sGiY 5jYdXV/xSe89q2hAXvEJ8ootXA735JETos+LvGJLYsI5bV1t0edFXrGlurJ6qq2V6PMOaj7s +cN8IvnDt25ZzU0//7TAywOT5eo4ID83n2ZF+2nZQrFkH5RXsrTM0r2HPigsyrkO3SKdu/9v EXPwWMzBYw4z7NF5GG+wGKzS4tIX3BefripskFesYDFYWtrjtu/dRqaQRZ8decUEFoNFppC3 7Q0Si1RAXoVOz/PC2uraDUHrlJSVxNUNnHvlcrg/eftdOIfJu8P9povaHxkfE2tgbECzookm ab8Maj78gsO+/Hv0B4W1lY/cnYW5NY3Q4XK4/kvWPq2rPx51DABme2N7S9Yj1cVpGp1OT0pI XLDUD9N0AzMorwf37WVzPvpu4QwH4W4lJVx6pD6pqeW94vFe8bBW2yvVycHBycHhYGRkfEys GNUO6jyspqb6Lz29j/+pqal+ceKLl9I4HM4XN+/lSdWTjwv7Su0pYXeyj0cd+/oT8rUr/Wzz 0VdqT8na1aulCMT4mNivTPfFEFgsVtvzAT44iRV/nEkMDNpla2NtamoyaZLxt7o6A9dvZbX2 W343+05GcrqmjqbKN6q6+t8SScSPpfbQo5bdyTa3tug31GAICw4PCw43t6LRrGjm1jQyhfyx 1B7Wrl4txlFL6OjoxGirmYFpb28HgMKiYg6Hy+ZwOByurs74Aeq3PWvldPbzDVsBXwAAzU+b +TyBgM9X+UZ1OGH4yxcvPpDaS1lJWXd391d2vqS4lMvlspgsh+n2ZAqZ2cxUV1P7uJqqqtqD 8pKvzPVlEHR1dXQ/NVawQEKCBAC2Nta9I5XN7v/Twz3o6n/bbzmfJ5AeJd0zUnsLjyYcX+jj 19TwtxeHZUbJTLW1Ctj5VUuxH5VXmVvRHGY49L0xDY4ICfTfsjMo6F993n48n5zy+GmtuC6x Q+s9jsBdO4W13p/L4fZVKxSpA6frq7ZHqvsPngMvkwj03xJ79BgW/cHt/StFmnLibKyquipg L7UnXXBEyPbdux/S6YOUiim49Qrv1VJVlLGW2psuOCJk3cZNYpcKuF+PSJGmJGUkizLdicRY LocrXqmA7/EqLsQuFZBXvIK84hPkFZ8gr/gEecUnyCs+QV7xCfKKT5BXfIK84hPkFZ8gr/gE ecUnyCs+QV7xCfKKT5BXfDK01sFUPqq8ejFd3L0QHRy2EN546Jehtc70bsE9cfdC1Aj3s+q9 DCGvCCGCrq/4BHnFJ0Nr3iRUeM8bmOwuAJBU1FT6jJWf/LaG5pdkFXV54qfrDlnwOl4Zqevs LGeu2hEVtWOpo4n5pittg25acyHg/7Ym12DYORGA03lT3Yk59nvHhFVFuwG0Ja91+23Exsth bqO4rKK7t5iSeqaGE5QoXFZdy6vWmqIWoo6WmpKKphIFeM8byktrR2p9I09WUZcncmtu5zxg krRtLQ3lScBvqyrML+VRzYwnqsuTxH2En2DEjh07xN0HDJAlPLuWevZ2Wdcw0kg12jz/FdO/ JZXGeDgtzyaZKZeErv614huPrljz+duz6oa/eX5nb0AyaZr3JEheYbulUZt8fOmhF/aTK9c5 L7tBoY2+G7Ai7uUEyRRf3/1Nmia8lLXrzr219J4ktq1eBgVer68GK5OuTLqUmpZ++Of95TwV n4g4p3unykZ7H148dTxIPswMOJWiMwbAePnB6EUa9/YUzE+5UuosfSGbZBdjQigFgCd/ni+Q nh+/29eiTV83v6U8KfKZWVC8mxXBrCXP98iZrKUGQ3rPFJxeX2tuHQu/MWzOmuDYlOKi2Ln8 s5sic5gsGMlpKrpfVDTMcmfoAhMSAIxR1ACAyXbOqlWpv+9LL1bz8nAaCQAALYxGGEWRBgAF I2cXalcLSL1uKSkqut84dkFI0AwN8R3boMCp1zcP00+EHThSwQXgs5ob2SAzSt/UTKKhjWDp 6WnZfTM8+lZTn1PVZA8fw8aM9BLV6bbvv6Gsa2AiUV9SxgB+7nYLnY31GnIvGwTKLp4zlesS IhPLxbDl4WeB0/Ow9pKYk7yA4GVWh5k8InW8/Z7f/V11n8sy1gW6Wx4FULQLinZ5eziECu/m P9pO7rann3X/6DkZ4CF5NFWBouAdElHx825vs+huab3N+0PnSU3auGKz41UAKd0F+/0MxXt8 nwSn8+F/PDg9D//jQV7xCfKKT5BXfPJP88qrzz4amVYHGUHmlkEZn6rNrTgfElsgin4Jm3+a 16qUfWFXHrPBcuUfp1Zafqp2VszW48UMUfRL2ODu/rUtL2rTtlP01685nZKTV0cdnieVts1/ T04bAMFwyWbr++cboSMpMKzbMPkCzPd6lJBvH3NmiUFb8tqZh0jrtqtdDf5vW5+OqHwAOOL/ x5jZz04GJdJ5ANLGy6PDjHIXLY2t4bZ1yPgey9n6yb8OcYC38dpRVpD7cnp4dm7xv30lb6bk 3Lu4Nyh9jP/FgryI2W2JOTIec9RA3TN4/fhOBrNTZYrJiMKzV+5BddIfF3kWNMUHf2urtH4l DYC2LFTh4qoohmv09YLsbUZ3di6KKOG2Mhnj1tx8OESlAv68ytKmexswjntbma843QAAlaX3 BWMN9ZWBaLEh9c/wWaP/VnvydHftpvQbqTcyy9S83Nw+aPueSno5e5ytrREJiE4WFtDY1AoA OpOMqKI8sM8Eb15zfvXdkCa5ICH3TvQ8deh6I6+sBp1cDgDUpe3bsP187d+rG7jM0m/8d2B4 ibb79Mkftn2/m+0oaWmoranlA0A1qxlkKJIiPqgvAG9eVceOk2gvyUo55r8htgae1I7wWDxN kLBtfURo4La4KtnxGiMJwLweffLxu/ranu7WAoHA0NXF4KO2T2HkSAkoO3+W7Dp/bO6vP4VG bFr9W5X+Yq/vxHqIgwJ/z4d5zxvKiythvL6mjIDzgkxVl+9iPXlUVgO6xhPV5Un85w2Mzu4R hOHdXUTFd2skmC/IVHV5Uj9tJTrrWl6BlKKGLL/hMb2yXU7/uwlKlL5Nhij484oAwN95GNED 8opPkFd8grziE+QVn/wHS9bewPWwf1YAAAAASUVORK5CYII=</binary> <binary id="img_5" content-type="image/png">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 9q983LXtSMyO4/i+v3Pb9uqzn3nZ5VdorQpjBz/wjrduP1hOO/zYlh1usvGGd737+hc979ff /tSnv/TDFWvWb9mw9YUvvX7NfP2RT375Ze/5wCtg6b/e9P4nR7z2Vn3/r+9yWxe/9b03veYv Lj2844n33fThB5/c0TK7LepgJe984tYvXnXRMgOeYm0o7zAU8tldu7c/84Llz3vuUvCLP7rt x/f95p4+X73uTa/77Cc/Xd1870dv+fyhPJQrfPk1L/vgh97eCeOf/tD77t58aN7s1u1b9y0+ Z8WDj24aG534uxve/N533vzMC1u/8JmP//Sn9xXYn7tk3bve966rLpz/hfe8+YePHZq3oLvv YP9b3vPBl199uTK+q0AhEBPEWi664lmrZ7m/+vkvDWJ+cNeNr3tDsanb5AqR9NJvfu3D//3T b376S18fGp1QOnrpZc971/v/X5NT/PG3vr232tjzsZUt5aFP/cu//OxXd4+WecHKcz/2iU9c uHj2rqce/cxnP/+bex8nFetesPxFV6z5yY9/nR8fvvl97xzLvv2G175ch3McZShNCCHEGcdh mSe4R8YpVMf3D28azO4yhhCU7TuCsPkDw1lNdraQAmTCKrOKukkiH00FFDBrAlRAtus4GCOq dfeinS5msFAp9A7t6mnakYpEo5hE0LZ75KSGSiYHa6CW8sKCUm2uFTPDwtWrnn35BQ/f8YNb v/bzMmnSKsL0g1v/7Qtf+cmFV/35G17/8h2P3fGV2++IZFpiuvzgAw/29R2455e/2rBly113 3b9z5447f39fpm1+PGgWRogmrnv961fN7/7Z1z//xjf97Ze+++PDE3kCf2D/7kefeKqla/5f vfKluYPbvv7l23YcGMgPj2zZuvfu+3de/MxrL1izojh6cNPmTYNDea/i9R7sved3dxwec65/ xXXD+zbe9fu7R4eHvv65z/zkN/dedt2L/+F1r45MjG3cvGuiWA3W2zR+JD3/Za95bZNrbrn5 pr+74e2/+OXvi1W1dP1Fc1ctmLVw+Vv+9vXL53W0zu5+w1ve8amP3LSmE/779q9tfHKfMt7A /t0P3nfv9oH881/8l3/2/CtWdbWk4p2vf9ObVy9v+9V3vvHlr/9o3Qv+8oPvefOBDb//7k9+ MVryD/UObHzy8b17h59z9TVLFnQbADsWyACE4BeGf3X7d7/wb5/Zdah4zvILG7i0fe+2Rx56 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 LHtL3171dl93f/K0uV+56ZZI8q5d9XTboDD7vdnzFx7a9H5lvVcZ3ht/+NPoSJcidmlYX7Jv 1SvPd3V2ZM2+4Jqbf1Sbs3X/gV1ef6C9vm7Soiu/duPNPc3F2959u6Gx3dSjbrrtppaWjvjM np17VjfU1NbXNJtKW3bVt5ecf74z0LLquceKjteMzUyXYZFLL/rmtJmTAwGFQgOwamvLE+cs UwbtXPvSnl37fBav+PoPFq+4xALZUF6tHInjsxKby4+sefnVmoZTyRkzvn/bPXvWvrJ/y9sl FZXf/tnvZ6Wpv/75TxWVzQnpk677wR0TUmM2vflsaVFJe7+24oprSnb85dDB/EEz+ru3/yzW 2bHqT49XNbRmTpt97fd+HCbVmmf/2DPYGxCx137npxmZSU6k3evf2rn1fRCaU4j4jJlf+fZ3 e9s79WRVc2LDjs1HDRyqraqYNP3ir3//Fle4HZdCBhShpp0hQoQI8W/BGYwYAdghEiWkauto 3rpl4+5d++t7uvo72wZ92s033frVK84FXXNHOn3+AZcepmNYa2PD9NnLbr/jJ4kO3n9gf0Rc wtik+BlTM1oaSyrL2nSXFKwQFCMi6AawYgR2ALHDQAUUNzb9P26/82vXXBbt0cm2skdgDqaA /rsWR/9kGFhDd3d95UCn78LLVjTWHNu592jmtPnpCfEpU2dMnTkzc9LE6Ki4sxYuS0qIPlVw cPfmLWfNPWfpwnlbVj17JCf3VPnx5//0u+qGBqlxd2PDkJ44cXQ8GGZ7c0Ni8jjLW7fqz49H jc++7KorWspz+/r6p85e6I5KmjF/YVgY7tt3ICpl0jduvK67Mm/fjj2W0Ze7feOpuu6F5100 edrMcWPGxKdNnLNggVNHC0xAsqyut1c+YIRFr/jaNbVVpZV1rYG2U1s3fuCIiTl3+eK9bzz1 /vvb/N6uvP17lR65+NKrHOZQae7+/sBQY1nups1HFp1/wbjUuI/WvdrV17LtzUc3btu9cMWK CM2/d+261u5BDVlYlh8VD3UU7n6r2+Ligx9s3rx55jnnL5o/ZfWf7jyck8/CaKyvjk+bkeQe 2vXea96AvOa6b3qbag4dPJqRNT0uOWXq3Fnj00ft3bOte4iuvO566Kl55+W30EFNJw+VVzfO WbA4fcrkCWdNT4wbPXnePI82+MITv67y+lZce2Xfqbz1777N1H/8o7Wt7X3zlyyOS4ySIAkw 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 Wzr5oijCgDJ6P9r+0Zg55z3wi+90Vpc8+vCzOovAQG/BsVyfQImSDdDCwmfMn97XWNvVZYzP XnjBsuXuxDRU3abfFyBInZz99W8njop37afeyvp6y6KKstLSmvbq6vqMsy+6+uJZrz75SMZF 318yfvoNX4l1JUSWOAZ3lTR4/YHA0MDs5Rf+5iffc4eHFYT3Hy3uuu2HN6YnRhzwD/iZJsxZ PHveRJ919g1fuaS3o/arTlds3KiSMG3b8erm5satG7fNWfGNX9x4RVvDqbwTNWPTsq5cMq27 zHH9dZcNNeYzW5pTK93/UfuQ9qv7706Lgt/VVXYQWwF/+cmT9c1tKABYOBwyLGXM0qXnZqS+ ePkNNy6Yl9lW77ruK9HhsdEnuWVz9anmpvrdew6ee9l1N99wSVNN6fHK1o664vXrdl7/q2e+ et7UA1vee2ndseZrLq+rzy2tHwShZ6RPnzSqa+PWg9fddv8VF8woOrSv2IwEO/2qBrZv35U2 99L7fnZdd135Y488lXuybr7DGDIUs2RQpnfQ0EVdwdGaFu/tv3toerrrmV+3HPb6lGmcKCvr 6Ws/sbl81rJvz50Y9/arr5+/4qIpibxx656USybWN3ivuyj1/efv63VkXHn1VS0F+/+6dk95 501u8qdMmPWTO++aHC82/PWPWtS0peevEKRlZiQJw9s/6PcP9h45cuysBRfeduM1/R3ND937 2/wTZTToTZ+9+I477qyrOPHES+vaunodA625OTm6w8NAlqVSJmZlZYz2+1VCYowEBSyTRqc7 zPzBAIEHhIChwUGpY3xCNDMzuFMT4vK9A4bFTgF2uVJ65gQU1kEgBhYAxFx3qqqwsMAA0N1h Zy+aPyo6BoMTUz539/cQZ5Yz2fna/geZQMbEp86eu1AYvUJzWgO9KjDY0tYaFhE+OOgf9AcT //YYiUIgIhIgSgLBEhpqSmqrOzNmJPW1dpXVt+gxU4bVkyDi/8fee4dJVWxr42tV7d1ppnt6 cs45MsOQhoxIEBUD5qznHDMGVMwRAwYURAkCioIoIGIWAyBpYALMMAxhcs459XTYu9b3x+5B PPrd7977u+d+3u/neubpZ8/u3VW1K661atX7olAZIrKzEZb/A/yWZ6PTLYExoVExvv7G6Jjg ZodNkvUSlz24WZZ0kpmQy5Ks13GXCw0Zo6f7+XjpYuPigz27+getoRMvuSRWIHcOdx0+Vpk5 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 299v3tA4GB+ZkHH00YvW3HXDaMMRNT9+NRqVN3P6VNNwVS5afOzCohtue/zNyRURydGjgX0b 39/4w9b3egZMp9eYM6d0zbq1++t3dtVuC2kkss8Ma2ZUWgMrREIWJg2DN3LWtOJ1z65u+HFL 2w+foGEYDtesJcsmzlwgBCmlGNBw+KN9ishg5BifE4YGN3+8uX3Xl/XdgxIhqBm1FgBOZ2Rh bubrLz9pjbY7gt3SExMIdNdV1cfGaYuNkBQx0a7q2j0vvTD89lubEhedAWzkl00NrnlyRzv8 ZeksITo9bl9d1c51z3e/8sbbefNOQVR5ZTPKU8SLn+w+87JVXqfInjirKO35e+67a/608q// 9f2ME07Pm5unmFkrkvj9J++uevT5o049oWO0x5uUaDgcrHgUrfTcXDd03bXq7tnFsa+s37Dw 1MvjojxaWwgaEVEggxURl3z9jTdpAEBhC5L7oiIVm4SSta1cogGBzZEXn3twR13ohr/+OWNi RfeLb913y22FaZEvvvRqSdnC/Al5bhlcfe9DDYvK97b0Gz5vR2tt2/52C4CB3W5DCNi57bvu rzZ99OX3v198tkZQwIS2pB+appowccasiqf+etnKWVOLv/70fV/ObI2Um5L6zPMvuwZaP3v7 1SEjiYWMjIior9r18rr+1977Ku34hVmTyhM3vH7rn28oL03dtHGLP31+TELB5KllTz/6yPD+ jj3ff+FNKbvs4jNXnPOnU89GDIspM3kigfskSRSuqOjoztqO99567b3XXx8VKYKweOHhiQ/e /80u8YdL8t0o0pNidrXWv//6K5++tSGYvtCdkjKjOO7JO2/rW76gubrB73W3N+/ZVVWNAn/Y /vF11/+1MCfhjdc3Hf/Hi+ZPT3/1n69ddPElk7Lj3vv4y+PPvKRg2sTKlDW3XX/59KL8jR9t mXf6uZGC4l0RGzZ/XD61ZMmMiU5XzOzpZS++8eWRv784yiXYkVA5Y/rbb71sBLt3f/0vTiq7 YsUyrREUaKTBjqbbrvlrbPHEFO9IYkJKUnRkWxtrC4rKZ2fFPH3tlRdOKyv88KNPFh6/wu0K MQaQ7BFYKMWCnCf87rTDjzqJUUoEAGU4otweB2gERA1kgTZRo+SqL98//7q1N61eHWWp1597 4oe9e0qzE998/d0pS06IiTTefPqBJz/avebxx487ZeWCw0+y2DHWV33jDbccseKMsizfndde 0OrKvvWvV1iAo6ZGEmVzF00rfGP9y2+U5v3OLQMb33vaEdwZMEeiUwrOOG6ZQL1p0ztCdGsT IlOyjz9ilhztfvfFp3v2bB/VY0mphcvmlnz93a5Fy8/4/WlHGoK/SY+/Y80rdc09Iw0/XPPP TV+fukyO9by+peqYS36PWg9073vhnw9880VaUAezi+fML0+N9Oh777t/z+EzmxvbhdOzv76p rUeecPzymx+8cazv69Yft9XUdAbH9PQFi/755qq1a5/0O/TWrfuue+huB6qqb7+56457ppQl v/TsP5ecde2cuVO2bPzo/nvuWTatdMvnW2f+5sRcUraAAgJLDoVMVTh9QVbEU3+7+uLJeVmv bPg4Z96R7sjoqTNK31v/gu6u3rF1q7ts1i1nHYlABISITKBARSanVc4qW3P7TV3Vh/341ecq OusvF58+Bg6tcOLsWS9ufPyJZ9YmuUObvth7yXXXtG5985Pd7cuWzgqgEZscl1s09Yaby4Ic FMJAxYpkTHT0siMPf/nKe6+9hsVY9yffVeUeZ3h86UXFeevXv9rf0/bF5g8zKpZfW1FQOmnq 6MNPfN0bcfOSyZqt6NjMod51d9/9xGUXnVE5u+KFZx7pb9ize/Ob3vyi+YdN8nV8t/axu83O PVWffzDkSZ5UmtbwAZ3fYgAAIABJREFU+ajlx4HOfVddfE3e9AUeqy1hQpw3ypeRk/na2g0S e5L9hnLFhgYCu3c3Llp42MMbbv7TZddnResNb35aeWw5eWOP+O3itW8+5ws11e/+gRNz77r8 j6HA4PNPPR7obd775abYlOy5cybH9M58/M13o2Coo6mq3ZQXnX1KCMAcl8xVluXyTVi+uPDB Vdd21y/94cstDa0DobFgUcVCt7Fx7ROPZ6bEf7Rxy4U33O4WxGwBgmatNDCLKXPnrf/Lvdfe YqW6gps277jwxj9rRmD93+MWARzSMfpP2AEdI78/IuxcI3XX79y4p2vSxPy+7t7ZR55w3h9O 9grtdIicoqLICG9UdExOdnpLU0P/KJ++8vxjls5s2r1t+w+10+csmD13XiRZe/bujUxMP+bY YzNSkifkFCTGOKur6/0JOZdeekl+RrwvMpK1aZJr5qx50yqKO5v21jfuT82ruHDlSj8EvVHx XU117pT0OJ/R0zt4yplnL50/OzMnMzDUUV9dX1wxc8bM6aXFBVMrZ0S6Q9W1jclZ5StWnJme 4BuzODuvcNrUKTEe1+AIL/zNPGH2tzT3lE2ZXjl5WsWkopgIt98dbfj9s6ZObtlbNfGwI7NS EmOj/SX5E1TIKq2oSExM0Eq7o+Onled43NLr9ft88dNnlNbs2DXviOPyMxJ8Xr/XFxkRERHh i/B4HGMj/W88/4q3rOKYhXPQHK6tbc2fOHn6vAVTy4sinY7YxKSiwgLDcGTnZksO1FbX9w+G Tl1xzuxpk8gyeKzjk+17fnvK6YV5qS0NDUMBWnTEERNLS4rzsz0ejzcielJl5WEzp3g8nrjE uNbGmtFRc/HS30wqLyrIyXQ6XdGx8SmZRb9ZtsjrFB6/r7yipL25rbWtY/L0Gct/s8jrkmMg yidVJMZExcbHoaCdP/6AEcmnnH5SaU6qBVhcVlyYPSE/N727rb6huWfBb044/ZSjPC6X8BgV pYV+tyOoODo2ISszOyoq2ueL8Pn9Pl+E3+93GAKRkJFBjZmQk55dWJChtR4YHHN6IwtLi5NT 0tJTEmtqqupbOoqnz7n0knOyUxOzs7P6u5qr6xrQHXXO+SvTEyO9vrjUCUmxUXFTZsyIjvDU 7N3niEg6bPnhk8oL0hITHG5faXmZ30EBi6LjY/Oy0+OjYyK8/pj4pKyEqAHlWHzYgry83GCg p6Wnf9qc2bOnTq6oqMjITGuuaxgO6TnLjppakVuSlx0ZEeFyiqSUrNLcyI5BueTwxTNmTAkO D+3bsys5M/uoY49LT0n0+Xw+v8/r9Xq9Pr/PLQ1jpKfx/Q8+zSmdc/iiKSP9TfUN3ZOnz5pZ OaW0OMcXGRMVFVNYVj5n5jSPy5FXUty7v6W3u29i5bzKqaUlJWUTp0wb6u+qrm1wRmVecuEF mQk+w+nLTJ+QnZPn9ThrauoOO+KY445elpaSMrm8ZH9jTU/v8JIjjz16+ZKoiOiKKZM7O1vb uweWLvvtaSce7XEZ8fHxw6MBf1R0YU4OIfhjYlMyMg8/bE5cdIQgIyc3D6zAnn11cRl5Z55+ cmp8JAiZW1IUFxPpcroifN6afXs7htQpK/64ZF6ZUlZsfFxRSenUKWUdra0dXb0Llh7xu+OO iHZTSFNWQUFGWpJlmW5/dMXEyT6P3++PjPRFeP1+nzfC7XYQkC1LFGBISE7Nz8t1ShwbDXb3 qdmVUwsKcjOzk6t3f9fc1jVt9tIzTjkuMcbZMzRM5JtVOS0qIiIqKiYm2uePiDVc/unTpiTH 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 b9Wp8kKx0uelQTC65IpX0Tk3Pj5eVv/oyQsAQD8qi2Lp9PR0nueXdKoUgtElVyTcoaGhNE3H x8df690BAGD1KSsLjUbjkhYXCEavkkajMTAwEEKozpsMAAD6Ue2L8rquGJUJjk4zCyoXkSh/ FM4VAAAXpLykFpfXS5GQLjwYlZd85xzX+8X0DC+kVgQAwAUoO+yWP5bZ6OLGj4vTlMYCUovh PAAA8Mr1XE/LEWplASmEcFFC0oUHo8V+Ny1rAADgVVDNRj3tVxdcmHhFFSMzc85577Msy/O8 aFYr5xigWAIAAC6pslZUq9W898WN1RH+K93gK1oSpChkOefq9XqSJNVCFqkIAABcImXzVDF/ crPZrNVqZcXolQwAvwij0kTEe1/WioR2NAAA8GrpiUFlB+0L84pGpcnc3k9UiQAAwKusWijq 6ZF9AVu7OJ2viUQAAOBVNn+81yuf3+iVVox6dg4AAOBVU6aRV9LhuuqiLQlC0QgAALxWLlYO eUUdlAAAANYSghEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAi ghEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIA AIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHB CAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAA RAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAE AAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAi ghEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIA AIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHB CAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAA RAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAE AAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAi ghEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIA AIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHB CAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAA RAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAE AAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAi ghEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIA AIgIRgWPLu8AACAASURBVAAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAANGcYGRm5Z8AAACXmwUqRqr66u8HAADAay4GI1Ut85CqmlkIgdIRAAC4rCTF f8ysiEFFKqJoBAAALgc9ZaCk547q3cQjAACwtvWkndk+RiGE4i+0oAEAgLWtTDtF96Hydld9 RNGIVkYnEhIAAFh7qgln0WAk3WpS+Wia0gAAwNpTTTg9ZaAF5jEiDwEAgLWtSDvFmLPq7b0V o3J4GgAAwNrW04lI5vcxei32CgAA4DWzTDCiKQ0AAFwO5reV9S4JMr+xDQAAYE2aP6n1bDBy zgkNagAA4HKy6MzX2vWq7xIAAMBrY9GKUVkromIEAAAuB/OrQq7nPlaQBQAAl63eYCSMSgMA AJeNpUal0ZQGAAAuKz31oKTnPspFAADg8rHUkiCF6hqzAAAAaxidrwEAAKIVDNensxEAAFjb Fm1Km18xonQEAADWpLIYtGjFqEQeAgAAl4+F+xjNvw8AAOCy0huMWEQWAACsbdWo05N85iwi KyLOLdC4BgAAsGYUmafMQ0s1pVXvpnQEAADWsPlTW88Zrt/zF/obAQCANWmxyYnmDNfv+QsA AMCatFjs6V1EluYzAACw5lUntV60j1H1DupGAABgreqrYgQAAHBZWbSPEQAAwOWGihEAAMDC CEYAAAARwQgAACAiGAEAAEQEIwAAgIhgBAAAEBGMAAAAIoIRAABARDACAACXL2a+BgAAiJj5 GgAAXO56CkUlghEAALh80ZQGAAAgImJmqlptTSMYAQCAy0tRJSr+zLKs3W6XdaPktdwvAACA V52qFknIOZemqXOzdSIqRgAA4HJUxKNGozEwMFC2phGMAADA5agoGtHHCAAAoHcGowLBCAAA ICIYAQCAyxczXwMAgMvdgu1oQjACAAAoEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIY AQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACA iGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwA AAAighEAAEBEMAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBE MAIAAIgIRgAAABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAA ABHBCAAAICIYAQAARAQjAACAiGAEAAAQEYwAAAAighEAAEBEMAIAAIgIRgAAANECwcjMXv39 AAAAeM3NCUZFJFJVIR4BAIDLQE/gSao/lJHIzFSVbAQAANaqMvBUb0wWfKhzsZLU82gAAIA1 oIhEzrmFK0aqmmXZ+Ph4o9EowhCRCAAArGFmliTJ2bNnm81meeNsxSjP86mpqTRNpZKKiEcA AGCNKatEzrnJyUnpFpCkDEZm1mw2r7vuupGREenmIVIRAABYk4ps5L0/fPiwVDJPUn3E1NRU cd/8vkgAAABriZnVarWpqamhoaHyxjmdr733zrmiIxLBCAAArGFm5pzz3ldvZOZrAACAiGAE AAAQEYwAAAAighEAAEBEMAIAAIgIRgAAANHCa6X1yUxUiymSVEVMJP4xa3bUfzGTErMAALhE ll73ejXO0LbgEZWrfS9xLOW9a2Mt8AWPtJ9Xc/7hr643QI+l13fv69CK67Saitqcm0RW8YmJ +z/3kERFL+ygXlEwUjURVVUR657Vnr0wszmfR6vugwnAarH0Z8vSF5XXp8WOqDyWxR5Q3ruW Pm+rx9vnNWX+XavxbVBa+kXv6/JaXKdNTSzWM1RnCxqr8qyIiEg8lhjwirNgYheWjC48GFnM QiYmxQq1JhYsVw1FYLLgRLxzYhacc3meiwizRwK4ROZf7aqfNqurYlS9fq8oEJQnYS1VjArV QNNn8itPYPUpq+ht0KMn1VWPS/q7vJqZiImaSiMzU83UsjJPiC5U33jdmq0PmYqYig/OiYZu 3lMp8t+Kj+fCg5GqhmDOaQhB1USDqXnnQi6izkTFiXMhz4OIWD7n9QOAS6S8XvZcJKrXyFXB zBa89i8YmOY/t3jYKjreJcwPeT2Jp5+nl09c1VeinkOuZqNlD8pilLD41gqp0+AkkbLtqVt3 WRXhyMy0TEcqapI7CZKrBC9q4i74NV5ZMDIzKYKZFC9GjJ/mpZ11zp2bOjs20Z7Og2m94YfX NTdtHB4aGHQSK3U933VWb2wH8LpVXh5CCFKJEavxM6fnaleEpPK4qg/rudivpVQ0/7j6eSkX jMWyqpLxfPPLgdWC6LJPLyooIiqmKu3EmYmYyyqll6IhanX8GymarcqakIn4YImoSM1MxHVb tUxW+k//wipG3S8rIkUr2ksHTz357IsT463h4eGh4QEVS8+m5384YebfsHvbjdfvGWg2i3/M AHBJFQ0K7XY7y7IQwvxyy2u1YyuyYGFDVZMkaTQayz49hJDn+fwItRqVZbMQgqtY0YCe4i0R Qlh14biq5/1gZt77Wq2WJIn0/0KbepHMu5NTcvystDIn8aJePmJ1nJ+iC1G1sSw3bfqwZSjd sVHr4ssS2UqtuGKkomZmknt1IQ/OJ9/4zhNPPPvSzTdc+54H3rJu3bqk5kTEgnQ6M8+/ePQb jzz5/MHD737gzk3D601zdRLCbHJfvW9QAK9PZtZqtWq12pYtW4q1IVf7yI/ycthqtcbGxsys 2Wwu+Jjy+2eaprVabXBwcC31v87zPMuydrudJEkZlZboaFWtmbVaLe/9pk2barVaccsqPS3V hhcRabVaExMTeZ73E5e7LWlSMz3YCp9/VluTzczXYh2pGNO1Ks9K0dlZM81MkmGdvm1Pfu+u PM+9c14kWHccWJ9bW1kwUo3D31RdnmutMfjVrz/y1PMH/sqPve/avVeeOnX2C1/51gsvH52a 7mzdOPLmW6+77U3XX3PNVX/2qQc///lv/PiPvXOwmRSVLedckf1XfvgAsLDimpGmaaPR2Lp1 a7lo9uqNRIWyejQwMDA0NHT06NE8z3vWA5fuOuFmluf5wMBAs9n03pcdlV6TPX+Fqj2lVNU5 V6/XnXPT09PFj0u0qVXTcLvd9t5feeWV5UVnlZ6QquLQihf6xIkT9Xq9nyFpZqLOpoL76lOd Q5PrRwbqat1ahc4+bNVRUxNpWC0POmUDX3+2tWcg27XBpxa8qKzw68EKg1ExLl8kZKa+/u1H n3z2uQN/9cffv2fntsefeOaPP/H5Fw4cTpKGiXsit0ceefxdD9zxvh+554Pvv/9Tn/nKn3/u yz/5wXcknj5GAC6JooqQZdno6Gh5CSyKChe1Z0nc2Kv28VXWP0IItVptYGAgTdMi9MxvKCxa i2q1mqoWY4Ffi77GKhfYiDFHT2/rIvbV6/VOp1O9ZYnnFiek0+ls3rxZRPI8L+LUYqWmPvfn 9XDlKnYmz/Nms9loNIqsvPQLXbQsOZUzrezQ1LD6wU7W1ji6vHtEKzyyhV7pchNL7MzFeYfM Ko4gBCcaJDmfrzt4bmLP5qyTq1r5Jrk0FaNuG5h474+eGnv0sWfe9yNv33vFplNjY5/90rd/ eODUNVdddfetNzivP3jqwJNPv/QXX3t0566td99+w7vede8ff/RTj3zniXvuutksV3GzIQsA Lp48z+d30e2/J4rI7IQoYkFMxZmKiXgRydPW5FQrD85Mao3G0NCAVw3FVDCxISKYiIqzeB1S FbO8c+rEqaGNW4eadTERN2fiuf73rXhkUXGf/6xqh+siF1Yfs8RvsdleqqLF9SUPQcW7blEq z3J1zjktZvWd3Rmd7XJajGhSEfNSDNOp7JXMTi1Tdu1dwRW4Wjcq/75EKpo/iq3shVO+H5Y+ IbGfspmomGguplnn3NnxqXY6NDS6ccOAmAsmToKINw1FY4oW3YHVJDgpZq4xH9TEKvP8qamF YsS8iWqeHj8xNjS6YXSoISt/M5R/djqder2+zGkUNTEnIrlOdKxWb+flyC7tNrPZMjvQ/dXB TNXE17pPVbFMNMlH6slEK+uIc+a6r3dmoiNNZyGbSJ2pE8tVnQYx1brLVbRtxdl21VkR+2// Ko4j0+DMJyadrH0+TUQ6qkl3qNgKrLjztcZX1Z546rldu3bv37ezk6fHzpw6ePBYM/E/+s67 33zLtUHC7l3bDh4+PD4xc/jQ6fYN+abRdW+/55bPffGR627Yt2FkQHIVCauyYAdgNSiTwQVU pkMwUQsS1DKvSWamFtScSDj+4lN/+CcfHxvPVbQ2MPju973v7jtuTZxzztS5YKqW5aoipiZO NQ/m1NrnT3z6v3701vf8tZvfsD119VroqOujR8i8I1q2zjF/KFb/x27dgdpObOzsmZNnx/fs 2dOo10Xk7IlDnfrI5s1bvKVmWpzbYkhycWmOMVRsZma6M62joyNmaTediIiahW4k0m69rd8D X+JFLOLREueh2oe9GqT6OS1mZmISxFSyzsRXvvC5z/3lI7l1LBn44Pt+8oG33hYSqYVMncsl eCsSkpiJU8k1uCBW9MjVTJ3PgxSvXy7mNfVSsxBSlTB9/uN/9slb3vLOt92+d0WvV9kbfUWd 0KV4a0qedoYtCal1k6LI7CSJSzx3tjySa16rJXL3bttUSzqmzoUXjoazom/fXfvME3a+I5Lk 9VDrhNT5Tm71O3Y7Oe8efiFkAyZWV+l4yS1vXLFVdzTcd46nnVA3VbXciZlqEdb6nKGx3LE0 WOZCJ01CPi3iNEhQcSbmVvApsOJePiYmqucnp48eP3XjDVd71SwPI+uG33n/ne99193XX70n 5LlqMlCrO+9z9UFVVTvt9v5r9jYH6keOnFD1pnncGABcMitvQorfv0PIE3WdTvbcCwfOT3bE EhUTC+OnT7700st33vu2D3zwfU2d+U9/+Ikjx8cTNQ16Zmx8qtUyrZmpcyYhTJ49n7Yyc0mW dU6ffGlypuW8S/POVCezoj9ot8DTz35WuxL3eRWsFkiW3XwxsKYoAE1Pzxw+fOz4sRN5EDNt tSanWi3nim49rtNpm4mqM+vkIS8GKOd5EJNzp8cOHz4cxGZbZtSmWxN5loq6MLcasexRl/Wh xR68bCvhYge+7K82sXjKc3Fizzz8hd/9yH/ZcfWNP/Mzf/36Xc1/9Vv/4qFHn2l4HywfO3ei M5OKSyQP7U7Wcdnk5Llzk2lwmotzLneSnTt7ZrqdauJULXHe2nJ+Yio1q7skD+0jp06OT7dl hVMRzh+3uOzTy4cGk04m7VQ7mXZS6aTSyaSTWffPxf+XSppJu6OdjmunZmo37hoI09nBE1NH zsyca8uR0+7BZzsn0lro6FSr3poJedqZmWlMB/fY8+njx+pTWp+ZSTvtdDKtncsak5K7wXx4 SCbSWpgO2ZTNpPWZ1LU71k6lky65M3N2zDqpdFJNs+Jw1ELePS9lHbhfK6wYqVgQ53RsfLJR H9i6eTjrpKZuy8ZN73/3dnVJPjNpIZw+M/n5L39n/HxrXc1dtXOL8xZC2mwO7N698+SJM+G6 fU6DhcQ5ikYALr5qIFhhNjITCxqcc4defP73fu/fH59IfvM3fml0oK5FXwXJN27e/sADb90y OjzctN//zw9OT6cHX/z+b//Ov3vu8Mn1o8N/5+d/8V1vvXPs8IF/+5GPPPzYk8MDw3/7F//H +27anYTgQ/rEdx7+x7/7f/7c3/uFn7jvdpN+v+iXJZMlHjzbYjUvCfV3uVWRoKImQVXFpFlv njw1NjQ8unnzBp/4LMtE9Oy5sy+9dDDtdAaHRve+4aqZ9MyJY1PXXHNNlrVfeunAuuHBMydO TLbsiaef2r//qmYS24ZOHT92bvz8jquu3rBxo1j3ctUtMi1bEij3f8HSUZ8nsOctsUzhTcSJ BjULwUnipPXnn/zkG29+5y/8/Z9t1PQtd9wQ0v/tzNT4849/819/+D8eOXKq1tSf/Uf/5N23 7vzD//gfHv7h0ckTx/NO/Sf/+7/x4x/8kWz8+f/9dz78jWcOb1y/4af+1t/7b95xz9Gnv/nb //LfPH1wbMf+O37tV//hvu1epSMhW/Yo5h/UinvrxmKd5MHSIHnqnJi6IEG1vyJJd+YgZ+Yl D0mat7P8oRfyRyYag5Kp2Y7NYf+m5Ehr+o273ZZ6Z8uVzREZ+tp33PfP2PZtWmtPP3uu+aZ9 w+/dmw6b+8rTrYeOuSRtbh6a+Ws3h53rG488N/O1gzITms7FZiXVvv79mnXbPc28WppZsNBt Ui3as1ewOsgKg1G3fbndnlGfDA01sk5qzqtaJ0/N1Fk4eHTsY5/66g9feHmg7t97/+037L8q 5HkRvAcHGyePj4uF7vppq2UeKQCXBxORcPLYwc9/5jMPfvnhPXuv+0c/91M7d2wOEiyYOvVe Tx0+8p/+6OMbk+lvff2hK669b+u2oee+c2Db7mt++kN/99tf/sIX/vKbb33LjX/0B79/8GTr 137zN5797tf/n4999rZ9P+dUn37s21996Jt3v/3973zzjWJBnb5+ulmqWmymMy9iWcjWb960 fjA5efzo0GAzTYPUkrTdOnr48PDI+q1bNh4+dOjw0aN79mxTGz948EAesqRW37Z1m6Wp1Tp7 9uypuXhxCcGuuHJ30jh5/PChc2Ont2+7YmhoUMTEqbxex98UvZGdaRAxJ9nU2bHJ8Zve/ZaG plnHXGj+/C/+eubsm1/69BtvfdPf/vm3P/yF//uzH//cXfv/u6MHXz57fuTXfuXXn/zW57/+ 1S/ec/ftn/qD33t2TH7zN37z+e8/8pUvPvjWO677/Q//3uD26//Jh+77/Mf/rw//7h/9m3/x t5ypm13g61IeV3HdNVVJ0o44123U7H8oe7fRVEyC+Xomdc32XyE6HBqu+cLJzNfspp3+4YPJ zq22oz74he+lu7cl99yYPv/1fMtIfahVG/Tj77l66IkX7XyW7986/Njx1mTojK5vfO+ZzncP 6QduGz40PvW941bzYjrbp62P/eq+bKbeuZlOCFmikhelzUpDcV8WCEZLfMFSlW5LcVAJechd EdNExNRCZuof/cEzz7zw8vbNG97zjjffefP+Wi2xYGYS8mAWnHpRUyvS6evxnwSANWClHS9m n5dNfeZP/8sff+x7f/MX/sEHP3DfyOBgMBPzIZgW3U3Ve6fDtYHte646evroSydO7965+8pN J59/5ol0YkybG/P87EtHjt77wb//wD333nPL9fcdnq4l6cmThz/25cdvfOdf+fmf/sBI4jV2 gYq/9ZXng/Jzu2x4uqB2mVylJqLiJOSyfdumiYmXT544YaaiPu+0Q5aa+tZ0q9nw7TR419i9 e8fjT/4wqTeuv/a65kCz0Wy4dj6ybtiF1LpbTur1HTt3jQyve/HFAy9Np9dftz+pewmhKD70 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 wMDA3r175YL6GMVQVHx5CiLegnPuwPGxL33z0aMvHxsZGV23bp1zLkvTk6dODjSbd735ljfd eI334i0LQVzR7KyiK5k4AQCWVY1BsS2sGwuKT7k+v1XHLUgxXnvuR/e8z/I4e0rlfpHuerLz rp7zNrdMR+Bin8sP6qJjTbXFpKeKU709z/OiIWzxL7qvd9WOU1rRc7xLHFpxBsr2vrLHSE+t q489EenOoCxzXuWuYhnROamgfLljWihffRWx7v/L7C3az0w28/e55/Vd4oiKTBTMRLzPxDXa 6jr1zM3u5+p7j8xliTmXmkvzprqOdKc3iv+30OEt2MdoTjBKkmRoaEgqi+0tdYrjS+xEcp9I HmqnzkweOXp0fPy8iTSbze1bN+zYvqHZbITMguXOabGs7zL5DQAuSHmlXGkf29e5MgQUcafa 7WGxipF0uyqv3lRU1VPdmd+LaNknVq9oC/ZMWl3KQ6j+WTQvLhuMREScBgu5qTPnyiZUpzG8 rcK3SxFJMw0uiAuWJ5JYOXXlMiW0+RWjOY2a/b/bivuLNmUTzbNcrbNtc3P71n1iVkzqGnKz PIQ0iKgTV8yx1PPtCgAurrK68FrvyEVTvfj1c2jVICVrIh1WG7+qRbIL2IjMi1mrUU+5q1oM W0JZobI89xoScyYainpF2VGnOLuXcN8vHfNiqupUneUm/oKHd/V2vu7/raYahxaqFcM0NOQi eXE+Q3eTruhoXfTIi0+kXATgEigCQf/tZatLNeUsEQuqPaN7bnx19vPSKV/Z/l/lamnNKt3G 10AVrSf19nk43Wd5ER+0Mq/j6j4ZUezX7lXEr3xOqFkLz3zdz/ZsdlBGtzO2zm1Ut+K2GD7p WgTgkqp2PempmqxqPVf06o0LPrjnL0s8eLWo1syqtywbcea/JdZMFW3BjmX9vNCzfbOKH4vu N6tc0fnaiqmz4st94e/6BZrS+g6esmBarXxJmXdL7w8AcNFc2Hfo17/qcfXTjvZq7NOra4mD Wvp41+pbQhZ5P/RzgL1PWROtOBrngZpzLP2/2j311LVZcwYAAOhHT8tsbzBaA+3QAAAAfeqp ovVOtbk2+ugBAABcgNlO/qW11AoLAACwhEX7GJXDOwlGAABgbatOCVvNRrEpbcF51uePBuxR nXSrvKVac+q5S+jDBADAZW+l/Xb6f3yfj+yZ6Kva/3q2j1G53OCCT+6ZEaRncghZZKaNnrtk JeUoGvUAAFhjVjqb1IJzci6REOankQVjSTU8zczMFOuhFWYrRiGEiYmJ9evXF08o0tOCUalQ rkY0v8JUvb1cw698TD8nYkWPBAAAq0KfF/dqoiiCxILLJ89/sFSiS3l7mZDKTFJuIcuysbGx rVu3lhufDUa1Wu3UqVMjIyObNm3K87wax6oJa37Kmd92tnSJaImTUs10a2PWdgAAUOhJKrLc GsAL9tWp3l7tJ1TeVbaLzV8Yp/rE4mGHDh2amZlpNpvlI5NyR+v1epIkTz311JVXXrl169ZG o+Gcq9Z7nHNl2io2V0af8jELRplqsrO5a9zMb2srf1c/pxgAAKwuPZUeWTweVR9QdJFesNrS 01jWU38px5YVWygbxFqt1ssvv3zmzJkNGzbMiVBlgDp16tTp06dbrVar1UqSxHtvZmX9qkwt RYWqfFZ5y/yjLf9S3cWehrb5wUgWKkQBAIA1YLEwtOAVv6fxarGnaHcB6bKqNP/v5dOLYKSq aZqq6vDwcJIku3btGhkZib+l2kBW/qVoSuvJXIs1gV1YZ6CeBriVdlAHAABrxrLB6II3suC9 RU7y3ld/jH+f33MIAADg8tHblPYa7goAAMDrx/8PegEQb1es6BwAAAAASUVORK5CYII=</binary> <binary id="img_48" content-type="image/png">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</binary> <binary id="img_55" content-type="image/png">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</binary> <binary id="img_8" content-type="image/png">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 9eP/A8b3bcSlQYuCAAAAAElFTkSuQmCC</binary> <binary id="img_23" content-type="image/png">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 Z5zxoudtqQ1Vrzhn6Ze+fqcz/sINZ/zq215uWnTtK3/szof23vbAI8y1Tedv7K9GzGCQI1q3 7qz/+5s/+/6PfmnvweaKNStHR7KDk8XSWsLV+LoPvO0Df/GxG2598Ms33Z4muOjiDVddcfat 2H/rf3zjy9uKweHlL33pxc++/OwbDuxcuXLZ8NAgkeZZa3y6Me3S6z76n3//L9evWLn2j37r tfV6bc3ywdElgwwQ88plI3nUHKjEI6PDG85c/pUbb1ali8496z2/cA1D1bAS6Xx095MEHNvX v+bH/v2rNz2yo6G+f9nI0Ote82NPOn/pt3Y8SBJHsS5ZOrRjX7F6zeBP/fjTn/vkc1TpLz/w jj/6i3/5+u0PfeVb34lttOWy8y7bsnb5yvrf/NFbP/Q3n31g54SBnrV6VX81PmvJMKWtgZq9 fPNFz9u07s5Hx/7tP7/+pMs26bfv4GqFOVkyOnRWkS0dqsY2uuric7962wPThaxfveRNP/O8 Zf0x5s0TOHWh6Buor1k+GJN11A9S49XoqDHxta9+sYuif/3cLWNjE0uWLLv6orPe9qaX1eLK q3/6FS4y/3b9tw9OFpGNt1y64Zlbnnz1BbfctWP845+58corNt90y52mEqOS/MjTLrvm9odu vO1eZbnikk3L+5LlS/rPWja1dDCK+/v/+k/f+f4Pf/a27z3QamUbN6y75gVPf9WPX2mmDq5c ugo82Z9GhrlvoO/MlcMjywbE6mWbz/v4V+66/f6Hz1gy8ILnPP0p553BFJJgSxwGdLh4IM0a vm+66abp6emnPe1pSZIA8MBYy3kYQYdH2pElK7JWrH64VlWVkIrdrerA9z47/dBHVp0xODXZ 3HZvbLnYvcNN7KkM9g0Y0J6xAy1XGGOIyDmv6g8c3NdsNoaGR+v1OpT27d2x9cDU/pYzaq1x r3vDuRdtqigUakEtRqyVZcR1Nv1k+zHHAs2CqhKTiMxe6BISkxmzCrVReFE/5lsHDJrqbSio gIJYhTVXPyVoERQwqlpMNMfHJgaWjkRpNGtMUC0IDDKiAlKixCVnaXWzT1YRRararnhGs0Oc ebY1VdUwR1HV6dxVB4e9Mcd7sUmVFN47iHBPXJNAzBakjUYjjmNrbaPRtJGN4lgVhtBsZiqu Uq20ZxqMPC/yPDfGVCqVEFdn1mazKSJJksBYDTq63jUazciauFIDICIaLixiCUXhXJElaUUV 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