Создание веб приложений
на Spring Framework
* Исходные коды курса обновлены - апрель 2019 г.
Spring Framework - библиотека или набор инструментов для упрощения разработки любых Java программ. На данный момент - это один из самых продвинутых фреймворков в мире и популярность его растет каждый день.
Недаром почти на всех вакансиях с более-менее хорошей зарплатой - требуется знание этого фреймворка.
Если вы не знаете SPRING - вы очень многое теряете.
На данный момент среди запросов Java программистов (Google Trends и stackoverflow), Spring находится на первом месте
Эта технология позволит вам сильно разгрузить программный код и обеспечит легкое взаимодействие со всеми современными инструментами.
Фактически ваша жизнь программиста разделится на 2 части: до Spring и после.
Упрощение разработки любых приложений на Java, разгрузка кода
Программный код становится проще, связь между объектами слабее
Каждый объект занимается свои делом (POJO)
Использование принципов ООП на полную мощность
Дополнительная логика подключается извне
Готовые встроенные модули (работа с БД, безопасность, транзакции, авторизация, сервисы и пр.)
Spring Framework берет все существующие Java технологии, учитывает их недочеты и предоставляет вам более удобный вариант их использования.
Именно поэтому в последнее время все чаще и чаще разработчики переходят на сторону Spring - их коды становятся понятнее и удобнее.
Spring MVC - это дополнение к стандартным возможностям Spring для разработки веб приложений.
Для многих веб программистов это стало настоящим открытием, потому никогда еще раньше веб разработка не была такой понятной и быстрой.
Конечно, поначалу придется расширить свой кругозор: узнать многие понятия, которые раньше не использовали, разобрать архитектуру Spring MVC - но это того стоит.
Один раз попробовав, вы скорее всего уже всегда будете использовать Spring для разработки веб проектов, настолько он удобен.
Если вы разрабатывали ранее какие-либо приложения на JSP, JSF или других технологиях - вам не нужно будет заново переучиваться, потому что Spring MVC легко интегрируется со многими фреймворками.
Тем самым вы сможете использовать весь свой багаж знаний и добавить к нему еще и Spring.
В последние годы Spring MVC стабильно занимает первое место среди всех веб фреймворков Java (данные взяты из ежегодного отчета Developer Productivity Report с сайта http://zeroturnaround.com)
Без знаний Spring MVC вы не сможете создавать веб приложения на Spring, поэтому его изучение - обязательно.
Независимо от того, какой frontend вы будете использовать (JSP, JSF, Angular, ReactJS и др.) - все равно backend у вас будет работать на Spring MVC.
Многие новички путают эти понятия и сразу пытаются начать изучение какого-либо JS-фреймворка.
Это неправильно, сначала вы должны хорошо научиться создавать backend на Spring MVC, а потому уже браться за изучение любого frontend инструмента.
В первую очередь вы настроите среду разработки и сервер приложений.
На них будете отрабатывать все исходные коды по урокам.
Список используемого ПО:
eclipse
Apache Tomcat
Плагины
Перед тем, как перейти к основным темам, вы узнаете общую концепцию или архитектуру контейнера Spring MVC. Вы поймете через какие этапы проходят запросы клиентов и где вы можете их обрабатывать.
На самом деле - это основа всего, что вы будете изучать. Не зная фундамент, все следующие темы будут не до конца понятны.
Вы узнаете, какие типы методов HTTP вы будете обрабатывать чаще всего, а какие не нужно.
В общем в первой части мы уделим большое внимание общей концепции Spring MVC.
После того, как вы поймете принципы работы веб приложение на Spring MVC, вы сразу начнете создавать первый проект.
Вы узнаете:
Одной из первых проблем новичков - это подключение дополнительных файлов.
Как только вы научились создавать обычное приложение на Spring MVC - сразу возникает задача использовать файлы CSS и JavaScript. С помощью них ваше приложение будет красивым и динамичным.
В этом блоке вы узнаете как настраивать проект для использования файлов ресурсов.
Наиболее частая операция при работе с любым веб приложением - это отправка данных от пользователя (ввод личных данных, авторизация, создание отчетов и пр.)
Поэтому важно, что вы это научились делать в первую очередь.
Первой задачей будет создание формы авторизации и отправка данных о пользователе с одной страницы на другую.
Вы научитесь работать с контроллерами, принимать запросы, обрабатывать и работать с различными HTTP методами.
Многие книги и ресурсы не уделают много времени объектам, которые не видны в первую очередь. Но вы узнаете о них.
Первый из таких объектов - WebApplicationContext.
На нем завязан большой функционал самого веб контейнера Spring, поэтому очень важно понимать хотя бы для чего он нужен и как работает.
Вы научитесь настраивать различные реализации данного интерфейса и просматривать статистику создания бинов.
Чтобы правильно обрабатывать запросы клиентов - очень важно понимать как настроить специальный объект Handler Mapping, который как раз отвечает за обработку.
У Spring MVC есть большое количество реализаций, каждый из которых применяется в разных случаях.
Вы узнаете как эти реализации подключаются в Spring контейнере.
Как профессиональный программист, вы должны разбираться не только в "дефолтных" настройках, но и уметь в нужной ситуации подключать нужную реализацию.
В этом блоке вы узнаете еще один удобный механизм для обработки клиентских запросов и ответов к ним.
Если вы разрабатывали "обычные" веб приложения на java, то скорее всего работали с такими объектами как "фильтр".
Вы узнаете чем отличается Interceptor от обычного фильтра и почему в Spring приложениях нужно использовать именно его.
На самом деле много внутренней реализации Spring построено на использовании объектов типа Interceptor.
Важно, чтобы вы научились их применять в своих приложениях.
Валидация - это та часть работы, которую не любят делать программисты, но любят задавать заказчики.
Естественно, что в вашем профессиональном приложении вы обязательно должны учесть такую проблему, как неправильный ввод данных.
Если пользователь сделал неверное действие - ему нужно об этом сообщить.
Вы научитесь использовать как родную валидацию Spring, так и Bean Validation - готовая спецификация в java, которая не привязана к фреймворкам.
Вы будете проверять ввод данных пользователя на форме авторизации и выводить ему сообщения об ошибках.
Если вы много работали с веб сервисами на java - эта часть будет для наиболее интересной. Вы разберете несколько примеров, когда ответом от контроллера Spring будет не веб страница, а Response в определенном формате.
В качестве формата данных будет использовать JSON - классический вариант при работе с REST сервисами.
Для удобства будет использоваться специальный плагин Firefox, который будет тестировать ваш функционал.
Вы научитесь обрабатывать данные в формате JSON и работать с ними в контроллерах Spring MVC.
Первый чекпоинт, где мы повторим все пройденное из прошлых уроков.
Важная часть этого блока - вы поймете как должно работать любое профессиональное приложение на Spring MVC.
Потому что мало понимать основные принципы - нужно еще их правильно применять.
У приложения есть различные слои, вы узнаете о них и как они связаны с контейнером Spring.
Как только вы научитесь обрабатывать запросы клиентов - самое время совершенствовать программный код.
Для многих начинающих программистом эта часть не всегда понятна, особенно если обучать по книгам.
Мы вместе разберем какие типы параметров вы можете принимать в запросах, как можете отправлять ответ и самое главное - откуда брать нужную информацию.
Бывают ситуации, когда код написан вроде-бы верно, но он не работает. Это часто случается от несоблюдения условий обработки запросов.
Вы научитесь не совершать таких ошибок, потому что у вас будет вся нужная информация.
Если вы создаете приложение например интернет магазина - то вы в любом случае используете сессию.
В ней хранятся данные пользователя между запросами.
В Spring MVC этот вопрос решается очень легко с помощью готовых механизмов.
Вы научитесь обрабатывать объекты не только в запросах, но и в сессиях.
Любое веб приложения должно уметь работать на разных языках.
Для этого используются специальные объекты типа Locale и файлы ресурсов.
Механизм в Spring похож на обычное веб приложения на JAVA, но с некоторыми дополнениями.
Вы научитесь создавать любое количество языков для вашего приложения и подключать их в своей проект.
Помимо переводов на веб страницах - вы также научитесь переводить сообщения об ошибках, которые выходят в ваших бинах.
Bean Validation имеет немного другую структура переводов - поэтому важно уметь разделять перевод на веб страницах и перевод при валидации бинов.
В этом блоке вы дадите пользователю возможность переключения локали сразу на веб странице.
Для этого опять же вам нужно будет произвести минимум действий, проставить определенные настройки.
Spring контейнер остальное все сделает за вас.
Вы подключите 2 ссылки для переключения на русский и английский языки.
Если вам нужен будет перевод не только на веб странице, но и в java коде - вы научитесь его получать с помощью готовых бинов.
Вы будете работать со специальным плагином eclipse, которые облегчает работу с локалями.
Вам не нужно будет вручную переводить текст с помощью различных java утилит - для этого есть уже готовые инструменты.
Один из наиболее часто используемых паттернов в веб программировании, который используют все финансовые порталы (яндекс, вебмани и пр
Этот паттерн позволяет избежать повторной отправки формы (особенно опасно при переводе денег).
Вы научитесь использовать его в приложении Spring MVC на форме авторизации.
Для этого во фреймворке уже созданы готовые объекты, просто нужно будет их правильно использовать.
Практическое применение знаний из прошлого блока - на основе отправки данных о пользователе вы научитесь применять паттерн веб программирования.
Частая задача в веб приложения - загрузка файла. Опять же - в Spring MVC уже есть готовые инструменты для этих целей.
Вы узнаете, как загружать данные, как их обрабатывать и выдавать результаты пользователю.
Также важно, вы примените паттерн Post-Redirect-Get при загрузке файлов, чтобы у пользователя не было возможности нечаянно отправить файл еще раз.
Spring контейнер предоставляет готовых механизм обработки исключений.
Только за одну эту возможность многие Java программисты используют Spring MVC при разработке веб приложений.
Еще никогда раньше не было такой быстрой и легкой работы с исключениями в веб приложениях.
Если вы разрабатывали например на JSF - вы поймете о чем речь, вы сможете сравнить подходы и сделать выводы, где удобней.
Помимо стандартных механизмов обработки данных, вы также поймете, как можно выполнять ajaх-запросы на клиентской части.
Это позволит сделать интерфейс более дружественными и динамичным.
По сути, сейчас ни одно веб приложения не обходится без использования AJAX , вы поймете как это все работает.
Для этого вам поможет библиотека jQuery - фреймворк для работы с JavaScript.
Эта библиотека позволяет делать практически все, что нужно на клиентской части: анимация, ajax-запросы и многое другое.
Представления Spring MVC могут быть не только веб страницами, но и готовыми отчетами в виде Excel или PDF.
Spring Framework уже имеет на своем борту все необходимые классы, которые упрощают создание таких представлений.
Для того, чтобы представить данные в разных форматах вы будете использовать концепцию MVC (разделение ролей), поэтому модель будет находиться отдельно, представление - отдельно.
Вы научитесь связывать эти части между собой.
Очень часто требуется использовать совместно контейнер Spring и JSF при создании веб приложения.
Вы узнаете какие другие фреймворки можно подключать к вашим проектам и разберете пример совместной работы Spring и JSF.
Особенно это будет важно тем, кто уже имеет опыт разработки веб приложения на java.
Список понятий и тем, которые вы пройдете в курсе
|
|
Скриншоты видеокурса
Длительность уроков: ок. 6.5 часов
Размер: около 1.7 Гб
Время на изучение: 2-3 недели
Неограниченная консультация и поддержка Вы в любое время будете получать поддержку по каждому видеокурсу.
Для этого будет создана специальная закрытая группа ВКонтакте, только для клиентов.
Теперь вы всегда сможете задать любой вопрос профессионалу и всем остальным участникам, чтобы двигаться дальше. |
|
Доступ к закрытой группе по видеокурсам Вы сможете общаться со всеми клиентами и участниками, решать совместно вопросы, "вариться" в общем котле.
Это очень сильная мотивация и поддержка в любое время. |
|
Живая поддержка Тимура Батыршинова Раз в месяц будут проводиться вебинары, чтобы можно было пообщаться вживую с Тимуром и получить ответы на все свои вопросы.
Также будут даваться дополнительные материалы. |
|
(посмотреть интерактивную ДЕМО версию курса)
МИНИМУМ |
СТАНДАРТ |
РАСШИРЕННЫЙ |
ВСЕ ВКЛЮЧЕНО |
|
Видеоуроки |
||||
Исходники (обновлены: апрель 2019 г.) |
||||
Файлы PDF |
||||
Закрытый форум |
||||
Проверка исходных кодов |
||||
2 индивидуальных консультации |
||||
1900 |
2400 |
2900 |
4900 |
|
Посмотрите урок из курса:
"Создание проекта Spring MVC"
Партнерская программа Служба поддержки