История изменений
Исправление Aber, (текущая версия) :
Я не говорю что java плоха, даже сам язык не плох, есть популярные нынче языки которые на мили позади. Но вот spring, не знаю... я бы посмотрел в сторону vert.x, ktor если kotlin и т.д. Хотя я понимаю, что на рынке будет легче себя продать если в резюме будет строчка про spring. Не представляю как эту штуку изучить, а я кодю с ним 10 лет.
При том, что во многом построение страницы нынче делается на клиенте при помощи JS,
Да, сейчас все данные отдают REST'ами на фронт, а там динамически формируется содержимое страницы. Очень редко когда используют template engine, и тогда выбирают либо Thymeleaf, либо FreeMarker, и никогда JSP.
а сервер лишь ассинхронно передает JSON-ы из базы через Hibernate (если я правильно уловил суть нынешнего мейнстрима в вебе).
SpringMVC работает синхронно, Webflux работает асинхронно но его никто не использует, можешь загуглить по объявлениям. В нем асинхронность реализована фреймворком projectreactor, на java асинхронный код тяжело читать и дебажить, не хватает встроенных в язык async/await/suspend.
Hibernet/JPA никаким боком с асинхронностью не работает, у них нет асинхронных api. Если писать асинхронно, то будешь сильно огранчиен абстракциями по работе с базой, например в случае Spring, ReactiveRepository работают только с Mongo, может еще с чем-то но точно не с Redis, для асинхронной работы с Redis нужно использовать низкоуровневую библиотеку. Асинхронность + Spring = проблемы.
на сервлетах или же забить
забить, изучай Hibernet/JPA, реляционные базы данных (postgres популярен) и можно еще добавить не реляционную Mongo (на собеседованиях о ней часто спрашивают).
Исходная версия Aber, :
Я не говорю что java плоха, даже сам язык не плох, есть популярные нынче языки которые на мили позади. Но вот spring, не знаю... я бы посмотрел в сторону vert.x, ktor если kotlin и т.д. Хотя я понимаю, что на рынке будет легче себя продать если в резюме будет строчка про spring. Не представляю как эту штуку изучить, а я кодю с ним 10 лет.
При том, что во многом построение страницы нынче делается на клиенте при помощи JS,
Да, сейчас все отдают REST'ами на фронт. Очень редко когда используют template engine, и тогда выбирают либо Thymeleaf, либо FreeMarker, и никогда JSP.
а сервер лишь ассинхронно передает JSON-ы из базы через Hibernate (если я правильно уловил суть нынешнего мейнстрима в вебе).
SpringMVC работает синхронно, Webflux работает асинхронно но его никто не использует, можешь загуглить по объявлениям. В нем асинхронность реализована фреймворком projectreactor, на java асинхронный код тяжело читать и дебажить, не хватает встроенных в язык async/await/suspend.
Hibernet/JPA никаким боком с асинхронностью не работает, у них нет асинхронных api. Если писать асинхронно, то будешь сильно огранчиен абстракциями по работе с базой, например в случае Spring, ReactiveRepository работают только с Mongo, может еще с чем-то но точно не с Redis, для асинхронной работы с Redis нужно использовать низкоуровневую библиотеку. Асинхронность + Spring = проблемы.
на сервлетах или же забить
забить, изучай Hibernet/JPA, реляционные базы данных (postgres популярен) и можно еще добавить не реляционную Mongo (на собеседованиях о ней часто спрашивают).