Поздравляем с Новым Годом!
   
Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XXIII Международной научно-практической конференции «Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ» (Россия, г. Новосибирск, 15 июня 2017 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Андросова Т.Е., Курочкин В.М., Болдырев А.С. [и др.] Разработка веб-приложений при помощи Spring MVC // Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ: сб. ст. по мат. XXIII междунар. студ. науч.-практ. конф. № 12(23). URL: https://sibac.info/archive/meghdis/12(23).pdf (дата обращения: 29.12.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Разработка веб-приложений при помощи Spring MVC

Андросова Татьяна Евгеньевна

студент, факультет информатики Самарский национальный исследовательский университет,

РФ,  г. Самара

Курочкин Владислав Михайлович

студент, факультет информатики Самарский национальный исследовательский университет,

РФ,  г. Самара

Болдырев Артем Сергеевич

студент, факультет информатики Самарский национальный исследовательский университет,

РФ,  г. Самара

Чернов Роман Вячеславович

студент, факультет информатики Самарский национальный исследовательский университет,

РФ,  г. Самара

Введение

В данной работе мы сделаем приложение, содержащее одну домашнюю страницу, которое будет принимать HTTP GET запрос по адресу

и отвечать на запрос показом HTML страницы. Телом HTML будет приветствие:

Мы сможем менять слово “World” при помощи опционального параметра name в строке запроса:

Параметр name заменит слово по умолчанию, что в итоге отразится в ответе:

Создание веб-контроллера

В подходе Spring к проектированию веб-сайтов HTTP запросы обрабатываются контроллером. Мы можем легко определить такие запросы при помощи аннотации @Controller. В следующем примере, контроллер GreetingController обрабатывает GET запросы на путь /greeting и возвращает необходимый HTML контент:

 

Рисунок 1. GreetingController Контроллер

 

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

Аннотация @RequestMapping означает, что все запросы на путь /greeting передаются на метод greeting().

@RequestParam связывает параметр запроса name с параметром метода name. Этот параметр не обязателен (required = false). Если он пустой, то значением по умолчанию будет являться слово World”. Значение параметра name добавляется в объект Model, делая это значение доступными в шаблоне.

Серверный рендеринг HTML выполняет фреймворк Thymeleaf, который выполняет парсинг шаблона greeting.html и определяет выражение th:text для отрисовки параметра ${name}, который был проставлен в контроллере.

 

Рисунок 2. Содержимое файла greeting.html

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

Общей особенностью при разработке веб-приложений является изменение кодовой базы, перезапуск приложения и обновление браузера для просмотра изменений. Весь этот процесс может занять существенное время. Чтобы ускорить этот цикл, Spring Boot содержит в себе полезный модуль, имеющий название spring-boot-devtools:

  • Поддерживает горячую перезагрузку
  • Отключает кеширование в движках шаблонов
  • Включает живую перезагрузку в браузерах

Создание исполняемого приложения

Несмотря на то, что есть возможность упаковать приложение в традиционные WAR файл для развертывания на внешнем сервере приложений, более простым вариантом является создание автономного приложения. Все упаковывается в один исполняемый JAR файл, который запускается стандартным main() методом языка Java. Используя этот способ, запускается встроенный в Spring Boot контейнер сервлетов.

 

Рисунок 3. Запуск автономного приложения

 

Аннотация @SpringBootApplication добавляет все нижеследующее:

  • @Configuration отмечает класс как источник определений компонентов для контекста приложения
  • @EnableAutoConfiguration говорит SpringBoot начать добавление компонентов основываясь на пути расположения классов
  • @ComponentScan говорит Spring начать просмотр других компонентов, конфигураций и сервисов в пакете hello

Метод main() использует метод SpringApplication.run() для запуска приложения.

Создание исполняемого JAR

Запустить приложение можно при помощи командой строки, используя Gradle или Maven. Или можно создать один исполняемый JAR файл, который содержит все необходимые для запуска зависимости, классы и ресурсы. Все это позволяет легко доставить заказчику приложение.

Добавление домашней страницы

Статические ресурсы, такие как HTML, JavaScript и CSS, могут быть легко обработаны Spring Boot приложением, после помещения их в правильное место в исходном коде. По умолчанию Spring Boot ищет статический контент в папке “/static(или “/public”). Ресурс index.html является особенным, потому что он используется как страница приветствия.

Создадим этот файл:

 

Рисунок 4. Содержимое файла index.html

 

Создание веб-приложения с использованием фреймворка Spring на этом закончено.

 

Список литературы:

  1. Spring.io [Электронный ресурс] / https://spring.io/guides/gs/serving-web-content/ (дата обращения 10.06.2017)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий