JavaRush/Java блог/Random/Стэк технологий для создания web-приложения

Стэк технологий для создания web-приложения

Статья из группы Random
участников
Добрый день! Задался вопросом какими знаниями нужно обладать для создания web-сервисов на java? Полез в гугл и зашел в глухой лес, подскажите какую то минимальную последовательность!=)
Комментарии (11)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
7 февраля 2019, 22:08
Если английский понимаешь есть курс Spring & Hibernate for beginners, там офигенно все обьяснено.
Munoon
Уровень 41
12 января 2019, 19:40
Недавно вышла статья на JavaRush, еще есть бесплатные курсы на Stepik (1 часть / 2 часть), там нужно знать хотя-бы что такое ООП (если идти по программе JavaRush)
Philip J. Backend Developer Expert
10 января 2019, 21:41
1. Обработчик веб-запросов: все java-web приложения работают на сервлетах. Им нужно уделить немного времени, чтобы понимать как всё на самом деле устроено. Однако, на голых сервлетах никто не пишет, это слишком неэффективно. Тут в дело вступает Spring. Спринг - это наше всё, на нём написано процентов 70 энтерпрайз-приложений. Он очень обьёмный, для начала главное разобраться со Spring Core и Spring MVC. Потом можно немного затронуть Security и AOP. Spring boot лучше сразу не трогать, он крутой для быстрой конфигурации, но никакого понимания, как все это работает, не даёт. Просто магия :) 2. Контейнер сервлетов, то есть сам веб-сервер(обычно Tomcat/Jetty). Про него много знать не обязательно, главное разобраться как заливать туда варники и работать с логами/дебажить. 3. Работа с БД. Тут нужно немного разобраться в самом языке запросов SQL, а затем поковырять JDBC и какой-то Хибернейт. Сразу сильно в дебри лезть не стоит, в хибернейте можно голову сломать, но понимать как это вообще устроено - обязательно. 4. Сборщик проекта. Самый популярный - Maven, самый перспективный - Gradle. Чего-то одного будет достаточно. 5. Ну, и если самому хочется что-то написать, а навыков в джаваскрипте нет, то придётся разобраться как минимум с чем-то из JSP/Thymeleaf/Mustache etc. Тут уже на вкус, значения не имеет, всё равно серьёзные приложения крутят фронт отдельно и с бэком общаются только через json/xml. PS Ну и очень важно разобраться в HTTP протоколе, в запросах и ответах (особенно в асинхронных), статусах, заголовках, и уметь мапить java-обьекты в тот же json/xml и обратно (тут в голову приходит разве что Jackson Mapper).
Viacheslav
Уровень 3
10 января 2019, 00:57
Возможно, поможет небольшой обзор "Веб-приложение на Java" как отправная точка путешествия в мир веб технологий.
Ярослав Java Developer Master
9 января 2019, 10:35
Servlet, Tomcat, Maven, JSP. Это если самые примитивные сервисы писать.
Елена Иванова
Уровень 35
8 января 2019, 19:16
На Stepik есть курс прямо курс про веб-сервис на java.
Viacheslav
Уровень 3
8 января 2019, 20:03
Есть и на udemy бесплатный про Spring Rest. Но если Гугл не помог человеку - тут надо начать с того, как вообще работают веб приложения на java. Имхо.
Стас Пасинков Software Developer в Zipy Master
11 января 2019, 22:39
проходил его когда-то (тот что на степике). рекомендовать не стал бы)) простые вещи очень разжевываются, сложные - наоборот как-то так подаются, будто слушатель курса уже должен быть в курсе как оно работает. может они сейчас переделали, конечно, но я слушал на скорости 2х, периодически останавливая чтобы въехать во что-то интересное
Андрей
Уровень 29
Expert
4 марта 2019, 07:27
На степике - обе части?
Стас Пасинков Software Developer в Zipy Master
5 марта 2019, 16:40
да, ссылки чуть выше указаны
Viacheslav
Уровень 3
8 января 2019, 16:02
Ответить себе на вопросы: что такое веб-сервисы? Какие они бывают? На базе чего они работают? Что такое сервлеты и сервлет контейнеры? "Java [тип веб сервиса] example". Плюс у Spring можно найти примеры простые. Можно прочитать умные книги вроде Spring REST или Restful java with jax-rs.